ソフトウェア設計 - アーキテクチャの原則

ユニバーサルデザインの原則

懸念の分離

構築するアプリケーションは、必要がある コアビジネス慣行 インフラ ユーザー・インターフェース・ロジックは 別に、理想的な ビジネスルール ロジックが 単一の項目にある、とあるべきである アプリケーション内の他の項目に依存していません。
 

パッケージ

アプリケーションの異なる部分は、アプリケーションによってパッケージの残りの部分から分離する必要があります。これは、外部契約、アプリケーションコンポーネントに違反しないと層ができ 、他の協力者の状況によって中断されない 条件の下で その内部実装を調整します 正しいアプリケーションパッケージは、達成するのに役立つ 疎結合 モジュール性を
アプリケーション自体は、公的であるべき オープン定義インターフェイス 共同研究者のために、 よりむしろ共同編集者が直接その状態を変更してみましょう だから、継続的に共同研究を中断することを心配することなく内部プログラミングを改善するように。
 
 

依存性逆転

依存関係の方向アプリケーションがあるべき 抽象方向 ではなく、詳細な方向性を達成します。アプリケーションに依存逆関係の後、Aは、Aが実行時にBを呼び出すことができ、そしてコンパイル時にBが制御インターフェースAに依存するように、抽象メソッドBの実装を呼び出すことができます。
依存性逆転疎結合アプリケーションキーリングを生成することです。それは可能性があるため に依存しており、より高い抽象レベルを達成するために多くの情報の書き込みを達成 むしろ逆よりも、。
 
 

明示的な依存関係

メソッドとクラスは、任意のオブジェクトは、通常の作業に必要な調整を必要と表示されるはずです。 クラスコンストラクタ 、クラスができ 、その効果的な状態を識別 し、 所望のコンテンツを動作させます
 
 

シングル責任

シングルの責任は、オブジェクト指向の設計に適用され、システムも懸念の制度的分離の原則とみなすことができます。彼がいることを指摘し たオブジェクトが一つだけの義務を持つべきである 、と 件名を変更する唯一の理由の一つ
この原則は 、アプリケーションアーキテクチャに適用 し、 論理的なエンドポイントは 、あなたがします マイクロサービスを取得します あなたが必要な場合はマイクロサービスは、一般的には、単一責任を持つ必要があり 、システムの動作を拡大して 好ましくは、 他のマイクロサービスの添加により 達成します。

 

自分自身を繰り返してはいけません

アプリケーションは、必要がある 多くの場所で特定の概念の動作を指定することを避けることが 、それは簡単にエラーにつながる可能性があるため、。してください 論理プログラミングのパッケージ構成 、ロジックを複製せずに。この動作のための単一の権威として構築してみましょう。
 
 

永続聞こえません

いいえ持続知覚(PI)型手段は、一定である必要はないが、選択された永続的な技術(例えば、のSQLServer変化のMySQL)のからのコードの影響。
この原則の違反の例:
  • しなければならない基本クラス。
  • 必要なインタフェース。
  • (例えば、活性記録モードなど)は、独自の保証クラスを担当。
  • 引数のコンストラクタを必要としません。
  • 必須virtualキーワードを属性。
  • 具体的な特徴は、永続的でなければなりません。

有界コンテキスト

有界コンテキストは、 ドライブモードの中心にフィールド することができます 大規模なプログラムは、別のモジュールの概念に分けられ 、このように複雑な問題を解決します。理想的には 、各有界コンテキストは自由の概念の名前を選択することができるはず 、と その永続ストレージへの排他的アクセスを持っています

おすすめ

転載: www.cnblogs.com/TSir/p/12143672.html