成人怡红院-成人怡红院视频在线观看-成人影视大全-成人影院203nnxyz-美女毛片在线看-美女免费黄

站長資訊網(wǎng)
最全最豐富的資訊網(wǎng)站

mvvm框架有哪些?

mvvm框架有:1、MVVMLight框架,一個實現(xiàn)MVVM模式的輕量級框架;2、Prism框架;3、Caliburn框架,一個MVVM類的開源框架;4、MVVM Helpers框架;5、Cinch框架;6、MVVMFoundation框架

mvvm框架有哪些?

實現(xiàn)MVVM的框架

1、最強大且功能最多的組合框架——Prism

下載地址:http://compositewpf.codeplex.com/

開發(fā)者:微軟patterns & practices團隊

是否支持Silverlight:是

學(xué)習(xí)資料:Composite Application Guidance for WPF and Silverlight – May 2010.chm以及Quickstarts和StockTraderRI等。

源碼截圖如下:

mvvm框架有哪些?

Prism——之前又叫Composite Application Guidance for WPF and Silverlight,它是構(gòu)建復(fù)雜的基于WPF/Silverlight企業(yè)級應(yīng)用的主流框架。Prism中有幾個比較重要的概念:

1,BootStrapper:應(yīng)用程序切入點,繼承Prism的UnityContainer或MEF提供的MefUnityContainer,為系統(tǒng)提供一個容器。

2,Shell:它是一個外殼,通過UI元素和Region布局頁面。 它是應(yīng)用程序的頂級窗口,顯示的內(nèi)容一般就由View來填充,Shell本身并不知道它包含了哪些內(nèi)容,所以功能則是由各個Module來具體提供。

3,View:它等同于MVP模式、MVVM模式中的View??梢酝ㄟ^IRegionManager注入到Region中。

4,Module:可以把一個大項目拆分開來,每一個Module都包含View、數(shù)據(jù)、模型,主要用于實現(xiàn)復(fù)雜業(yè)務(wù)操作。

5,IModuleManager:主要用于管理模塊加載,可以實現(xiàn)動態(tài)加載。

6,IEventAggregator:事件處理接口,實現(xiàn)訂閱和發(fā)布模式,這也是MVVM框架的一般做法。

Prism是一個比較龐大的組合框架,4.0引入MEF及功能調(diào)整以后變得更加強大了,現(xiàn)在可以說是組合框架和應(yīng)用框架的統(tǒng)一體,而且是微軟團隊的力量,所以選它是值得保證的。

2、最強大且功能最多的應(yīng)用框架——Caliburn

下載地址:http://caliburn.codeplex.com/

開發(fā)者:Rob Eisenberg

是否支持Silverlight:是

學(xué)習(xí)資料:我主要參考項目實例、源碼、單元測試用例、國外一些博客和社區(qū)。

源碼截圖如下:

mvvm框架有哪些?

Caliburn中有幾個比較重要的概念:

1,在Actions基礎(chǔ)上的Commands帶有很多功能,其中包括多參數(shù)、過濾操作以及異步調(diào)用。

2,窗體和控件的生命周期事件也處理得比較好(包括activation、deactivation、shutdown等)。

3,不管是整個框架還是基于這個框架的應(yīng)用程序的可測性都比較好。

4,提供了很多常用功能,這些在項目當(dāng)中都比較有用。

5,除了支持MVVM模式之外,還很好的支持MVP模式以及其他的一些變種模式。

6,強大的依賴注入框架以及AOP框架,這里可以靈活選用其中一種。

Caliburn是一個非常強大的MVVM應(yīng)用框架,對很多功能都提供了靈活且多種實現(xiàn),不論是項目使用還是研究代碼,感覺都受益頗多。

3、輕量級且適用的MVVMLight

MVVMLight是一個實現(xiàn)MVVM模式的輕量級框架(相對于Prism),能夠更好的幫助我們開發(fā)WPF 、Windows Phone、Windows 8、SilverLight相關(guān)項目。

MVVMLight的作者Laurent Bugnion 是個微軟MVP,作者將代碼開源到Codeplex上面:http://mvvmlight.codeplex.com/。

MVVMLight的官網(wǎng):http://www.mvvmlight.net/,上面有詳細(xì)的介紹和視頻文檔,有興趣可以了解下。

下載地址:http://mvvmlight.codeplex.com/

開發(fā)者:Laurent Bugnion

是否支持Silverlight:是

學(xué)習(xí)資料:除了online documentation,我主要參考項目實例、源碼、單元測試用例、國外一些博客和社區(qū)。另外這三篇文章非常不錯,用MVVMLight開發(fā)了一個比較完整的Silverlight企業(yè)項目

  • Part 1 – Introduction, Installation, and General Application Design Topics

  • Part 2 – MVVM Light Topics

  • Part 3 – Custom Authentication, Reset Password and User Maintenance

