3

SRPに関連する質問に答えたところ、SRPはユーティリティクラスでどのように機能するのでしょうか。

定義上、ユーティリティクラスは多くのことを行う傾向があります。単一のアクセスポイントでのゲートリング関連のユーティリティがどのように役立つかがわかります。SRP標準では、ユーティリティを1つのクラスに実装することはできません。それは、ユーティリティクラスがノーノーであることを意味しますか、それとも、それぞれがSRPに準拠している複数のクラスのファサードにすぎない場合、SRPはそれを許可しますか?

4

1 に答える 1

6

ユーティリティクラスはアンチパターンと見なされます:

  1. 多くの場合、複数の責任を負うため、SRPに違反します。
  2. それらのほとんどは静的クラスであり、テスト設計能力には適さず、モックすることはできません。
  3. 名前自体は無意味であり、HelperUtilUtilityなどの名前が付けられることがよくあります。

なおす:

ユーティリティクラスを意味のある名前を持つより小さな非静的クラスに分割します。各クラスは1つの責任を負います。

于 2012-10-15T09:55:46.243 に答える