软件体系结构风格
“风格”___经过长时间的实践,被证明具有良好的工艺可行性,性能与适用性,并可直接复用。
1.描述一类体系结构
2.独立于实际问题,强调了软件系统中通用的组织结构。
数据流体系风格
基于数据流动而工作,没有数据时不工作。
直观示例:excel改变某个单元格的值,相依赖的单元格的值随之改变。
基本构件:数据处理单元
连接件:数据流
数据应该满足近似线性数据流,或者在限度内的循环数据流。自由流动的数据流容易产生死锁。
批处理体系结构风格
所有的数据都是被一个计算单元**完全处理**完成后才能交给下一个计算单元。
非完全处理:增量式读取和消费数据流
基本构件:独立的应用程序
连接件: 某种类型的媒质
五个独立构件之间的数据 数据格式不同。
独立构件读取数据 要转换数据格式?
管道–过滤器体系结构风格
一打开水龙头就有水,说明并不是一个计算单元处理完成后才传输到下一个计算单元。如果按照批处理风格,那么刚打开水龙头是没有水的,过段时间才会有水。
场景:*数据源源不断的产生*,系统要对这些数据进行若干处理(分析,计算,转换等)
构件:过滤器,处理数据流
连接件:管道,连接一个源和一个目的过滤器
过滤器是独立的单元
无上下文信息 和其他过滤器没有关系
不保留状态 处理完直接传输,不保留状态
对其他过滤器无任何了解
管道
单向流
可能有缓冲区
不同的管道中流动的数据流,可能有不同的数据格式,数据在流过每一个过滤器时,被过滤器进行了转换。
优点
缺点:
批处理VS管道过滤器
把任务分解成一系列固定顺序的计算单元 彼此间只通过数据传递交互。