興味深いことに、自然言語に適用される読みやすさは、読みと理解の速度によって測定されます。特定のコードコメントがこのプロパティを改善しない場合、単純なルールを実際に採用できると思いますが、回避できます。
コメントする理由
コードコメントは埋め込みドキュメントの一種ですが、ハイエンドプログラミング言語には、言語自体の要素を使用して(意味のあるコードの)余分な「過剰なドキュメント化」プログラミングを回避する方法がいくつかあります。また、コードをプログラミング教科書のリストに変換するのも悪い考えです。個々のステートメントは、ほぼトートロジー的な方法で文字通り説明されます(既に提供された回答の「/ * increment i by 1 * /」の例)言語に不慣れなプログラマーのみに。
それにもかかわらず、それは本当に「すべての悪の源」である「文書化されていない」(しかし意味のない)コードにコメントしようとする意図です。「十分に文書化されていない」コードの存在そのものは悪いシグナルです。それは、構造化されていない混乱であるか、神秘的な失われた目的の奇抜なハックです。明らかに、そのようなコードの価値には少なくとも疑問があります。残念ながら、例は常にあります。(視覚的にグループ化された)コード化されたコードのセクションにコメントを導入するほうが、新しいサブルーチンにラップするよりも良い場合(「愚かな一貫性」という「小さな心のホブゴブリン」) 。
コードの読みやすさ!=コードのコメント
読み取り可能なコードでは、コメントによる注釈は必要ありません。コード内の各特定の場所には、この特定のコードが達成することになっているタスクのコンテキストが常にあります。目的が欠けていたり、コードが何か不思議なことをしたりする場合は、それを避けてください。奇妙なハッキングによるコードの入力を許可しないでください。これは、バグのあるテクノロジーと基礎を理解するための時間/関心の欠如を組み合わせた直接的な結果です。プロジェクトで神秘的なコードを避けてください!
一方、Readable program = code + documentationには、たとえば「APIへのコメント」ドキュメントの生成を容易にするために、複数の正当なコメントのセクションを含めることができます。
コードスタイルの標準に従う
おもしろいことに、質問はコードをコメントする理由ではなく、チーム作業- 高度に同期されたスタイルでコードを生成する方法(他のすべての人が読む/理解できる)についてです。会社でコードスタイルの標準に従っていますか?主な目的は、リファクタリングを必要とする、あまりにも「個人的」かつ「主観的に」あいまいなコードの記述を避けることです。だから、コードスタイルを使用する必要があると思うなら、それを適切に実装する方法の完全なツールがあります-人の教育から始まり、コードの品質管理(多数のリントなど)と(改訂コントロール統合)コードレビューシステム。
コードを読みやすくするエバンジェリストになる
コードが書かれているよりも頻繁に読み取られることに同意する場合。コミュニケーションに使用される言語(数学、マシンコード、または旧英語)に関係なく、アイデアと思考を明確に表現することが重要である場合..あなたの使命が、鈍くい代替思考を根絶することである場合。(申し訳ありません、最後は別の「マニフェスト」からです)..質問をし、議論を開始し、コードクリーニングに関する考えを喚起する本を広め始めます(おそらく、Beckのデザインパターンに似たものだけでなく、RC Martinによって既に言及されているようなもの)。プログラミングで。さらに重要なアイデアの箇条書きの文章を読みます(読みやすさに関するO'Reillyの本から引用)
- コードのすべての行に適用されるヒントを使用して、命名、コメント、フォーマットを簡素化します
- プログラムのループ、ロジック、変数を調整して、複雑さと混乱を減らします
- 一度に1つのタスクを実行するようにコードブロックを再編成するなど、機能レベルでの攻撃の問題
- 徹底的かつ簡潔で、読みやすい効果的なテストコードを書く
「コメント」を切り取り、まだたくさん残っています(コメントを必要としないコードを書くことは、すばらしい練習の1つです!)。意味的に意味のある識別子に名前を付けることは良い出発点です。次に、論理的に接続された操作を関数とクラスにグループ化して、コードを構造化します。等々。優れたプログラマーは、優れたライターです(もちろん、他の技術スキルがあれば)。