软件体系架构模式在软件体系架构模式在J2EE中的应用中的应用
1 层体系架构模式
2 层架构模式在J2EE中的应用
3 Petstore的层架构模式
4 相关设计模式
5 总结
参考资料
关于作者
对于本文的评价
本文介绍了软件体系架构模式的层模式,分析了它的结构,特点,实现,以及优缺点等. 然后介绍遵循层模式的
Architectural cube理论,结合J2EE的体系架构特点,剖析层模式是怎样应用的.最后以PetStore为例, 简单阐述怎样应
用该模式在实际的J2EE系统之中.
1 层体系架构模式
层(layer)体系架构模式就是把应用系统分解成子任务组,其中每个子任务组处于一个特定的抽象层次上。
1.1 概述
层架构模式组织成一个层次结构,每一层为上层服务(Service Provider),同时也作为下层的客户端。在一些层次系统中,除了
包含一些输出函数外,内部的层只对相邻的层可见。这样的系统中构件在一些层实现了虚拟机(在另一些层次系统中层是部分
不透明的)机制。层的调用通过决定层间如何交互的协议来定义。这种风格支持基于可增加抽象层的设计。这样,允许将一个
复杂问题分解成一个层堆栈的实现。由于每一层最多只影响两层,同时只要给相邻层提供接口,允许每层用不同的方法实现,
因此为软件重用提供了强大的支持。
1.2 问题
层结构是最成熟的软件体系架构模式,它起源于早期的系统设计,由开始的函数调用,作为函数库,供其他程序进行调用. 一般在系
统设计时,由一系列高层模块和底层模块处理构成,并且高层的模块依赖于底层.因此为了完成系统的设计必须要考虑一下因素:
源码的修改会影响整个系统,应该被限定在一个部件内部而不影响其他模块
接口应当稳定,甚至要被规范化
系统的架构应该灵活,可以更换
系统的开发需要被划分为多个部分,比如团队开发或者异地开发
1.3 模式结构
从系统高层的观点来看设计方案比较简单,它把系统进行分为几个层次并且把它们叠加起来,最下面的抽象层称为第一层,它是系
统基础.依次类推,把n层放在第n-1层上.其结构如下图:
1.4 非软件描述
层模式在现实生活中很常见.特别在中国的封建社会的等级森严的制度下,把人分为几个等级,其实就是分层,上层可以指示下层.
不过现在有的企业管理制度, 与这种管理理念相适应的管理体制是垂直的自上而下的泛官僚体制结构。其结构设置表现为自上
而下的单向层级制,这种结构有利于政令的传达和执行,保证管理的效率,但是官僚特性也很明显.如下图: