999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

MVC 開(kāi)發(fā)框架在asp.net 中應(yīng)用的探究

2013-07-30 04:07:50張建平
電子測(cè)試 2013年9期
關(guān)鍵詞:用戶模型

張建平

(陜西工業(yè)職業(yè)技術(shù)學(xué)院 信息工程學(xué)院,陜西咸陽(yáng) 712000)

0 引言

MVC 全名是Model View Controller,是一種軟件設(shè)計(jì)典范,用于組織代碼用一種業(yè)務(wù)邏輯和數(shù)據(jù)顯示分離的方法,這個(gè)方法的假設(shè)前提是如果業(yè)務(wù)邏輯被聚集到一個(gè)部件里面,而且界面和用戶圍繞數(shù)據(jù)的交互能被改進(jìn)和個(gè)性化定制而不需要重新編寫業(yè)務(wù)邏輯,MVC 被獨(dú)特的發(fā)展起來(lái)用于映射傳統(tǒng)的輸入、處理和輸出功能在一個(gè)邏輯的圖形化用戶界面的結(jié)構(gòu)中。

1 MVC 設(shè)計(jì)思想

把一個(gè)應(yīng)用的輸入、處理、輸出流程按照model-viewcontroller 的方法進(jìn)行分離,這樣的一個(gè)應(yīng)用被稱為三個(gè)層,模型層、視圖層、控制層。

視圖:數(shù)據(jù)的展現(xiàn)。視圖是用戶看到并與之交互的界面。視圖向用戶顯示相關(guān)的數(shù)據(jù),并能接收用戶的輸入數(shù)據(jù),但是它并不進(jìn)行任何實(shí)際的業(yè)務(wù)處理。視圖可以向模型查詢業(yè)務(wù)狀態(tài),但不能改變模型。視圖還能接受模型發(fā)出的數(shù)據(jù)更新事件,從而對(duì)用戶界面進(jìn)行同步更新。

模型:應(yīng)用對(duì)象。MVC 模式圖模型是應(yīng)用程序的主體部分。模型代表了業(yè)務(wù)數(shù)據(jù)和業(yè)務(wù)邏輯;當(dāng)數(shù)據(jù)發(fā)生改變時(shí),它要負(fù)責(zé)通知視圖部分;一個(gè)模型能為多個(gè)視圖提供數(shù)據(jù)。由于同一個(gè)模型可以被多個(gè)視圖重用,所以提高了應(yīng)用的可重用性。

控制器:邏輯處理、控制實(shí)體數(shù)據(jù)在視圖上展示、調(diào)用模型處理業(yè)務(wù)請(qǐng)求。當(dāng) Web 用戶單擊Web 頁(yè)面中的提交按鈕來(lái)發(fā)送HTML 表單時(shí),控制器接收請(qǐng)求并調(diào)用相應(yīng)的模型組件去處理請(qǐng)求,然后調(diào)用相應(yīng)的視圖來(lái)顯示模型返回的數(shù)據(jù)。

MVC 優(yōu)點(diǎn):首先最重要的是應(yīng)該有多個(gè)視圖對(duì)應(yīng)著一個(gè)模型的能力。在目前需求用戶快速變化的下,可能有多種方式訪問(wèn)應(yīng)用要求。其次,由于模型返回的數(shù)據(jù)不帶任何顯示格式,因而這些模式也可直接應(yīng)用于模式使用。再次,由于一個(gè)應(yīng)用被分離為三層,因此有時(shí)候改變其中的一層就滿足應(yīng)用的改變。最后,它還有利于軟件工程化管理。由于不同的層各司其職,每一層不同的應(yīng)用具有某些相同的特征,有利于通過(guò)工程化、工具化產(chǎn)生管理程序代碼。

2 Mvc 設(shè)計(jì)模式的體系結(jié)構(gòu)(如圖2)

表現(xiàn)層(Presentation layer)包含表示代碼、用戶交互GUI、數(shù)據(jù)驗(yàn)證。該層用于向客戶端用戶提供GUI 交互,它允許用戶在顯示系統(tǒng)中輸入和編輯數(shù)據(jù),同時(shí)系統(tǒng)提供數(shù)據(jù)驗(yàn)證功能。

圖1 MVC 模式

圖2 Mvc 設(shè)計(jì)體系結(jié)構(gòu)

