PHP世界里,架构,框架和模式应该如何理解?

2017-03-25 13:12:35 admin ...

前言:

上次将一个解决方案放到聊架构系列中,遭到不少朋友的批评。入行做编程多年,也做了不少非代码的事情,不过的确没有好好了解这些概念。今天先从PHP世界里的架构、框架和模式说一下自己的理解,抛砖引玉,请高手指正。

为什么限定在PHP语言中,那是因为,php在中小型应用中比较多,方案相对成熟,这类的概念比较弱化,所以有一些约定俗称的理解,再者,小编多以PHP代码换饭吃,相对熟悉一些。

为了理解架构这个概念,我网上查了将近一个多小时,也没有理清头绪,有一个网名叫“冬眠的蛤蟆”说了一下他的观点,我比较认同,所以本文就以这位高手的定义为基础。

来自 冬眠的蛤蟆 概念:

设计模式<框架<架构,从复用角度讲:设计模式是代码级复用,框架是模块级复用,架构是系统级复用。

1、模式

php编程里,模式,也成为设计模式,主要有工厂模式,单例模式,观察者模式等等,这些模式的理解可以看我空间写的《PHP设计模式》系列。这些设计模式解决了一个问题,就是代码的复用,并且易于扩展。

另外还有大家都知道的MVC模式,它是一种非常成熟的web应用模式。

2、框架

如果有人问你,这个系统使用的是什么框架,得到的答案估计一般是PHP常用框架,如,CI, laravel,Yii, TP, yaf,Symfony,zf等等,这些框架封装了常用的模块,orm,模板等等。我想在PHP中,我们所说的框架就是指这些常用的PHP应用框架。

3、架构

某一个项目会有很多的系统组成,比如,后台管理系统,API,前端应用等等,这些系统组合在一起,就是一个体系。也就是说,架构是某些系统元素或者解决方案组合在一起,并能解决各部分之间相互通讯的集合,比如一个电商系统,分为好多的子系统,支付,物流,仓储,库存等等。

相似文章