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

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

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

  • 20240517

20240517

  1. 连续性:恢复能力;可用性:保持稳定态的时长

在这里插入图片描述

  1. 增量开发模式:在增量开发中,每个增量都有明确的范围和功能,并按照特定的功能顺序完成。增量之间的范围划分在开发开始时就确定好,并且很少进行变更。不同的功能之间没有明确的时间间隔。
    敏捷开发模式:敏捷开发更注重根据需求、市场反馈等因素来灵活调整范围和优先级。每个迭代周期内的范围可以根据反馈和需求变化进行调整,以适应变化的情况。

  2. 敏捷开发–面向对象 自底向上 ,瀑布开发–面向过程 自顶向下,结构化设计

  3. uml 顺序图 是面向对象的

  4. 代码段+代码段 = 结构级 ; 代码段+功能 =功能段 ; 语法、结构模型 =实现段 ;领域、uml =领域级

  5. JMeter 软件评价工具

  6. 在这里插入图片描述

  7. 在这里插入图片描述

  8. 耦合度由底 -> 高
    非直接耦合 > 数据耦合 > 特征耦合 > 控制耦合 > 外部耦合 > 公共耦合 > 内容耦合

  9. 内聚度由 高-> 低
    功能内聚 > 顺序内聚 > 通信内聚 > 过程内聚> 瞬时内聚 > 逻辑内聚 > 偶然内聚

  10. List item

  11. 在这里插入图片描述

  12. 可靠性:能用多久;可用性:能不能用

  13. 可靠性(reliability):在规格时间间隔内和规定条件下,系统或部件执行所要求功能的能力。例如:
    QA1:在客户端与服务器端通信时,如果网络故障,系统不能出现故障。
    可用性(availability):软件系统在投入使用时可操作和可访问的程度,或能实现其指定系统功能的概率。例如:
    QA2:系统的可用性要达到98%。

  14. Kerberos 中 认证服务器(AS);PKI 中认证是 CA( Certificate Authority )

  15. 在这里插入图片描述

  16. 在这里插入图片描述

  17. 软件架构与用户对系统的功能性和需求没有对应关系

  18. 在这里插入图片描述

  19. 在这里插入图片描述

  20. 在这里插入图片描述

  21. esb 更倾向于工序流程的调度,而微服务中nacos这些工具等更倾向于性能

  22. 在这里插入图片描述

  23. 在这里插入图片描述

  24. 在这里插入图片描述

  25. 在这里插入图片描述

  26. (物进开逻)在这里插入图片描述

