symfony框架
… 灯光熄灭,剧院静默了片刻。 很快,您会听到音乐的第一声。 它开始胆小。 首先,小提琴与您相识,然后,逐步将其他乐器加入到普通旋律中。 乐团演奏着优美的交响曲……
发展与音乐演奏有很多共同点。 Web应用程序的每个部分都应正确,完整地工作,以响应用户的需求。 就像每个乐器都应完美发挥自己的作用一样,以使整个音乐作品和谐地听起来。
如果您还没有猜到,我们将从这种比较入手,向您介绍最悦耳的名称-Symfony。
今天,全世界有82.8 %的网站是使用PHP编程语言创建的。
可以使用纯PHP或其框架之一构建Web应用程序或网站。 它取决于应用程序的复杂程度,开发的时间范围,编码人员的经验以及其他一些因素。
Symfony在Laravel和CodeIgniter之后排名第三。 官方网站上列出了Symfony框架的许多优点。 但是,如果您想获得外部观点,我们将分享我们的专家见解。
在上一篇文章中,我们已经比较了Symfony和Yii的开发 。 现在,我们要专注于使用Symfony框架的优缺点。
那么,您是否想知道为什么在您的项目中使用Symfony?
什么是框架,为什么需要它?
在我们进入Symfony的讨论之前,让我们澄清一下什么是框架。
框架是通用的,可重用的程序的集合,它们完成特定的任务以促进软件应用程序的开发。
隐喻地,它是Web应用程序或网站开发的框架,骨架或地下室。 与您购买空房子并向其中填充家具的方法相同,开发人员会采用框架并向其填充功能模块。
使用框架不是必须的,但是这是使编码器的工作更简单的好习惯。 使用框架的原因有:
- 发展更快。 重复使用开箱即用的通用组件时,您可以节省两三天的时间。 节省的时间可以专门用于开发特定功能。
- 易于维护。 使用框架强加了一定的结构和遵循的通用规则。 因此,对于新的开发人员或团队来说,加入正在进行的项目将不是问题。
- 问题更少。 框架代码清晰可靠,可减少错误数量。
- 更好的安全性。 通过及时升级和增强安全性来支持框架组件。
可能没有好的答案,哪种解决方案更适合您的项目。 您可以阅读大量研究成果,但仍然没有清晰的愿景。 根据使用工具的人的不同,任何工具都可以是好是坏。 当您做出选择时,请让以下想法引导您:
没有擅长开发的人,框架就没有任何意义。 如果您找到了一个优秀的专家,那么只要他/她精通该框架,就没有关系。
选择共轭的好理由
Symfony于2005年发布,在赢得最成熟,最可靠PHP框架的声誉方面取得了长足的进步。 它是企业Web应用程序的第一选择。 这就是为什么:
- 高灵活性
Symfony是功能最丰富PHP框架之一。 使Symfony变得如此出色的两个最突出的技术优势是捆绑包和组件。
捆绑包与插件几乎相同。 就像将文件(PHP文件,样式表,JavaScript,图像)打包为实现任何功能(例如,博客,购物车等)一样。 束的主要好处是它们是分离的。 您可以重新配置它们并将其重新用于许多应用程序,以降低总体开发成本。
这些组件是通用功能,可减少日常工作并允许开发人员专注于特定的业务功能。 有30个有用的Symfony组件可以促进开发过程。 您可以独立使用组件,也可以毫无问题地添加自己的自定义模块。 Symfony组件也可以在其他框架(例如Laravel)或纯PHP解决方案中独立使用。
捆绑包和组件有助于消除体系结构中的严格依赖性。 您拥有的依赖关系越少,进行更改就越容易,而又不会破坏系统的其他部分。 因此,您可以使解决方案适应任何要求和用户方案,以创建高度灵活的应用程序。
图片来源: http : //www.programering.com/a/MTN4EjMwATE.html
2.技术背后的公司
Symfony是获得商业支持的少数框架之一。 公司创建者和赞助商SensioLabs为其声誉做出了积极贡献。 他们提供官方教程和认证。 在公司网站上,您可以找到世界各地即将举行的会议的时间表。 这表明了他们的意图和信念的规模和严重性。
3.经验证的可靠性
随着时间的流逝,Symfony证明了其可靠性,而其他许多框架都失败了。 phpBB,Drupal,Magento和eZ Publish等许多著名平台都使用其组件。 您肯定知道以下公司信任Symfony的网站:
4.易于测试
每行新的代码行都应经过测试,以保证应用程序的稳定工作。 捆绑软件的重用,严格的依赖关系以及创建设计模式的可能性有助于Symfony中更好的可维护性和测试。 由于使用PHPUnit独立库,因此单元测试非常容易。 功能测试也可以自动执行,以减少开发人员的日常工作。
5.长期支持
Symfony是一个经过定期测试的稳定且经过测试的框架。 最新版本保持长期支持并与较新版本兼容:某些版本长达3年。
6.大型社区
良好的社区是影响框架生存能力的方面之一。 官方网站上宣布了社区中有2000多位贡献者(Github上为1734位)。 这个数字是其他PHP框架社区的几倍。
为什么社区很重要? 不仅核心开发人员致力于改进。 Symfony是开源的。 这意味着来自世界各地PHP专家和爱好者都参与了使代码更适合所有人的工作。 在社区中,人们相互合作。 他们创建新的组件,尝试解决出现的问题或向他人提供建议。
7.好的文件
文档不完整或过时是许多技术的问题。 与其他PHP框架的文档相比,Symfony文档被认为是最好的文档之一。 它写的清晰,结构合理,随附eхamples,并在各个版本之间进行更新。 您可以找到每个组件和整个开发过程的说明。
不选择共奏的理由
如果我们仅提及加号和逃避减号,那将是不公平的。 没有什么是完美的!
- 性能
通常抱怨的主要缺点是Symfony性能。 对于高负载实时应用程序(当大量用户同时与某个应用程序交互时,例如在社交媒体中),性能至关重要。 但是,Symfony不断积累其他技术带来的最好的东西。 增强性能的方法之一是将您的应用程序从PHP 5.6迁移到PHP7,这可以使应用程序快近两倍。
图片来源: https : //www.cloudways.com/blog/php-5-6-vs-php-7-symfony-benchmarks/
2.发射时间更长
Symfony的一种常见做法是使用设计模式,即将一旦创建的代码应用于系统的其他部分。 这有助于测试和进一步的支持,但会降低开发速度并延迟启动日期。
3.陡峭的学习曲线
与例如Laravel和Yii相比,Symfony需要花费更多的精力来学习,而Laravel和Yii则更直观。 但这是最稳定的框架之一,可以使复杂的解决方案具有很多变化。 这就是Symfony的专家非常宝贵的原因。
结论
…音乐停止了。 当灯光再次亮起时,观众保持沉默片刻,在下一秒钟里鼓掌。 人们转身与其他观众分享他们的印象…
旨在简化和加快开发过程的框架。 Symfony是一个功能强大PHP框架。
由于基于模块化的体系结构,使用此平台创建的项目具有很高的可扩展性。 捆绑软件和组件的使用使它成为任何规模和复杂性的网站和应用程序的出色解决方案。 虽然学习起来并不容易,但总能找到一份很好的文档,官方课程和社区支持。
速度和性能并不是Symfony的强项。 但是经验丰富的编码人员可以克服高负载应用程序可能出现的问题。
无论选择哪种框架,都不要忘记它只是一种工具。 成功与否取决于开发是否顺利进行。
还有更多关于PHP框架的问题? 写信给我们,在Greenice.net ,我们将为您提供帮助!
翻译自: https://hackernoon.com/7-good-reasons-to-use-symfony-framework-for-your-project-265f96dcf759
symfony框架