自研 PHP 框架 1.1_App 文件夹说明
说明
随着框架的慢慢搭建,文件数量在急速上升,说明文档如果不进行切分,会过于臃肿和庞大(和 MVC 架构的原理一样)。
为了更好的阅读体验,本文件将只进行一些简单的说明。
更详情的说明,会放到 docs/app
文件夹下对应的文档中,后续根据实际情况,可能会继续进行层次的细分。
框架所面临的情况其实和说明文档一样,随着功能越来越多,文件也会越来越多,往往都是不得不进行组织管理方式的变更,才能更好的使用。
比如,1.1 当中,app.dmin
文件夹下面增加了 view
文件夹和 model
文件夹,目的也是为了切分成更小的单位,方便处理。
Change Log 会大致的列出,app
文件夹下大致所做的一些变更,也可以视为一个索引,根据索引继续往下,直接去阅读 docs/app
下对应的说明文档。
Change Log
-
index.php
新增命名空间app.dmin.ontroller
,使用use
引入类(controller文件说明) -
app.dmin.ontroller
文件夹下新增了文件test.php
和 文件html.php
(controller文件说明) -
app.dmin
文件下增加了两个文件夹model
和view
正如 1.0 版本中的目标所说,这个
demo
是设计一个MVC
架构的框架,所以,创建了这两个文件夹。
其起到的作用是一个更细化的分层,有点类似大公司流水线的岗位设计,很细分。
按照我们前面的描述,整个业务逻辑在controller
文件夹下的单一文件内其实也可以实现,这就类似小公司的岗位设计,并不像大公司那么细分,两种方案都可以实现需求。
区别在于更细化的设计,能够达到经常听到的“高内聚,低耦合”的效果,一个“零件”坏了,并不影响其他的零件,同时划分成更小的单位,就可以进行“并发操作”,将一个任务分给多个人,各自做一部分,最后进行合并,很显然和单人单文件的作业方式相比,好处时候显而易见的。
PS:本系列文章最佳阅读方式,IDE + 本地运行环境,IDE 中阅读可配合 demo 运行增进理解,GitHub 地址
本作品采用《CC 协议》,转载必须注明作者和本文链接