thinkphp&laravel&swoft
三个框架的目录设计:
首先来看下三者根目录下,有哪些目录:
一眼望去,根目录下的文件数量,laravel7(10) > thinkphp6(8)= swoft2(8),直观上看,三者的复杂程度似乎成正比。
功能的多样性似乎也成正比。
如果我们将目录结构理解成一个函数,则嵌套的函数越多则越复杂,整个的性能也就越差。
我们现在分析下,这三个框架具有哪些共性。
从以上得知:
1、laravel的层次最多。
2、thinkphp的应用启动放在public目录下;laravel同样也放在了public下,但同时使用启动层去配合启动,可以缓存数据,减少启动流程。swoft比较特别,将启动程序放在bin目录下,public目录只用作公开资源。
3、thinkphp没有单元测试层。
4、laravel可以在程序中设计数据库,并保留一份完整的记录,thinkphp与swoft更倾向于剥离开。
5、swoft没有专门的路由层,路由设计比较简单。
如果根据MVC的设计模式去思考,三个框架一样,app层内放置了controller与model层,view层放在资源层或单独一层,是按照动静分离思想去分割。