PHP框架的好处

Viv*_*adh 5 php frameworks

我已经听过很多关于PHP框架的信息,如ZEND,CodeIgniter,CakePhp等,我也很清楚使用它的一些优点,即提高生产力,减少错误等但是PHP框架不会使编码成为一个复杂的过程吗?没有框架的编码是否提供更大的灵活性?有些人说你不需要任何额外的框架,因为PHP本身就是一个框架.

那么为什么有这么多PHP框架的使用呢?PHP中的框架真的很必要吗?

dud*_*wad 7

这是一个广泛的问题,我认为这是一个重要问题.除非绝对必要,否则我不会使用框架.问题是,什么时候需要?

首先,我认为我对框架的这种奇怪的,过敏的反应是,没有经验的编码员想要将它们用于一切,甚至是小型网站....而且这很奇怪.也许它需要通过说他们已经使用了codeigniter来使他们的简历变得更大 - 但根据我的经验,这并没有太大的差别.招聘经理想要SKILLSETS,而不是那些能够阅读API文档的人 - 任何人都可以做到.如果您有关于程序架构和OOP原则的工作知识,那么您就被录用了.如果你没有,但你是一个codeigniter忍者,.... eeehhhh ....好吗?

框架有它们的用途,但我想当你的妈妈想要为她的烘焙销售做一个网站时,你可以使用一个更轻的重量系统一起打一页.我并不认为你应该包括代码"万一你需要它".随着时间的推移,我开发了自己的框架,这个框架非常小,这就是为什么我构建的每个网站或应用程序在Google全球网页加载时间排名前2%(尽管通常是前1%)的原因.

这并不是说它们很糟糕 - 只是不要跑去使用框架,因为你想把它放在你的简历上 - 从长远来看,你实际上是在为自己拍脚.为什么?因为您不会花时间使用该语言本身,所以您将花时间使用该框架的语言.以jQuery为例 - 我在YEARS中避免使用它,因为它不是JAVASCRIPT.人们嘲笑它 - 但是现在,当我进行技术面试时,我被问到(不可避免地):"你对jQuery的经验水平是多少",我说"不多",他们第二次看起来很惊讶,但是然后我跟着它"但是我刚刚通过本机JS中的控制反转来编写依赖注入" - 我被雇用了.

框架很棒.只要问问自己是否真的需要它们.特别是问题是:自己编码的好处是否超过了框架的时间收益(不要忘记平台的学习曲线)?一方面(非框架方法),你学到了很多,也许你花了更多的时间,因为你正在解决自己的问题 - 但你学到了很多语言本身(在这种情况下是PHP).另一方面,您学习了一个新的框架,并且可能更快地建立一个网站,这很可能会慢一些.

在我看来,Wordpress是一个过度使用框架的一个很好的例子.回到我的自由职业日,我曾经接受过需要我"改造一个wordpress网站"的演出 - 只是为了找到一个几乎无法加载的网站,因为有人插入了他们可以找到的每个插件并将一个简单的简单网站变成了一个没有胎面的坦克.在那种情况下,它是OVERKILL.

凭借我在CTO和技术主管职位上的经验,当有人把Wordpress和jQuery作为简历的主要观点时,对我说"我不知道关于OOP的事情以及如果需要如何使用这些语言",其中,现实世界(我在像Windows 8和其他大型项目那样的巨大项目上工作) - 就像OFTEN一样.微软明确禁止在他们的城域应用系统中使用jQuery来发布MS产品,因为他们希望免费展示他们的系统依赖.

但是,其他公司也使用框架.我刚刚使用基金会开始了一个项目并且很棒 - 但这是因为该项目的架构师对框架进行了全面研究,我们使用了它.结果是一个完全响应的原始代码库,从完整的显示器荣耀到三分之一大小的智能手机屏幕真棒.

简而言之:

框架,如果使用得当,可以很棒 - 特别是对于大型项目(我说的是企业大).对于较小的项目,它们不一定是坏的 - 但是当它们被使用而不考虑它们的实现时,就像使用手术刀的斧头一样.

只需2美分.

  • 有趣的帖子,但这特别引起了我的注意:_我已经开发了自己的框架_.通常(在我认为正确的)响应中,该短语出现在这里的问题中,不是!不要这样做!世界不需要另一个!等等(我们经常在这里看到它).虽然听起来你知道自己在做什么,OP应该意识到,随着时间的推移,一个人的"个人库"基本上成为一个框架,除了它没有那么多的功能,它没有经过良好测试,只有世界上有一些开发人员熟悉它. (2认同)

MrC*_*ode 6

php框架不会使编码成为一个复杂的过程吗?

这取决于你想做什么.如果你所做的只是为一个静态HTML的网站创建一个基本的联系表单,那么使用框架会使它成为一个更复杂的过程.另一方面,如果您正在构建一个大型应用程序,那么使用框架不一定会使它更复杂.

没有框架的编码是否提供更大的灵活性?

这取决于框架本身,它们并非完全相同.像Slim或Codeigniter这样的一些框架非常简洁,不会过多地妨碍灵活性,有些更复杂,例如Symfony2/Zend.

有些人说你不需要任何额外的框架,因为PHP本身就是一个框架.

他们是对的,你从技术上讲不需要框架,你可以使用普通的PHP做任何事情,你可以用框架做.框架实际上是从开发人员的个人档案函数和帮助程序代码演变而来的.PHP可以相对较低,因为它没有现成的功能来完成你需要的一切.在框架之前,开发人员倾向于拥有自己的一组帮助程序代码,这些代码可以在许多项目中重用.框架仍然基本上是这样,除了它们是数百或数千个开发人员所贡献的协作项目.

框架的另一个好处是,如果你有几个开发人员,一个开发了一个应用程序,你希望另一个开发人员为它做出贡献或接管它,那么如果开发人员熟悉所使用的框架,他就可以加快速度.在应用程序上比在PHP中编写的快得多.如果没有框架,新开发人员在开始考虑添加任何新功能之前,必须解密以前的开发人员系统.