業(yè)務(wù)邏輯層(Business layer)包含業(yè)務(wù)規(guī)則處理代碼,即程序中與業(yè)務(wù) 相關(guān)專業(yè)算法、業(yè)務(wù)政策等等。該層用于執(zhí)行業(yè)務(wù)流程和制訂數(shù)據(jù)的業(yè)務(wù)規(guī)則。業(yè)務(wù)邏輯層主要面向業(yè)務(wù)應(yīng)用,為表示層提供業(yè)務(wù)服務(wù)Mvc 體系結(jié)構(gòu)圖

數(shù)據(jù)持久層(Persistence layer)包含數(shù)據(jù)處理代碼和數(shù)據(jù)存儲(chǔ)代碼。數(shù)據(jù)持久層主要包括數(shù)據(jù)存取服務(wù),負(fù)責(zé)與數(shù)據(jù)庫(kù)管理系統(tǒng)(如數(shù)據(jù)庫(kù))之間的通信。三個(gè)層次的每一層在處理程序上有各自明確的任務(wù),在功能實(shí)現(xiàn)上有清晰的區(qū)分,各層與其余層分離,但各層之間存有通信接口。

3 Asp.net 下mvc 設(shè)計(jì)模式的實(shí)現(xiàn)

ASP.NET 提供了實(shí)現(xiàn)這種經(jīng)典設(shè)計(jì)模式的類似環(huán)境。軟件開(kāi)發(fā)者可以通過(guò)在ASP 頁(yè)面中開(kāi)發(fā)用戶接口來(lái)實(shí)現(xiàn)視圖;而控制器的功能是在邏輯功能代碼中實(shí)現(xiàn);模型通常對(duì)應(yīng)著應(yīng)用系統(tǒng)的業(yè)務(wù)部分。在ASP.NET 中實(shí)現(xiàn)這種設(shè)計(jì)而提供的一個(gè)多層系統(tǒng),較經(jīng)典的ASP 結(jié)構(gòu)實(shí)現(xiàn)的系統(tǒng)來(lái)說(shuō)有明顯的優(yōu)點(diǎn)。將用戶顯示(視圖)從動(dòng)作(控制器)中分離出來(lái),提高了代碼的重用性。將數(shù)據(jù)(模型)從對(duì)其操作的動(dòng)作(控制器)分離出來(lái)可以讓你設(shè)計(jì)一個(gè)與后臺(tái)存儲(chǔ)數(shù)據(jù)無(wú)關(guān)的系統(tǒng)。就MVC 結(jié)構(gòu)的本質(zhì)而言,它是一種解決耦合系統(tǒng)問(wèn)題的方法。

同時(shí)還可以使用測(cè)試驅(qū)動(dòng)開(kāi)發(fā)。ASP.NET MVC 框架為Web 應(yīng)用的目錄結(jié)構(gòu)定義了一個(gè)專用的模式,還提供了一個(gè)controller 基類,用來(lái)處理發(fā)動(dòng)到“action”的請(qǐng)求。開(kāi)發(fā)人員還可以用上這個(gè)版本中所特有的Visual Studio 2008MVC 模板,利用模板所提供的單元測(cè)試結(jié)構(gòu)來(lái)輔助Web 應(yīng)用開(kāi)發(fā)。

MVC 設(shè)計(jì)模式的擴(kuò)展

①實(shí)現(xiàn)一個(gè)模型的多個(gè)視圖;

②采用多個(gè)控制器;

③當(dāng)模型改變時(shí),所有視圖將自動(dòng)刷新;

④所有的控制器將相互獨(dú)立工作。

這就是MVC 模式的好處,只需在以前的程序上稍作修改或增加新的類,即可輕松增加許多程序功能。以前開(kāi)發(fā)的許多類可以重用,而程序結(jié)構(gòu)根本不再需要改變,各類之間相互獨(dú)立,便于團(tuán)體開(kāi)發(fā),提高開(kāi)發(fā)效率。下面討論如何實(shí)現(xiàn)一個(gè)模型、兩個(gè)視圖和一個(gè)控制器的程序。其中模型類及視圖類根本不需要改變,與前面的完全一樣,這就是面向?qū)ο缶幊痰暮锰帯?duì)于控制器中的類,只需要增加另一個(gè)視圖,并與模型發(fā)生關(guān)聯(lián)即可。

