2017-05-07 3 views
1

私は、SOLIDとCRAPの原則に従うことで、アプリケーションプロジェクトの設計方法を読んで学習しています。私はCRAPの原則を理解するのがとても快適です。しかし、研究している間、私はオニオンアーキテクチャのコンセプトに遭遇しました。私は2つの設計コンセプトと、もしあれば両者の相違点/類似点について私の頭を包み込むのが難しいですか?オニオンアーキテクチャにはSOLIDの原則が含まれていますか?

オニオンで設計されたプロジェクトには、SOLIDの原則が含まれますか? 1つのアプローチは他のアプローチと相関していますか?

+0

叔父さん自身からhttps://8thlight.com/blog/uncle-bob/2012/08/13/the-clean-architecture.html – Nkosi

答えて

2

オニオンアーキテクチャはSOLID原則と相補的です。これは、SOLID原則がアーキテクチャではなく設計に焦点を当てているためです。

別の言い方をすれば、Onionアーキテクチャは、関連する(関数ごとの)クラスをレイヤーにグループ化することに焦点を当てています。ここで、上位レイヤのクラスは下位レイヤのクラスに依存します。最下位層(またはベース層)は、ドメインクラス(頻繁に変更されないそれらのクラス)とUI、インフラなど(つまり、最も頻繁に変更するクラスです)

SOLIDが着目されている外側の層でありますクラスとその設計方法について説明します。 Single Responsibility Principleは、実装するメソッドが1つの責任の周りを回るべきであるという観点からクラスを構築する方法を示しています。 「オープン/クローズド・プリンシプル」では、既存のコードを変更するのではなく、要件の変更によって拡張または既存のコードに追加されるようにクラスを設計する方法を示しています。 SOLIDの他の原則も同様です。

関連する問題