亚洲成人伦理_成人午夜视频在线观看_日本免费网站_黄网站色大毛片_超碰97人人人人人蜜桃_久久在线视频

以文本方式查看主題

-  曙海教育集團(tuán)論壇  (http://www.55716723.cn/bbs/index.asp)
--  Microsoft.NET Framework  (http://www.55716723.cn/bbs/list.asp?boardid=78)
----  Microsoft.NET PetShop4架構(gòu)與技術(shù)分析  (http://www.55716723.cn/bbs/dispbbs.asp?boardid=78&id=2645)

--  作者:wangxinxin
--  發(fā)布時(shí)間:2010-12-15 11:21:46
--  Microsoft.NET PetShop4架構(gòu)與技術(shù)分析

1.項(xiàng)目概述與架構(gòu)分析
微軟剛推出了基于ASP.NET 2.0下的Pet Shop 4, 該版本有了一個(gè)全新的用戶界面。是研究ASP.NET 2.0的好范例啊,大家都知道,一直以來,在.NET和Java之間爭論不休,到底使用哪個(gè)平臺(tái)開發(fā)的企業(yè)級(jí)應(yīng)用性能最好、結(jié)構(gòu)最優(yōu)、生產(chǎn)力最高。為了用事實(shí)說話,通過對項(xiàng)目各方面的性能評(píng)估進(jìn)而在比較.NET和Java的高下。用戶做比較的這個(gè)項(xiàng)目就是Petshop。正因?yàn)镻etshop肩負(fù)著上面所說的重任,各方面必須是最優(yōu)的,架構(gòu)設(shè)計(jì)應(yīng)該是經(jīng)過慎重考慮的。所以其一經(jīng)推出,便成為了開發(fā)者、架構(gòu)師等人學(xué)習(xí)、研究的典范。

日前微軟推出了基于.NET Framework 2.0開發(fā)的Petshop 4。新的Petshop4實(shí)現(xiàn)了與Petshop 3相同甚至更多的特性,由于采用了Master Pages,Membership,以及Profile,SqlCacheDependency,但是代碼量卻減少了四分之一。同時(shí),在事務(wù)、數(shù)據(jù)緩存、安全方面使用了.NET 2.0附帶的特性,構(gòu)建了一個(gè)靈活的最佳實(shí)踐的應(yīng)用程序。


他們利用了Project Conversion Wizard把項(xiàng)目從ASP.NET 1.1移植到了ASP.NET 2.0,然后做了以下改動(dòng):

1.用System.Transactions代替了原來的Serviced Components提供的事務(wù)功能

代碼實(shí)現(xiàn):PetShop.BLL.OrderSynchronous 的 public void Insert(PetShop.Model.OrderInfo order)。

2.用強(qiáng)類型的范型集合代替了原來的弱類型集合

        public IList<ProductInfo> GetProductsByCategory(string category)

        {

            // Return new if the string is empty

            if (string.IsNullOrEmpty(category))

                return new List<ProductInfo>();

 

            // Run a search against the data store

            return dal.GetProductsByCategory(category);

        }

3.采用ASP.NET 2.0 Membership來做認(rèn)證和授權(quán)

4.創(chuàng)建了針對Oracle 10g的Custom  ASP.NET 2.0 Membership Provider

5.利用ASP.NET 2.0的Custom Oracle 和 SQL Server Profile Providers 做用戶狀態(tài)管理,包括購物車等

6.采用了Master Pages,取代了原來的用戶控件,來實(shí)現(xiàn)統(tǒng)一的界面效果

7.使用了ASP.NET 2.0 Wizard控件實(shí)現(xiàn)check-out

8.使用了SqlCacheDependency來實(shí)現(xiàn)數(shù)據(jù)庫層次的緩存更新(cache invalidation)功能

9.使用了消息隊(duì)列來實(shí)現(xiàn)異時(shí)訂單處理。

 

2.整體架構(gòu):


數(shù)據(jù)庫:(暫略)

項(xiàng)目列表:從整體可以看出,Pet Shop 4的項(xiàng)目體系已經(jīng)很龐大,考慮的方面也較3.0更全面復(fù)雜。


序號(hào)

項(xiàng)目名稱

描述

1

BLL

業(yè)務(wù)邏輯層

2

CacheDependencyFactory

緩存依賴類的工廠類

3

WEB

表示層

4

DALFactory

數(shù)據(jù)層的抽象工廠

5

DBUtility

數(shù)據(jù)訪問類組件

6

IBLLStrategy

同步/異步策略接口

7

ICacheDependency

緩存依賴類接口

8

IDAL

數(shù)據(jù)訪問層接口定義

9

IMessaging

異時(shí)處理消息隊(duì)列接口定義

10

IProfileDAL

Profile的數(shù)據(jù)訪問層接口定義

11

Membership

Membership認(rèn)證和授權(quán)管理

12

MessagingFactory

異時(shí)處理消息隊(duì)列的抽象工廠

13

Model

業(yè)務(wù)實(shí)體

14

MSMQMessaging

異時(shí)處理消息隊(duì)列的實(shí)現(xiàn)

15

OracleDAL

Oracle數(shù)據(jù)訪問層

16

OracleProfileDAL

Oracle的Profile Providers

做用戶狀態(tài)管理,包括購物車等

17

OrderProcessor

后臺(tái)處理進(jìn)程,處理訂單隊(duì)列

18

Profile

Profile的數(shù)據(jù)訪問層

19

ProfileDALFactory

ProfileDAL的工廠類(反射創(chuàng)建ProfileDAL)

20

SQLProfileDAL

SQL Server 的Profile Providers

做用戶狀態(tài)管理,包括購物車等

21

SQLServerDAL

SQLServer數(shù)據(jù)訪問層

22

TableCacheDependency

緩存依賴實(shí)現(xiàn)類


項(xiàng)目分解

由于整體已經(jīng)有22個(gè)項(xiàng)目,所以,對于初學(xué)者一看就暈了,所以,我做了分解,可以大體上分幾塊去理解。

序號(hào)

項(xiàng)目名稱

描述

1

WEB

表示層

2

Model

業(yè)務(wù)實(shí)體

3

BLL

業(yè)務(wù)邏輯層

4

DALFactory

數(shù)據(jù)層的抽象工廠

5

IDAL

數(shù)據(jù)訪問層接口定義

6

SQLServerDAL

SQLServer數(shù)據(jù)訪問層

7

OracleDAL

Oracle數(shù)據(jù)訪問層

8

DBUtility

數(shù)據(jù)庫訪問組件基礎(chǔ)類

9

CacheDependencyFactory

緩存依賴類的工廠類

10

ICacheDependency

緩存依賴類接口

11

TableCacheDependency

緩存依賴實(shí)現(xiàn)類

12

IBLLStrategy

同步/異步處理策略接口(實(shí)現(xiàn)在bll根據(jù)配置反射選擇)

13

MessagingFactory

異時(shí)處理消息隊(duì)列的抽象工廠

14

IMessaging

異時(shí)處理消息隊(duì)列接口定義

15

MSMQMessaging

異時(shí)處理消息隊(duì)列的實(shí)現(xiàn)

16

Profile

Profile的數(shù)據(jù)訪問層

17

ProfileDALFactory

ProfileDAL的工廠類(反射創(chuàng)建ProfileDAL)

18

IProfileDAL

Profile的數(shù)據(jù)訪問層接口定義

19

OracleProfileDAL

Oracle的Profile Providers

做用戶狀態(tài)管理

20

SQLProfileDAL

SQL Server 的Profile Providers

做用戶狀態(tài)管理

21

Membership

Membership認(rèn)證和授權(quán)管理

22

OrderProcessor

后臺(tái)處理進(jìn)程,處理訂單隊(duì)列

 



3.Petshop 4中的設(shè)計(jì)模式

工廠模式:

首當(dāng)其沖的就是工廠模式,很容易就可以看出來,也是應(yīng)用最多的。

DALFactory:數(shù)據(jù)訪問層的抽象工廠(決定創(chuàng)建哪種數(shù)據(jù)庫類型的數(shù)據(jù)訪問層?梢赃x擇:SQLServer,Oracle)

CacheDependencyFactory:緩存依賴類的工廠類。(創(chuàng)建具體表的緩存依賴)

MessagingFactory :異時(shí)處理消息隊(duì)列的抽象工廠(反射創(chuàng)建具體的異時(shí)處理類)

ProfileDALFactory:ProfileDAL的工廠類(反射選擇創(chuàng)建Oracle 和SQL Server的 ProfileDAL)


主站蜘蛛池模板: 久久国产精品99久久久久久丝袜 | 日韩福利在线 | 亚洲电影成人 | 亚洲一区中文字幕 | 欧美激情在线一区二区三区 | jlzzjlzz国产精品久久 | 免费大黄视频 | 国产一区二区三区在线免费观看 | 国产成人精品一区二区三区 | 色婷婷国产精品 | 亚洲欧美国产一区二区三区 | 成人做爰www免费看视频网站 | 国产成人精品一区二区三区 | 欧美极品在线观看 | a级毛片毛片免费观看久潮喷 | 大象视频一区二区 | 91精品国产综合久久国产大片 | 操射视频 | 欧美精品一区二区在线观看 | 成人免费看黄 | 精品一二 | 国产精品欧美一区二区 | 一区二区三区四区在线 | 激情五月综合网 | 久久成人18免费网站 | 精品免费国产视频 | 日韩欧美在线视频 | 日本视频中文字幕 | 欧美xxxx色视频在线观看免费 | 欧美日韩专区 | 久久久性 | 中文字幕一二三区 | 国产精品毛片无码 | 国产精品视频www | 国产黄色大片网站 | 懂色中文一区二区在线播放 | 精品欧美一区二区三区精品久久 | 97国产精品视频 | 亚洲一区三区在线观看 | 在线中文字幕av | 亚洲 欧美 综合 |