软件体系结构层次风格 您所在的位置:网站首页 层次结构的好处 软件体系结构层次风格

软件体系结构层次风格

2024-06-26 23:22| 来源: 网络整理| 查看: 265

概念

层次系统组织成一个层次结构,每一层为上层服务(被上层调用),并作为下层客户(调用下层)。在一些层次系统中,除了一些精心挑选的输出函数外,内部的层只对相邻的层可见。这样的系统中构件在一些层实现了虚拟机(在另一些层次系统中层时部分不透明的),绝大部分是透明的,不需要知道底层是怎么来实现的。 如:手机及其App,App不需考虑通讯中的物理层是通过什么连进来的。 连接件通过决定层间如何交互的协议来定义,拓扑约束包括对相邻层间交互的约束。

这种风格支持基于可增加抽象层的设计。这样,允许将一个复杂问题分解成一个增量步骤序列的实现。由于每一层最多只影响两层(所以修改变动可以局部化,让系统更容易修改),同时只要给相邻层提供相同的接口,允许每层用不同的方法实现,同样为软件重用提供了强大的支持。 如:送餐机器人;可以分:传感器层、信号翻译层等,使问题更明确更容易分工实现。网络的分层TCP/IP协议、Linux kernel map、OS、各层API。

层次风格示意图

Linux

层次风格总结

1.构件:各个子层(一层代码,抽象级别) 2.连接件:相邻子层之间的调用关系(交互协议)(连接件的表现形式也可千差万别) 3.规则:一般的讲,一个子层只能与相邻的层交互,不能跨层交互。如:Linux中 System Call 跨层调用CPU的system_call。

分层风格优点

1.支持基于抽象程度递增的系统设计,使设计者可以把一个复杂系统按递增的步骤进行分解; 2.支持功能增强。因为每一层之多和相邻的上下层交互,因此功能的改变最多影响相邻的上下层。 3.支持重用。只要提供服务的接口定义不变,同一层的不同实现可以交换使用。这样,就可以定义一组标准的接口,而允许各种不同的实现方式。

分层风格缺点

1.并不是每个系统都可以很容易的划分为分层的模式。 2.很难找到一个合适的、正确的层次抽象方法(分几层?无标准解)。 3.多层之间调用的性能不足。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有