企业应用架构模式 - 分层

业余架构师 2013-04-15

1.软件系统分层的好处

1.可管理性:在无需过多了解其他层次的基础上,可以将某一层作为一个有机整体来理解。

2.可维护性:可以替换或修改某层的具体实现,而不会影响其他部分代码,只要前后提供的服务相同即可。

3.可扩展性:可以将层次间的依赖性降到最低,增加新功能也越简单,另外在分布式部署中可以将每层分布在不同的机器上。

4.可重用性:一旦构建好了某一层次,就可以用它为很多上层服务提供支持。

2.软件系统分层的缺点

1.层次并不能封装所有东西,有时会带来级联修改(如在用户界面增加一个显示数据域,就必须在数据库中增加相应字段,还必须在界面和数据库之间的每一层做相应的修改)。

2.过多的层次会影响性能。

3.软件系统分层的困难

分层架构中最困难的问题是决定建立哪些层次以及每一层的职责是什么。

4.企业应用软件的三层结构

1.表现层:提供服务,显示信息,把从用户那里获得的信息解释成领域层或数据源层上的各种动作,又称表述层。

2.领域层:逻辑,系统中真正的核心,又称业务逻辑层。

3.数据源层:与数据库、消息系统、事务管理器与及其他软件包通信。

5.企业应用软件的三层结构之间的关系

领域层是核心!表现层是系统对外提供服务的外部接口;数据源层是系统使用外部服务的接口。上层组件会访问下层组件的API,而下层组件不应该依赖于上层组件。

6.各层次的运行环境

1.表现层:如果是富客户端,一般运行在客户端;如果是Web界面,一般运行在服务器端。

2.领域逻辑:优先考虑全部运行于服务器端,若考虑运行在客户端则将所有逻辑都运行在客户端,将领域逻辑分割在客户端和服务器端应该是最差的选择。

3.数据源层:一般都是运行在服务器端。

相关推荐