转一篇YII和CI的评价,仅供参考

最近要自己一个人做一个网站,于是在CI和YII中选择。

由于Ci之前看过,所以简单的看了下号称速度最快的Yii的官方文档,也下载了一个官方例子运行。

发现Yii功能挺强大的,在功能方面和我以前看过的Python的django框架很相似。

但是Yii的缺点也很明显,所以如果有在两者之间犹豫的同学可以借鉴一下的思路。

第一、Yii的OO很纯粹

里面各种接口、类、继承、扩展,显得很庞大,所以不适合对OO不是太理解的同学。当然如果你想以学习OO为目的,可以使用Yii;如果是实际生产,注重开发效率还是CI好。加之我之前一直使用的asp.net,所以我个人对OO不怎么感冒。

第二、Yii的功能很强大

功能强大是好事,也是坏事。我一直认为,框架虽然帮你做了很多,但是没有万能的框架,框架功能越多,符合实际需求预期效果的功能相对就越少,花费时间学习的成本就越高。这一点我在ASP.net上是深有体会。

总结:Yii自我标榜easy,其实完整的学下来并不简单,至少他需要你掌握OO的知识。所以我认为,Yii适合业务逻辑相对复杂的业务系统开发,比如项目管理,OA之类的,因为很多组件已经集成,不用你自己东拼西凑再花时间去找;CI更适合做业务逻辑相对简单的互联网应用,简单高效,自己动手。

所以最后还是决定使用CI,一点愚见,欢迎拍砖。

这个我有发言权,我之前用ci开发过一个商城、一个cms;最近又学yii开发一个cms。我的感想:ci的结构适合oo经验不丰富的开发者,结构和手册简明易懂,我刚开始就是边看手册边开发商城;yii就是学习曲线陡点,手册要看两边,然后demo blog再看两边,然后边看api边开发,中间会出现多次卡壳要上论坛求助,但是真正掌握后开发效率会高于ci的,就那个Crud不是ci能比的。

我对两个框架都有实际项目经验。之前一直用CI,后来去一家美国公司工作,他们用的是Yii

CI跟Yii根本不是一个档次的,CI只适合做些小玩意,要认真做开发还是Yii更合适

Yii的主要问题是用的人太少,因此网上能找到的资料不多

不过即使经常卡壳,开发效率也比CI要高不少