设计模式1990年首次在建筑领域提出,Christopher Alexander说过:“每一个模式描述了一个在我们周围不断重复发生的问题以及该问题的解决方案”。因此,设计模式的初衷是提供重复性问题的解决方案。这是以后应用的判断标准。
设计模式应用在OOP中有七大原则,从效果上看与“求同存异”的外交政策类似。目的在于实体之间互不干涉、独立自主、交流畅通。生活中的例子俯拾皆是,避免多龙治水体现单一职责;避免朝令夕改体现开闭原则。
应用在OOP可总结为SOLID,分别是单一职责、开闭原则、里式替换、接口隔离、依赖倒置。单一职责建议一个类就做一件事;开闭原则建议设计类时应该对扩展部分开放、对修改关闭,简而言之,好的设计不应该修改已有代码;里式替换建议用超类接受子类,实际就是多态(运行时多态);接口隔离开放需要的接口,降低依赖;依赖倒置建议面向接口编程,既统一规范,又保留扩展性。
设计原则.png- 创建型
- 工厂模式(车间)
- 抽象工厂(定制车间)
- 建造者(流水线)
- 结构型
- 包含
- 装饰者(包装)
- 代理(代理商)
- 享元(缓存)
- 适配器(转接头)
- 相离
- 桥接(搭桥,解耦)
- 包含
- 行为
- 命令(关注请求)
- 责任链(关注结果)
- 模板(关注属性)
- 状态(关注状态)
- 观察者(关注变化)
- 策略(关注方式)
网友评论