依赖性倒置原则说明:高级模块不应该依赖于低级模块。
考虑到这一点,我的老人:
UI -> Business Logic Layer -> Data Access Layer
成了
UI -> Business Logic Layer <- Data Access Layer
我根据业务逻辑层保留了UI,因此我可以轻松地附加另一个UI实现。我的业务逻辑层是大脑。
但这会打破依赖倒置原则吗? UI比商业逻辑更高级,对吧?
感谢您的帮助。
答案 0 :(得分:3)
Dependecy Inversion中的高级或低级模块关注实现细节。以其原则为例。该原则指出:
一个。高级模块不应该依赖于低级模块。 两者都应该取决于抽象。
<强> B中。抽象不应该依赖于细节。细节应取决于抽象。
在评估依赖性转换原则时,考虑哪些模块或层次无关紧要。您可以拥有高级UI和低级UI。这个原则的要点是你的高级UI不应该依赖于低级业务逻辑层,高级模块中的任何其他东西都可以。