@Chiang
2019-12-30T15:39:57.000000Z
字数 774
阅读 529
设计模式
在说设计模式之前首先我们得搞清楚点面向对象的一些概念,然后我们一个个看下这些设计模式都是些什么鬼
- 接口
- 类
- 对象
- 面向对象编程,有以下几样东西无时不刻的接触:接口、类还有对象。这其中,接口是类的原型,一个类必须要遵守其实现的接口;对象则是一个类实例化后的产物,我们称其为一个实例
- 上文中,我们定下了一个接口 (超能力模组的规范、契约),所有被创造的模组必须遵守该规范,才能被生产。
其实,这就是 php 中 接口( interface ) 的用处和意义!很多人觉得,为什么 php 需要接口这种东西?难道不是 java 、 C# 之类的语言才有的吗?这么说,只要是一个正常的面向对象编程语言(虽然 php 可以面向过程),都应该具备这一特性。因为一个 对象(object) 本身是由他的模板或者原型 —— 类 (class) ,经过实例化后产生的一个具体事物,而有时候,实现统一种方法且不同功能(或特性)的时候,会存在很多的类(class),这时候就需要有一个契约,让大家编写出可以被随时替换却不会产生影响的接口。这种由编程语言本身提出的硬性规范,会增加更多优秀的特性。
虽然有些绕,但通过我们接下来的实例,大家会慢慢领会接口带来的好处。
- 封装
- 继承
- 多态
创建对象
- 工厂
- 抽象工厂
- 单例
- 建造者
- 原型
处理类和对象的组合;在软件工程当中结构型设计模式是介绍如何将对象和类组装成比较大的结构并且它可以保持结构的灵活和高效,简化设计的一种设计模式
- 适配器
- 桥接
- 装饰器
- 组合
- 外观
- 享元
- 代理
主要描述类和对象的交互,和它对应的职责分配,关键在于类之间的通信和交互
- 模板方式
- 命令
- 迭代器
- 观察者
- 中介者
- 备忘录
- 解释器
- 状态
- 策略
- 责任链
- 访问者