设计模式
设计模式
设计模式遵循的原则
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
进行授权