正文

成功應(yīng)用程序的模式(6)

ASP.NET設(shè)計(jì)模式 作者:(美)Scott Millett


1.3.4  Web表示模式

在第8章中,將注意力轉(zhuǎn)向企業(yè)級(jí)ASP.NET應(yīng)用程序的表示需求。這一章關(guān)注的是專門用來(lái)讓業(yè)務(wù)邏輯與表示邏輯分離的模式。首先,將介紹早期Web表單開發(fā)中普遍使用的代碼隱藏模型帶來(lái)的問(wèn)題;然后研究那些能夠?qū)㈩I(lǐng)域和表示邏輯分離同時(shí)讓表示層能夠有效測(cè)試的模式。

這些模式的任務(wù)都是將用于表示的邏輯關(guān)注點(diǎn)與業(yè)務(wù)邏輯關(guān)注點(diǎn)分離。ASP.NET表示需要所涵蓋的模式有:

●  Model-View-Presenter(模型-視圖-表示器)。

●  Model-View-Controller(模型-視圖-控制器)。

●  Front Controller(前端控制器)。

●  Page Controller(頁(yè)面控制器)。

1.3.5  基本模式、行為模式和結(jié)構(gòu)模式

在本書中,將介紹如何在企業(yè)ASP.NET應(yīng)用程序中利用Fowler著作中的其他企業(yè)模式。這些模式將包括Null Object(空對(duì)象)、Separated Interface(獨(dú)立接口)、Registry(注冊(cè)表)和Gateway(網(wǎng)關(guān))。

1. Null Object模式

Null Object(空對(duì)象)模式也稱為Special Case(特殊情況)模式,它充當(dāng)返回值而不是向調(diào)用代碼返回null??諏?duì)象將與預(yù)期結(jié)果共享相同的接口或者從相同的基類繼承而來(lái),這樣減少了在代碼基中到處檢查null情況的需要。

2. Separated Interface模式

Separated Interface(獨(dú)立接口)模式要求將接口放在一個(gè)獨(dú)立于具體實(shí)現(xiàn)的程序集或命名空間中。這確??蛻舳送耆恢谰唧w實(shí)現(xiàn),而且能夠遵循面向抽象編程(而不是面向?qū)崿F(xiàn))以及依賴倒置原則。

3. Gateway模式

Gateway(網(wǎng)關(guān))模式允許客戶端通過(guò)一個(gè)簡(jiǎn)化的接口來(lái)訪問(wèn)復(fù)雜的資源。網(wǎng)關(guān)對(duì)象基本上將資源API包裝成一個(gè)能夠在應(yīng)用程序中到處使用的單個(gè)方法調(diào)用。此外,它還隱藏了所有的API復(fù)雜性。

這里介紹的所有企業(yè)模式都將在本書中更詳細(xì)地進(jìn)行討論,并有配套練習(xí)來(lái)演示如何在ASP.NET方案中實(shí)現(xiàn)它們。1.4節(jié)是本章最后一部分,簡(jiǎn)要介紹一些設(shè)計(jì)方法學(xué),以及運(yùn)用本章中已經(jīng)介紹的模式和原則的實(shí)踐。


上一章目錄下一章

Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)