良いコードを書くために必要なことの要素の一つに、名前に情報を持たせることがある。
①明確な単語を選ぶ
悪い例) insert
良い例) insertnode
何をインサートするか明確にする
②汎用的な名前を避ける
nodeの先頭アドレスを記憶しておく時
悪い例) tmp
良い例) listtop
tmpに何が入っているか分からなくなるから何が入っているか分かり易くする。
③抽象的な名前より具体的な名前をつける
悪い例) delete
良い例) delete_list_node
何をする関数なのか分かり易くする
④名前に情報を追加する
悪い例)number
良い例)inumber
numberがどのような型の変数か情報を追加する
⑤大文字やアンダースコアに意味を込める
例)グローバル変数にg_inumberとすれば、グローバル変数でint型の変数と分かる。
なお、以上は前回のブログで書いたソースの反省でもあります。
リストの先頭アドレスを汎用性の高いtmpなどに入れるのではなく、topにいれたのはよかったが、listtopなどより具体的な名前にすべきだった。deletenode,insertも同様により具体的に。
また、要素の変数がLISTのところとnodeの箇所があって統一すべきであった。
参考:リーダブルコード
