设计模式(Design pattern)概述

来源:互联网 发布:gdi 矩阵变换 编辑:程序博客网 时间:2024/05/22 12:09

设计模式说白了其实就是使我们编程变得真正工程化的一个模式。

为什么要提倡“Design Pattern呢?根本原因是为了代码复用,增加可维护性。那么怎么才能实现代码复用呢?

面向对象有几个原则:

  • 单一职责原则 (Single Responsiblity Principle, SRP)
  • 开闭原则 (Open Closed Principle,OCP)
  • 里氏代换原则(Liskov Substitution Principle,LSP)
  • 依赖倒转原则(Dependency Inversion Principle,DIP)
  • 接口隔离原则(Interface Segregation Principle,ISP)
  • 合成/聚合复用原则(Composite/Aggregate Reuse Principle,CARP)
  • 最小知识原则(Principle of Least Knowledge,PLK,也叫迪米特法则)

设计模式就是实现了这些原则,从而达到了代码复用、增加可维护性的目的。


设计模式的三个类型:

常用的设计模式主要有23种,它们主要分为三个类型:

1. 创建型:

  • 单例模式(Singleton)
  • 抽象工厂模式(Abstract Factory)
  • 工厂方法模式(Factory Method)
  • 生成器模式(Builder)
  • 原型模式(Prototype)

2. 结构型:

  • 适配器模式(Adapter)
  • 桥接模式(Bridge)
  • 组合模式(Composite)
  • 装饰模式(Decorator)
  • 外观/门面模式(Facade)
  • 享元模式(Flyweight)
  • 代理模式(Proxy)

3. 行为型:

  • 责任链模式(Chain of Responsibility)
  • 命令模式(Command)
  • 解释器模式(Interpreter)
  • 迭代器模式(Iterator)
  • 中介者模式(Mediator)
  • 备忘录模式(Memento)
  • 观察者模式(Observer)
  • 状态模式(State)
  • 策略模式(Strategy)
  • 模板方法模式(Template Method)
  • 访问者模式(Visitor)

具体对每种 设计模式 的详细分析将在后面的博文中陆续更新。


0 0
原创粉丝点击