淺析MVC和說媒的過程,淺析MVC說媒過程

來源:互聯網
上載者:User

淺析MVC和說媒的過程,淺析MVC說媒過程
什麼是MVC?

MVC 全名是Model View Controller,是模型(model)-視圖(view)-控制器(controller)的縮寫,一種軟體設計典範,用一種商務邏輯、資料、介面 顯示分離的方法組織代碼,將商務邏輯聚集到一個組件裡面,在改進和個人化定製介面及使用者互動的同時,不需要重新編寫商務邏輯。

圖解MVC(斯坦福公開課的課件)



看了上面的MVC定義和圖解,對MVC有了初步的瞭解,特別是斯坦福這個課件,講的非常到位。但是在實際開發過程中,卻感覺離MVC的標準越來越遠。

我也看過一些朋友寫的iOS項目,看之前問MVC,都講的頭頭是道,但是在項目中卻體現的不是那麼好。我自己寫項目也是,理論上是理解了MVC的模式,但是真去寫代碼,還是覺得,有些地方不到位。

特別是C(我們就把UIViewController當做C來看,網上有對C的其他解釋)顯得別急臃腫。有時候C裡面代碼幾千行(並不是說代碼過千就是不符合MVC),C幹了很多M乾的事,同時也幹了很多V要乾的事。

這幾天我看了一個項目(AFNetworking的作者寫的DEMO,大家可以到github上下載),覺得MVC用的非常到位。每一步都是很周到,M和C的對接,V和C的對接,做到非常到位。

對於MVC,我說說我的理解,俗一點講:媒婆說沒得過程。M -> 男人 , V -> 女人 , C -> 媒婆。

C(媒婆) 要給 M(男人) 介紹個女朋友 V (女人),C 是一個橋樑起著對接的作用, M 和 V 本是不認識的兩個人,不能直接溝通。

說媒過程是這樣的:C 給 M 說,第一次見女孩子,你要給女孩子準備什麼礼物吧?

這個時候,M 肯定不會說,這點小事,你還來麻煩我,自己去買吧,那估計媒婆氣都氣死了,這事肯定成不了。(寫代碼的時候,不要讓C幹M得事)

這事必須 M 自己去做,M 買東西就是處理資料得過程。買東西怎麼去買?多少錢?怎麼講價?這都是 M 自己要去乾的事。最終結果是 M 買來礼物,礼物就是我們編程過程中 Model所產生的對象。

礼物買來了,M 也不認識 V ,肯定也不知道怎麼送給 V,所以這個時候 C 的作用就體現出來了,M 要把 買來的礼物(Object)交給C,讓C幫忙送給 V。

就這樣,V 拿到礼物,覺得不錯,就自己用了。

回想一下這個過程:C 發起一個請求,買礼物。M 知道之後,就去執行這件事,最終買來礼物。M 脫 C 把礼物送給V。一個完整的請求資料,展示資料的過程。

雖然有點俗,但是還是有一定道理的。

後面時間允許的話,我會詳解一下AFNetworking的作者寫的DEMO。看看MVC在項目的體現到底是什麼樣的。

我的公眾號 iOS開發 : iOSDevTip

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.