ユーティリティクラスを作ってはいけない#
ユーティリティクラスと世間で言われるクラスを作ってはいけません。ユーティリティクラスというのは単なる関数やサブルーチンの集まりであり、データ構造を持たないクラスだからです。ユーティリティクラスというのをもう少し詳しく言うと、「クラス変数にもインスタンス変数にも一切アクセスしないメソッドを集めたクラス」のことです。クラス変数にもインスタンス変数にも一切アクセスしないということは、データ構造を内部に持たないと言うことです。
「クラスとはデータ構造」という原則に、これは明らかに反します。
ユーティリティクラスを許さざるを得ない場合#
とは言えユーティリティクラスを作らざるを得ない場合があります。それは、既存の汎用的なクラスが持つデータ構造を再利用したい場合で、かつそのクラスが継承を許していないような場合です。添付ファイルの追加
ログイン済のユーザのみが添付ファイルをアップロード出来ます。
添付ファイル一覧
Kind | Attachment Name | Size | Version | Date Modified | Author | Change note |
---|---|---|---|---|---|---|
png |
utility_class1.png | 5.3 kB | 2 | 01-7-2011 01:01 | ytp | |
png |
utility_class2.png | 6.4 kB | 2 | 01-7-2011 01:02 | ytp | |
png |
utility_class3.png | 8.3 kB | 2 | 01-7-2011 01:02 | ytp | |
png |
utility_class4.png | 4.3 kB | 1 | 02-7-2011 01:24 | ytp | |
png |
utility_class5.png | 4.5 kB | 2 | 02-7-2011 02:07 | ytp | |
png |
utility_class6.png | 30.7 kB | 1 | 05-7-2011 02:05 | ytp | |
png |
utility_class7.png | 9.6 kB | 5 | 31-12-2011 20:50 | ytp | |
png |
utility_class8.png | 12.3 kB | 5 | 31-12-2011 20:50 | ytp | |
png |
utility_class9.png | 7.4 kB | 1 | 22-7-2011 03:29 | ytp |
«
This particular version was published on 12-4-2011 01:29 by ytp.