嗯,我能想到的唯一的一點是,它減少了重用性。要區分代碼和UI邏輯。 從MVC架構,我們不應該在UI層中使用域邏輯?爲什麼我們不應該在UI層中嵌入業務邏輯?
0
A
回答
1
因爲您的用戶界面可能隨時間而改變。但業務邏輯保持不變。 或者,您可能想要更改邏輯,但保持外觀和感覺。
將它們混合在一起使其很難應用這些更改並容易出錯。
0
分離關注的幾個優勢:
- 它更容易理解不同的功能,如果他們實際上是分開
- 它很容易取代鬆散地連接到系統
- 它更容易模塊如果您需要一次只考慮一個抽象層次,請修改代碼。
數字2在這裏特別相關:從UI分離業務邏輯意味着您可以擁有多個用戶界面 - 網頁,桌面,手機 - 用於相同的後端。
0
把業務邏輯在UI層使得商務和UI邏輯更難理解並限制獨立地改變的能力/複用業務和UI邏輯。在實踐中想單獨更改/重用這些問題是很常見的,因爲在概念上他們甚至沒有切向地耦合的。
2
除了其他人所說,這會導致代碼幾乎是不可能的單元測試。另外,代碼的設計緊密耦合,並且凝聚力低。這兩個屬性可能導致在大型代碼庫上進行維護噩夢。
0
假設你已經創建了一個大的Web應用程序,並把它放在查看所有的業務邏輯(BL)有一天,你的客戶說,需要更改應用程序,並移動到Desctop應用程序,這將是很難遷移所有碼。 如果從視圖中分離的BL代碼它具有以下優點:1。 很容易測試代碼 2.保持 3.改變 4.和規模,你不違反原則
相關問題
- 1. 應用層和業務邏輯層之間有什麼區別?
- 2. 爲什麼業務邏輯應該移出JSP?
- 3. 爲什麼我們不應該把業務邏輯放在服務中?我們會不會取代我們的服務?
- 4. 爲什麼要將業務邏輯分爲三層?
- 5. 業務邏輯不是在表示層
- 6. 業務邏輯層設計
- 7. EF6和業務邏輯層
- 8. MVVM和業務邏輯層
- 9. 在.net中使用業務邏輯層
- 10. 業務邏輯在大型WinForms應用中侵入UI
- 11. UI VS業務邏輯MVC
- 12. 業務邏輯層是否應該實現授權和認證?
- 13. 我應該如何在Rails中實現業務邏輯層?我應該在哪裏放置這些代碼?
- 14. 我應該在哪裏編寫業務邏輯?在前端(業務層)還是在存儲過程中?
- 15. 爲什麼我應該在if塊中使用正邏輯?
- 16. 我應該從UI層返回到業務層?
- 17. 您使用什麼.Net業務邏輯層框架?
- 18. 控制器邏輯與服務/業務層邏輯
- 19. 業務邏輯應該放在域還是服務中?
- 20. GWT:我的應用程序的邏輯嵌入在UI接口?
- 21. 爲什麼人們使用評論作爲商業邏輯
- 22. 單元測試業務邏輯層
- 23. 業務邏輯層,多個表,關係
- 24. 實體框架和業務層/邏輯
- 25. 業務邏輯層次Servlet和JSP
- 26. 使用DBML設置業務邏輯層
- 27. 業務邏輯
- 28. 我應該如何實現複雜的業務邏輯?
- 29. 哪裏應該是我的邏輯服務層或控制器
- 30. 從WCF服務應用程序配置業務邏輯層
關注點分離正確。谷歌的「高內聚和低耦合」。 – dkretz 2011-04-20 18:44:12