Day26
承接昨天的MVC原理來學習過程與三角關係後,今天繼續來學習MVC的優點舆缺點,而助往後的App設計基礎。
1.MVC之優點:
-容易識別 :MVC將功能分割成一段段,提供一個可視性結構,增強程式的透明度與過濾,使程式的維護與修改變得更容易,且可以更迅速的搜尋/尋找錯誤。
-團隊分工效益明顯與方便管理:團隊可就功能、界面、控制器等各自負責的部份進行編寫/開發,既不會產生干擾也不會競爭,使開發進度的效益明顯,更加方便管理。
-擴充性明顯:開發過程中程式的修改與功能擴充簡易化,明確的區分「邏輯處理」與「資料呈現」與元件的功能,提高了程式的可用性。
-一供多用:在複雜的程式內,一個模型的內容/資料可供多個不同的界面使用,不但提高了模型的使用同時減少程式的儲存空間消耗,且簡化程式需多個模型的需求。
2.MVC之缺點:
-花費時間進行規劃:開發前需要精心嚴謹的規劃系統的架構,思考如何將NVC套用在開發的程式上開發時間延長。
-管理的文件增加:由於MVC將一個程式分成三個部分,管理三個部分不段增加的文件,使工作量持續增加。
-重覆測試:每個物件在使用之前都需要經過徹底的測試,以便嚴格分離是哪一個部份負責進行編寫/開發。
-成本高:MVC的分工部份令系統結構複雜化,造成系統肥大,成本高需時長,不適合小型專案。
3.MVC的爭議:
-程式的結構直覺化:因MVC的三部曲分工使程式的結構更容易開發,但造成資料交換複雜,如使用者發出請求便需要經過三部曲的逐部通知後再回傳使用者。