之前就看到有人在争 Laravel 和 Thinkphp 哪个好,我现在也想问问 yii 这个框架你们是怎么评价的?
因为我看到 yii2.0 都已经推出了那么久了,国内甚至连一个完完整整的中文文档都找不到。
他的文档我看得也很头疼,一个很简单的东西他会讲的非常复杂。比如说 Auth 验证器的文档如下
上面的代码中 ACF 以行为 (behavior) 的形式附加到 site 控制器。 这就是很典型的使用行动过滤器的方法。 only 选项指明 ACF 应当只 对 login , logout 和 signup 方法起作用。所有其它的 site 控制器中的方法不受存取控制的限制。 rules 选项列出了 yii\filters\AccessRule ,解读如下:
允许所有访客(还未经认证的用户)执行 login 和 signup 操作。 roles 选项包含的问号 ? 是一个特殊的标识,代表”访客用户”。 允许已认证用户执行 logout 操作。 @是另一个特殊标识, 代表”已认证用户”。 ACF 自顶向下逐一检查存取规则,直到找到一个与当前 欲执行的操作相符的规则。 然后该匹配规则中的 allow 选项的值用于判定该用户是否获得授权。如果没有找到匹配的规则, 意味着该用户没有获得授权。(译者注: only 中没有列出的操作,将无条件获得授权)
他给出的代码我就不贴上来了,反正看起来不是很顺畅。(我也不知道是不是我理解有问题,反正我看 Laravel 的代码就像看一篇英文文章一样很容易看懂,看yii就看的很晕,而且 Laravel 强调的配置化思想很重要,配置和组件分离,职责单一)
而且 Laravel 生成 form 标签,生成 input 表单甚至都是用 php 生成的(当然你也可以不用,不过不用的话,这个框架很多引以为豪的特性你又用不到了),视图层还用了大量助手函数,如果 PM 说前端某某地方要改,那么前端改完静态页面给我,我后端还得再去一点一点的改,麻烦死了(什么?你让前端去学 yii 的视图层和模版引擎?我一个后端看都头疼,你还让他们去学)和前端耦合过重,难不成这框架都是给全栈工程师用的? PS :楼主有代码洁癖。
尤其是 yii 的一些自动生成页面和 bootstrap 以及 jquery ,在前后端分离的大趋势下我不知道这款框架还能流行多久?
最后还有一个我想说的就是他的目录摆放方式真的很乱啊,而且它可以自己配置各种子控制器,子操作,公共操作,公共控制器,各种风格的开发者用这个框架弄出各种乱七八糟的子模块子控制器子目录, 不知道看到这种项目你们觉得乱不乱反正我是觉得很乱。
以上为我对他的一些看法,当然这框架我也就学过一点,做过一些自己玩的小项目,还没做过大型项目的开发,所以期待有做过大项目的人能比较公正的谈谈对这个框架的看法。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.