PHP 设计模式系列 —— 概述及常用设计模式大全

释放双眼,带上耳机,听听看~!

1、设计模式概述

在软件工程中,设计模式(Design Pattern)是对软件设计中普遍存在(反复出现)的各种问题,所提出的解决方案。这个术语是由埃里希·伽玛(Erich Gamma)等人在1990年代从建筑设计领域引入到计算机科学的。

设计模式并不直接用来完成代码的编写,而是描述在各种不同情况下,要怎么解决问题的一种方案。面向对象设计模式通常以类或对象来描述其中的关系和相互作用,但不涉及用来完成应用程序的特定类或对象。设计模式能使不稳定依赖于相对稳定、具体依赖于相对抽象,避免会引起麻烦的紧耦合,以增强软件设计面对并适应变化的能力。

并非所有的软件模式都是设计模式,设计模式特指软件“设计”层次上的问题。还有其它非设计模式的模式,如架构模式。同时,算法不能算是一种设计模式,因为算法主要是用来解决计算上的问题,而非设计上的问题。

本系列是常见设计模式的集合以及如何在 PHP 中实现这些设计模式,并为每种模式提供了相应的示例代码。

很多人都知道设计模式,但并非都了解如何在具体应用中实现,基于此我们推出了这一系列教程。

2、常用设计模式大全

设计模式可以按照结构被分成三种不同的类型:

2.1 创建型

在软件工程中,创建型设计模式用于处理对象的实例化:

抽象工厂模式(Abstract Factory)
建造者模式(Builder)
工厂方法模式(Factory Method)
多例模式(Multiton)
对象池模式(Pool)
原型模式(Prototype)
简单工厂模式(Simple Factory)
单例模式(Singleton)
静态工厂模式(Static Factory)

2.2 结构型

结构型设计模式用于处理类和对象的组合:

适配器模式(Adapter)
桥梁模式(Bridge)
组合模式(Composite)
数据映射模式(Data Mapper)
装饰模式(Decorator)
依赖注入模式(Dependency Injection)
门面模式(Facade)
接口模式(Fluent Interface)
代理模式(Proxy)
注册模式(Registry)

2.3 行为型

行为型设计模式用于处理类的对象间通信:

责任链模式(Chain Of Responsibilities)
命令行模式(Command)
迭代器模式(Iterator)
中介者模式(Mediator)
备忘录模式(Memento)
空对象模式(Null Object)
观察者模式(Observer)
规格模式(Specification)
状态模式(State)
策略模式(Strategy)
模板方法模式(Template Method)
访问者模式(Visitor)

2.4 其它

委托模式(Delegation)
服务定位器模式(Service Locator)
资源库模式(Repository)

给TA打赏
共{{data.count}}人
人已打赏
php笔记

关于php后台开发头条小程序支付遇到的坑以及解决方案

2019-6-15 16:57:48

php笔记

PHP实时生成并下载超大数据量的EXCEL文件

2019-11-25 12:25:50

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索