1

依存性逆転の原則は次のように述べています。高レベルのモジュールは低レベルのモジュールに依存すべきではありません。

それを念頭に置いて、私の古い:

UI -> Business Logic Layer -> Data Access Layer

なりました

UI -> Business Logic Layer <- Data Access Layer

別のUI実装を簡単にアタッチできるように、ビジネスロジックレイヤーに応じてUIを維持しました。私のビジネスロジック層は頭脳です。

しかし、それは依存性逆転の原則を破っていますか?UIはビジネスロジックよりも高いレベルですよね?

助けてくれてありがとう。

4

1 に答える 1

3

Dependecy Inversionの高レベルまたは低レベルのモジュールは、実装の詳細を考慮しています。たとえば、その原則を考えてみましょう。原則は次のように述べています。

A.高レベルのモジュールは低レベルのモジュールに依存するべきではありません。どちらも抽象化に依存する必要があります。

B.抽象化は詳細に依存するべきではありません。詳細は抽象化に依存する必要があります。

Dependecy Invertion Principleを評価するときに、どのモジュールまたはレイヤーが考慮されているかは関係ありません。高レベルのUIと低レベルのUIを使用できます。この原則のポイントは、高レベルのUIが低レベルのビジネスロジックレイヤーに依存してはならないということです。高レベルのモジュール以外は問題ありません。

于 2012-11-15T10:44:11.213 に答える