我即将开始开发一个新的网站,并一直在研究PHP框架 . 我不是一个高级的PHP开发人员,但我已经开发了几年的网站和应用程序(在asp.net中) .
我的网站主要是基于AJAX(使用jQuery)并且大量调用Web服务 . 经过一番研究,这就是我想出的:
CakePHP:最初开始在此开发,但发现它太复杂了 . 它迫使你使用和学习所有这些新东西只是为了使用它的事实有点令人生畏,所以我把它暂时放在一边 .
Zend:框架的性能让我有点怀疑,但我听说它对创建Web服务有很大的支持 . 我也听说它有点复杂 .
CodeIgniter:没有使用这个的真正原因 . 根据我读过的CodeIgniter和Yii非常相似,但是Yii有点快,并且没有PHP4不需要的代码(因为我计划在PHP5中专门开发) .
至于Yii,唯一令我害怕的是它比其他框架更新,所以它有一个较小的社区 . 它似乎也没有大量的Web服务支持(只有SOAP,根据我的理解)而不是Zend .
所以我的问题归结为:
-
这些事情会让我担心吗? (不是社区大,网络服务支持不佳)
-
还有什么我应该研究的吗?
-
我选择Yii而不是其他框架可以用于基于AJAX的主要Web应用程序吗?
巴拉
5 回答
您需要首先记录项目的要求以及为什么需要框架的原因 . 然后看看网站的未来和相关功能 . 然后选择提供最强功能的框架来满足这些要求 . 不要挂断意见 . 阅读文档并确定要使用的组件,从那里缩小搜索范围,然后全部进行实验 .
执行尽职调查不仅会为您付出代价,还会为您支付账单的客户带来回报 .
总结一下:
确定网站所需的组件 .
研究框架并确定符合您要求的匹配项 .
试验并了解哪种方法最适合这项工作 .
Edit/Opinion Additions:
如果这仅仅是一个个人成长项目,那么我会考虑使用简历上看起来最好的东西 . Zend拥有最大的名字和坚实的产品,所以他们默认赢了,因为它是旧的“不能因IBM论证而被解雇” . 一些大型玩家正在使用Symphony,但这是一个很大的学习曲线 . Yii,Cake,Kohana都有利有弊,以自己的方式表现出色 .
我曾经是Symfony,CakePHP,Zend框架,Kohana和Code Igniter的开发人员,但大约1年前我发现Yii,我的第一次(和第二次和第三次)印象非常好:
易于学习
易于实施
易于使用和扩展
非常,非常,非常快
支持多种语言
支持许多软件,服务器和加速器
支持MySQL,PostgreSQL,SQLite和Oracle ...... Firebird支持是测试版 .
我现在还记不起许多其他功能 .
下载它,使用它并用它实现你的项目,...你会惊讶的 .
现在我问你的问题:
这些事情会让我担心吗?社区并不像看起来那么小,目前,Yii有一个活跃的社区 . 我们不是少数 .
还有什么我应该研究的吗?您应该看看您的需求:您将使用的数据库,Web服务器以及其他,正如Randy所说 .
我选择Yii而不是其他框架可以用于基于AJAX的主要Web应用程序吗?是的 .
作为Yii的主要开发者,我可能不完全公平(但是想要!),但是,为了客观性,我应该提到我之前尝试过Zend和CodeIgniter .
在Yii的早期版本中,benchmark tests非常令人印象深刻,而且由于领导者在编程和设计方面没有足够的经验,你已经意识到它的潜力 .
另一方面,Yii仍然支持各种各样的实用和现实解决方案 . 这有点主观,但是如果你看一下那些经常使用的课程,你会发现他们在实际问题上的能力 .
文档(特别是API)经过严格调整,非常规范,在最初的几个小时内你可能会觉得奇怪和冷,但从长远来看,它肯定会让你的工作变得轻松(不像那些流行的docbuddies,喜欢在方法签名中交朋友) .
这些都有助于您的开发时间 . 人们可以在几周内创建认真的应用程序!
在使用Yii的1年半的时间里,我在网上有大约15个网站,所有网站都运行完美,速度快,Yii非常容易创建它们 . 大多数网站都不是微不足道的,它们是大型的真实世界网站 . 我可以根据要求提供链接 .
所以我可以向你保证通过选择Yii你一定能够做任何你想要的网站,它将是快速和安全的 .
几乎每个现代Web框架都对XHR / Ajax提供了出色的支持 . 根据您目前对语言的了解,您可以根据自己的喜好归结为个人偏好 .
我还建议Kohana,因为它非常稳定,成熟,并且有很好的支持 .
在你玩这个框架之前你不会真正知道,我建议在你的一些框架中浸泡你的脚趾 .