软件体系结构设计|描述与架构风格

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/NGUever15/article/details/72161210

软件体系结构设计

计算机硬件系统中包含的两个重要因素:

  • 基本硬件模块:控制器、运算器、内存储器、外存储器、输入设备……
  • 硬件模块之间的连接关系:总线(控制总线、地址总线、数据总线)

计算机系统体系结构的风格:

  • SISD :单指令流单数据流 串行处理器
  • SIMD :单指令流多数据流 并行处理器
  • MIMD :多指令流多数据流 多处理器

什么是体系结构?

软件构件和构件之间的关系。

体系结构的例子

网络爬虫系统

原则

  • 种子:初始的连接
  • 爬取:爬取连接中的数据
  • 解析:解析初始连接中的其他连接
  • 爬取:……
    ……

架构描述 (AD)

架构文档的产品的集合 称为 架构描述

四种常见视图 (都属于架构描述)

  • 逻辑视图:将系统分解为一系列的抽象形式,多来自于问题域,如类图、对象图或功能层次结构图。
  • 过程视图:关注系统动态运行时,主要是进程以及相关的并发、同步、通信等问题。
  • 物理视图:描述软件到硬件的映射,反映了分布式特征。
  • 开发视图:开发环境中,围绕静态组织结构。使用构件图、包图。

架构风格:

描述领域中众多系统所共有的结构和特性,并指导如何将各个模块和子系统有效的组织成一个完整的系统。

分类:

  • 数据中心架构

这里写图片描述

将数据进行中心存放,应用和应用之间不直接进行联系,所有的信息交换和操作,都建立在中心数据之上。
  • 数据流架构 (管道过滤系统)

这里写图片描述

数据在流动时,需要filter进行加工和处理,而这个加工和处理是自动的。试用于批处理系统,不适用于交互类系统。
  • 调用返回架构

这里写图片描述

  • 面向对象的架构

    特点:
    每个对象都进行了特定的封装,对外提供预留的接口,并隐藏内部数据的表示。
    联系方法:
    基于消息机制(本质是方法调用)建立对象间的联系。

  • 层次架构

这里写图片描述

特征:
横向联系,上下层调用。
不可以跨层调用。

好处:
让复杂的问题变得简单了。

  • 客户服务器架构

    一个应用被分为两个逻辑上分离的部分,每个部分充当不同额角色、完成不同的功能。

    • 客户端:业务逻辑、与服务器通信的接口。
    • 服务器:与客户机通信的接口、业务逻辑、数据管理
  • MVC 架构

    将应用程序中的应用逻辑、用户界面、控制逻辑等分别放在独立的构件中,从而使得任何一种构件的改变都不会对其他构件造成很大的影响。

  • 消息总线架构

    适用于消息订阅发布系统(广播系统)。
    利用消息总线来实现调用和交互。


本博客内容到此结束,欢迎指正!

猜你喜欢

转载自blog.csdn.net/NGUever15/article/details/72161210