在第十一章中作者简单介绍了依赖反转原则在编程开发以及软件架构上的意义。
在软件开发中接口相对与实现类是比较稳定的,具体实现类通常会根据需求进行调整内部逻辑,而接口相对稳定。所以在类关系层面依赖反转是指类调用时不要直接依赖具体实现类,而是去依赖实现类的抽象接口,从而达到具体实现类在调整时不会影响调用者的目的。
在软件架构中依赖反转的原则同样适用,软件架构中上层模快不应该直接依赖底层模快,而是应该依赖底层模快抽象接口,底层模快通过接口进行具体实现。依赖反转使得底层的变动不会去影响其上层。
![](http://tiebapic.baidu.com/forum/w%3D580/sign=7d9a227b9458ccbf1bbcb53229d9bcd4/7c48197fca806538c2932fdad2dda144ac348258.jpg?tbpicau=2025-02-21-05_5427e06dab429e694e1e39b757d5e8aa)
从第十二章开始进入了本书的第四部分,组件构建原则部分。在第三部分介绍的SOLID是用于指导如何构建组件,而第四部分中组件构建原则会指导如何对这些组件进行组合。
在第十二章中作者先介绍了组件定义以及发展历史,其中最重要的是就是组件定义部分。组件是软件中可独立部署的单元,如java中的jar包。一个设计良好的组件应该永远保持可独立部署的特性,并且可以独立开发。
在软件开发中接口相对与实现类是比较稳定的,具体实现类通常会根据需求进行调整内部逻辑,而接口相对稳定。所以在类关系层面依赖反转是指类调用时不要直接依赖具体实现类,而是去依赖实现类的抽象接口,从而达到具体实现类在调整时不会影响调用者的目的。
在软件架构中依赖反转的原则同样适用,软件架构中上层模快不应该直接依赖底层模快,而是应该依赖底层模快抽象接口,底层模快通过接口进行具体实现。依赖反转使得底层的变动不会去影响其上层。
![](http://tiebapic.baidu.com/forum/w%3D580/sign=7d9a227b9458ccbf1bbcb53229d9bcd4/7c48197fca806538c2932fdad2dda144ac348258.jpg?tbpicau=2025-02-21-05_5427e06dab429e694e1e39b757d5e8aa)
从第十二章开始进入了本书的第四部分,组件构建原则部分。在第三部分介绍的SOLID是用于指导如何构建组件,而第四部分中组件构建原则会指导如何对这些组件进行组合。
在第十二章中作者先介绍了组件定义以及发展历史,其中最重要的是就是组件定义部分。组件是软件中可独立部署的单元,如java中的jar包。一个设计良好的组件应该永远保持可独立部署的特性,并且可以独立开发。