PHP - 设计模式之 写在最后

面向对象编程的基本原则

1、单一职责原则。一个类,只需要做好一件事情,不要一个类就完成所有的事情,我们应该将其拆分成小的模块,每个负责每个的职责,切勿贪多。

2、开发封闭原则。一个类,应该可以扩展,但不可修改。不应该使用修改来增加功能,而是通过扩展来增加功能。

3、依赖倒置原则。一个类,不应该强依赖于另外一个类。每个类,对于另外一个类,都是可以替换的。比如有A和B两个类,如果A需要依赖于B,那实际上不应该在A类中,直接调用B类,而是应该使用依赖注入的方式,通过注入,将B类的对象,注入给A类,这样的话,B对A来说,是可以替换的。如果现在有一个类C,提供了跟B类一致的接口,这时候,就可以在C和B之间切换。

4、配置化原则。尽可能地使用配置,而不是硬编码。就是说,对于一些数据参数,我们应该把它写到文件里,调的时候,直接通过调取配置文件,获取相关参数,而非将这些配置数据,赤裸裸地写在代码行里。还有,像类的关系,也应该是可以配置,写入到配置文件的。比如3里面提到的例子A、B、C三个类,到底A是应该依赖于B,还是C,都是应该在配置文件里配置的,而非,在代码行里设置操作。

5、面向接口编程原则。而非,面向实现编程,只需要关心接口,而不是,关心实现。拿3的例子来说,比如A,只需要了解B和C提供了哪个接口,而不需要关心B和C是怎么实现的。

 

MVC结构

模型,试图,控制器。MVC结构是一种B/S或C/S软件工程的组织方式。

1、模型(Model):数据的存储和封装。也就是说关于数据库的操作都是在模型层来完成的!

2、视图(View):展现层的封装,如Web系统的模板文件。也就是放html、html文件的地方,用来显示网页数据信息的。

3、控制器(Controller):业务代码或功能的实现部分。

作为一种工程组织结构,我们在开始编码的时候,需要设置Apache或Nginx,对入口文件进行映射。将所有非静态的url映射到PHP文件,准确地说是Controller控制器的某个方法。

 

配置与设计模式

1、PHP中使用ArrayAccess实现配置文件的加载

2、在工厂方法中读取配置,生成可配置化的对象

3、使用装饰器模式实现权限验证,模板渲染,JSON串化

4、使用观察者模式,实现数据更新事件的一系列更新操作

5、使用代理模式实现数据库的主从自动切换

 

-------------------------------------------------------------------------

相关声明:此次PHP设计模式系列,基于慕课网 Rango老师《大话PHP设计模式》课程,学习整理,仅供学习,不作任何商业用途!若发文有不妥之处,请联系本人,做相关处理。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章