スタイル(コーディング規約)

変数の名前:グローバルにはわかりやすい名前を、ローカルには短い名前を

  • グローバル変数はプログラム中で散見されうるため、意味が理解できる程度に長く、説明的な名前をつける。
    例)NumberOfDislocations
    
  • ローカル変数は短い名前で十分である。
    例)n または nDisl
    
    ※文脈にかかわらず長い変数名にしてはいけない。明瞭かつ簡潔であること。

関数には能動的な名前をつける

  • 関数名は能動的な動詞を基本とし、とくに問題がなければそのあとに名詞をつける
  • 他動詞+名詞か自動詞
    例)
    now = date.getTime();
    putchar('\n');
    

マジックナンバーの回避

  • 定数は名前をつける。ソース中の数字は意味、根拠が不明となる。
  • マクロではなく、定数として定義する。#defineは字句構造を変更するため、できるかぎり避ける。
  • 整定数にはenum文をつかう。
    enum{
      MINROW = 1,  //上端
      MINCOL = 1,  //左端
      MAXROW = 24, //下端
      MAXCOL = 80, //右端
      LABELROW = 1,  //ラベル位置
      NLET = 26,  //アルファベットの数
      HEIGHT = MAXROW - 4,  //バーの高さ
      WIDTH = (MAXCOL -1)/NLET  //バーの幅
    };

オブジェクトサイズは言語に計算させる

  • 如何なるデータ型においても、具体的なサイズを明示的に使ってはならない。
  • 2や4よりはsizeof(int)を、さらにはsizeof(array[0])と書くのがよい。 ⇒配列の型を変更した場合に対応できる
    #define NELEMS(array) (sizeof(array)/sizeof(array[0]))
    
    double dbuf[100];
    
    for(i = 0; i < NELEMS(dbuf); i++)
      ....

参考リンク



参考文献

  • プログラミング作法(著:Brian W.Kernighan,Rob Pike,訳:福崎 俊博,アスキー,2000)
最終更新:2011年03月04日 14:13