同樣也可以實(shí)現(xiàn)其它形式的MVC例如:一個(gè)模型、兩個(gè)視圖和兩個(gè)控制器。從上面可以看出,通過(guò)MVC 模式實(shí)現(xiàn)的應(yīng)用程序具有極其良好的可擴(kuò)展性,是ASP.NET 面向?qū)ο缶幊痰奈磥?lái)方向。

4 小結(jié)

本論文介紹mvc 設(shè)計(jì)模式的發(fā)展歷史、能模式、體系結(jié)構(gòu),以及在asp.net 環(huán)境下實(shí)現(xiàn)基于mvc 應(yīng)用需要完成的工作,以及模式擴(kuò)展及未來(lái)發(fā)展方向。

[1]陸榮幸,郁洲等.《J2EE 平臺(tái)上的mvc 設(shè)計(jì)模式的研究與實(shí)現(xiàn)》.計(jì)算機(jī)應(yīng)用與研究,2003年3月20 期:144-166

[2]陳秋余《mvc 模式在asp.net 下的實(shí)現(xiàn)》.第一版.北京:清華大學(xué)出版社,2001

猜你喜歡
用戶模型
一半模型
重要模型『一線三等角』
重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
關(guān)注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
3D打印中的模型分割與打包
關(guān)注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關(guān)注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
FLUKA幾何模型到CAD幾何模型轉(zhuǎn)換方法初步研究
Camera360:拍出5億用戶
100萬(wàn)用戶
主站蜘蛛池模板: 天天视频在线91频| 99热国产这里只有精品无卡顿"| 亚洲精品第1页| 亚洲成aⅴ人在线观看| 亚洲视频二| 中文字幕人成乱码熟女免费| 亚洲国产日韩在线观看| 中文字幕在线看| 中文字幕在线观| 久久人体视频| 热99re99首页精品亚洲五月天| 日韩欧美国产成人| 日韩亚洲综合在线| 亚洲日本韩在线观看| 免费人成视网站在线不卡| 日韩成人午夜| 亚洲中文字幕国产av| 毛片大全免费观看| 久久久久亚洲精品无码网站| 国产成人精品一区二区| 亚洲人在线| 一级毛片免费观看久| 日日噜噜夜夜狠狠视频| 国产成人综合亚洲网址| 日本www在线视频| 91外围女在线观看| 女人18毛片一级毛片在线| 秋霞午夜国产精品成人片| 免费A∨中文乱码专区| 久久久精品国产SM调教网站| 制服丝袜 91视频| 免费看的一级毛片| 亚洲高清在线天堂精品| 国产高清色视频免费看的网址| 色综合综合网| 极品私人尤物在线精品首页| 国产原创演绎剧情有字幕的| aⅴ免费在线观看| 亚洲综合色在线| 国产精品自在拍首页视频8| 国产对白刺激真实精品91| 国产高清精品在线91| 美美女高清毛片视频免费观看| 国产无码精品在线| 亚洲中文字幕在线观看| 国产资源站| 99在线视频免费| 三上悠亚一区二区| 亚洲国产精品日韩av专区| 欧洲欧美人成免费全部视频| 夜精品a一区二区三区| 亚洲热线99精品视频| 国产精品高清国产三级囯产AV| 国产真实乱子伦精品视手机观看| 亚洲综合久久成人AV| 91九色国产porny| 五月天天天色| 国产噜噜在线视频观看| 午夜激情福利视频| 国产免费久久精品99re丫丫一| 国产成人福利在线视老湿机| 91年精品国产福利线观看久久 | 亚洲天堂精品视频| 国产毛片久久国产| 亚洲青涩在线| 国产va在线观看免费| 美女扒开下面流白浆在线试听| 国产欧美中文字幕| 欧美精品高清| 毛片免费在线视频| 91精品情国产情侣高潮对白蜜| 国产91特黄特色A级毛片| 国产精品黑色丝袜的老师| www.精品国产| 国产成人精品18| 国产久操视频| www.99在线观看| 久久久久久国产精品mv| 国产无遮挡猛进猛出免费软件| 中文字幕无码电影| 亚洲—日韩aV在线| 亚洲成aⅴ人在线观看|