设计模式--Design Model
设计模式是一套被多人只晓得,反复使用的,经过分类编目的,代码设计经验的总结。
个人理解:简单来说,设计模式就是具有一定的代码规范的前人总结的经验,被后人们广泛使用。
目的:使用设计模式是为了可重用代码,让代码更容易地被他人理解并且保证代码的可靠性。
三大类型
- 创建型
- 结构型
- 行为型
七大原则
-
开闭原则:对修改关闭,对扩展开放
-
里氏替换原则:在任何引用对象基类的地方都可以自由的调用其子类对象
-
依赖倒置原则:抽象不应该依赖于具体类,而具体类应该依赖于抽象
-
单一职责原则:一个类尽可能只负责一个功能领域中的职责,或者说只有一个因其他变化的原因
-
迪米特法则:也称最少知道原则,一个软件实体尽可能少的与其他实体发生相互作用
-
接口隔离原则:使用多个专门的接口,而不是使用单一的接口,即可用户端不应该依赖于那些它不需要的接口
-
合成复用原则:优先使用已有的类进行合成(组合/聚合)使用,不能解决问题在考虑继承,因为继承会破坏类的封装性。
23种设计模式外加简单工厂
创建型
-
简单工厂模式(Simple Factory Pattern)
-
工厂方法模式(Factory Method Pattern)
-
抽象工厂模式(Abstract Factory Pattern)
-
单例模式(Singleton Pattern)
-
生成器模式(Builder Pattern)
-
原型模式(Prototype Pattern)
简单工厂模式不属于23种设计模式
结构型
-
适配器模式(Adapter Pattern)
-
桥接模式(Bridge Pattern)
-
组合模式(Composite Pattern)
-
装饰模式(Decorator Pattern)
-
外观模式(Façade Pattern)
-
享元模式(Flyweight Pattern)
-
代理模式(Proxy Pattern)
行为型
-
解释器(Interpreter )
-
模板方法(Template)
-
责任链(Chain of Responsibility)
-
命令(Command)
-
迭代器(Iterator)
-
中介者(Mediator)
-
备忘录(Memento)
-
观察者(Observer)
-
状态模式(Statue )
-
策略模式(Strategy)
-
访问者模式(Visitor)