软件设计原则
1、 开闭原则 OCP
对扩展开放,对修改关闭。强调的是用抽象构建框架,用实现扩展细节。例如:我们版本更新,我尽可能不修改源代码,但是可以增加新功能。
2、 单一职责原则
类、接口、方法,只做单一的功能
3、 依赖倒置原则
通过抽象,使对象之间实现松耦合
4、 接口隔离原则
保证接口功能的纯洁性
5、 迪米特原则
最小知道原则
6、 里式替换原则
子类可以扩展父类的功能,但是不能改变父类的原有功能
7、 合成复用原则
尽量使用对象的组合、聚合,而不是使用继承关系
使用设计模式好处:
1、 写出优雅的代码
2、 更好的重构项目
3、 经典框架都在用设计模式解决问题
Spring中用的设计模式
1、 工厂模式 beanFactory
2、 装饰器模式 BeanWrapper
3、 代理模式 AopProxy
4、 单例模式 ApplicationContext
5、 委派模式 DispatcherServlet
6、 策略模式 HandlerMapping
7、 设配器模式 HandlerApdapter
8、 模板方法模式 JdbcTemplante
9、 观察者模式 ContextLoaderListener
Spring模块使用的设计模式:
Spring IOC 工厂、单例、装饰器
Spring AOP 代理、观察者
Spring MVC 委派、适配器
Spring JDBC 模板