Home >Backend Development >PHP Tutorial >ZF2+Doctrine2和YII你更偏好哪个方案
个人从框架上比较偏好ZF2,他的确比较笨重一点,性能略低,但是他的耦合度和扩展性都比较好,而且社交化编程的氛围比较强,最近整个托管到GitHub了。但是,ZF2的ZF Tool就是个垃圾呀,功能太简单了,一些其它工具都有的自动代码生成工具都没有,比较影响开发效率。不过有个ORM Tools叫Doctrine2,比较类似PHP版本的myBatis(话说,myBatis连C#都支持,为什么不愿意支持PHP,感觉好受伤害),通过编码时增加注解,可以利用他的命令行工具自动生成代码,这个功能挺赞,可以减少不必要的工作量。还有composer类似于maven的依赖管理方式,也是一个很赞的功能。
YII,轻量级,性能相对也较高,YII Extension也比较丰富,但是框架的耦合度略高,这样对于一些定制和扩展并不是很友好。YII 最大的亮点之一就是自带的GII,作为Model层的生成工具相当的不错。如果通过定制代码模板的方式,也可以增加缓存、懒加载之类比较重要的ORM特性。而且,YII的中文文档让大家更容易研究学习。而ZF2的中文文档,或者文档本身就写的非常差劲了。
当然,还有很多其它的框架不在我的讨论范围之内。所以,对这两个框架有一定的了解和偏好的朋友可以一起讨论下自己的使用感受。CI/ThinkPHP/Symphony的支持者们请不要砸我,我没有黑他们的意思。
个人从框架上比较偏好ZF2,他的确比较笨重一点,性能略低,但是他的耦合度和扩展性都比较好,而且社交化编程的氛围比较强,最近整个托管到GitHub了。但是,ZF2的ZF Tool就是个垃圾呀,功能太简单了,一些其它工具都有的自动代码生成工具都没有,比较影响开发效率。不过有个ORM Tools叫Doctrine2,比较类似PHP版本的myBatis(话说,myBatis连C#都支持,为什么不愿意支持PHP,感觉好受伤害),通过编码时增加注解,可以利用他的命令行工具自动生成代码,这个功能挺赞,可以减少不必要的工作量。还有composer类似于maven的依赖管理方式,也是一个很赞的功能。
YII,轻量级,性能相对也较高,YII Extension也比较丰富,但是框架的耦合度略高,这样对于一些定制和扩展并不是很友好。YII 最大的亮点之一就是自带的GII,作为Model层的生成工具相当的不错。如果通过定制代码模板的方式,也可以增加缓存、懒加载之类比较重要的ORM特性。而且,YII的中文文档让大家更容易研究学习。而ZF2的中文文档,或者文档本身就写的非常差劲了。
当然,还有很多其它的框架不在我的讨论范围之内。所以,对这两个框架有一定的了解和偏好的朋友可以一起讨论下自己的使用感受。CI/ThinkPHP/Symphony的支持者们请不要砸我,我没有黑他们的意思。
这样问没有意义的,但是从开发效率和执行效率的角度我明显会偏向于Yii。一站式解决方案简直威武霸气。在现实使用中,通过Gii和ActiveRecord的组合可以非常快速地开发出复杂功能的应用。而框架本身自带的功能在安全性和扩展性方面都有很好地体现。
但是,问偏向需要先说明你的需求啊。若你需要框架整个解耦,我可能会推荐你用Symfony2。但是想要快速开发,高效运行,那选择Yii就准没错。
PS:有哪个框架没托管到GitHub么……