文章

设计模式

设计模式

设计模式遵循的原则

1. 单一职责原则

就一个类而言,应该只有一个引起它变化的原因。 如果你能够想到多于一个的动机去改变一个类,那么这个类就具有多于一个的职责。

2. 开放封闭原则

软件实体可扩展(类,模块,函数等),但是不可修改。 在最初编写代码时,假设变化不会发生。当发生变化时,我们就创建抽象来隔离以后发生的同类变化。 拒绝不成熟的抽象和抽象本身一样重要。

3. 依赖倒转原则

高层模块不应该依赖底层模块。两者都应该依赖抽象。 抽象不应该依赖细节,细节应该依赖抽象。

4. 里氏替换原则

子类型应该能够替换掉它们的父类型。

5. 迪米特法则

如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用。如果其中的一个类需要调用另一个类的方法的话,应该通过第三者转发这个调用。 在类的结构设计上,每一个类都应该尽量降低成员的访问权限。

6. 合成/聚合复用原则

尽量使用合成/聚合,尽量不要使用类继承。

设计模式(建造型)

1. 简单工厂模式

2. 抽象工厂模式

3. 建造者模式

4. 原型模式

5. 单例模式

设计模式(结构型)

1. 适配器模式

类适配器有类适配器和对象适配器两种,类适配器需要多继承特性的支持。

1
2
3
4
5
6
7
8
class Adapter : Target
{
  private Adaptee adaptee = new Adaptee();
  public override void Request()
  {
    adaptee.SpecificRequest();
  }
}
1
2
3
4
5
static void Main(string[] args)
{
  Target target = new Adapter();
  target.Request();
}

2. 桥接模式

将抽象部分与它的实现部分分离,使他们都可以独立的变化。

3. 装饰模式

4. 组合模式

5. 享元模式

6. 代理模式

7. 外观模式

本文由作者按照 CC BY 4.0 进行授权

热门标签