エンジニアの箱

サーバ構築とか、Ciscoルータの設定とか、コーディングに関してのなにがしを書きます。

変数・関数・クラス名、などなど名前に関するアレ

多少長くなっても意味の分かる名称をつけよ

たまに変数名を短くしようと略しているのを見かけますが、あれは非常によくない。 なぜか。

意味の分からない・通じない名称は「hoge」「fuga」「aaa」などと何も変わらない

これに気づいていないのですよ。やたら短くしようとする人は。名称は、いわば「その値、その処理、そのものを説明するコメント」であるので、名称自体に説明が必要なものは既にアウト。よく使われる「i」みたいなものを除いて、そのプログラム内で固有の略し方ははっきり言って悪。

パッと見で分からない名称は名称として機能しない

こういうこと。その名称が何を指し示しているのかを記憶しておかねばならないという状態に。何のための名称なんだってなってしまう。

人間が一度に記憶できるモノの数は3

人間に備わっている主記憶装置は変数を3つしかスタックできないと思ってください。3つ以上入ってくると最初の1つをデキューしてしまうので、ソースを追う際、よくわからない名称が3つ以上あると詰みます。なぜならば、よくわからない名称を本当の意味に対応させる表を頭の中に作る必要があるからです。つまり、よくわからない名称が出てくるごとに対応表をエンキューすることになるので、当然3を超えた段階でデキューが走り、最初の名称の本当の意味が分からなくなるという。

まとめ

まぁこれは愚痴に近いですけど、ブランチを切ったら「長い」とか言われてですね。長いっつっても15文字ぐらいだったんですけどね。あれで長いって言われてしまうと、コーディング能力を疑いざるを得ないんですよ。ちなみに、名称の付け方≒コーディング力だと思ってほぼ差し支えないと私は思ってます。
名称の付け方とかコードの整理の仕方はリーダブルコードという書籍を読むのが手っ取り早いです。おすすめ。

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)