PHP设计模式

hongcheng.xu 82241a8ef1 修改项目md 2 years ago
abstract_factory e2bec68b5a 增加抽象工厂模式 2 years ago
adapter a6feb3d9a2 增加适配器模式,代理模式,策略模式 2 years ago
bridge 36b61852d8 增加桥接模式,增加建造者模式 2 years ago
builder 36b61852d8 增加桥接模式,增加建造者模式 2 years ago
command 16dcdc0d7e 增加命令行模式 2 years ago
composite dde255f6f8 增加组合模式,装饰器模式,迭代器模式,模板方法模式 2 years ago
decorator dde255f6f8 增加组合模式,装饰器模式,迭代器模式,模板方法模式 2 years ago
facade 778ec95678 增加原型模式,增加共享单元模式 2 years ago
factory_method 185121e9e5 增加工厂方法模式 2 years ago
flyweight c2b64a307b 将文件命名改为正确的 2 years ago
interpreter 405282af39 增加解释器模式 2 years ago
iteration dde255f6f8 增加组合模式,装饰器模式,迭代器模式,模板方法模式 2 years ago
mediator 9628ac4870 增加中介者模式 2 years ago
memento 7a0850e45a 增加备忘录模式 2 years ago
observer c920a08c07 优化观察者模式 2 years ago
prototype 778ec95678 增加原型模式,增加共享单元模式 2 years ago
proxy a6feb3d9a2 增加适配器模式,代理模式,策略模式 2 years ago
responsibility_chain 675d7541ac 增加责任链模式 2 years ago
singleton f655066a40 添加单例模式:mysql单例示例 2 years ago
state af247e4126 增加状态模式 2 years ago
strategy a6feb3d9a2 增加适配器模式,代理模式,策略模式 2 years ago
template_method dde255f6f8 增加组合模式,装饰器模式,迭代器模式,模板方法模式 2 years ago
visitor 39f827df9a 增加访问者模式,修改项目说明文件 2 years ago
README.md 82241a8ef1 修改项目md 2 years ago

README.md

Php_Design_Patterns

学习理解设计模式,记录PHP关于23种设计模式的使用,欢迎star

设计模式分为:创建型模式, 结构型模式,行为型模式等23种设计模式。

一、五种创建型模式如下:

工厂方法模式factory_method
抽象工厂模式abstract_factory
单例模式singleton
建造者模式builder
原型模式prototype

二、结构型模式如下:

适配器模式adapter
桥接模式bridge
合成模式composite
装饰器模式decorator
门面模式facade
代理模式proxy
享元模式flyweight

三、行为型模式如下:

策略模式strategy
模板方法模式template_method
观察者模式observer
迭代器模式decorator
责任链模式responsibility_chain
命令模式command
备忘录模式memento
状态模式state
访问者模式visitor
中介者模式mediator
解释器模式interpreter

设计模式六大原则:

开放封闭原则:一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。
里氏替换原则:所有引用基类的地方必须能透明地使用其子类的对象.
依赖倒置原则:高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。
单一职责原则:不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。
接口隔离原则:客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。
迪米特法则:一个对象应该对其他对象保持最少的了解。