あしみの 日記

読者です 読者をやめる 読者になる 読者になる

あしみの 日記

あした友達に話したいこと

「他の人が最短時間で理解できる」コードと「頭がいい」コードの両立が難しい。

プログラミング

史上最大 ワンダーアフロ・黒

 より良いコードを書くためのシンプルで実践的なテクニックまとめ - あしみの 日記 ←この記事の続きです。

 コード書いてて思ったけど、「他の人が最短時間で理解できるコード」と「頭がいいコード」の両立が難しい。処理の重複を抽出(メソッド化)すればするほど、「他の人が最短時間で理解できる」に遠ざかる。

 「他の人は最短時間で理解できる」のためには、ずらずら書いた方がいいんだろうな。でもずらずら書いてそれテストすんのやだしな。「頭がいい」ほうがテストは減るからな。

 それでやっぱり重複抽出しちゃうよねー。「これぐらい読めばわかるだろ」って思って書いてもレビュアーに「これなにしてんの?」って言われるしな・・・結局説明している。

 「他の人が最短時間で理解できる」って「他の人が考えなくても理解できる」に近いのか・・??コードがネイティブ言語のように思考に入っていくというか。それなら「頭のいい」コードなんて書くなって話だ。メソッドに飛ぶたびに考えるだろ。でも適切なメソッド名なら悩まんからいいのか・・・メソッド分割の仕方がいかんのか?

 

 むずかしいな。今日も結局「DB値:『0』オフ、『1』オン」の値をBooleanで取得するとき、「(DB値)=1」じゃなくて「Boolean(DB値)」でとったよ。例によって0と1のどっちがTrueか一瞬迷ったよ。だって「=1」ってださいじゃん。そもそもこれはDB値がBoolじゃないのがいけない気がしてきた。

 

 本当に頭のいい人は「他の人が最短時間で理解できる」と「頭がいい」を両立してんだろーな。コーディングは芸術だ。明日もプログラミングなう\(^o^)/

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

  • 作者: Dustin Boswell,Trevor Foucher,須藤功平,角征典
  • 出版社/メーカー: オライリージャパン
  • 発売日: 2012/06/23
  • メディア: 単行本(ソフトカバー)
  • 購入: 68人 クリック: 1,802回
  • この商品を含むブログ (110件) を見る
 

あわせて読んでね!

東大卒はすごい!という話→
東大卒の人に「(受験勉強を)頑張ったんですね」と言ったら

優秀な新人の話→
優秀な新人は「先輩に聞く」ができる 仕事でわからないことを先輩に聞いていいか?