本記事では、クラスや名前空間の名前付けのコツについて書きます。
クラスの名前付けは重要です。名前付けを適当にやっていると、クラスが増えれば増えるほど、ソースコードが分かりにくくなります。
↓のThoughtWorksアンソロジーの第5章オブジェクト指向エクセサイズは、オブジェクト指向を理解する上での重要なトレーニングです。オブジェクト指向エクセサイズのルールを適用すると、コードの見通しはよくなります。
その代わり、クラス数が膨大に増えます。クラスの名前付けが適当だと、ルールの適用が悪影響を及ぼすでしょう。
よい名前を付けるには、以下の3つを繰り返すことです。
- 数日後に読んで理解できる名前をつける
- 時間をかける
- 何回もリファクタリングする
数日後に読んで理解できる名前をつける
クラス名、パッケージ名の名前の付け方については、書籍やWebに多々記載されています。しかし、それでも名前の決定に迷いが生じることがあります。
私の経験上、いい名前をつける上で一番大事なことは、数日後に読んで理解できる名前をつけることと思います。
数日後に読んでみて、
- 「あれ、この名前ってどういう意味だっけ?」
- 「名前が長すぎて、分かりにくい。」
- 「同じような名前がほかにも出てきた。」
と思うことがあるでしょう。数名、数十名で開発しているときは、他のメンバーから名前関連で質問を受けることもあります。
こんなときは、名前を再考したほうがいいでしょう。
時間をかける
名前付けは時間がかかります。悩んでも悩んでも、いい名前が浮かばないことがよくあります。
書籍ではよく、商品クラスは、配送品、展示品、などに分けようと書いてあります。が、こんなにすっきり名前が決まることは滅多にありません。
エンジニアの場合は、技術的なことにひかれがちで、「名前付けをさっさと終わらせたい」と思うことでしょう。また、エンジニアは語彙に乏しいところがあるので、名前付けは難しく感じるでしょう。
名前付けは、時間を取ってでもきっちりを決めるべきでしょう。いい名前をつければ、後々の開発がスムーズになります。プロジェクトメンバーからの質問も減ることと思います。
長期的に見ると、名前付けは時間がかかったとしても、しっかりと決めるべきです。
何回もリファクタリングする
前章で、名前付けは時間がかかったとしても、しっかり決めると言いました。
それでも、後々見直したときわかりにくいと感じることはよくあります。
名前についてはリファクタリングするものと思ったいいでしょう。なので、ソースコードの名前の変更を容易に行えるIDEの機能は使いこなせるようにしたほうがよいです。
複数名で開発するときは、名前を変更することが難しいことも多いです。それでも、可能ならばプロジェクトメンバーの時間を調整して名前を変更すべきでしょう。名前付けに関しては、それだけの時間と手間をかける価値があります。
Visual Studio C# で名前付けを変更する方法は↓に記載
まとめ
クラスや名前空間の名前付けのコツについて書きました。
よい名前を付けるコツは↓の3つです。
- 数日後に読んで理解できる名前をつける
- 時間をかける
- 何回もリファクタリングする
名前付けは非常に重要なので、おろそかにしないことをお勧めします。
コメント