プログラミング初心者にはおすすめの一冊♪
基本的にはプログラミング作法だったり、コードコンプリートの抜粋っていう印象を受けるが、
とっつきやすさという面では非常に良かった
例えば、
変数名の付け方
関数名の付け方
モジュール・クラス・関数の分割
スコープ
等、
メンテナンスしやすいコードを書くためには当たり前の技術ですが
プログラムを初めて間もない方が読むと良い指針になるかと思います。
この本を読んだ後にコードコンプリートを読むとより理解が深まりますね。
何かの文献で読んだ言葉を引用すると、
「コメントアウトを書かなければならないコードは書きなおしたほうが良い」
つまりは、変数名、関数名、クラス名自身が意味を持っているのであれば、
コメントアウトはこれらからだいたい想像ができる。
例:
bool flg = false;
と書くくらいであれば
bool isExist = false;
のほうが明瞭だし、
for(int i = 0 ; i < 100 ; i )
とするくらいであれば
static const int STORAGE_MAX_COUNT = 100;
for( storageCount = 0 ; storageCount < STORAGE_MAX_COUNT ; storageCount )
にすれば良いし、もっと抽象的にするなら
List<Storage*> storageList = StorageContainer.getAvailableStorageList();
for( List<Storage*>::Iterator stIte = storageList.begin() ; stIte != storageList.end() ; stIte)
とIteratorを利用して有効なストレージの数分だけループさせたほうが100回ループさせるよりも安全だし、処理の少なくすむ。
仮に100が200に増えようとも修正が必要ない。上のはIteratorでしたがforeachのほうがメジャーかもしれませんね。
小さなことかもしれませんが、柔軟なコードとは変更に強く、明瞭なコードです。
そのことを再認識させてもらっただけでも非常にありがたいです。
Wow! ノートはまだありません
Masashi Kayahara