边学边讲PetShop4.0 _1

PetShop4.0 基于.net3.5构建,整个解决方案由23个工程组成,各工程之间的关系如下:

0层视图

 

图中红色虚线表示层间分隔,PetShop4.0中大量使用了F/I/C模式(工厂/接口/实现),第3层中的IDAL,IMessaging,IProfileDAL(包括第2层中的ICacheDependency)是F/I/C中的接口,Model中包含值对象的定义(仅包含属性和构造函数)。

2层中的ICacheDependency,TableCacheDependency,CacheDependency,Membership,

SyndicationFeeds,Profile(粉红色标识)属于技术支持类工程,BLLIBLLStrategy是业务实现类工程,其中BLLIBLLStrategy采用了一个策略模式(GOFStrategy)进行耦合。

1层中的Web(网站)和OrderProcessor(后台服务),可以理解为表示层和业务驱动层。

引出的第一个问题是,MSMQ(微软消息队列)在系统中的用途,为阐释这个问题,请看下图:

1层MSMQ

图中对BLL工程中的Order对象进行了一个简单的静态建模,Order对象的Insert方法中采用了策略模式(GOFStrategy),其中,同步存储策略(OrderSynchronous)存储到数据库,异步存储策略(OrderAsynchronous)插入消息到消息队列,1层中的OrderProcessor工程最主要任务就是从消息队列中取出Order对象,进行处理(存储)

从架构师的角度来看,仅从工程命名就能够明白系统中各组件的耦合模式,不失为一条值得学习的原则。

今天就先写到这里。

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值