之所以想到去弄Yii,因为看到很多招聘PHP都要求必须精通Yii框架。
首先的印象这个框架是中国人创始的,但是却全都是英文的为主。这几天看了一下Yii权威指南。
说一下自己的初步感受(Yii 1.x):
1)文件结构凌乱。
既然是框架,却可以将action独立出来/protected/controllers/post/CreateAction.php。这样极容易让action与controller混乱。
2)对视图的控制欲太强烈,模板使用的是纯PHP。难道你做程序员也非得去写前端?
一个网站项目,让美工切出了HTML DIV CSS模板之后,又让PHP程序员再把里面的HTML标签换成PHP标签再搞一趟?
Yii的CHtml让很多人特别赞不绝口,但是他们似乎忽略了一个最核心的关键,网站
网页有功能没卖相根本就会很惨,你不要指望访客都会像程序员那种只喜欢方方框框没有一张图全都是表格一样、对得工工整整的页面。
要注意:网站网页他不像软件,软件可能几年十几年都是做的功能改进,但网页,访客喜欢新鲜感,界面视觉,所以需要不断的改界面,改UI。
是定期修改,三天一小改,一个月一大改,三个月重新改。界面需要经常改。这样的情况下,如果直接使用html原型来做模板,美工做好DIV之后就可以直接用,根本都不需要程序插手。可是如果用了CHtml这样
高度耦合的视图(模板)写法,那么必须得
多出一道工序,那就是还需要一个懂得Yii的程序员将美工已经做好的DIV HTML再转成Yii视图模板中的标签,这样不是浪费吗?人力、时间、财力。与PHP的高效快速 背道而行?
实际上Yii的官网也是极其简陋的,苹果为什么会成功,卖相是关键,现在这个时代,UI界面真的太重要了。
3)感觉各个之间耦合度太高了,犹如一门新的语言。
Yii入门门槛比其他的框架高很多。各个之间都是高度耦合,都是些配置一样的设置,越是耦合越紧密,配置文件越是分散各个角落其实维护起来成本更高、时间更长、维护效率更低(当然,他可能运行效率很快)。
Yii对我的吸引:
1)51job、智联招聘上很多招PHP程序员的都要求需要精通Yii(其实看到那些要求我觉得很奇怪,描述上又要能够独立完成一整个项目又要精通Yii又要端精通DIV CSS UI,想让别人一个人搞,有点不合实际,Yii适合大型项目,如果一个大型项目中又要让程序员干Yii又要让他去写DIV这样不可笑吗?)
2)网上很多次方充满着对Yii的赞美、推荐,比如知乎上、搜索引擎中搜索MVC框架排名看到各大转载的文章、PHP MVC框架排名上,Yii都排名得很前,且很多神赞。
以上是我对Yii初步接触的一些感受,写出来希望能够一起探讨,目的是能够更快的掌握、领悟。by default7#zbphp.com