MVC是三個單詞的首字母縮寫,它們是Model(模型)、View(視圖)和Controller(控制),
1)最上面的一層,是直接面向最終用戶的"視圖層"(View),它是提供給用戶的操作界面,是程式的外殼,
2)最底下的一層,是核心的"資料層"(Model),也就是程式需要操作的資料或資訊,
3)中間的一層,就是"控制層"(Controller),它負責根據用戶從"視圖層"輸入的指令,選取"資料層"中的資料,然后對其進行相應的操作,產生最終結果,
下面是一個斯坦福的經典圖

這三層是緊密聯系在一起的,但又是互相獨立的,每一層內部的變化不影響其他層,每一層都對外提供介面(Interface),供上面一層呼叫,這樣一來,軟體就可以實作模塊化,修改外觀或者變更資料都不用修改其他層,大大方便了維護和升級,
但是MVC有他比較嚴重的問題**,隨著業務越來越復雜,視圖互動越復雜,導致Controller越來越臃腫,負重前行,臟活累活都它干了,到頭來還一點不討好,福報修多了的結果就是,不行了就重構你,重構不了就換掉你,**
參考地址
同時這種時候也容易造成model層的臃腫,因為為了迎合controller層的簡潔 導致大量的類的大量依賴,當然可以通過優秀的程式員來解決這個問題
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/148048.html
標籤:其他
上一篇:請問,如何在PC設定并實作與網關單一通道的ARP協議?
下一篇:頂尖的網站建設公司
