在过去的两天里,我正在和Zend挣扎。它有如此奇怪的应用程序结构和如此多的全局函数。我需要填写所有这些全局功能吗?即使是设置一个简单的doctype,我也必须去一些bootstrap文件并在那里设置。如果我继续做这种愚蠢的事情,我什么时候才能完成我的申请?我曾与Asp.Net和JSF合作过,在使用如此出色的技术后,我觉得使用PHP是一个真正的痛苦(如果它不在我们的课程课程中,我会从那时起抛弃Zend)。我花了两天时间完全尝试运行一个简单的HelloWorld页面。为什么我要把简单的东西放在奇怪的地方?他们创建了许多具有奇怪名称的类,并迫使我们遵循特定的结构。我的意思是只是为了把doctype放在bootstrap类中我为什么要这样做? (我知道,因为框架说的是这样)。
我担心有一天他们会问我是否要在页面中使用html标签,我将再次需要在他们愚蠢的课程中进行配置。他们可能会问我是否要运行我的应用程序,我将再次在他们的类中设置一些属性值,否则它将无法运行。
重点是,我该如何记住它们?有多少常数,有多少功能?这是我的记忆测试与Zend合作吗?人们说Zend是最好的框架,但我觉得这真的是一种痛苦。你必须继续玩配置,直到你不能再玩了。
答案 0 :(得分:1)
Zend实际上并不比struts + appfuse + hibernate堆栈复杂得多。它有许多“全局函数”(我的回忆是它的“全局函数”更多是Singleton访问器)的原因是因为它试图让你的生活更轻松:而不是记住声明你正在处理的语法HTML strict或XHTML,它提供了一种简化的方法来完成同样的事情。更重要的是,保持在框架内意味着您可以花更多的时间来处理代码的逻辑,而不必担心将最终输出组装到浏览器。
而且,我不知道你和谁说话,但肯定不是“最好的”。它有最好的图书馆,它有一个非常好的公司资助它,但这并不是“最好的”。
就个人而言,我发现Zend确实做得很好 - 他们有一个很好的验证库,而且日志语法比log4j更清晰,更清晰。
另一方面,我觉得Zend框架不必要地笨重。 Symfony是我选择较大的项目,而CodeIgniter是较小的项目。
作为最后一点:不要通过框架判断语言。
答案 1 :(得分:0)
可能需要一段时间才能习惯,但是一旦你这样做,那就太好了。
以下是一些不错的快速入门/教程: