设计模型:
1、创建型:封装对象创建的变化(Factory Method、Abstract Factory、Builder)
2、结构型:关注对象之间的组合关系 (封装与抽象、继承与聚合)
(Decorator---对象间多种组合关系,装饰者和被装饰者、Bridge--封装对象间的依赖关系、Composite--对象间存在的递归关系)
3、行为型:封装对象的行为
Strategy:将可能存在变化的策略或算法抽象为一个独立的接口或抽象类
Command:封装请求 State:封装状态 Visitor:封装访问 Iterator:遍历
如何封装变化(例:日志记录工具)
1、封装用户的请求 Command
2、封装对象的创建 Factory Method 、Abstract Factory
3、封装算法实现的变化 Strategy (也体现出Builder)
依赖注入 (杜绝new) ---彻底消除调用者和被调用者的耦合
1、实现依赖注入的轻量级容器工具
2、配置文件结合反射技术