冰火

专注于OO,模式,重构,UML建模,RUP,XP!
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

几种常用层间交互模式

Posted on 2005-07-17 02:31  冰火  阅读(3575)  评论(48)    收藏  举报

一般系统可划分为三个层次:表现层,领域层,数据源层。通常还可以将领域层提取出服务层来。

根据不同的应用场景,不同的架构设计将会有不同的层间交互形式。

常见的有如下几种:

模式一
UI->Domain->Data Source
此模式是很典型的一种交互方式,简单纯粹,上层依赖于下层,没有跨层调用。

模式二
UI->Domain->Data Source
UI->Data Source
此模式是不太纯粹的交互方式,允许跨层调用,但在实践中运行良好。

模式三
UI->Domain<-Data Source
此模式是典型的采用依赖倒置原则的交互方式,Domain将不再依赖于Data Source,实现方式通常是在Domain定义Data Source接口。

模式四
UI->Service->Domain->Data Source
此模式是引入服务层之后的典型交互方式,类似于模式一。

模式五
UI->Service->Domain->Data Source
Service->Data Source
此模式类似于模式二。

模式六
UI->Service->Domain<-Data Source
此模式类似于模式三。

模式七
UI->Service->Domain<-Data Source
Service->Data Source
此种模式是模式二和三引入服务层后演化来的。

还有很多其他的模式和变种,在此仅列出比较常见的一些。

以上各种模式没有好坏,高低之分。只有适不适用的问题。
每种模式都有它的运用场景,要根据具体情况具体分析。

简单的写了一点,望不吝批评指正。