一、 管道-过滤风格

过滤器:功能组件

管道:数据流之间的通路

1.2 特点

管道/过滤器结构将数据流处理分为几个顺序的步骤来实现,一个步骤的输出是另一个步骤的输入,每个步骤由一个过滤器来实现

每个过滤器独立完成自己的任务,不同过滤的之间不需要进行交互

在管理/过滤器结构中,数据输出 的最终结果 与各个过滤器执行的顺序无关。(如何做到?)

1.3 优点

1.3.1 简单性

允许将系统的输入和输出 看作是各个过滤器行为的简单组全,独立的过滤器能够减小构件之间的耦合度

1.3.2 可扩展性

各个过滤器相互独立,因此 很容易在系统中添加,以扩展系统的业务处理能力,原有过滤器可以方便替换

1.3.3 复用性

一个过滤器的输出格式与另一个过滤器的输入的数据格式一致,则可将两个过滤器连接在一起

1.3.4 并发性

过滤器能够独立运行,因此 不同子任务可以并行执行,提高系统运行效率

1.3.5 系统分析

由于系统是独立构件的组合,具有 清晰的拓扑结构

1.4 缺点

1.4.1 交互性

不适合用来设计交互式应用系统

1.4.2 通用性

由于没有通用的数据标准,每个过滤器都需要解析输入数据和合成数据,从而增加复杂性

1.4.5 错误处理

难以进行错误处理,很难制定错误处理的一般性策略

二、印象最深

讲师说最终输出与过滤器的执行顺序无关,我十分怀疑该结论,只给结论没给论点,为什么无关,如何做到可以最终结果一致,完成没有解释。

三、知识点应用

讲得太粗了,实在不知道怎么应用。

系统架构设计 2.1 管道-过滤器风格相关推荐

  1. 系统架构设计总结—软件架构风格

    1.概念: 软件架构设计的一个核心问题是能否使用重复的架构模式,即能否达到架构级的软 件重用.也就是说,能否在不同的软件系绕中使用同一架构.软件架构风格是描述某一 特定应用领域中系统组织方式的惯用模式 ...

  2. 《系统架构设计》-03-软件结构体系和架构风格

    文章目录 1. 软件结构体系 1.1 抽象(Abstract) 1.1.1 抽象的应用 1.1.2 不同层次的抽象 1.2 组件(Component) 1.2.1 定义 1.2.2 切入点 1.3 组 ...

  3. 《系统架构设计》-01-架构和架构师概述

    文章目录 1. 架构的基本定义 1.1 架构组成理论 1.1.1 系统元素 1)概念 2)静态结构和动态结构 1.1.2 基本系统属性 1.1.3 设计和发展原则 1.2 架构的决策理论 1.2.1 ...

  4. 软考必过 - 系统架构师 - 系统架构设计

    世界上并没有完美的程序,但是我们并不因此而沮丧,因为写程序就是一个不断追求完美的过程. 系统架构设计 4+1视图 逻辑视图 用户 开发视图 程序员 进程视图 并发 物理视图 软硬件映射关系 特定场景 ...

  5. 系统架构设计:程序员向架构师转型之路-张勇-专题视频课程

    系统架构设计:程序员向架构师转型之路-247人已学习 课程介绍         本课程首先围绕普通开发人员如何向架构师转型这一课题,从架构师的角色以及转型过程中会遇到的困难及其解决方法切入展开讨论,总 ...

  6. 插件式架构设计实践:插件式系统架构设计简介

    本系列博文将使用微软RIA技术解决方案Silverlight以及扩展性管理框架Managed Extensibility Framework(MEF),以插件式架构设计为导线,分享本人在从事基于微软S ...

  7. 插件式架构设计实践一:插件式系统架构设计简介

    本系列博文将使用微软RIA技术解决方案Silverlight以及扩展性管理框架Managed Extensibility Framework(MEF),以插件式架构设计为导线,分享本人在从事基于微软S ...

  8. 什么是系统架构设计:关于架构演进理论

    什么是系统架构设计:关于架构演进理论 在过去软件开发过程发展的很长一段时间内,软件架构表现为一种集中式的单块(Monolithic)式,即先对系统进行分层,然后通过单个进程进行部署和维护,典型的分层体 ...

  9. 系统工程(SE)学习笔记(四)——系统架构设计

    TOC 在法求学时,一位教授告诉我,架构为什么是architecture?因为它有点像art.对于这个稍微有点"冷"的笑话,我第一个联想到的就是香港中银大厦,在我看来,中银大厦的外 ...

最新文章

  1. 王豪:HW265到“HW266”
  2. c++程序设计梳理(谭浩强)3-4章
  3. golang中的strings.ContainsRune
  4. 《Nmap渗透测试指南》—第2章2.2节使用Zenmap进行扫描
  5. C++内联(inline)函数
  6. 王道 —— 进程的定义、组成、组织方式、特征
  7. vmd python 命令_【MMD】用python解析VMD格式读取
  8. 统计学cv值是什么意思_什么是CV值
  9. JVM系列之深入理解JVM(三)
  10. 经典PID学习感悟(一)-初步认知【比例kp】
  11. Nexus 私服搭建及配置
  12. 新办林业规划资质(丙级)应具备的条件?
  13. HRBUST - 1646
  14. cab文件如何安装或者转换为exe文件?
  15. Java File文件流读取文件夹内的文件并替换文件内容
  16. gmssl国密双证书制作
  17. 股票多因子选股模型 —— 数据去极值
  18. dropbox被封, 试试金山快盘
  19. 谷歌最新多模态模型CoCa,多项任务取得SOTA效果,ImageNet达到91.0%
  20. APS食品行业生产计划排程解决方案

热门文章

  1. 西门子PLC-smart二分频源程序带解析
  2. ubuntu18.04安装teamviewer后,一直登录不上原因。
  3. GAMES104 作业2-ColorGrading
  4. ssi 指令 php,SSI 漏洞学习笔记
  5. CS224W图机器学习笔记5-消息传递与节点分类
  6. 天龙八部TLBB搭建(三)CentOS7x系列服务器手工环境架设配置
  7. 通过两点的经纬度计算与正北方向的夹角JS实现
  8. 坑人无数的俩货:半包和粘包
  9. android 编译 release版本,详细android gradle 只编译realse版本
  10. mysql 围栏_地理围栏