アーキテクチャ設計のための階層化アーキテクチャ

建築設計ではレイヤードアーキテクチャという言葉をよく聞きますが、レイヤードアーキテクチャとは一体何なのでしょうか?

まず最初に、レイヤーの概念を理解する必要があります。レイヤーはソフトウェアの論理単位であり、各レイヤーは特定の問題を解決します。たとえば、HTTP の 7 層アーキテクチャ。よく聞く Spring mvc アーキテクチャもあります。これらはすべて階層化された概念です。開発プロセス中に使用するコントローラー サービスもありますが、これらはすべて階層化アーキテクチャ内のレイヤーです。おそらくこれを言えば、レイヤーの概念について深く理解できるでしょう。コンピュータ分野には不文律がある。解決できない問題に別のレイヤーを追加するだけです。JVM 仮想マシンに仮想レイヤーを追加するのと同じように、ハードウェア レベルでの違いを解決します。したがって、階層化されたアーキテクチャは、アーキテクチャ設計において非常に重要な役割を果たします。階層化されたアーキテクチャをうまく使用すると、アーキテクチャを非常に明確にすることができます。コードもうまく拡張できます。

1. 当社のシステム アーキテクチャは通常、責任に応じて分割され、編成されています。役割を分割した後、階層化されたアーキテクチャに従って設計および実装できます。では、アーキテクチャ設計におけるレイヤードアーキテクチャの長所と短所は何でしょうか?

利点としては、各層が 1 つの問題のみを解決するため、アーキテクチャ全体の凝集性が高く、結合性が低く、各層での拡張性が優れていることが挙げられます。また、各層についてのみ保守およびテストでき、他の層については気にする必要がないため、保守性とテスト性が非常に優れています。レイヤーはインターフェイスを通じて相互に対話します。インターフェイスに依存することは、実装ではなく抽象化に依存することと同じであるため、全体的な変更は非常にわずかです。

メリットの話は終わったので、次はデメリットの話をしましょう。階層化アーキテクチャの明らかな欠点は、層の数が増えると通信時間が増加することです。アーキテクチャ全体のパフォーマンスはそれほど高くありません。

2. 階層化アーキテクチャとは何か、そのアーキテクチャの長所と短所について説明しました。では、階層化アーキテクチャを実装するにはどうすればよいでしょうか?

通常、システム設計を行うときは、Web コントローラー エンティティから始まり、外側から内側へと進み、奥に進むほど抽象的になっていきます。システムの内部は、多くの場合、いくつかのルールを具体化したものです。したがって、各層は自分自身の事柄にのみ注意を払う必要があります。Web 層がユーザー操作のみに焦点を当てるのと同様に、コントローラー層はリクエストの転送のみに焦点を当てます。内部にはいくつかの実装があります。

おすすめ

転載: blog.csdn.net/summer_fish/article/details/131284219