我是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