Clean Code Cleanコード:意味のある名前


意図をはっきり言う
良い名前を取るには時間がかかりますが、良い名前で節約する時間はずっとかかります.そのため、名前を注意深く観察し、もっと良い名前があれば改善しなければなりません.エラーを回避するメッセージ
  • プログラマーは、コードに誤った手がかりを残すべきではありません.エラーの手がかりはコードの意味を曖昧にします.広く使われている意味のある言葉を他の意味として使うことはできません.
  • 有意義な地域区分
     getActiveAccount();
     getActiveAccounts();
     getActiveAccountInfo();
  • このプロジェクトに参加するプログラマーは、どの関数を呼び出すかをどのように知っていますか?
    実際、この3つの関数に似た名前を書いたことがあります.本当に区別できない...
  • 発音しやすい名前を使う
    private Date genymdhms;
    private Date generationTimestamp;
  • GenerationTimestampを見れば、よりスマートな会話ができます.
  • 検索しやすい名前の使用
  • で検索しやすい名前は定数よりいいです.
  • エンコーディングの回避
  • の問題の解決に専念する開発者にとって、符号化は不要な精神的負担である.
  • ハンガリー式マーキング法
  • メンバー変数接頭辞
  • インタフェースクラスおよび
  • 実装クラス
    自分の記憶力をひけらかすな
  • 賢いプログラマーと専門家プログラマーの違いは、専門家プログラマーが理解していることが最も良いことです.専門家のプログラマーは自分の能力を良い方向に使って、他の人の理解するコードを提出します.
  • クラス名
  • 類名、対象名は名詞または名詞フレーズに適している.
  • good : Customer, WikiPage, Account, AddressParser
  • bad : Manager, Processor, Data, Info
  • メソッド名
  • 動詞または動詞文に適しています.
  • good : postPayment, deletePage, save  
  • アクセス者、変更者、および条件者はjavabean基準に従ってget、set、およびisを値の前に加算します.
  • 変な名前を使うな
    面白い名前よりも明確な名前を選択します.一つの概念で一つの語を使う.
  • 抽象概念で単語を選択し、それを堅持する.
  • fetch、retrieve、getでクラスごとに同じメソッドを呼び出すと混乱します.口先だけのことを言うな
  • の単語を2つの目的として使用しないでください.他の概念で同じ言葉を使うなら、冗談にすぎない.
  • 解法領域から抽出した名前の使用
  • コードを読む人もプログラマーであることを覚えておいてください.したがって、計算用語、アルゴリズム名、モード名、数学用語等を用いることができる.問題領域(domain)からすべての名前を取得するポリシーは賢明ではありません.
  • 質問領域に入力した名前の使用
  • 適切なプログラマー用語がない場合は、問題領域から名前を取得します.メンテナンスコードのプログラマーは、分野の専門家にその意味を尋ねることができます.
  • 意味のある脈絡を追加
  • クラス、関数、ネーミングスペースに配置し、脈絡を与えます.
  • すべての方法が失敗した場合、最後の手段で接頭辞を付けます.
  • 余分な脈絡を取り除く
  • 一般的に短い名前は長い名前より良いです.しかし、これは意味が明確な場合に限られる.名前に余分な脈絡を追加しないように注意してください.
  • AccountAddressおよびCustomerAddressは、Addressクラスインスタンスの理想的な名前またはクラス名です.
  • ポートアドレス、Macアドレス、Webアドレスを区別する必要がある場合は、PostalAddress、MAC、URL goodと呼びます!