【新人君物語】第3話 名前をつけるって難しい!編

引き続き先輩さんにソースレビューをしてもらっている新人君。どうやら先輩さんにはまだ気になるところがあるようです。

先輩さん「新人君、ここの変数parameter1とparameter2っていうのは何?」

新人君「parameter1は画面から入力された名前でparameter2は住所です。」

先輩さん「どうしてこの変数名にしたの?」

新人君「画面の最初の項目だったのでparameter1、2つめの項目だからparameter2としました。何かまずいですか?」

先輩「なるほどね…。ちなみにこっちのstartって?ここは終わりの処理だと思うけど?」

新人君「あ!すみません、そこはコピペしてコピー先の名前のままでした。」

先輩さん「…」

 

解説


名前をつけるって難しいですよね。開発をする時はプロジェクト名からクラス名、メソッド名、変数名、返り値のなどなど名前をつけることはたくさんあります。案外ソースを書いているよりよりよい命名を考えて頭をひねる時間のほうが長かったりするのではないでしょうか?

新人君の命名方法ですがかなりまずいですね。名前であれば素直にname、もしくはinputNameとかわかりやすい名前にしたほうがベターでしょう。最初の項目だからparameter1としてしまうと、例えば名前と住所の間に郵便番号の項目が増えてしまったらどうすればいいでしょう?parameter1.5とするのでしょうか?

命名はたいてい英語のため、例えば「入力」って英語でなんだろう?とか「結果」ってなんだろう?と最初は英訳しながら名前をつけることもあるかもしれませんね。

規則に合わせるのが一番大切


プロジェクトやフレームワークにより命名規則が決まっていることも多々あります。インサート文をデータベースに実行するクラスであれば『insert○○クラス』やDTOであれば○○Dto.javaとするみたいな感じです。

たとえこの名前なら一発で何をしているかわかる最高の名前が思いついたとしても命名規則に沿っていなければそれは駄目な名前なのです。


 

新人君「名前をつけるって大切なんですね」

先輩さん「そう。開発は終わってもシステムは動き続ける限りそのコードはずっと残ることになる。いつか見返した時に何をやっているかわからなければあまりいい名前とはいえないよ。もしその辺を勉強したければ『リーダブルコード』という名著があるから読んでみるよいいよ。これは『プログラマーが読むべき本』みたいなランキングで大体上位にいるからオススメだよ」

新人君「わかりました!」

 

続く…

 

スポンサーリンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です