問題
之前自己寫亂寫的時候,總是把業務邏輯寫在 Controller 裏面。
也看到有人說,要把邏輯放在 DAO 之上的 Service 層。
在最近的一個小項目中,發現邏輯稍微複雜一點兒,把業務邏輯放在 Controller 裏面就不可維護了。
感覺又象是回到了以前過程式的編程,一點兒面向對象的味道都沒有了。
那麼,到底在哪些寫業務邏輯?
解決
在 SO上查了一查,發現大家都建議:
- 在Model 層面,部署業務邏輯
- 在Service 層面,部署應用邏輯
業務邏輯和具體的業務相關;應用邏輯和數據庫存儲相關。
要注意設計和 Model,設計好類,還有方法。在這個層面,最考驗面向對象的設計功夫。
封閉,可重用。