谈论软件体系结构的风格

软件体系结构风格是描述某一特定应用领域中系统组织方式的惯用模式,体系结构风格定义了用于描述系统的术语表和一组知道构建系统的规则。
软件体系风格的最关键的四要素内容:提供一个词汇表,定义一套配置规则,定义一套语义解释原则和定义对基于这种风格的系统所进行的分析。使用软件体系结构风格的意义:促进了设计的复用与带来显著的代码复用,使得体系结构风格中的不变部分可共享同一个解决方案。
几种经典软件体系结构的风格
1.管道-过滤器
 其风格主要包括管道/过滤器两种元素,每个构件都有一组输入与输出,构件读输入的数据流,经过内部处理,然后产生输出流。这里的构件又被称作过滤器。
 优点:能够减少构件之间的耦合程度,可扩展性与可进化性,独立性(允许软件设计者将整个系统的输入/输出行为看成多个过滤器行为的简单合成。),支持软件复用,系统并发执行(每个过滤器是作为一个单独的任务完成,可以与其他任务并行执行)
 存在的问题:系统的处理过程是批处理方式,不适合用来设计交互式应用系统,没有通用的数据传输标准,难以进行数据的错误处理
 2.数据抽象与面向对象风格
 
 这种风格建立在一个数据抽象和面向对象的基础之上,数据的表示方法和它们的相应操作封装在一个抽象数据类型或者是对象中。这种风格的构建是对象,或者说是抽象数据类型的实例。对象是一种被称作管理者的构建,它负责保持资源的完整性。对象是通过函数和过程的调用来交互的。
 优点:因为对象对其它的对象隐藏他的表示方法,所以改变一个对象的表示,不影响其他的对象。
  继承与封装方法为对象复用提供了技术支持。对象将数据与操作封装在一起,提高了系统的内聚性,减少了模块之间的耦合程度,使系统更容易分解成既相互作用又相互独立地对象集合。
  问题:过程的调用依赖于对象标识的确定。不同对象的操作关联性弱。
  3.层次系统风格
  层次系统组成一个层次结构,每一层为它的上层提供服务,并作为下层的客户。每一层都具有度高的内聚性
  层次系统有很多可取的属性:(1)支持基于抽象程度递增的系统设计,使设计者可以把一个复杂系统按递增的步骤进行分解(2)支持功能增强,每一层之多和相邻的上下层交互,因此功能的改变最多影响相邻的上下层。(3)支持重用
  4.仓库风格(数据共享风格)和黑板风格
  仓库风格的体系结构有两种构件组成:一个是中央操作结构(资源库),它表示当前状态。一个独立构件的组合,它对中央数据结构进行操作。中央的数据单元和构件之间可以进行信息交换,这是数据共享体系结构的技术实现基础。
  5.C2风格
  C2风格有构建和连接件两种元素组成,构件和连接件都是有底部和顶部组成,构件与构件之间只能通过连接件连接,连接件之间可以直接连接,构件的底部和顶部分别与连接件的顶部和底部相连。构建发送的消息有两种,分别是向上级构件发出请求和向下级构件指示状态的改变。而连接件负责消息的过滤,路由和广播等通信及相关处理。
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值