我正在使用Zend Framework构建一个应用程序,我想知道这个框架是否过于臃肿或过度。也许就是我解决这个问题的方式,但我发现使用这个框架迫使我写了更多的代码。
有任何建议或意见吗?
答案 0 :(得分:3)
考虑将您的应用与Wordpress或Drupal等一些优秀的解决方案集成。
Altought ZF是最好的,你可以试试Symfony,也许你会发现它更友好。有很多用户贡献的现成资源。
答案 1 :(得分:3)
ZF组件非常适合目标任务 - 例如Zend_Oauth,Zend_Pdf,Zend_Gdata等。你可以使用它们来实现这些任务,即使你的应用程序不是基于ZF MVC结构,我绝对建议你这样做(免责声明:我是ZF的贡献者所以我可以是主观的) 。
至于Zend_Application,Zend_View等大型ZF,这取决于你的需求和风格。对于一个大型项目,我会说它去做,它在开始时可能看起来很大,但在任何情况下你都会得到大致相当大的东西。
另一方面,如果你有一个较小的项目,那么你可能会考虑使用简单的东西或者根本没有框架 - 但要注意,一些小项目的增长速度比你想象的要快。
看看你评论你正在建立票务系统和CMS,看起来它对于一个框架来说已经够大了。试试ZF吧。从更小,更简单的示例开始,使用一本好书,一些示例代码也可能非常有用。当你进入思维模式时,你会发现它实际上并不像你想象的那样臃肿 - 它只是有更多的功能和扩展点,但你会发现你可能需要这些功能。
答案 2 :(得分:1)
这只是建议或建议,因此请在此处插入免责声明。
要显示应用程序中的第一页,您需要编写多少代码。当你完成时,你的应用程序中将会有多少代码存在,并且它将在整个地方重复多少。以及改变/维护是多么容易。
使用zend,您现在可以编写更多代码,以便以后编写更少的代码。在开始时,您正在编写控制器,模型,映射器,视图,表单和布局。很快你就会向控制器添加动作,只编写表单和视图。
编写模型的成本不应分配给您编写的第一个视图。将其分配给添加,编辑,删除和列表视图以及搜索视图。
我只有4周进入zend框架,所以我认为自己是初学者,但我已经编程了25年,而且我已经有6年了,所以我看到了智慧。
你可能需要注意的事情是,某些zend例程在php 5.3中不起作用,我对此不再了解。
编辑:如果您正在寻找更简单的框架,请尝试codeigniter(或kohana,它是codeigniter的一个分支)。它使用起来比较简单,因为你手动添加文件,而不是运行脚本来生成控制器,模型等(比如symfony,zend,cakephp,yii等)。到目前为止,我所做的大部分工作都是使用codeigniter。
答案 3 :(得分:0)
如果您希望通过减少打字来加快开发速度,那么Zend Framework可能不是最佳选择。打字肯定需要更多时间,例如$this->getRouter()->getWhatever()->thenSmtMore()->theFuncNeeded()
。然而,它结构良好,设计精良。 Sasha Shumann在QA会议上所说的是“你花更多的时间阅读代码而不是写代码”。嗯,当你想到这种方式时,它是有道理的,但在现实生活中,特别是如果你正在开展一些你可以牺牲质量的低预算项目,Zend Framework的默认应用程序基础架构可能会减慢你的速度。但这并不意味着ZF臃肿......
我喜欢ZF的是,由于模块松散耦合,您总是有机会将其用作库或基于ZF组件开发自己的工作环境。而这正是我所做的,所以我花了几个月的时间来构建基于ZF组件的自己的框架,我可以按照自己喜欢的方式更快地构建新项目。
根据我的经验,当你使用任何框架,包括Ruby on Rails或Django时,是的,你在开始时获得了很多速度,但是当遇到特殊情况时,找到适合该情况的解决方案变得更加困难。解决方案是花费足够的时间来掌握框架,肯定得到一些社区支持,因为标准文档永远不够,并优化您的工作流程(如创建代码片段库,使用高级IDE,如netbeans或Zend Studio,使用代码模板等。)