开发笔记 -- 设计模式
一、各种设计模式详解
http://c.biancheng.net/view/1397.html
二、开发常用设计模式&最佳实例:
1.工厂模式
通过工厂方法创建指定类型的对象,常与其他设计模式配合使用
* 最佳实例: spring bean factory
2.策略模式
封装不同类的处理逻辑为策略,配置工厂模式在不同入参情况返回不同策略类
相对固定的分类处理代码更加优雅易扩展
* 最佳实例: JSON,Gson等对数据序列化的方式处理方式
3.责任链模式
流程化的链式处理逻辑
* 最佳实例: gateway, netty, springsecurity等
4.visitor模式
遍历过程中处理节点任务逻辑
* 最佳实例: DAG调度框架实现
5..单例模式
重复使用的实例,特别是无共享变量的实例可以使用单例模式控制为只创建一次
* 最佳实践: spring - Bean
6.观察者模式
使用于发布订阅,监听触发等场景
* 最佳实例: spring - Listener
7.代理模式
生成代理对象丰富或完善处理逻辑
* 最佳实例: mybatis(mapper使用动态代理实现)