2009-06-05 7 views
23

ロバートC.マーティンは、彼の著書「Clean Code」の最初の章に、differenのよく知られたソフトウェア専門家からの「クリーンコード」の定義を提供しています。クリーンなコードをどのように定義しますか?'クリーンコード'の定義

答えて

36
  • わかりやすい。
  • 簡単に変更できます。
  • 簡単にテストできます。
  • 正常に動作します(Kent Beckの提案 - 非常に正しい)。

これは私にとって重要なことです。

+7

正しく動作するはずです。そうでなければ、これは私にとっては良い定義のようです。 –

+1

良い点、私は答えにそれを加えました。 – Ree

1

異なるモジュールやクラスが契約を明確に定義しているコードは、良いスタートです。

17

コード私は変更することを心配していません。

1

ひとつの、一見意外な変更を加えると、複数の箇所で壊れないコード。また、プログラムの制御パスに従うのも簡単です。

10

コメントを簡単に理解できるようにするコードです。

+0

私はコメントの最小限の使用を全く言わずに言うでしょう:(1)反直感的なアルゴリズムを持つことは不可能ではない。 (2)コメントを使用してコードを論理セクションに細分化し、読者がすぐに概要を知ることができるように、コメントを使用することができる。 –

+0

このコメントありがとうございました。コメントを使ってコードを論理的なセクションに分割することについては、私は強く反対します。コードを分割する必要がある場合は、正しい名前のメソッドを使用してください。 逆説的なアルゴリズムに関しては、上記を行う場合、何が起こっているのかを説明するためにコメントが必要なのではないでしょうか。それでも解決が必要な場合は、ソリューションを文書化するほうが役に立つはずです。コードにコメントを追加するだけです。 –

1

ポイントフリーハスケルコード。 (実際はそうではありませんが)

2

できるだけ人間の言語に近いと読むコード。私はすべてのレベルでそれを意味します:使用される構文から、使用されるアルゴリズム、モジュールの間のコードの配布の複雑さと複雑さのすべての方法で規則と整列の命名から。

は、命名規則について

最も単純な例:

if (filename.contains("blah")) 

その一部は環境に依存

if (S_OK == strFN.find(0, "blah")) 

対/ APIが使用されるが、そのほとんどは、もちろん、開発者の責任である

1

再利用可能なコードも重要です。したがって、コードの品質は重要なだけでなく、どこに配置しますか。 例:コントローラへのビジネスロジックは役に立たないコードです

関連する問題