依赖倒置原则
依赖倒置原则
高层模块不应该直接依赖于底层模块的具体实现,而应该依赖于底层的抽象。模块间的依赖是通过抽象发生,实现类之间不发生直接的依赖关系,其依赖关系是通过接口或抽象类产生的。
接口和抽象类不应该依赖于实现类,而实现类依赖接口或抽象类。面向接口编程的思就是很好的最好体现。
好莱坞原则
放在这里的意思就是别调用我,我会来调用你。具体体现是模板方法模式,所有的组件都是被动的,所有的组件初始化和调用都由容器负责。
依赖倒置原则在做框架设计,控制层服务层协作开发时这一原则尤为重要。
说到依赖倒置,不得不说Spring框架的IOC,所有的类都会在spring容器中登记,告诉spring你是个什么,你需要什么,然后spring会在系统运行到适当的时候,把你要的主动给你。所有的类的创建、销毁都由 spring来控制,也就是说控制对象生存周期的不再是引用它的对象,而是spring。
面向接口、降低依赖;容器介入,管理内存
总结:
本周学习了充血模型下的真正面向对象编程是怎样的,我们平时大多使用都是贫血模型,可能很多人都没有使用过充血模型。
还系统的学习了软件设计的几大原则:
开闭原则
依赖倒置原则
里式替换原则
单一职责原则
接口隔离原则
以及他们的最佳实践
还了解了对于系统设计的目的是怎么样的:
使用设计原则和设计模式,去设计强壮、灵活、易复用的程序,更好的应对需求变更。
什么是好的设计什么是坏的设计:
僵硬
脆弱
不可移植
晦涩
过渡设计
评论