摘要:當(dāng)前有超過個框架,但是其中很多沒有使用。扮演了的角色,使用處理用戶輸入同時檢索數(shù)據(jù)為數(shù)據(jù)格式化,用于展現(xiàn)類似,提供了和之間的數(shù)據(jù)綁定借鑒了其他模式,沒有特定的名稱。
https://speakerdeck.com/addyosmani/digesting-javascript-mvc
這里看了一個關(guān)于js mvc框架的ppt,作者是一位google的工程師,感覺挺全面挺有意思,適合像我這種入門級人士,簡單翻譯一下,有很多術(shù)語是猜的,如有不對還請各位看官指正。
當(dāng)前有超過40個Javascript MVC框架,但是其中很多沒有使用MVC。
設(shè)計模式理應(yīng)是一個通用詞匯,但大多數(shù)人卻有自己的定義
MVC:提供一個簡潔的三個概念的分離, 數(shù)據(jù)(models),展現(xiàn)(views),用戶輸入(controllers)
MVP:
與MVC類似,但是極度關(guān)注解耦UI發(fā)展。
P(presenter)扮演了controller的角色,使用View處理用戶輸入
P同時檢索數(shù)據(jù)(model),為數(shù)據(jù)格式化,用于展現(xiàn)
MVVM:類似MVC,ViewModel提供了 Model 和 View之間的數(shù)據(jù)綁定
MV* 借鑒了其他MV模式,沒有特定的名稱。開發(fā)者通常為了適應(yīng)特定的項目去使用MV*模式,同樣的模式其他項目不見得適用。
使用典型的MVC模式,理論上來說效率更高,因為這個方法是經(jīng)過實踐檢驗的,經(jīng)典MVC模式參見Smalltalk的MVC模式如下
Models代表域里特定的知識和數(shù)據(jù)。
通知他們的觀察者
獨立于View,被Controller修改
兩種模式:
Domain model:數(shù)據(jù)代表app核心概念,比如書,合同,朋友
Application model:對象知道View的存在,而且View需要一些數(shù)據(jù)
Views通常關(guān)注于UI,但并不一定是
必須知道Models的存在并且可以關(guān)注到他們
必須知道一些Model屬性,他們關(guān)注的是什么
多個View可對應(yīng)同一個Model
ControllersControllers處理輸入,Views處理輸出
Controller修改Model狀態(tài),并不直接通知View
一些實現(xiàn)混合了Controller和View
如何工作?亂代碼 - Models:哪些唯一數(shù)據(jù)在我的app里展現(xiàn)
亂代碼 - Views: 用戶看到什么,做什么?
亂代碼 - Views: 哪些重復(fù)的展現(xiàn)可以作為js模板
亂代碼 - Controller: 處理用戶交互
Backbone MVC的實現(xiàn)*原文舉了若干例子,這里只截backbone
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/87578.html
摘要:面向?qū)ο笕筇卣骼^承性多態(tài)性封裝性接口。第五階段封裝一個屬于自己的框架框架封裝基礎(chǔ)事件流冒泡捕獲事件對象事件框架選擇框架。核心模塊和對象全局對象,,,事件驅(qū)動,事件發(fā)射器加密解密,路徑操作,序列化和反序列化文件流操作服務(wù)端與客戶端。 第一階段: HTML+CSS:HTML進階、CSS進階、div+css布局、HTML+css整站開發(fā)、 JavaScript基礎(chǔ):Js基礎(chǔ)教程、js內(nèi)置對...
摘要:面向?qū)ο笕筇卣骼^承性多態(tài)性封裝性接口。第五階段封裝一個屬于自己的框架框架封裝基礎(chǔ)事件流冒泡捕獲事件對象事件框架選擇框架。核心模塊和對象全局對象,,,事件驅(qū)動,事件發(fā)射器加密解密,路徑操作,序列化和反序列化文件流操作服務(wù)端與客戶端。 第一階段: HTML+CSS:HTML進階、CSS進階、div+css布局、HTML+css整站開發(fā)、 JavaScript基礎(chǔ):Js基礎(chǔ)教程、js內(nèi)置對...
閱讀 2798·2023-04-26 01:47
閱讀 3603·2023-04-25 23:45
閱讀 2487·2021-10-13 09:39
閱讀 621·2021-10-09 09:44
閱讀 1813·2021-09-22 15:59
閱讀 2793·2021-09-13 10:33
閱讀 1738·2021-09-03 10:30
閱讀 670·2019-08-30 15:53