源碼截圖如下:

mvvm框架有哪些?

MVVMLight中有幾個比較重要的概念:

1,RelayCommand:通過對Command進行封裝,使得MVVM模式在WPF和Silverlight上更加容易。你只需要在 ViewModel中定義好各個RelayCommand,然后在View中通過Command來綁定ViewModel中定義好的 RelayCommand,就可以實現(xiàn)像WinForm、ASP.NET事件一樣的效果,只不過這里是解除了UI和邏輯的強耦合。

2,Messager:MVVMLight中的Messager作用比較大,前面講了MVVM模式解除了ViewModel和View的強引用,那么它們?nèi)绾蝸磉M行交互呢?就是靠它來讓ViewModel和View來進行通信的。一般我們會定義一個靜態(tài)AppMessages類來作為通用的一個通信類,原理就是發(fā)布訂閱模式。

3,EventToCommand:這里就比較類似于附加行為的概念,是在MVVM Light Toolkit V3中開始引入的概念。

4,ICleanup接口:當(dāng)顯示某個View時,需要先調(diào)用Cleanup方法清除數(shù)據(jù),這也是由于ViewModel和View的耦合隔離產(chǎn)生的一些必要操作。

MVVMLight是一個非常好用的MVVM框架,提供了VS和Blend的模板及智能感知。它結(jié)合MEF使用真的感覺很輕量級且高效,而且提供了WPF和Silverlight的支持,尤其在Silverlight的支持上比較好,所以一般選擇輕量級的Silverlight MVVM模式,它比較被看好。

4、功能齊備且易用的MVVM Helpers

下載地址:http://mvvmhelpers.codeplex.com/

開發(fā)者:Mark Smith

是否支持Silverlight:否

學(xué)習(xí)資料:http://www.julmar.com/blog/mark/以及提供的實例、源碼及測試用例。

源碼截圖如下:

mvvm框架有哪些?

MVVM Helpers又叫JulMar MVVM Helpers + Behaviors,其中有幾個比較重要的概念:

1、提供了MVVM模式的基本功能,包括ViewModel、View及Model之間的隔離,另外還提供了一些常用功能。

2、ViewModel的創(chuàng)建使用標(biāo)簽的形式注入,現(xiàn)在也可以引入MEF。

3、IOC/DI的支持,屬性都有驗證機制,Wait Cursor的支持,當(dāng)使用完viewmodel之后能及時釋放,這樣避免內(nèi)存泄露。

4、提供了常用的Attached Behaviors支持。

5、消息機制的引入,避免強引用產(chǎn)生的耦合。

MVVM Helpers是一個非常適用的MVVM框架,尤其是提供了MVVM常用功能+MEF+Attached Behaviors,所以項目中的問題基本都能解決。

5,功能強大且輕巧的Cinch

下載地址:http://cinch.codeplex.com/

開發(fā)者:Sacha Barber

是否支持Silverlight:否

學(xué)習(xí)資料:http://sachabarber.net/以及提供的實例、源碼及測試用例。

源碼截圖如下:

mvvm框架有哪些?

如果仔細(xì)研究其代碼,你會發(fā)現(xiàn)它和上面講的MVVM Helpers有很多相似的代碼,估計是相互參考了一番:-D。Cinch 中有幾個比較重要的概念:

1,這個框架在沒有MEF出現(xiàn)之前就已經(jīng)實現(xiàn)了ViewModel和View之間的強引用隔離,它既沒有一般IOC的配置,也沒有IView來做中轉(zhuǎn),并且窗體和控件的生命周期事件也處理得比較好,所以在這方面來說是非常不錯的。

2,提供了常用的Attached Behaviors支持,另外也提供了一些MVVM常用功能。

3,DI/IOC使用Unity實現(xiàn),多線程的實現(xiàn),避免系統(tǒng)出現(xiàn)不可預(yù)料的錯誤。

4,當(dāng)使用完viewmodel之后能及時釋放,這樣避免內(nèi)存泄露,驗證機制的加入,常用導(dǎo)航實現(xiàn)。

5,消息機制的引入,避免強引用產(chǎn)生的耦合。

Cinch 是一個非常強大的框架,尤其是它比較著眼整個應(yīng)用程序的搭建,所以也比較受到青睞。

6、功能簡單且易擴展的MVVMFoundation

下載地址:http://mvvmfoundation.codeplex.com/

開發(fā)者:Josh Smith

是否支持Silverlight:否

學(xué)習(xí)資料:http://joshsmithonwpf.wordpress.com/以及提供的實例、源碼及測試用例。

源碼截圖如下:

mvvm框架有哪些?

MVVMFoundation中有幾個比較重要的概念:

