Maison > Article > développement back-end > symfony框架的优缺点有哪些
Symfony是一款基于MVC架构的PHP框架。它是一款免费软件,在MIT License许可下发行。2005 年 10 月 18 日,其官方网站 symfony-project.com 对外开放。2011 年 Symfony2 正式发布,随即启用全新的官方网站 symfony.com。
目标
Symfony 致力于减少重复代码的编写,以加速 Web 应用的开发和维护。它需要以下软件的支持:安装过 PHP5 的 Unix,Mac OS 或 Microsoft Windows 等操作系统作为 WEB 应用服务。Symfony 与许多关系型数据库集成的也非常好,成本也较小。
Symfony 致力于在企业背景下创建健壮的应用,同时也给予了开发者强大的配置功能:从文件结构到外部目录,几乎所有的东西都可以自定义。Symfony 也捆绑了一些诸如测试、调试、文档生成等额外的工具来满足企业的开发过程。
symfony框架的优缺点
优点:
1、完整实现了MVC三层
2、封装了所有东西,包括 $POST,$GET 数据,异常处理,调试功能,数据检测
3、包含强大的缓存功能
4、自动加载Class,能够很随意的定义各种自己的class
5、强大的语言支持
6、具有很强大的view层操作,能够零碎的包含单个多个文件
7、非常强大的配置功能,使用xml配置能够控制所有框架和程序运行行为
8、包含强大的多层级项目和应用管理:Project --> Application --> Module --> Action,能够满足一个项目下多个应用的需要,并且每层可以定义自己的类库,配置文件,layout
9、非常强大的命令行操作功能,包括建立项目、建立应用、建立模块、刷新缓存等等
10、Symfony绝对是开发大型复杂项目的首选,因为使用了Symfony,将大大节约开发成本,并且多人协作的时候,不会出现问题,在Project级别定义好基础Class以后,任何模块都能够重用,大大复用代码.
缺点:
1、最大的问题也在于使用了太多风格迥异的开源项目来组合成框架
2、由于Mojavi和Propel本身都相当复杂,因此Symfony的结构非常复杂,难以理解和学习
3、缓存功能无法控制,每次开发调试总是缓存,需要执行 symfony cc,symfony rc来清除和重建缓存
4、效率不是很高,特别是解析模板和读取配置文件的过程,花费时间不少
5、学习成本很高,并且国内没有成熟的社区和中文文档
评价:
Symfony绝对是企业级的框架,唯一能够貌似能够跟Java领域哪些强悍框架抗衡的东西;强悍的东西,自然学习复杂,但是相应的对项目开发也比较有帮助,自然是推荐复杂的项目使用Symfony来处理,觉得是值得,后期的维护成本比较低,复用性很强。
相应的如果使用Symfony的应该都是比较复杂的互联网项目,那么相应的就要考虑关于数据库分布的问题,那么就需要抛弃Symfony自带的数据库操作层,需要自己定义,当然了,Symfony支持随意的构造model层
更多相关知识,请访问 PHP中文网!!