ios MVC框架使用個人見解
MVC全名是Model View Controller,是模型(model)-檢視(view)-控制器(controller)的縮寫,一種軟體設計典範,用一種業務邏輯、資料、介面顯示分離的方法組織程式碼,將業務邏輯聚集到一個部件裡面,在改進和個性化定製介面及使用者互動的同時,不需要重新編寫業務邏輯。MVC被獨特的發展起來用於對映傳統的輸入、處理和輸出功能在一個邏輯的圖形化使用者介面的結構中。
MVC雖然給了我們一套使用參考方案,同時也應用的很多,但是,在使用的過程中會發現,如果用controller來整合model+view,那麼,對於一些相應的業務處理邏輯,將會使得整個controller非常的擁擠,很多的時候,可能寫的程式碼由於都擁擠在controller裡面,造成閱讀方法時,非常不便,甚至,我看到有的同事,在一個controller裡面寫上兩三千行的程式碼,如果業務需要,還得更多,這是非常不好的風格。其實一個controller裡的程式碼,最好控制在500以內,儘量不要超過800行。
曾問過好幾個同事,你們對MVC怎麼理解,以及覺得應該如何使用,回答的驚人一致,模型(model)-檢視(view)-控制器(controller),很官方的,其實也沒有錯,但是在談到使用的時候,他們更多隻是在controller裡面整合model+view,然後在裡面寫各種互動,各種業務邏輯處理,於是乎,在檢視他們的程式碼中,就能經常看到動則兩三千行的程式碼,這對後期維護是一個非常頭疼的問題,尤其是對於後期接手的人員,簡直等於謀殺,所以在我專案組裡,我都要求他們去不斷的優化自己的程式碼,爭取做到,單個controller類裡不能超過800行,剛開始的時候,對他們來說,是件很煩瑣的事情,尤其是以前就沒有考慮過如何去做,於是我給他們提出方案,在原因的模式中,再新增一個專門處理業務邏輯的類,同時建立類方法進行處理。於是,controller裡面的程式碼量,呈直線下降,而且閱讀起來也方便很多。
學習是一種過程,我們在學習的過程中要善於發現不足,同時去尋找更有效的解決方法,交流才能進步,第一次寫文章,下篇寫最近一個專案中使用runtime搭建的一個高度解耦的框架,如有不同見解,歡迎留言!
相關文章
- iOS MVC+P+M 個人Note小結iOSMVC
- Java Enum 個人見解Java
- 遞增排序個人見解排序
- go語言web開發框架_Iris框架講解(五)MVC包使用GoWeb框架MVC
- Spring MVC 中使用 Apache Shiro 安全框架詳解SpringMVCApache框架
- iOS的MVC框架之模型層的構建iOSMVC框架模型
- MVC框架MVC框架
- iOS的MVC框架之控制層的構建(下)iOSMVC框架
- iOS的MVC框架之控制層的構建(上)iOSMVC框架
- spring mvc 框架搭建及詳解SpringMVC框架
- 為什麼我不再使用MVC框架?MVC框架
- 全屏HTML 5適配 個人見解HTML
- Floyd演算法之個人見解演算法
- C++ new用法的個人見解C++
- P型別詮釋----個人見解型別
- .Net Core 3.0 MVC 中使用 SqlSugar ORM框架MVCSqlSugarORM框架
- 關於 Laravel 的一些個人見解Laravel
- iOS開發-MVCiOSMVC
- 手寫Spring MVC框架(一) 實現簡易版mvc框架SpringMVC框架
- C# EF框架基礎(非MVC)使用筆記C#框架MVC筆記
- 我對框架的一點見解框架
- 對MQTT和CoAP的一些個人見解MQQT
- iOS中常見 Crash 及解決方案iOS
- iOS 鍵盤框架IQKeyboardManager使用iOS框架
- 從MVC框架看MVC架構的設計MVC框架架構
- 【struts1】--Servlet講解MVC框架基本原理ServletMVC框架
- Spring MVC 常用註解的使用SpringMVC
- 使用Go寫一個簡易的MVC的Web框架GoMVCWeb框架
- 淺談,C語言編譯原理的個人見解C語言編譯原理
- iOS AOP 框架 - Aspects 原始碼解讀iOS框架原始碼
- iOS 開發之照片框架詳解iOS框架
- 使用Hexo框架10分鐘搭建個人部落格Hexo框架
- 實現MVC基礎框架MVC框架
- 手寫mini版MVC框架MVC框架
- Phalcon的MVC框架解析MVC框架
- 自制簡易前端MVC框架前端MVC框架
- 四種常見NLP框架使用總結框架
- iOS block的一些自我見解iOSBloC