在这里插入图片描述

  1. List item
  2. 在这里插入图片描述
  3. 规则系统架构: 有选择项,根据外部环境动态变化
  4. 黑板架构:根据条件判断执行相应动作,传统应用是 信号处理领域,如语音和模式识别
  5. 数据仓库架构 : 针对与数据共享 ,可独立编译运行;管道-过滤器 架构 :针对于有序连续,上一个输出才可以下一个输入,数据独立;解释器 架构: 根据不同运行环境进行自适应
  6. 隐式调用架构:典型的回调机制
  7. 解释器与隐式调用架构区别: 调用与外环境有关,回调–隐式调用架构;对象间属性行为交互关系–解释器架构
  8. 在这里插入图片描述
  9. 传统编译:管道过滤器架构;现代编译:仓库/数据库(数据共享)架构
  10. 架构风格反映领域中众多系统所共有的 结构和语义 ,强调对架构 设计 的重用,主要包括 架构定义架构词汇表架构约束
  11. 敏感点: 一个或多个构件之间的关系的特性 ; 权衡点:影响多个质量属性的特征
  12. 改变加密级别属于 权衡点,典型实例
  13. 安全性字眼 考虑 权衡点 ; 最大并发用户数量直接影响传输协议和数据格式 敏感点 ; 由于系统的业务逻辑目前尚不清楚,因此现有系统三层架构中第二层可能出现功能重复,会影响系统的可修改性 风险点 ;假设用户请求的频率为每秒1个,业务处理时间小于30ms,则将请求响应时间设定为1s可以接受 非风险点
  14. 架构模式 是软件设计中的高层决策(关键词:决策); 设计模式主要关注软件系统的设计,与具体的实现语言无关(关键词:设计,没有决策); 惯用法则是最底层的模式,实现时通用某种特定的程序设计语言来描述构件与构件之间的关系(关键词:构件与构件
  15. 策略模式:将算法封装; 中介者模式 : 将对象封装;
  16. 工厂模式为创建一系列相关或相互依赖的对象提供一个接口 (不用new);建造者模式 将复杂对象的构件与其表示相分离,这样相同的构造过程可以创建不同的对象
  17. 原型(Prototype)模式 允许对象在不了解要创建对象的确切类以及如何创建等细节的情况下创建自定义对象
  18. 在这里插入图片描述
  19. 责任链 模式,可以过滤,如过滤违禁词汇
  20. 装饰模式: 想要在单个对象中动态并且透明地添加责任,而这样并不会影响其他对象;想要在以后可能要修改的对象中添加责任;当无法通过静态子类化实现扩展时
  21. 访问者模式:可扩展,不改变原来的,增加新的
  22. 命令模式:可以将一个请求封装成一个对象,从而使你可以用不同的请求对客户进行参数化,还可以对请求排队,或记录请求日志,以及支持可撤销的操作
  23. 状态模式 : 将每个条件分支放入一个独立的类中,可以根据对象自身的情况将对象的状态作为一个对象,这一对象可以不依赖于其他对象而独立变化
  24. 策略模式:定义一系列算法,将它们封装起来,并且使他们可相互替换,使得算法可独立于使用它的客户而变化
  25. 中介者模式:不改变,松耦合
  26. 经典设计模式共23个,可以按照2个准则分类:一、按设计模式的目的划分,可分为创建型、结构型、行为型三种模式;二、按设计模式的范围划分,可分为类设计模式、对象设计模式
  27. 外观设计模式:要求外部与一个子系统的通讯必须通过一个统一的外观对象,典型的实例如,数据库访问过程一致,但是不同数据库提供的访问接口有一定差异
  28. 桥接模式:抽象与现实分离,独立但又相关的继承层次结构

相关文章:

  • LeetCode-102. 二叉树的层序遍历【树 广度优先搜索 二叉树】
  • java.util.Arrays 详解
  • 【八股系列】webpack的构建流程是什么?
  • 如何用电脑批量操作多部手机
  • 二.常见算法--贪心算法
  • 基金基础知识-基金的生命周期
  • 蒙特卡洛+概率潮流!基于蒙特卡洛和新能源出力模拟的概率潮流分布程序代码!
  • AI赋能 企业智能化应用实践
  • Django数据库查询操作
  • C# 观察者模式实现
  • 【Linux】深入理解 Linux 的 chmod 指令
  • 音视频-常用的分析工具介绍-连续补充
  • 基于Django的美团药品数据分析与可视化系统,有多用户功能,可增删改查数据
  • 产品经理交接规范及流程
  • vue3的api风格
  • 【407天】跃迁之路——程序员高效学习方法论探索系列(实验阶段164-2018.03.19)...
  • 【挥舞JS】JS实现继承,封装一个extends方法
  • Angular4 模板式表单用法以及验证
  • Bootstrap JS插件Alert源码分析
  • golang 发送GET和POST示例
  • java B2B2C 源码多租户电子商城系统-Kafka基本使用介绍
  • JS变量作用域
  • Linux CTF 逆向入门
  • 包装类对象
  • 从重复到重用
  • 服务器之间,相同帐号,实现免密钥登录
  • 好的网址,关于.net 4.0 ,vs 2010
  • 聚簇索引和非聚簇索引
  • 理解IaaS, PaaS, SaaS等云模型 (Cloud Models)
  • 入职第二天:使用koa搭建node server是种怎样的体验
  • Nginx惊现漏洞 百万网站面临“拖库”风险
  • 好程序员大数据教程Hadoop全分布安装(非HA)
  • 继 XDL 之后,阿里妈妈开源大规模分布式图表征学习框架 Euler ...
  • ​LeetCode解法汇总518. 零钱兑换 II
  • # AI产品经理的自我修养:既懂用户,更懂技术!
  • # 睡眠3秒_床上这样睡觉的人,睡眠质量多半不好
  • (0)Nginx 功能特性
  • (55)MOS管专题--->(10)MOS管的封装
  • (MonoGame从入门到放弃-1) MonoGame环境搭建
  • (webRTC、RecordRTC):navigator.mediaDevices undefined
  • (八)c52学习之旅-中断实验
  • (编译到47%失败)to be deleted
  • (附源码)计算机毕业设计SSM保险客户管理系统
  • (六)c52学习之旅-独立按键
  • (每日持续更新)jdk api之FileReader基础、应用、实战
  • (强烈推荐)移动端音视频从零到上手(上)
  • (原创)boost.property_tree解析xml的帮助类以及中文解析问题的解决
  • (转)mysql使用Navicat 导出和导入数据库
  • ... 是什么 ?... 有什么用处?
  • .NET 4 并行(多核)“.NET研究”编程系列之二 从Task开始
  • .NET 设计模式—简单工厂(Simple Factory Pattern)
  • .NET 中让 Task 支持带超时的异步等待
  • .net 桌面开发 运行一阵子就自动关闭_聊城旋转门家用价格大约是多少,全自动旋转门,期待合作...
  • .NET/C# 推荐一个我设计的缓存类型(适合缓存反射等耗性能的操作,附用法)
  • @SentinelResource详解