複数形と単数形
何となくクラス名の複数形が気になって調べた。ついでにディレクトリ名も。
クラス名の命名規則 - あのね、Util なの? Utils じゃないの? - muddy brown thang
- 複数形のクラス名をつけるときは
RailsやCakePHPはDBのテーブル名を複数にしてモデルを単数形にするなど、そういうルールがしっかりしているらしい。
ディレクトリについて。
例えば、昨日の日記の画像のURLは
http://www.aizu.com/blog/archives/images/photo-20070130-162719-0.jpg
ですが、これにはかなり改善の余地があります。
冗長な表現 - Eyes, JAPAN Blog
a. 途中のディレクトリ名が "images", "archives" のように複数形になっていますが、ディレクトリは同じカテゴリに属するファイル (またはディレクトリ) を集約する概念なので、形容詞的な命名 (単数形) をすべき。("photos album" ではなく "photo album"、"songs list" ではなく "song list" と表現するのと同じ理由から。 ) そもそも、ディレクトリが「何かの集合」であることは分かり切ったことであり、複数形を用いるのは (一般に) 文字数を増やすという意味でも冗長です。
これは…何だか難しい。英語に慣れてる人なら習慣で分かるんだろうか。
モノが複数入るという状態を名前にするのか、機能としてのラベルを名前にするのか。
例えばcomponentディレクトリについて言えば、コンポーネントが複数入っているならcomponents、そのディレクトリ以下で一つのコンポーネントを形成するならcomponent、が分かりやすいんじゃないかと思う。
普段英語を使ってないのに何が自然かを考えても埒が明かないのでひとまずこれで。
あとテストディレクトリ。
test/unit/testcases /functional/web /cui
tests/unitTest1 /unitTest2
こんなイメージだろうか。役割をラベル付けするのか中の状態を表すのか。
複数の構成を切り替えるための設定ファイルはconfigs.ini、一つのシステムを一つのファイルで設定するならconfig.ini、複数の構成要素ファイルがあるディレクトリは…それ全てでシステム全体を設定しているならconfig?…やっぱり難しい。