为什么在php上使用Web框架(比如rails)?

ank*_*kur 9 php django frameworks ruby-on-rails models

这不是关于使用什么框架的问题.我已经学习了Rails和Django,并且我用PHP编写了所有的webapps.我的问题是为什么要烦扰框架?使用框架总是花费我更长时间,而不是重用旧的MySQL代码并使用phpMyAdmin构建"模型".我也喜欢自己写一切,因为我知道发生了什么.我仍然可以重用函数等来做我想要的事情,大多数框架似乎都缺少这种自由.

我不是说我的方式是正确的; 事实上,我正试图找出我的逻辑失败的地方.炒作不仅仅是空气稀薄.我错过了什么?

Mic*_*rdt 28

框架的基本思想是允许您在更高级别的工作中工作,并只编写您必须编写的代码来实现您的特定需求.所有其他重复的东西都是由框架处理的,并且可能比你自己做的更少的错误和安全漏洞.

学习框架可能感觉需要花费更长的时间而不是自己使用基本的语言功能和标准API,但事实并非如此 - 如果框架是好的并且应用程序是非平凡的,尤其是一旦你不是已经学会了这个框架(每个新项目使用不同的框架当然是愚蠢的),并考虑到找到并消除所有错误所需的时间,并纠正早已发现,消除和纠正的所有设计错误在其开发者社区的框架中.

几乎每个开发人员都有牛仔编码器的直觉告诉他"自己做事比使用其他人编写的代码更有趣,而且我确信我第一次做得好,所以它会更快,更好!".这些本能几乎总是错误的.

  • "这些本能几乎总是错误的." 我希望我能两次投票.我经常陷入这种陷阱! (8认同)

Har*_*ryM 21

框架允许您专注于应用程序本身,而不是担心您必须为每个应用程序编写的样板代码.它们允许您使用经过验证和测试的设计模式(如模型 - 视图 - 控制器),以更加逻辑(主要是面向对象)的方式构建您的站点.框架中的代码通常比您为一次性项目编写的代码更成熟,更高标准,因为框架有大量的开发人员社区,完善了代码,完善了代码.这意味着框架驱动的站点通常表现更好,更安全.

你还提到你喜欢自己写东西 - 我知道你来自哪里.我的解决方案是编写自己的框架 - 我可以在每个项目中重用和改进我的代码,并且我完全了解整个代码库.


Gra*_*ose 7

写下你自己可能会让你更容易理解自己的事情,但不幸的是,这会让其他开发者更难理解正在发生的事情.框架通常会更好地记录,并且拥有一个更大的社区,可以支持正在处理您编写的应用程序的新开发人员.