用抽象去构建框架、用实现去处理细节。
设计模式六大原则:
1、单一原则:一个类或者一个方法只负责一项职责,尽量做到类的只有一个行为原因引起变化
2、迪米特原则:最少知道原则,尽量降低类与类之间的耦合
3、接口隔离原则:建立单一接口;(扩展为类也是一种接口,一切皆接口)
4、里氏替换原则:子类可以扩展父类的功能,但不能改变原有父类的功能;(本质其实就是c++的多态)
5、依赖倒置原则:面向接口编程;(通过接口作为参数实现应用场景)
6、开闭原则:用抽象构建架构,用实现扩展原则
工厂模式:Spring Ioc bean的创建
jdk动态代理
cglib动态代理