自从我还是个孩子以来,我一直在研究编程/脚本语言。我从HTML和CSS开始,然后继续学习PHP(我非常擅长),然后是Python,Perl和C(++)。我最近在PHP(以及MySQL)中做了很多工作。
花了这么多时间学习这些语言后,我现在想要做。我正在考虑开始/贡献一个开源项目;几乎可以肯定是某种Web应用程序。
根据我编写(不可否认的小)Web应用程序的经验,我发现编写“纯粹的”PHP是一个非常缓慢而乏味的过程。
我的问题是:如果我要从头开始编写一个相对复杂/大型的Web应用程序,我该怎么写呢?我应该使用纯PHP / MySQL,还是使用像Django,Rails或CakePHP这样的框架?
答案 0 :(得分:14)
从头开始编写一个复杂的应用程序,我绝对不会使用“裸PHP”:我当然会使用一个框架:它们提供:
请注意,此答案适用于个人项目和专业项目。
PHP中有几个很棒的框架,例如:
要记住的一件事:学习如何使用框架需要一些时间:从一个小项目开始,在去一个大项目之前,可能是一个好主意; - )
现在,当你问自己“我应该选择哪个框架”的问题时,这主要是个人偏好的问题......这里有几个问题/答案可能会有所帮助:
当你问我选择哪个框架时;好吧:
答案 1 :(得分:2)
如果您已经知道该语言,那么绝对应该使用框架(除非您是受虐狂)。
对我来说,除了他们通常与各种优秀的图书馆捆绑在一起的事实之外,使用框架就是有效地利用时间。
最重要的是,它可以节省您的时间。您已经摆脱了担心基础/架构的细节,并且能够将时间花在应用程序本身的功能上。
此外,它将保存其他时间;特别是因为你计划全部开源。
答案 2 :(得分:1)
取决于您的技能水平,是的,您可以在没有框架的纯PHP中完成。这也很好,IMO,以提高您在调试,逻辑和其他方面的技能。但是,另一方面,由于学习曲线,您将限制其他程序员改进/维护您的代码,在这种情况下,框架用作通用语言。我建议如果您的项目很复杂,或者其他程序员可以加入项目,那么您选择一个让您感觉舒适并使用它的框架。
答案 3 :(得分:0)
取决于谁将使用代码,必须运行哪个平台以及数据库应该是多么复杂。
如果您为公司或社区开发,使用PHP总是最容易的,因为有许多其他人知道它,因此对于公司来说,招募知道该语言的人更容易。
如果你最想自己开发,使用你最喜欢的东西,我甚至听说过用纯粹的普通lisp编写的网站。
如果应用程序可以在Windows上运行,那么C#也是一个很好的解决方案,因为您可以非常快速地开发Web应用程序,而.NET库可以轻松完成许多任务。
作为数据库后端,如果结构简单,你可以使用MySQL但是对于更复杂的数据库,我会使用postgres,因为随着复杂性的增加(主观意见),MySQL的性能似乎快速下降。
编辑: 正如其他人所说,框架总是一个好主意。大多数当前语言都有Web框架。对于PHP,最近向我推荐了CakePHP。