国产91丝袜在线播放_偷拍亚洲色图_欧美精品久久一区二区_不卡日本视频

學(xué)術(shù)咨詢服務(wù),正當(dāng)時(shí)......期刊天空網(wǎng)是可靠的職稱論文與著作咨詢指導(dǎo)平臺(tái)!!!

計(jì)算機(jī)論文范文MVVM數(shù)據(jù)綁定的耦合性

發(fā)布時(shí)間:所屬分類:計(jì)算機(jī)職稱論文瀏覽:1

摘 要: 對(duì)軟件來(lái)說(shuō),最基本、最核心的內(nèi)容是數(shù)據(jù),所有代碼層次的劃分都是圍繞數(shù)據(jù)設(shè)計(jì)的。業(yè)務(wù)邏輯層是為了實(shí)現(xiàn)對(duì)數(shù)據(jù)的增刪改查,各類界面技術(shù)是為了更好地呈現(xiàn)數(shù)據(jù)。本文是一篇 計(jì)算機(jī)論文范文 ,主要論述了MVVM數(shù)據(jù)綁定的耦合性。 【摘 要】復(fù)雜軟件需要清晰合

  對(duì)軟件來(lái)說(shuō),最基本、最核心的內(nèi)容是數(shù)據(jù),所有代碼層次的劃分都是圍繞數(shù)據(jù)設(shè)計(jì)的。業(yè)務(wù)邏輯層是為了實(shí)現(xiàn)對(duì)數(shù)據(jù)的增刪改查,各類界面技術(shù)是為了更好地呈現(xiàn)數(shù)據(jù)。本文是一篇計(jì)算機(jī)論文范文,主要論述了MVVM數(shù)據(jù)綁定的耦合性。

