第一章第一節(jié):MVX模式是什么?MVC袋坑、MVP仗处、MVVM詳解

1.1MVX模式是什么

MVC框架最早出現(xiàn)在Java領(lǐng)域,然后慢慢在前端開發(fā)中也被提到枣宫,后來(lái)又出現(xiàn)了MVP婆誓,以及現(xiàn)在最成熟的MVVM,下面我們來(lái)簡(jiǎn)單介紹一下各種模式也颤。

1.1.1MVC

MVC全名是Model View Controller洋幻,是模型(model)-視圖(view)-控制器(controller)的縮寫,一種軟件設(shè)計(jì)典范翅娶,用一種業(yè)務(wù)邏輯文留、數(shù)據(jù)、界面顯示分離的方法組織代碼竭沫,將業(yè)務(wù)邏輯聚集到一個(gè)部件里面燥翅,在改進(jìn)和個(gè)性化定制界面及用戶交互的同時(shí),不需要重新編寫業(yè)務(wù)邏輯蜕提。
Model(模型)是應(yīng)用程序中用于處理應(yīng)用程序數(shù)據(jù)邏輯的部分森书。
View(視圖)是應(yīng)用程序中處理數(shù)據(jù)顯示的部分。
Controller(控制器)是應(yīng)用程序中處理用戶交互的部分谎势。
通持袈龋控制器負(fù)責(zé)從視圖讀取數(shù)據(jù),控制用戶輸入它浅,并向模型發(fā)送數(shù)據(jù)。
優(yōu)點(diǎn):耦合性低镣煮、重用性高姐霍、生命周期成本低、部署快典唇、可維護(hù)性高镊折、有利軟件工程化管理
缺點(diǎn):由于模型和視圖要嚴(yán)格的分離,這樣也給調(diào)試應(yīng)用程序帶來(lái)了一定的困難介衔。每個(gè)構(gòu)件在使用之前都需要經(jīng)過(guò)徹底的測(cè)試恨胚。

    對(duì)于小項(xiàng)目,MVC反而會(huì)帶來(lái)更大的工作量以及復(fù)雜性炎咖。 
    接受用戶指令時(shí)赃泡,MVC 可以分成兩種方式寒波。一種是通過(guò) View 接受指令,傳遞給 Controller升熊。

那么用戶操作應(yīng)該放在什么位置MVC之間又有什么變化俄烁?
用戶(user)通過(guò)Controller來(lái)操作Model 以達(dá)到view的變化

1.1.2MVP

MVP是單詞Model View Presenter的首字母的縮寫,分別表示數(shù)據(jù)層级野、視圖層页屠、發(fā)布層,它是MVC架構(gòu)的一種演變蓖柔。作為一種新的模式辰企,MVPMVC有著一個(gè)重大的區(qū)別:在MVP中View并不直接使用Model,它們之間的通信是通過(guò)Presenter (MVC中的Controller)來(lái)進(jìn)行的况鸣,所有的交互都發(fā)生在Presenter內(nèi)部牢贸,而在MVC中View會(huì)直接從Model中讀取數(shù)據(jù)而不是通過(guò) Controller

MVP 模式將Controller改名為Presenter,同時(shí)改變了通信方向懒闷。
即:
View <------> Presenter <------> Model
各部分之間的通信十减,都是雙向的。
ViewModel 不發(fā)生聯(lián)系愤估,都通過(guò) Presenter 傳遞帮辟。
View 非常薄,不部署任何業(yè)務(wù)邏輯玩焰,稱為”被動(dòng)視圖”(Passive View)由驹,即沒(méi)有任何主動(dòng)性,而 Presenter非常厚昔园,所有邏輯都部署在那里蔓榄。

1.1.3MVVM

MVVM(Model View ViewModel)是一種基于MVC的設(shè)計(jì)

View一般就是我們平常說(shuō)的HTML文本的Js模板,里面可以嵌入一些js模板的代碼

      比如:Mustache默刚,比如jstl類似的模板偽代碼

ViewModule層里面就是我們對(duì)于這個(gè)視圖區(qū)域的一切js可視業(yè)務(wù)邏輯

  比如:特效甥郑,比如表單按鈕點(diǎn)擊提交,這些自定義事件的注冊(cè)和處理邏輯都寫在ViewModule里面了

Module就更簡(jiǎn)單了荤西,就是對(duì)于純數(shù)據(jù)的處理

  比如增刪改查澜搅,與后臺(tái)數(shù)據(jù)接口做交互

相比前兩種模式,MVVM只是把MVC的ControllerMVP的Presenter改成了ViewModel邪锌。
View變化會(huì)自動(dòng)更新到ViewModel勉躺,ViewModel的變化也會(huì)自動(dòng)更新到View上顯示(雙向綁定原理)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市觅丰,隨后出現(xiàn)的幾起案子饵溅,更是在濱河造成了極大的恐慌,老刑警劉巖妇萄,帶你破解...
    沈念sama閱讀 216,372評(píng)論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蜕企,死亡現(xiàn)場(chǎng)離奇詭異咬荷,居然都是意外死亡贞滨,警方通過(guò)查閱死者的電腦和手機(jī)览绿,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)党涕,“玉大人放典,你說(shuō)我怎么就攤上這事逝变。” “怎么了奋构?”我有些...
    開封第一講書人閱讀 162,415評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵壳影,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我弥臼,道長(zhǎng)宴咧,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,157評(píng)論 1 292
  • 正文 為了忘掉前任径缅,我火速辦了婚禮掺栅,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘纳猪。我一直安慰自己氧卧,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,171評(píng)論 6 388
  • 文/花漫 我一把揭開白布氏堤。 她就那樣靜靜地躺著沙绝,像睡著了一般。 火紅的嫁衣襯著肌膚如雪鼠锈。 梳的紋絲不亂的頭發(fā)上闪檬,一...
    開封第一講書人閱讀 51,125評(píng)論 1 297
  • 那天,我揣著相機(jī)與錄音购笆,去河邊找鬼粗悯。 笑死,一個(gè)胖子當(dāng)著我的面吹牛同欠,可吹牛的內(nèi)容都是我干的样傍。 我是一名探鬼主播,決...
    沈念sama閱讀 40,028評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼行您,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了剪廉?” 一聲冷哼從身側(cè)響起娃循,我...
    開封第一講書人閱讀 38,887評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎斗蒋,沒(méi)想到半個(gè)月后捌斧,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體笛质,經(jīng)...
    沈念sama閱讀 45,310評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,533評(píng)論 2 332
  • 正文 我和宋清朗相戀三年捞蚂,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了妇押。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,690評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡姓迅,死狀恐怖敲霍,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情丁存,我是刑警寧澤肩杈,帶...
    沈念sama閱讀 35,411評(píng)論 5 343
  • 正文 年R本政府宣布,位于F島的核電站解寝,受9級(jí)特大地震影響扩然,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜聋伦,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,004評(píng)論 3 325
  • 文/蒙蒙 一夫偶、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧觉增,春花似錦兵拢、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至敞斋,卻和暖如春截汪,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背植捎。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評(píng)論 1 268
  • 我被黑心中介騙來(lái)泰國(guó)打工衙解, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人焰枢。 一個(gè)月前我還...
    沈念sama閱讀 47,693評(píng)論 2 368
  • 正文 我出身青樓蚓峦,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親济锄。 傳聞我的和親對(duì)象是個(gè)殘疾皇子暑椰,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,577評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容