コードレビューは、独りよがりなコードを書かせないための施策

プログラムが、芸術作品の場合と工業製品の場合とがあり、「美しさ」「良いコード」というのは価値観ですぐ変わるんですね。

工業製品だと仮定しても、分野によって「美しさ」「良いコード」というのはすぐに変わるんですね。読みやすさが正義のとところと、実行速度が正義のところでは違うっていう単純な話もある。


「自分で自由にかけるから美しいコードが書けてる」って話なのに、それに対して「人にレビューしてもらえ」って、とにかくレビューさえしてれば良いコードになるって思い込みだよな。
コードレビューなんて悪習は無いほうがいい


美しいコードにするのが目的でなくて、美しいコードに酔いしれておかしなロジックや、おかしな仕様を盛り込んでいないかとチェックしている場合もある。

これって、仕事の成果で判断すべきなのに、人柄や性格とかでも判断する状況とにてると思うんですね。仕事の成果は出してるけど、どうも怪しげな性格だなぁと思ったら、ちゃんとチェックしないとやばいことを起こりそうって感じで・・

思うこと

初心者だと自分のうけてるレビューが良いレビューかどうか判断できないだろうから、見分けるポイントを書いておくと、コードを人数分印刷して、レビュアーとコーダーがテーブルを囲んで、紙を見ながらコーダーにコードを説明させてペンでチェックしながら指導するみたいにレビューをやってるところは100%ダメ。
コードの見た目をチェックするのがレビューだと思ってる現場。
紙なんかでなくて自分の端末で、エディターやツールを駆使してコードを調べてレビューしてるところは、ヘボでない可能性がある。
コードレビューなんて悪習は無いほうがいい


見た目でも、ある程度は判断できる
 性格や人柄をみれば、ある程度察することができるとかそういうのと似てると思う。
 経験ある人がみれば、ある程度は判断できる場合もあろうと思う。

コードレビューでなくて、人物が信頼できるかどうかのチェックかも
 コードレビューって、すべての範囲をする場合もあるけど、そうでなくて、サンプリング的にやる場合も多いと思う。
 サンプリング的にやることが多い場合は、信頼されてるかどうかとかそういう部分もあると思う。

顧客や発注元をいれてのコードレビュー
 これも、信頼してもらうための施策に過ぎないだろうし、顧客や発注元は内容がよくわかってないことも多いとは思うけど、そんなの気にしても仕方がない

顧客や発注元が、先輩や上司になっても同じでしょう
 ひどい目にあったら、先輩や上司に恵まれていないだけかもしれないけど・・。  

経験年数が長いだけで水準に達してないような人がレビュアーをやっていて、コードの水準を低い方にそろえる役割しかないわ。
コードレビューなんて悪習は無いほうがいい


信頼できる人で実績のある人のコードは、「いわゆる美しいコード」を書かれていてもスルーされると思うけどね。まあ、コーダーの説明の仕方にもよると思うけど。

美しいコードは、教科書に書かれてるようなコード

僕の経験上では、そういう人のほうが多かったと思う。
独学で美しいコードを書いている人は、やっぱり微妙にその人の癖が出ている感じで、すぐにこの人が書いたなぁというのが逆にわかる。

そういう意味では、紙ベースで見た目だけでもある程度は判断できると思う。教科書のお手本のようにみえたら、たぶんその人のコードは問題ない。

性格が微妙ででもスキルが高い人のコードは、教科書のようなお手本のようなコードを書いてる人のほうが多かったと思う。

まあ、教科書のお手本のようなコードを書いてるのに、それがダメだと理由もなくいわれるようなところはさすがにダメだと思う。

自分で自由にかけるから美しいコードが書けてる?!

それ、幻想では?
だって、自由にかけるプログラム言語って、あまりないような・・・。

どんな言語にも言語仕様という制限があり、その制限のなかでかいてるから。
でもって制限を感じない場合は、その人の感性との相性がよいみたいとかそういうの・・。

紙なんかでなくて自分の端末で、エディターやツールを駆使してコードを調べてレビューしてるところは、ヘボでない可能性がある。
コードレビューなんて悪習は無いほうがいい


引用先の人は、そういうところのほうがよいのかもっていうのはあるとは思う。
ツールを駆使してコードを調べて、怪しげな人を探し出すってことは、紙ベースのところでもやってそうだけど・・。

関連記事

優秀なプログラマーは、教科書のお手本のようなコードを書く
日本語でプログラムを書かされる世界があることを知ってますか?
コードもまともに書けないエンジニアを雇って、騙されたという人たち

スポンサーリンク

コメントを残す

メールアドレスは公開されません。
また、コメント欄には、必ず日本語を含めてください(スパム対策)。