一、设计模式分类
二十三种设计模式,大致分为三大类:
创建型5种:
单例、工厂、抽象工厂、建造者、原型模式
结构型七种:
适配器、装饰、桥接、组合、享元、代理、外观模式
行为型11种:
观察者、模板、命令、状态、职责链、解释器、中介者、访问者、策略、备忘录、迭代器
二、设计模式六大原则
1. 单一职责原则
一个类,应该仅有一个引起它变化的原因。
2. 开放-封闭原则
软件实体(类、模块、函数等)应该可以扩展,但是不可修改。
3. 依赖倒转原则
A. 高层模块不应该依赖底层模块。两个都应该依赖抽象。
B. 抽象不应该依赖细节。细节应该依赖抽象。
4. 里氏代换原则
子类型必须能够替换掉它们的父类。
5. 迪米特法则=最少知识原则
如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用。如果其中一个类需要调用另一个类的某一个方法,可以通过第三者转发这个调用。
6. 接口隔离
建立单一接口
a.客户端不应该依赖它不需要的接口
b.类之间依赖关系应该建立在最小的接口上
接下来是以 PHP 进行编码,开始我们的设计模式之旅