面向对象GOF23种设计模式综述
aukeys 人气:0一、什么是设计模式
设计模式,是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性、程序的重用性。
设计模式其实就是开发过程中常见问题的解决方案,是解决问题的思路。学习设计模式能更优雅的解决面向对程序开发设计问题。
二、设计模式分类
创建型模式,关注对象的创建
- Singleton(单例)
- Factory Method(工厂方法)
- Abstract Factory (抽象工厂)
- Builder(建造者)
- Prototype(原型模式)
结构型模式,关注类与类之间的组合
- Adapter(适配器)
- Bridge(桥接)
- Composite(组合)
- Decorator(装饰器)
- Facade(外观)
- Flyweight(享元)
- Proxy(代理)
行为型模式,关注对象和行为的分离
- Interpreter(解释器)
- Template Method(模板方法)
- Chain of Responsibility(责任链)
- Command(命令)
- Iterator(迭代器)
- Mediator(中介者)
- Memento(备忘录)
- Observer(观察者)
- State(状态)
- Strategy(策略)
- Visitor(访问者)
三、设计模式
- 单一原则:一个类只负责一 项职责
- 开闭原则:对扩展开放,对修改关闭,能扩展不修改
- 里氏替换原则:子类可以扩展父类的功能,但不能改变原有父类的功能。尽量用子类替换父类
- 依赖倒置原则:抽象不应该依赖于细节,细节应当依赖于抽象,面向接口编程
- 接口隔离:使用多个专门的接口,而不使用单一的总接口。即 客户端不应该依赖于那些它不需要的接口。
- 迪米特原则:最少知道原则,尽量降低类与类之间的耦合;一个对象应该对其他对象有最少的了解
加载全部内容