計(jì)算機(jī)論文范文

  【摘 要】復(fù)雜軟件需要清晰合理的架構(gòu)設(shè)計(jì),否則會(huì)給前期開發(fā)和后期維護(hù)帶來(lái)極大的困難。各類框架的應(yīng)運(yùn)而生,重要目的之一就是降低軟件的耦合度以獲得良好的性能。本文圍繞近年來(lái)流行度較高的MVVM架構(gòu),簡(jiǎn)單介紹了其原理和特點(diǎn),針對(duì)MVVM數(shù)據(jù)綁定的耦合性,分別例舉逐一屬性綁定、對(duì)象綁定和集合綁定,并針對(duì)不同的綁定配置方式分析了耦合性。

  【關(guān)鍵詞】MVVM,數(shù)據(jù)綁定,耦合

  隨著軟件復(fù)雜度的提高,要想降低數(shù)據(jù)層、業(yè)務(wù)邏輯層及界面層的耦合度,就需要良好的架構(gòu)設(shè)計(jì)。ORM等框架實(shí)現(xiàn)了業(yè)務(wù)邏輯層和數(shù)據(jù)層之間的解耦合,另有一批框架用來(lái)解決業(yè)務(wù)邏輯層和視圖之間的耦合問(wèn)題,MVVM就是其中之一。

  1 認(rèn)識(shí)MVVM

  Model-View-ViewModel(MVVM,模型-視圖-視圖模型)是一種架構(gòu)模式,如圖1所示。MVVM的目標(biāo)是將幾乎所有程序代碼從視圖中移除(更加徹底的代碼后置)。交互設(shè)計(jì)師只需專注于使用XAML(視圖)表達(dá)用戶體驗(yàn)需求,并創(chuàng)建視圖和視圖模型的綁定;而模型和視圖模型則由程序員進(jìn)行開發(fā)和維護(hù)。

  MVVM的視圖具有獨(dú)立性,其中的控件能夠管理部分用戶輸入并且自行反應(yīng)。用戶輸入經(jīng)過(guò)視圖底層系統(tǒng)的處理和分發(fā),多以事件的形式被后臺(tái)用戶程序所感知。視圖模型包含概念模型而不是數(shù)據(jù)模型,所有業(yè)務(wù)邏輯和其它操作都是在模型和視圖模型里完成的。

  長(zhǎng)久以來(lái),在非MVVM架構(gòu)中直接編寫代碼存在兩個(gè)問(wèn)題。一,View中有些控件的數(shù)據(jù)類型和Model中的屬性類型不同。例如性別,Model中通常設(shè)置為bool類型;而View中呈現(xiàn)的是“男”、“女”這樣的字符串,這就需要額外的代碼進(jìn)行轉(zhuǎn)換。而轉(zhuǎn)換代碼如果放在View中會(huì)增大軟件的耦合度(View上不應(yīng)出現(xiàn)邏輯代碼);放在Model中,會(huì)導(dǎo)致Model臃腫龐大。二、事件驅(qū)動(dòng)開發(fā)中的復(fù)用問(wèn)題。Winform開發(fā)中的事件驅(qū)動(dòng)因其易于理解和實(shí)現(xiàn)而被廣泛接受,問(wèn)題就是多種同類事件并存,后期維護(hù)繁重,且代碼復(fù)用性相對(duì)較差。

  Model和View中間的輔助角色――ViewModel較好地解決了上述兩個(gè)問(wèn)題。它幫助View和Model之間進(jìn)行數(shù)據(jù)轉(zhuǎn)換,并保證數(shù)據(jù)類型適當(dāng)。同時(shí)它也將View的多種命令綁定到Model中相同的處理方法上,使得這些命令中綁定的方法可以被其他View復(fù)用。與同類架構(gòu)模式(MVP、MVC)相比,MVVM架構(gòu)唯一不同的特點(diǎn)是它采用雙向綁定,即View中的變動(dòng)會(huì)自動(dòng)反映在ViewModel中,反之亦然。

  2 MVVM的數(shù)據(jù)綁定

  MVVM的一個(gè)主要特征是,通過(guò)Binding機(jī)制由ViewModel指示View如何作變更;用戶與ViewModel的交互通過(guò)Command來(lái)實(shí)現(xiàn),這時(shí)只需View指導(dǎo)ViewModel即可,而ViewModel不必關(guān)心View如何展示和展示什么,它只需提供屬性(要綁定的數(shù)據(jù)和Command)并實(shí)現(xiàn)INotifyPropertyChanged。少了一個(gè)方向的依賴,代碼自然更簡(jiǎn)潔清晰。

  View中的控件存在一個(gè)屬性“DataContext”,負(fù)責(zé)為控件指定數(shù)據(jù)源頭。DataContext屬性給控件指定一個(gè)后臺(tái)模型,就是該控件的數(shù)據(jù)來(lái)源。ViewModel就是這個(gè)后臺(tái)模型,給View中的控件提供用于顯示的數(shù)據(jù)。而ViewModel提供的數(shù)據(jù)應(yīng)該來(lái)自于背后的Model。所以,三者的關(guān)系是根據(jù)View中顯示的數(shù)據(jù)是何種Model,來(lái)定義ViewModel。

  Model中的某個(gè)類要成為真正的數(shù)據(jù)源,需要實(shí)現(xiàn)以下兩個(gè)步驟。

  (2)讓該類實(shí)現(xiàn)INotifyPropertyChanged接口。實(shí)現(xiàn)該接口的目的是當(dāng)數(shù)據(jù)源的屬性值改變后通知Binding(使其知道源數(shù)據(jù)變了并進(jìn)行聯(lián)動(dòng)協(xié)同),以便Binding把數(shù)據(jù)傳輸給目標(biāo)。實(shí)際上,這個(gè)動(dòng)作本質(zhì)上還是運(yùn)用了事件機(jī)制,只是掩蓋在底層,不用程序員去寫代碼。

  這里面蘊(yùn)含了“數(shù)據(jù)驅(qū)動(dòng)界面”的模型。在這里,Names屬性值是數(shù)據(jù)源,文本框tb1用來(lái)顯示數(shù)據(jù),Names屬性值驅(qū)動(dòng)文本框tb1的Text進(jìn)行改變;人為改變文本框tb1的Text屬性值,也會(huì)被送回到person對(duì)象的Names屬性上去。這里的Text屬性也叫“依賴式屬性”,就是它本身沒有值,它的值“依賴”在其它對(duì)象的屬性值上,通過(guò)Binding進(jìn)行傳遞和轉(zhuǎn)換。這樣做的好處是,隨便給Binding指定一個(gè)數(shù)據(jù)源,只要這個(gè)數(shù)據(jù)源有名為“Names”的屬性,Binding就會(huì)自動(dòng)提取它的值并傳輸給Text。

  3 綁定的耦合性分析

  不同配置的數(shù)據(jù)綁定會(huì)呈現(xiàn)不同的耦合性。在上述例子中,需要將前臺(tái)頁(yè)面中的控件逐一綁定到person對(duì)象的每個(gè)屬性,屬性越多,綁定越多,前后臺(tái)的耦合度也就越高。在數(shù)據(jù)結(jié)構(gòu)復(fù)雜度很高的情況下,這種方式顯然不可取?梢圆扇∠铝蟹绞竭M(jìn)行改進(jìn)。

  后臺(tái)文件:

  this.DataContext = person; //為前臺(tái)頁(yè)面指定數(shù)據(jù)來(lái)源為person對(duì)象(不是對(duì)象的屬性)

  前臺(tái)文件:

  這個(gè)綁定是將前臺(tái)頁(yè)面(Page就是App.MainPage,所以可以在類代碼中使用this)綁定到person對(duì)象(包含所有的屬性)上,該頁(yè)面的所有控件就可以直接獲取該對(duì)象的所有屬性值而不必單獨(dú)進(jìn)行綁定,耦合度大大降低。

  語(yǔ)句中,Text屬性綁定的Names屬性是從所在頁(yè)面(已經(jīng)綁定了person對(duì)象)獲取的,而不是后臺(tái)類對(duì)象,所以這里不構(gòu)成耦合。

  如果后臺(tái)數(shù)據(jù)結(jié)構(gòu)不是單一對(duì)象而是集合,并且是存在上下級(jí)關(guān)系的復(fù)雜集合,用這種改進(jìn)的方法也存在前后臺(tái)耦合度過(guò)高的問(wèn)題(集合中的每個(gè)對(duì)象都要逐一與前臺(tái)頁(yè)面進(jìn)行綁定)。這時(shí)可以采取集合綁定的方法。

  在上例的前臺(tái)文件中,只有Source="{Binding Company.Departments}" x:Key= "cvsDeps">這一個(gè)綁定與后臺(tái)構(gòu)成了耦合,它綁定了后臺(tái)集合對(duì)象Company.Departments。后續(xù)的綁定都是調(diào)用這個(gè)復(fù)雜集合的下級(jí)對(duì)象。雖然調(diào)用關(guān)系復(fù)雜,但耦合度并沒有提高。

  4結(jié)語(yǔ)

  通過(guò)分析可以看出,綁定的設(shè)置方式不同,前后臺(tái)的耦合度也會(huì)不同。而綁定設(shè)置方式應(yīng)該結(jié)合數(shù)據(jù)結(jié)構(gòu)的復(fù)雜程度和數(shù)據(jù)展示的需求進(jìn)行考慮。軟件的靈魂是數(shù)據(jù),最終要在滿足需求的情況下保證軟件性能。

  參考文獻(xiàn):

  [1] 劉黎志,陳傳波.Windows Phone數(shù)據(jù)訪問(wèn)技術(shù)研究.計(jì)算機(jī)工程與科學(xué)[J],2014,36(9).

  [2] 陳濤.MVVM設(shè)計(jì)模式及其應(yīng)用研究.計(jì)算機(jī)與數(shù)字工程[J].2014,(10).

  [3] 朱立.漫談C#程序員眼中的微軟技術(shù)生態(tài)系統(tǒng).科技創(chuàng)新導(dǎo)報(bào)[J].2015(07).
  計(jì)算機(jī)論文發(fā)表期刊推薦《計(jì)算機(jī)工程與科學(xué)》(月刊)創(chuàng)刊于1973年,由國(guó)防科技大學(xué)計(jì)算機(jī)學(xué)院主辦。辦刊宗旨是為計(jì)算機(jī)界同行發(fā)表有創(chuàng)見的學(xué)術(shù)論文,介紹有特色的科研成果,探討有新意的學(xué)術(shù)觀點(diǎn)提供理想園地;活躍計(jì)算機(jī)界學(xué)術(shù)氣氛,擴(kuò)大國(guó)內(nèi)外交流,為發(fā)展中國(guó)的計(jì)算機(jī)事業(yè)盡一點(diǎn)微薄之力。本刊強(qiáng)調(diào)學(xué)術(shù)性、及時(shí)性和普及性!队(jì)算機(jī)工程與科學(xué)》始終結(jié)合我國(guó)計(jì)算機(jī)事業(yè)不同時(shí)期的重點(diǎn)和需要,有計(jì)劃、有組織地進(jìn)行選題,刊登了大量國(guó)內(nèi)最新科研成果和國(guó)家重點(diǎn)支持的研究項(xiàng)目的論文,對(duì)我國(guó)計(jì)算機(jī)科學(xué)技術(shù)的發(fā)展和高技術(shù)領(lǐng)域人才的培養(yǎng)發(fā)揮了很大的作用。目前,她是中國(guó)計(jì)算機(jī)類十分有影響的學(xué)術(shù)期刊之一,被不少高校規(guī)定為博士畢業(yè)和職稱評(píng)定必發(fā)表論文的雜志之一。

