我是Java程序员谁试图调查CakePHP - 目前我有应用程序结构/设计问题。我无法理解将核心应用逻辑放在哪里。CakePHP - 在哪里放置服务逻辑
当我的JavaEE正在开发,常见的方法看起来像以下:
模型类是简单的豆代表数据实体(产品,人物等) - 大多喜欢用getter/setter方法的数据结构;
控制器类是足够简单的类,其聚集必要的数据,并将它们注入到专用View模板,然后将其发送到用户;
DAO(DataAccessObject)或存储库类是那些可加载和存储实体到数据库;
服务类通常是包含某些业务逻辑方法的单例 - 这些方法由控制器,其他服务或调度动作调用,另一方面它们自己调用DAO/Repository方法来获取或修改数据。
例如,如果我有实体Person
,Product
和Order
,当用户选择了一些产品,然后点击“放入我的购物车/篮” new Order
此Person
应创建这Product
应该加入这个Order
(我们可以检查Person
不坏债务人和Product
出现在商店等) - 所有这些工作都是由一些控制器进行调用的OrderService
方法进行。
通常某种国际奥委会(控制反转)用于使所有的服务和控制器有联系的必要的服务等
现在我稍微感到困惑如何,这一切都是在CakePHP中完成。我应该在哪里放置这个商业逻辑等?
感谢您的解释。提到ActiveRecord模式让我对这件事更加清楚。关于您的个人观点 - 您认为哪些PHP框架在MVC理念和良好实践之后更好? – 2012-08-13 04:10:02
@RodionGorkovenko,在编码实践方面目前是最好的,被认为是Symfony2。但这就像在补习班里最聪明的一样。而Sf2 [不是MVC框架](http://fabien.potencier.org/article/49/what-is-symfony2)。但是你应该可以使用MVC设计模式。大多数声称为“MVC框架”的PHP框架都遵循RubyOnRails对MVC的解释(视图是模板和模型是ORM),其中包含所有缺点。 – 2012-08-13 04:31:50
爱你的答案@tereško。请保持它! – 2013-02-19 03:40:40