当前位置: 首页 > news >正文

【笔记】软件架构师要点记录(2)

【笔记】软件架构师要点记录

  • 20240523
    • 案例一
    • 案例二
    • 案例三
    • 案例四
    • 案例五
    • 案例六
    • 案例七
    • 案例十

20240523

基于前10个架构案例场景,对用到的专业术语进行整理,方便后续查看。

案例一

MVC架构风格+组件交互方式

  • MVC是一种用来构建用户界面时采用的架构设计风格,其中M是模型,V是视图,C是控制器。在该风格中,模型表示待展示的对象;视图表示模型的展示;控制器负责把用户的动作转成针对模型的操作。模型通过更新视图的数据来反映自身的变化。

案例二

EBS定义+五个主要功能

  • 企业服务总线(EBS)是传统中间件技术与XML、WEB服务等技术结合的产物,可基于内容的路由和过滤,具备复杂数据的传输能力,并可以提供一系列的标准接口。功能包括:服务位置透明性、传输协议转换、消息格式转换、消息路由、消息增强、安全性、监控与管理。

案例三

  • 在这里插入图片描述
  • 架构评估过程中,质量属性效果树是对系统质量属性进行识别和优先级排序的重要工具。质量属性效果树主要关注性能、可用性、安全性和可修改性等四个用户最为关注的质量属性。

案例四

灵活性+可扩展性分析 解释器、管道过滤器、隐式调用架构风格

  • 解释器:灵活性高,可扩展性强,因为解释器风格可以通过自定义流程规则及配套流程解释引擎开发,做到用户界面的流程完全定义,而不需要修改代码,所以无论是修改已有的业务流程,还是要创建不同的角色,创建新角色的流程都很方便;
  • 管道过滤器:灵活性低,可扩展性弱,因为管道过滤器是把数据处理职能做成过滤器,把数据传递做成管道,此时如果流程不发生变化,是可以通过这种方式实现的,但一旦流程变化或者扩展功能,需要对过滤器进行修改调整,此时必须修改代码完成任务;
  • 隐式调用:灵活性一般,可扩展性一般,因为隐式调用是通过间接方式进行调用,如采用事件机制,要完成某个动作时先触发事件,事件与相关动作联动,以提升灵活度。

案例五

  • 在这里插入图片描述

案例六

  • 在这里插入图片描述

案例七

  • 系统架构风险:指架构设计中潜在的、存在问题的架构决策所带来的隐患;
  • 敏感点:指为了实现某种特定的质量属性,一个或多个系统组件所具体的特性;
  • 权衡点:指影响多个质量属性,并对多个质量来说是敏感点的系统属性。

案例十

  • 软件架构风格:指描述特定软件系统组织方式的惯用模式。组织方式描述了系统的组成构件和这些构件的组织方式,惯用模式则反映众多系统共有的结构和语义。

  • 解释器架构风格(典型示例:适应多种系统环境、对界面元素拖拽和代码填充方式完成业务流程编写和组织)的架构设计过程:1.对可视化编辑元素及其拖拽关系定义某种语言,并描述其语法与语义;2、编写解释器对该语言进行解释;3、生成对应的脚本语言程序。

  • 隐式调用架构风格(典型示例:通过间接方式进行调用,如触发)的架构设计过程:首先需要定义“断点在调试过程中命中”这一事件,并实现当断点命中后的屏幕定位函数;其次集成开发环境维护一个事件注册表结构,将该事件与屏幕定位函数关联起来形成注册表中的一个记录项。在调试过程中,集成开发环境负责监听各种事件,当“断点在调试过程中命中”这一事件发生时,集成开发环境查找事件注册表,找到并调用屏幕定位函数,从而实现脚本语言编辑界面与调试代码的自动定位。

http://www.lryc.cn/news/357346.html

相关文章:

  • 56.野指针和悬空指针
  • echarts-dataset,graphic,dataZoom, toolbox
  • AI界的“拼夕夕”登场,为上万张GPU寻找新使命
  • STM32-13-MPU
  • (超详细)字符函数和字符串函数【上】
  • AUS GLOBAL 荣获 Brokersview 颁奖盛典多项殊荣
  • Spring Aop 实现对mapper层入参进行重新赋值
  • 朗读亭主要作用有哪些?
  • 力扣:226. 翻转二叉树
  • 深入解析 JSONPath:从入门到精通
  • Python算法设计与分析期末
  • pg_lakehouse 与 datafusion
  • 基于51单片机的酒精浓度检测仪的设计
  • 重生之 SpringBoot3 入门保姆级学习(02、打包部署)
  • Java-常用模块
  • c++大作业 调整字幕的时间
  • Nmap使用方法
  • 任务3.1:采用面向对象方式求三角形面积
  • 解读《互联网政务应用安全管理规定》网络和数据安全中的身份认证和审计合规建设
  • HTML-JavaWeb
  • 数组-检查数组内是否存在和为7的倍数的子序列
  • 【图像处理与机器视觉】图像处理概述与像素
  • 虚函数的性能消耗到底在哪?
  • Visual Studio 的使用
  • Web前端与App前端:深入剖析两者的异同
  • 初学者必读:Midjourney AI创作工具的简易使用手册!
  • 使用python绘制一个五颜六色的爱心
  • 关于锂电池短路测试
  • 排序(前篇)
  • Linux学习笔记(二)