熱門核心期刊

sci|ssci服務(wù)

EI|SCOPUS服務(wù)

翻譯潤(rùn)色解答

論文發(fā)表指導(dǎo)

學(xué)術(shù)成果常識(shí)

最新分區(qū)查詢?nèi)肟?/a>
国产91丝袜在线播放_偷拍亚洲色图_欧美精品久久一区二区_不卡日本视频
韩国av一区二区三区在线观看 | 韩国一区二区在线观看| 欧美日韩在线播放| 国产一区二区0| 亚洲人午夜精品免费| 亚洲综合色视频| 免费亚洲婷婷| 国产欧美日韩综合一区在线播放| 在线观看91精品国产入口| 一区二区三区高清不卡| 久久综合久久综合久久综合| 国产精品乱子乱xxxx| 亚洲精品在线免费| 老色鬼久久亚洲一区二区| 国产精品日韩久久久| 日韩一区二区精品视频| 美女黄网久久| 激情久久影院| 久久久久九九视频| 国产女主播一区| 亚洲亚洲精品三区日韩精品在线视频| 久久成人18免费观看| 国产精品久久久久77777| 亚洲人成在线播放| 欧美电影美腿模特1979在线看| 久久亚洲私人国产精品va媚药| 国产免费观看久久黄| 亚洲视频在线视频| 欧美日韩在线免费视频| 亚洲精品乱码久久久久久| 毛片一区二区三区| 激情综合久久| 免费久久99精品国产| 国产精品v欧美精品v日韩 | 亚洲尤物在线| 欧美色一级片| 亚洲图中文字幕| 亚洲免费影院| 国产精品视频精品视频| 欧美在线观看www| 国产精品久久国产精品99gif | 国内精品久久国产| 新狼窝色av性久久久久久| 国产欧美一区二区精品秋霞影院| 亚洲综合欧美日韩| 国产麻豆精品在线观看| 久久超碰97中文字幕| 一区二区三区在线视频免费观看 | 亚洲国产日日夜夜| 欧美经典一区二区三区| 一区二区三区www| 欧美日韩三区四区| 欧美伊人影院| 亚洲国产精品成人| 国产精品久久久久三级| 久久天天狠狠| 中文在线一区| 一区在线免费观看| 欧美网站在线观看| 久久精品人人爽| 亚洲免费观看高清在线观看| 国产精品久久午夜夜伦鲁鲁| 久久久一二三| 亚洲网站在线观看| 在线精品一区| 国产精品久久久久999| 另类春色校园亚洲| 亚洲一区视频| 亚洲激情视频在线| 国产精品丝袜久久久久久app| 久热精品视频在线观看一区| 亚洲午夜在线观看视频在线| 亚洲国产日韩欧美在线动漫| 国产精品白丝av嫩草影院| 久久精品国产第一区二区三区最新章节 | 亚洲日本欧美在线| 国产欧美日韩亚洲精品| 欧美精品一区在线发布| 久久人人爽爽爽人久久久| 亚洲私人影院| 亚洲免费电影在线观看| 韩国成人理伦片免费播放| 欧美视频在线观看视频极品| 欧美中文在线观看国产| 欧美—级a级欧美特级ar全黄| 亚洲综合精品四区| 一本色道久久综合亚洲91| 在线免费观看日本一区| 国产偷自视频区视频一区二区| 欧美日精品一区视频| 欧美高清视频| 麻豆精品精华液| 久久嫩草精品久久久精品| 午夜视频一区二区| 亚洲婷婷综合色高清在线| 日韩一区二区高清| 亚洲片国产一区一级在线观看| 精品91免费| 欧美三区视频| 久久―日本道色综合久久| 亚洲国产日韩一区二区| 国产婷婷精品| 欧美区国产区| 欧美制服第一页| 日韩视频在线永久播放| 国产一区二区三区高清在线观看| 国产精品白丝jk黑袜喷水| 亚洲大片免费看| 亚洲国产精品成人精品| 一区在线播放视频| 亚洲国产婷婷香蕉久久久久久99 | 久久精品99国产精品日本| 午夜精品一区二区三区四区| 亚洲一区二区少妇| 羞羞答答国产精品www一本| 性久久久久久久| 香蕉久久国产| 樱桃成人精品视频在线播放| 欧美午夜在线| 欧美久久一区| 欧美一乱一性一交一视频| 久久国产精彩视频| 美国十次了思思久久精品导航| 久久视频国产精品免费视频在线| 欧美成人国产一区二区| 欧美视频专区一二在线观看| 国产精品美女久久久浪潮软件 | 永久免费精品影视网站| 欧美日韩在线免费| 国产日韩欧美二区| 在线日韩视频| 9色精品在线| 久久精品一本久久99精品| 欧美a级大片| 欧美三日本三级少妇三2023| 国产麻豆一精品一av一免费| 亚洲国产乱码最新视频| 亚洲欧美国产另类| 久久精品在线播放| 欧美黄色大片网站| 欧美日韩国产精品一区二区亚洲| 日韩午夜激情av| 国产午夜精品一区理论片飘花| 亚洲大胆人体视频| 亚洲午夜精品在线| 久久野战av| 欧美日本高清一区| 国产精品综合久久久| 国产精品丝袜xxxxxxx| 国内一区二区三区在线视频| 欧美一区二区三区四区在线观看地址 | 国产精品av久久久久久麻豆网| 国产精品久久中文| 伊人婷婷欧美激情| 亚洲欧美韩国| 欧美成人资源网| 国产精品视频福利| 欧美午夜一区二区福利视频| 国产日韩欧美一区二区三区在线观看| 国产精品丝袜xxxxxxx| 日韩一区二区久久| 久久久夜色精品亚洲| 国产精品a级| 亚洲日本免费| 久久综合色播五月| 裸体丰满少妇做受久久99精品| 久久久av水蜜桃| 欧美视频久久| 国产欧美日韩一区二区三区| 亚洲精品网址在线观看| 久久久久久91香蕉国产| 日韩一区二区精品视频| 亚洲小视频在线观看| 久久精品中文字幕一区| 欧美日韩中文字幕精品| 尤物yw午夜国产精品视频| 亚洲毛片一区| 欧美激情一区二区三区全黄| 黄色一区三区| 久久精品国产96久久久香蕉 | 在线观看视频一区二区| 国产精品麻豆va在线播放| 亚洲六月丁香色婷婷综合久久| 久久激情视频久久| 农村妇女精品| 在线免费观看视频一区| 亚洲高清电影| 欧美中文字幕久久| 国产精品嫩草99a| 久久国产精品久久精品国产| 欧美日韩一区二区三区免费看 | 国产欧美一区二区在线观看| 夜夜嗨av一区二区三区免费区| 久久婷婷人人澡人人喊人人爽| 欧美男人的天堂| 99天天综合性| 欧美+日本+国产+在线a∨观看| 亚洲国产日韩一区| 欧美视频你懂的| 香蕉久久夜色精品国产|