mvc架構
MVC是三個單詞的首字母縮寫,它們是Model(模型)、View(檢視)和Controller(控制)。
1)最上面的一層,是直接面向終端使用者的"檢視層"(View)。它是提供給使用者的操作介面,是程式的外殼。
2)最底下的一層,是核心的"資料層"(Model),也就是程式需要操作的資料或資訊。
3)中間的一層,就是"控制層"(Controller),它負責根據使用者從"檢視層"輸入的指令,選取"資料層"中的資料,然後對其進行相應的操作,產生最終結果。
下面是一個史丹佛的經典圖
這三層是緊密聯絡在一起的,但又是互相獨立的,每一層內部的變化不影響其他層。每一層都對外提供介面(Interface),供上面一層呼叫。這樣一來,軟體就可以實現模組化,修改外觀或者變更資料都不用修改其他層,大大方便了維護和升級。
但是MVC有他比較嚴重的問題**,隨著業務越來越複雜,檢視互動越複雜,導致Controller越來越臃腫,負重前行。髒活累活都它幹了,到頭來還一點不討好。福報修多了的結果就是,不行了就重構你,重構不了就換掉你。**
引用地址
同時這種時候也容易造成model層的臃腫。因為為了迎合controller層的簡潔 導致大量的類的大量依賴,當然可以通過優秀的程式設計師來解決這個問題
相關文章
- MVC 與三層架構MVC架構
- iOS MVC架構介紹iOSMVC架構
- 從MVC框架看MVC架構的設計MVC框架架構
- iOS 架構模式–解密 MVC,MVP,MVVM以及VIPER架構iOS架構模式解密MVCMVPMVVM
- 極簡架構模式-MVC模式架構模式MVC
- 後MVC時代的前端架構MVC前端架構
- 架構之路(七)MVC點滴架構MVC
- 選用Vue做MVC架構模式VueMVC架構模式
- iOS 開發(二) MVC 架構篇iOSMVC架構
- MVC與三層架構區別MVC架構
- 說說三層架構和MVC架構MVC
- 從MVC到DDD的架構演進MVC架構
- Java Web(八) MVC和三層架構JavaWebMVC架構
- MVP那些事兒 (2) 初探MVC架構MVPMVC架構
- Spring的web MVC 構架模式 (轉)SpringWebMVC模式
- iOS MVC、MVVM、MVP架構模式淺淺析iOSMVCMVVMMVP架構模式
- 架構師對MVC設計模式的理解架構MVC設計模式
- iOS架構淺談從 MVC、MVP 到 MVVMiOS架構MVCMVPMVVM
- iOS架構入門 - MVC模式例項演示iOS架構MVC模式
- MVC 三層架構案例詳細講解MVC架構
- 架構設計的歷史·MVC·MVP·MVVM架構MVCMVPMVVM
- 許可權管理如何放到MVC架構中MVC架構
- net三層架構與MVC的區別架構MVC
- 膜拜阿里架構師全程手寫Spring MVC阿里架構SpringMVC
- [譯]iOS架構模式——解密MVC、MVP、MVVM和VIPERiOS架構模式解密MVCMVPMVVM
- 為什麼要使用MVC+REST+CQRS架構MVCREST架構
- EL&JSTL26_MVC&三層架構3JSMVC架構
- Ruby on Rails中的MVC架構是如何工作的AIMVC架構
- Android 架構設計:MVC、MVP、MVVM和元件化Android架構MVCMVPMVVM元件化
- iOS架構設計:揭祕MVC, MVP, MVVM以及VIPERiOS架構MVCMVPMVVM
- 79、概述struts,以及struts如何實現MVC架構的?MVC架構
- 探索從 MVC 到 MVVM + Flux 架構模式的轉變MVCMVVMUX架構模式
- iOS VIPER架構實踐(一):從MVC到MVVM到VIPERiOS架構MVCMVVM
- MVC專案實踐,在三層架構下實現SportsStore,從類圖看三層架構MVC架構
- MVC、MVP、BloC、Redux四種架構在Flutter上的嘗試MVCMVPBloCRedux架構Flutter
- 從MVC和三層架構說到ssh整合開發(下)MVC架構
- 從MVC和三層架構說到ssh整合開發(上)MVC架構
- MVC、MVP、MVVM,談談我對Android應用架構的理解MVCMVPMVVMAndroid應用架構