Apr 09, 2006
[Misc] Java における慣習的命名
Manager というクラスの命名に関連して、Java における慣習的な命名を調べてみた。 調査方法は以下の通り。
- 調査対象は公開されているオープンソースライブラリ。
- Maven2 の公開リポジトリ(http://repo1.maven.org/maven2) に登録されているライブラリから適当に Jar アーカイブを選択
- Jar アーカイブ内の全クラス、全メソッドを抽出
- クラス名、メソッド名をキャメルノーてーションを前提として単語に分割
- 単語毎に出現回数をカウント
- Jar アーカイブ ・・・ 1179
- クラス ・・・ 129152
- メソッド ・・・ 943841
慣習的クラス名
クラス名として使用されている単語の TOP 30 は以下の通り。 件の Manager も 27 位にランクインしている。
| 順位 | 単語 | カウント数 |
|---|---|---|
| 01 | Impl | 7817 |
| 02 | Factory | 6171 |
| 03 | Type | 4676 |
| 04 | Exception | 4596 |
| 05 | Element | 3170 |
| 06 | Map | 2928 |
| 07 | Key | 2723 |
| 08 | Document | 2622 |
| 09 | Context | 2361 |
| 10 | Abstract | 2328 |
| 11 | Handler | 2221 |
| 12 | Bean | 2215 |
| 13 | Class | 2196 |
| 14 | Set | 2110 |
| 15 | Xml | 2106 |
| 16 | Hash | 2073 |
| 17 | Object | 2026 |
| 18 | Info | 2010 |
| 19 | Helper | 1915 |
| 20 | Resource | 1900 |
| 21 | Holder | 1757 |
| 22 | List | 1756 |
| 23 | Property | 1731 |
| 24 | Message | 1671 |
| 25 | Tag | 1671 |
| 26 | Default | 1655 |
| 27 | Manager | 1655 |
| 28 | Event | 1622 |
| 29 | Name | 1600 |
| 30 | Attribute | 1575 |
慣習的メソッド名
メソッド名として使用されている単語の TOP 30 は以下の通り。
| 順位 | 単語 | カウント数 |
|---|---|---|
| 01 | get | 240349 |
| 02 | set | 107927 |
| 03 | Name | 33048 |
| 04 | is | 32509 |
| 05 | Value | 25894 |
| 06 | Type | 23199 |
| 07 | add | 22824 |
| 08 | String | 18564 |
| 09 | create | 18113 |
| 10 | new | 16511 |
| 11 | to | 14490 |
| 12 | Class | 13125 |
| 13 | Instance | 12121 |
| 14 | Element | 11662 |
| 15 | Id | 11543 |
| 16 | Set | 10390 |
| 17 | Object | 9427 |
| 18 | Attribute | 9413 |
| 19 | remove | 9336 |
| 20 | Array | 9113 |
| 21 | To | 9084 |
| 22 | Stream | 7733 |
| 23 | Property | 7654 |
| 24 | Message | 6936 |
| 25 | Key | 6931 |
| 26 | Node | 6794 |
| 27 | XML | 6726 |
| 28 | write | 6190 |
| 29 | Data | 6150 |
| 30 | New | 6102 |



