久久国产精品亚洲艾草网_黄色视频在线免费观看_国产强伦姧在线观看_无码国产69精品久久久久网站

ASP.NET MVC框架有什么優(yōu)點?

廣告:

1. 通過把一個應(yīng)用程序分離成相互獨立的模型、視圖和控制器三部分而進一步提高了應(yīng)用程序復(fù)雜性的管理。

2.不再使用視圖狀態(tài)或基于服務(wù)器的表單技術(shù)。這使得MVC框架特別有利于想全面控制一個應(yīng)用程序的行為的開發(fā)人員。

3.使用一種前端控制器(Front Controller)模式并通過單一的控制器來處理Web應(yīng)用程序請求。這一特征使你有可能設(shè)計出一個支持極其豐富的路由基礎(chǔ)結(jié)構(gòu)的應(yīng)用程序。有關(guān)于前端控制器的更多的信息,請參考http://go.microsoft.com/fwlink/?LinkId=106357。

4.提供對于測試驅(qū)動開發(fā)(TDD)的大力支持。

5. 實現(xiàn)應(yīng)用程序基本任務(wù)(輸入邏輯,業(yè)務(wù)邏輯和UI邏輯)的分離,支持測試及測試驅(qū)動開發(fā)(TDD)。MVC框架中所有的核心契約都是基于接口的,因此十分利于使用mock對象(這是一些模擬應(yīng)用程序中實際對象的模擬對象)測試工程。你可以對應(yīng)用程序進行單元測試而不必在真正的ASP.NET進程中運行控制器,這加快了單元測試的速度和靈活性。你可以使用與.NET框架相兼容的任何單元測試框架測試你的工程。

6. 提供了一個可擴展的和可插接的框架。ASP.NET MVC框架組件的設(shè)計支持用戶十分容易地對它們進行替換或定制。你可以設(shè)計并加入你自己的視圖引擎,URL路由策略,行為方法參數(shù)串行化,以及其它組件。ASP.NET MVC框架還支持使用現(xiàn)有依賴性注入(即“Dependency Injection”,簡稱“DI”)和控制反轉(zhuǎn)(IOC)容器模型。其中,DI允許你把對象注入到一個類中,而不是依賴于類去創(chuàng)建對象本身。而IOC指定,如果一個對象要求使用另一個對象,那么第一個對象應(yīng)該從一個外部源(例如一個配置文件)得到第二個對象。這一支持極有利于對工程的測試。

7.實現(xiàn)了一個強有力的URL映射組件,支持你在應(yīng)用程序中構(gòu)建易于理解的可搜索的URL(而不是像諸多Web應(yīng)用URL中的那種極其復(fù)雜的表達方式)。如今,URL中不必包括文件擴展名,而且其設(shè)計還支持URL命名模式。因此,這種模式有利于搜索引擎優(yōu)化(SEO)和REST(表述性狀態(tài)轉(zhuǎn)移)尋址。

8.支持在現(xiàn)有ASP.NET頁面(.aspx文件)、用戶控件(.ascx文件)以及母版頁面(.master文件)標記文件中把標記用作視圖模板。你可以在使用ASP.NET MVC框架的過程中繼續(xù)使用現(xiàn)有ASP.NET特征,例如嵌套的母版頁面,內(nèi)聯(lián)表達式(<%=%>),聲明性服務(wù)器控件,模板,數(shù)據(jù)綁定,本地化,等等。

9. 支持現(xiàn)有ASP.NET特征。ASP.NET MVC框架支持你使用例如表單和Windows認證,URL授權(quán),會員和角色,輸出緩沖和數(shù)據(jù)緩沖,會話和配置狀態(tài)管理,健康監(jiān)視,配置系統(tǒng),提供者架構(gòu),以及其它ASP.NET特征。

10.一個MVC應(yīng)用程序的三個主要組件之間的松耦合特征還推動了平行開發(fā)。例如,一名開發(fā)人員可以開發(fā)視圖,而另一名開發(fā)人員則在開發(fā)控制器邏輯,第三名程序員則可以專注于模型部分的業(yè)務(wù)邏輯的開發(fā)。

11.MVC架構(gòu)的分層思想是值得借鑒的。一般我采用如下架構(gòu):

a UI 表示層,處理與用戶的交互,獲取顯示用戶數(shù)據(jù)。

b BLL 業(yè)務(wù)邏輯層 由用戶提交的數(shù)據(jù)進行處理,調(diào)用數(shù)據(jù)訪問層接口,并把處理結(jié)果返回UI。

c IDAL 數(shù)據(jù)訪問層定義接口 定義了數(shù)據(jù)訪問的標準接口,并由具體的數(shù)據(jù)庫實現(xiàn)。

d DALFactory 數(shù)據(jù)訪問層的抽象工廠,負責數(shù)據(jù)庫訪問對象的創(chuàng)建。

e SqlServerDAL SQL Server數(shù)據(jù)庫的訪問接口的實現(xiàn)。

f Model 業(yè)務(wù)實體。

g SystemService 系統(tǒng)服務(wù)層 提供系統(tǒng)公共驗證,消息顯示,公共函數(shù)等。

可以根據(jù)項目大小選擇。一般分層UI,BLL,SqlServerDAL和SystemService四個模塊。

優(yōu)點:a.數(shù)據(jù)庫端可以靈活配置,通過系統(tǒng)配置注入,可以方便進行數(shù)據(jù)庫系統(tǒng)的替換。

b.增加邏輯層,可以復(fù)用業(yè)務(wù)邏輯,實現(xiàn)業(yè)務(wù)邏輯的分離,降低系統(tǒng)的整體耦合性

缺點: 增加邏輯層,代碼量增加,性能相對降低。

 

參考:

基于Web表單Web應(yīng)用程序的優(yōu)點:

傳統(tǒng)型基于Web表單的框架能夠提供下列優(yōu)點:

1. 支持事件模型。此模型能夠保留HTTP傳輸過程中的狀態(tài),而這十分有利于在線業(yè)務(wù)式Web應(yīng)用程序的開發(fā);赪eb表單的應(yīng)用程序提供大量的事件,所有這些事件都得到數(shù)以百計的服務(wù)器控件的支持。

2.使用一種頁面控制器(Page Controller)模式,此模式能夠把許多功能添加到單個的頁面。有關(guān)于頁面控制器的更多的信息,請參考http://msdn.microsoft.com/zh-cn/library/ms978764.aspx。

3.使用視圖狀態(tài)或基于服務(wù)器的表單,這使得狀態(tài)信息管理更加容易。

 

 

廣告:

相關(guān)內(nèi)容

編輯:Admin 時間:2012/3/7 9:59:04 閱覽:5570   返回    
ASP.NET MVC
框架
掃描關(guān)注53BK報刊官網(wǎng)
掃描關(guān)注閱速公司微信