对象模型——模板方法
1、模式分类
从封装变化角度对模式分类
-
组件协作:
Template Method
Strategy
Observer/Event
-
单一职责
Decorator
Bridge
-
对象创建
Factory Method
Abstract Factory
Prototype
Builder
-
对象性能
Singleton
Flyweight
-
接口隔离
Facade
Proxy
Mediator
Adapter
-
状态变化
Memento
State
-
数据结构
Composite
Iterator
Chain of Resposibility
-
行为变化
Command
Visitor
-
领域问题
Interpreter
2、重构获得模型
面向对象为了提高“复用性”
寻找变化点,分离变与不变
设计模式不应先入为主,不断修正
3、重构技法
graph LR
静态-->动态
早绑定-->晚绑定
继承-->组合
编译时依赖-->运行时依赖
紧耦合-->松耦合