依赖倒置原则指出:高级模块不应该依赖于低级模块。
考虑到这一点,我的老:
UI -> Business Logic Layer -> Data Access Layer
变成了
UI -> Business Logic Layer <- Data Access Layer
我根据业务逻辑层保留 UI,以便我可以轻松附加另一个 UI 实现。我的业务逻辑层是大脑。
但这是否违反了依赖倒置原则?UI 比业务逻辑更高,对吧?
感谢您的帮助。
依赖倒置原则指出:高级模块不应该依赖于低级模块。
考虑到这一点,我的老:
UI -> Business Logic Layer -> Data Access Layer
变成了
UI -> Business Logic Layer <- Data Access Layer
我根据业务逻辑层保留 UI,以便我可以轻松附加另一个 UI 实现。我的业务逻辑层是大脑。
但这是否违反了依赖倒置原则?UI 比业务逻辑更高,对吧?
感谢您的帮助。
Dependecy Inversion中的高级或低级模块关注实现细节。以它的原理为例。该原则指出:
A. 高级模块不应该依赖于低级模块。两者都应该依赖于抽象。
B. 抽象不应依赖于细节。细节应该取决于抽象。
在评估依赖倒置原则时,考虑哪些模块或层并不重要。您可以拥有高级 UI 和低级 UI。这个原则的重点是你的高层 UI 不应该依赖低层的业务逻辑层,高层模块之间的任何其他东西都可以。