1,Messenger:這里主要用在各種不同的ViewModel之間通信(比如相互關(guān)聯(lián)的ViewModel、主從ViewModel等),當(dāng)然也可以擴展成ViewModel與View之間進行通信。

2,ObservableObject:這里相當(dāng)于ViewModelBase的概念,每一個ViewModel繼承自該類,調(diào)用完成之后立即釋放,防止內(nèi)存泄露。

3,PropertyObserver:主要是對INotifyPropertyChanged.PropertyChanged進行封裝,這樣封裝可以精簡代碼,同時可以防止不當(dāng)操作引起的內(nèi)存泄露。

4,RelayCommand接口:封裝command的聲明,包括execution執(zhí)行邏輯,可選的can-execute邏輯等。外部只需要實例化并Binding就可以簡單使用。

MVVMFoundation是一個非常簡單的MVVM框架,如果你覺得研究源碼比較困難,就可以先從這個框架入手,代碼簡單而且精煉。

贊(0)
分享到: 更多 (0)
?
網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號
亚洲精品欧美综合四区| 无码人妻AⅤ一区二区三区夏目 | 噜噜私人影片在线看片| 男女无遮挡猛进猛出免费视频| 欧美熟老妇人B多毛OOXⅩ| 日韩精品无码区免费专区| 无码少妇一区二区三区免费| 亚洲国产精品无码久久久蜜芽| 一本加勒比波多野结衣高清| AV中文字幕潮喷人妻系列| 成人无码一区二区三区| 国产人成无码视频在线软件 | 国产成人愉拍精品| 狠狠做五月深爱婷婷| 免费看高清毛片AAAAAAAA| 日韩精品专区AV无码| 亚洲AV无码成H在线观看| 亚洲夜夜欢A∨一区二区三区| 99久久久精品免费观看国产 | 久久精品国产99久久无毒不卡 | 冲动的惩罚动漫HD在线播放| 国产毛片一区二区精品| 久久夜色精品国产欧美乱| 人人妻人人爽人人爽| 亚洲AV日韩AV无码AV一区二| 张柏芝跪下吃J8图片| 成人综合伊人五月婷久久| 国精产品999永久中国有限公司| 麻花豆传媒剧国产MV在线下载| 色五月丁香五月综合五月亚洲| 亚洲成AV人片在线观看不卡| 16ⅤIDE0SEX性欧| 国产XXXX69真实实拍| 午夜18禁自慰JK爆乳网站| 人与畜禽CROPROATION| 一边做一边潮喷18P| 超碰CAOPORON入口| 激情综合色综合啪啪五月丁香搜索| 年轻老师的滋味3在观整有限中字| 四虎国产精品永久在线动漫| 亚洲午夜无码毛片Av| 丁香激情五月中文字幕亚洲 | 男人边吃奶边揉好爽免费视频| 天天摸天天透天天添| 尤物蜜芽国产成人精品区| 风间由美性色一区二区三区| 久久久国产精品一区二区18禁| 日韩精品无码一区二区三区不卡| 亚洲精品国产成人| 成年免费A级毛片免费看无码| 精品人妻少妇一区二区三区不卡 | 蜜桃AV一区二区三区| 玩弄JaPan白嫩少妇一区二区| 曰批免费视频免费无码软件| 国产成人A∨麻豆精品| 满18岁夜里禁用100款APP| 无码无套少妇毛多18PX| AV人摸人人人澡人人超碰手机版 | 精品国产三级A∨在线| 人人人爽人人澡人人高潮| 亚洲日韩一区二区三区| 囯产精品一区二区三区线| 免费人成网WW555KKK在线| 亚洲AV日韩AV高潮潮喷无码| 爆乳美女午夜福利视频| 久久久受WWW免费人成| 无码国产精品一区二区免费久久| 8x8x熟妇一区二区三区| 狠狠色噜噜狠狠狠狠7777| 色噜噜人妻丝袜aV先锋影音先| 在线观看特色大片免费视频| 国产美女被遭强高潮免费网站| 欧美整片欧洲熟妇色视频| 亚洲熟妇无码A∨| 国产精品嫩草影院AV| 人妻少妇偷人精品无码| 曰韩无码A级成人毛片| 国内精品乱码卡一卡2卡麻豆| 日韩揉捏奶头高潮不断视频| 中文字幕一区二区三区乱码| 精品久久8X国产免费观看| 偷拍东北熟女BBWW| HERMES日本官网的网址| 久久久午夜成人噜噜噜| 亚洲AV无码久久久久网站蜜桃 | 人妻少妇中文字幕| 中国人も日本人も汉字を| 精品国色天香一卡2卡3卡 | А√天堂中文官网在线地址 | 中文无码乱人伦中文视频播放| 黑人入室强丰满人妻| 天天躁日日躁狠狠躁裸体| А天堂中文在线官网在线| 毛茸茸性XXXX毛茸茸毛茸茸| 亚洲国产精品无码专区成人| 国产精品女同一区二区| 色婷婷AV一区二区三区在线观看| FREEZEFRAME丰满老妇| 乱色视频中文字幕| 亚洲一区二区三区无码久久| 黑人大战日本人妻嗷嗷叫| 午在线亚洲男人午在线| 国产成人精品三级在线影院| 日产精品1区2区3区| JAVASCRIPTJAVA成熟亲子| 免费无码久久成人网站| 伊人色综合久久天天人守人婷| 精品国内在视频线2019| 亚洲丰满多毛XXXⅩ熟妇| 国产亚洲欧美精品久久久| 午夜丰满少妇性开放视频 | 无遮挡亲胸捏胸免费视频| 国产成人精品亚洲午夜麻豆| 色戒2小时38分无删减版| 成人爽A毛片在线视频淮北| 日本ⅩXXX色视频在线观看| XOXOXO性ⅩYY欧美片| 琪琪777午夜理论片在线观看播| 92国产精品午夜福利免费| 男生把自己的手放到女生的QQ里| 中文中文字幕成人无码AⅤ| 久久亚洲中文字幕精品一区 | 亚洲成AV人最新地堂无码| 国产在线观看无遮挡无码AⅤ多人 国产在线观看无码免费视频 | 无码人妻一区二区三区免费视频 | 亚洲AV永久无码精品主页| 国内美女推油按摩在线播放 | 精品BBBBB性ⅩXXXX少妇| 亚洲春色CAMELTOE一区| 精品国产乱码久久久久久人妻| 亚洲精品无码日韩国产不卡Av| 九九九精品成人免费视频| 野花日本大全免费观看中文7| 久久婷婷成人综合色| 中文无码一区二区三区在线观看| 妺妺窝人体色www聚色窝图片| 97夜夜澡人人爽人人喊A| 人妻AV无码系列专区移动可看 | 亚洲国产AV一区二区三区| 娇妻卧室含辱迎接领导是哪部电影| 亚洲国产精品美女久久久久| 久久大香国产成人AV| 在线亚洲熟妇一区二区三| 欧美丰满美乳XXⅩ高潮www| АⅤ天堂中文在线网官网| 日韩精品人妻AV一区二区三区| 俄罗斯人和欧洲人长相区别| 无码国产精品一区二区高潮| 黑人大战中国AV女叫惨了| 亚洲中文字幕精品久久久久久动漫| 联系附近成熟妇女| CHINESE中国丰满熟妇| 日日噜噜噜夜夜爽爽狠狠| 国产精品毛片完整版视频| 亚洲精品国产精品乱码不99| 久久婷婷五月综合97色直播| 97无码免费人妻超级碰碰碰碰| 日产精品卡二卡三卡四卡区| 国产精品麻豆VA在线播放| 亚洲精品午夜国产VA久久成人| 美女大BXXXXN内射| 成熟丰满熟妇高潮XXXXX| 无码中文字幕在线播放2| 精品无码人妻少妇久久久久久| 18禁勿入免费网站入口不卡 | 欧美肉体裸交做爰XXXⅩ性| 大香伊蕉AⅤ在人线国产| 性饥渴的少妇AV无码影片| 久久精品亚洲中文无东京热| AV鲁丝一区鲁丝二区鲁丝四| 天堂资源とまりせっくす| 激情综合色综合啪啪五月丁香搜索| 中文字幕高清免费日韩视频在线| 人人妻人人澡人人爽人人到DVD| 国产精品成人A区在线观看| 亚洲日韩国产AV无码无码精品| 欧美VA久久久噜噜噜久久| 国产VIDEOSSEX精品| 亚洲一线产区二线产区区别在哪儿 | 亚洲色精品三区二区一区| 欧美熟妇的性裸交| 国产精品线在线精品| 伊人久久综合无码成人网| 日韩精品一区二区三区影院| 饥渴人妻被快递员玩弄的视频| 97精品依人久久久大香线蕉97| 天堂影院在线观看高清在线| 久久久久久精品免费免费WEⅠ| 波多野结衣的影片| 亚洲精品成人AV| 人人妻人人妻人人片色AV| 黑人大雞巴XⅩⅩ| 芭乐小猪幸福宝丝瓜草莓官网| 亚洲AV羞羞无码高潮喷水好爽| 年轻漂亮的女邻居观看在线视频| 国产精品无码一区二区在线观一 | 少妇厨房愉情理伦片BD在线观看 | 亚洲AV无码专区在线| 青梅被从小摸到大H补课1视频 | 日韩人妻无码一区2区3区|