我正在运营一个关于PHP框架的网站,但是我找不到一个确切的定义,并且我一直在思考一个问题,如何制作一个好的PHP框架?特性?手册?效率?还是其他什么?
我正在运营一个关于PHP框架的网站,但是我找不到一个确切的定义,并且我一直在思考一个问题,如何制作一个好的PHP框架?特性?手册?效率?还是其他什么?
在程序员论坛上询问什么是一个好的框架,就像在汽车论坛上询问什么是一辆好车。意见各不相同,在95%的情况下,你选择什么并不重要,只要它正在积极开发。大多数回复都是基于信仰而不是主观比较。 :)
框架基本上是您可以选择构建程序的结构。它可以使您连接到许多不同的API,并确定自己应用程序的结构。我使用Zend框架。学习起来可能不是那么容易,但肯定拥有构建出优秀应用所需的一切。建议您在该网站上查看快速入门指南,以开始使用。它使用模型-视图-控制器(MVC),这在我看来是必要的。一旦配置好,它会使事情变得非常简单!
其他框架包括CodeIgniter和Symfony。有些人喜欢CodeIgniter因为其占用空间更小。这完全取决于个人偏好。无论您选择哪种框架,请务必使用网站上的文档,因为它对了解最佳使用方法至关重要。此外,不要害怕偶尔查看代码,以更好地理解其工作原理。
框架提供支撑,可以让您更快速/更干净地开发。它们通常为UI组件和底层数据库访问提供工具集。
对于(非常)小的项目,框架可能会显得过度臃肿,但通常它们会为您提供大量可重用的代码。
一些值得注意的PHP框架有: Zend Framework CodeIgniter Symfony CakePHP Mojavi
框架有很多优点-这里的文章也很好。但是请注意,它们并不总是最佳解决方案。您可能希望避免使用它们的原因有:
由于代码库的大小,它们往往很慢(例如,我见过引用Zend的简单PHP嵌入页面交付速度比普通速度慢10倍的数字-尽管这是其中较大的一个)。
它们在其预期工作的“领域”之外可能不太灵活。将框架扩展为执行非标准操作可能比从头开始编码要困难得多。
需要牺牲一些模块化。使用更简单的模板/控制文件系统(如TinyButStrong)的优点在于每个页面都是一个独立的单元,这自然倾向于使您的系统更容易进行单元测试和鲁棒性测试。
它们往往容易受到版本控制问题的影响。开发第一个网站很好,但在开发了十几个网站后,您很可能会发现您已经使用了三四个发布版本的框架,并且您有一个混合的代码库要处理-同步所有内容需要时间,您可能没有这个时间。
以上没有一个是反对使用框架的决定性论据,在许多(大多数?)情况下,优点会更加突出,但在选择框架之前,您应该首先考虑您的要求以及每个特定问题的最佳解决方案。