
[ホーム]
[最新エントリー]
[あすなろBLOG]
[あすなろNEXTBLOG]
[あすなろカウンセラーBLOG]
[インタビュー]
[スペシャルコンテンツ]
[テックスペース]
|
|
次へ |
大谷 弘喜
2008年04月16日
僕はお目にかかったことがありませんが,世の中には「一行で一目置かれるプログラム」と言うものがあるらしいです。たった一行で「こいつできる!」と思わせるプログラムとは。と言うことらしいです。
記事の中でi,j,kのような変数は検索性が悪くて何をしているかわからないのでやめましょうと書かれています。ある意味正しくて,ある意味間違っています。変数の名前と言うのは,スコープを意識しないといいも悪いも判断の仕様がありません。スコープを無視して一概に悪いと言い切ることは僕にはできません。例えば,Javaのクラスのフィールドであれば,iとかjとか言う名前では何の変数か分りませんが,
int sum = 0;
for (int i=0; i<10; i++) {
sum += i;
}
は,一目でiの利用範囲が見て取れるので,iと言う変数名で十分です。
その代わりとして型と内容がわかりやすいような命名が好まれます。intPrintCount(プリント枚数を数えるInteger型の変数)であったり、bolError(エラーを制御するBoolean型の変数)のような変数を自然に使えると良いでしょう。
って,アリエルでこんな変数名にしていたら多分,修正させられます。Javaであれば型宣言しているので適当なIDEを使えば,その型が何なのかマウスカーソルをあわせるだけで表示してくれます。それに,Integerって言う型が分ったからと言ってコードを読む上で嬉しいことはそれほどないです。単にprintCounterで十分でしょう。動的言語でも,こんな変数名の付け方はみたことがありません。ただ,例外的に入門書のサンプルコードはこういう変数名をつけているところがあります。えーと,結局,何をする変数なのかが重要であって,型が分ったってそれほどうれしいことはありません。
HogeFugaBuzz hogeFugaBuzzVariableForSomething = new HogeFugaBuzz();
|
|
次へ |
|
|
[ホーム]
[ブログコンセプト]
[個人情報]
[著作権]
