に違反しないが、私はそうのようなクラスを持っていると言いますこれは、単一責任の原則
しかし、別の意味で、それは変更する様々な理由がたくさんあります。configの名前が変更され、新しい設定が追加、設定、削除、変更の種類を返し、設定などなど
に必要な検証はのためのクラスがあるはずそれぞれの設定は単一の責任を満たすか、あまりにも遠すぎますか?
に違反しないが、私はそうのようなクラスを持っていると言いますこれは、単一責任の原則
しかし、別の意味で、それは変更する様々な理由がたくさんあります。configの名前が変更され、新しい設定が追加、設定、削除、変更の種類を返し、設定などなど
に必要な検証はのためのクラスがあるはずそれぞれの設定は単一の責任を満たすか、あまりにも遠すぎますか?
違反ではありません。簡単なテストは、それが何をしているのかを説明する文章で単語 "and"を使用する必要があるかどうかです。
このような質問は主観的なものであり、文脈を見る必要があります。そのようなコンテキストの1つは、非常に重要なもので、のレベルのです。たとえば、アーキテクチャレベルでは、単一責任が高水準コンポーネントに適用されます。例えば、Webアプリケーションの場合、ビジネスロジックとデータアクセスの処理は別々のモジュールで処理する必要があります。ただし、クラス、インタフェースなどの多くの小さなモジュールがありますが、アーキテクチャレベルの抽象化レベルでは、それぞれをモジュールに割り当てられた別々の単一の責任と見なすことができます。
しかし、ビジネスロジックなどのモジュールでは抽象度が異なります。クラスレベルのエンティティを処理します。さて、各クラスは、単一の責任に基づいていなければなりませんが、それはそれ自身のレベルです。
これを達成する方法の1つは、一般的にはクラス設計でも、このクラスが何であるかを短い単語またはフレーズの説明に尋ねることです。そのような短い説明が見つからない場合は、おそらく分解される必要があります。
あなたは何をやっていますか?このエントリにはいくつかのアイデアがあるかもしれませんが、https://en.wikipedia.org/wiki/Design_Patternsの良いスタディです。道の3分の4はパターンをタイプ別に分類しています。あなたは構造パターンを探しているかもしれません。 – jiveturkey
この種のものがどれほど細かいのか理解しようとしていますが、クラスがその原則に違反しているかどうかはわかりません –
文字列を返すだけなら、おそらく配列や何かでそれらをパックするでしょうが、ちょっとした返品タイプです。 – jiveturkey