软件架构

2024/4/11 17:23:39

框架解读 | Retrofit设计剖析

作者:Calculus_小王 Retrofit是一个类型安全的HTTP客户端,可以通过注解将HTTP API转换为Java接口,并使用动态代理,CallAdapter和Converter来发起请求和解析响应。 本文 着重于 Retrofit的架构设计,对于其注解解析能力上…

26. 云上的架构

文章目录26. 云上的架构26.1 Basic Cloud Definitions 基本云定义26.2 Service Models and Deployment Options 服务模型和部署选项26.3 Economic Justification 经济原因26.4 Base Mechanisms 基本机制26.5 Sample Technologies 样本技术26.6 Architecting in a Cloud Environ…

27.边缘系统的架构

文章目录27 Architecures for the Edge 边缘系统的架构27.1 The Ecosystem of Edge-Dominant Systems 边缘主导系统的生态系统27.2 Changes to the Software Development Life Cycle 软件开发生命周期的变化27.3 Implications for Architecture 对架构的影响27.4 Implications …

深入理解设计原则之KISS/YAGNI/DRY原则【软件架构设计】

系列文章目录 C高性能优化编程系列 软件架构设计系列 深入理解设计模式系列 高级C并发线程编程 如果敌人使你生气,说明你没有胜过他的信心。 If the enemy makes you angry, that means you have no more than his confidence. SOLID原则见博文深入理解设计原则讲…

系统分析与设计

目录前言系统概述用户故事devops系统特性系统规划系统规划步骤(记住)系统分析模型诺兰模型(了解)CMM能力成熟度模型(重点)系统规划方法战略集合转换法关键成功因素法企业资源规划法准备工作调查研究定义业务…

深入理解设计原则之开闭原则(OCP)【软件架构设计】

系列文章目录 C高性能优化编程系列 深入理解软件架构设计系列 深入理解设计模式系列 高级C并发线程编程 OCP:开闭原则 系列文章目录1、开闭原则的定义和解读2、如何理解“对扩展开放,对修改关闭”3、实现开闭原则的方法4、如何在团队协作中保证开闭原则…

Rt-Thread 移植6--多线程(KF32)

6.1 就绪列表 6.1.1 线程就绪优先级组 线程优先级表的索引对应的线程的优先级。 为了快速的找到线程在线程优先级表的插入和移出的位置,RT-Thread专门设计了一个线程就绪优先级组。线程就绪优先组是一个32位的整型数,每一个位对应一个优先级&#xff…

软件架构设计(业务架构、应用架构、数据架构、技术架构)

一、架构相关概念 1、系统 系统:由一群有关联的个体组成,根据某种规则运作,能完成个别原件不能独立完成的工作的群体。 大的系统内部往往是由多个小系统嵌套组成的,这些小系统成为整个大系统的子系统,大系统把包含的子…

深入理解与运用Android Jetpack ViewModel

在Android开发中,数据与界面的分离一直是一项重要的挑战。为了解决这个问题,Google推出了Android Jetpack组件之一的ViewModel。ViewModel是一种用于管理UI相关数据的架构组件,它能够帮助开发者实现优雅的数据驱动和生命周期管理。本文将深入…

异常分布设计

异常处理是软件设计中的一个重要方面,正确的策略可以使代码更具可读性、可维护性和健壮性。关于异常类的组织,不同的项目和团队可能有不同的最佳实践,但以下是一些建议的方法: 集中管理异常的优点: 一致性:…

面试笔记:Android 架构岗,一次4小时4面的体验

作者:橘子树 此次面试一共4面4小时,中间只有几分钟间隔。对持续的面试状态考验还是蛮大的。 关于面试的心态,保持悲观的乐观主义心态比较好。面前做面试准备时保持悲观,尽可能的做足准备。面后积极做复盘,乐观的接受最…

系统设计的一些原则

目录 前言一、在设计系统时,应该多思考墨菲定律二、在系统划分时,也要思考康威定律三、高并发原则四、高可用原则五、业务设计原则总结前言 业务千变万化,技术层出不穷,设计理念也是百花齐放,看起来似乎很难有一套通用…

品达通用权限系统-Day03

文章目录 1. 概述2. lombok(编码效率工具)2.1 lombok 简介2.2 安装lombok插件2.3 lombok常用注解2.4 lombok入门案例 3. Nacos(服务注册和配置中心)4. Redis(Windows版安装及使用) 1. 概述 本节主要讲述&a…

企业应用架构模式之Web表现模式

(1)MVC:把用户界面交互分拆到不同的三种角色模型、视图、与控制器上。 模型表示领域信息对象;视图表示UI中模型的显示;控制器获得用户输入,对模型进行操作并更新视图。 MVC关注两个分离:从模型…

Rt-Thread 移植8--定时器的实现(KF32)

1 思路 之前线程需要延时的时候,就初始化remaining_tick,只是将线程就绪优先级组中对应的位清0,并不会将线程从就绪列表中删除。每次systick中断,就remaining_tick递减,如果为0表示延时时间到,将该线程就绪…

Shifu高级功能:实现FSM(有限状态机)

介绍 有限状态机(英语:finite-state machine,缩写:FSM)又称有限状态自动机(英语:finite-state automaton,缩写:FSA),简称状态机,是表…

企业前后端分离软件架构如何设计?

企业前后端分离软件架构的设计涉及到前端和后端的独立性、通信方式、数据流管理等多个方面。下面我将为你介绍一个常见的前后端分离软件架构设计: 1、前端层: 框架选择:选择适合项目需求的前端框架,例如React、Vue.js、Angular等…

【架构设计】在软件架构中制作 C4 模型

Making C4-Model in Software Architecture 在软件架构中制作 C4 模型 目录 Making C4-Model in Software Architecture在软件架构中制作 C4 模型 Understanding the overall system architecture through the C4-Model diagram quickly.通过C4-Model图快速了解整体系统架构…

28.结语

文章目录28 Epilogue 结语28 Epilogue 结语 Don’t let it end like this. Tell them I said something. 不要让它就这样结束。 告诉他们我说了些什么 —Pancho Villa 您已到达旅程的尽头。 辛苦了 我们希望您能从本书中找到一些有价值的收获。 我们建议该列表应包括以下内…

免费报名参加研发效能峰会

免费报名参加研发效能峰会:点击免费报名 聚合模式是 DDD 的模式结构中较为难于理解的一个,也是 DDD 学习曲线中的一个关键障碍。合理地设计聚合,能清晰地表述业务一致性,也更容易带来清晰的实现,设计不合理的聚合&…

咸鱼笔记:《实用软件工程》第一、二章课后简答题及参考答案

文章目录前言第一部分 软件工程概述第一章 软件与软件工程第二章 软件过程总结前言 作为程序员来说,软件工程这门课是必修的学习课程之一,软件工程可以给我们提供完整符合标准的软件开发流程学习和提升项目管理能力。软件工程,一言蔽之&…

生产管理系统到底有什么好处

一、什么是生产管理系统 PPMS智能生产管理系统( Product Process Management System),采用扫描识别码的方式实现产品整个生产测试流程,系统不仅包含产品生产流程功能,还包含产品的测试流程功能。采用B/S架构软件理念&a…

软件架构入门-分层架构、事件驱动、微服务架构和云原生架构

软件架构(software architecture)就是软件的基本结构。 合适的架构是软件成功的最重要因素之一。大型软件公司通常有专门的架构师职位(architect),只有资深程序员才可以担任。 O’Reilly 出版过一本免费的小册子《So…

编程思想、方法论和架构模式的应用

概要编程思想是指在编写代码时所采用的基本思维方式和方法论。分类编程思想分类:面向对象编程(Object-Oriented Programming,简称OOP):把数据和对数据的操作封装在一起,通过类和对象的概念实现模块化、可重…

Shifu高级功能:自定义的deviceShifu数据处理程序

自定义的deviceShifu数据处理程序 Shifu允许用户自定义deviceShifu,让数字孪生更加高效。 默认情况 默认情况下,从设备到deviceShifu的数据将以其原始格式提供。 自定义处理 在添加了定制的逻辑后,deviceShifu可以对数据进行处理&#xf…

刚哥谈架构 (五)- 推荐给架构师的书单

刚哥谈架构 (五)- 推荐给架构师的书单 今天收到豆瓣的2019年的总结,发现自己已经在豆瓣渡过10个春秋。今年读了69本书,有很多书非常棒。今天我就给各位架构师,程序员,码农推荐一些我觉得对工作和职业生涯都…

设计模式 - 如何在库和主程序之间互相调用数据和函数

背景:在项目开发过程中,难免碰到这种情况,当我们想要通过我们开发的库,调用主程序中的一些变量或者函数的时候,就会导致一些问题,因为在项目构建过程中,库都是不依赖于主程序编译的,…

鹅厂涨薪开启,其它大厂会跟风吗?

从22年开始至今,网络上传言最多的就是“某某公司裁员了百分之多少的员工或是什么大幅度降薪等操作”,可谓是哀鸿遍野,每个人都在祈祷:“下一个被裁的不要是自己(老天爷保佑)”。 网友们吐槽:这些…

软件设计模式---从0到1

文章目录设计模式概述设计模式的定义:设计模式的分类:常见的设计模式:面向对象设计原则创建型设计模式(重点)简单工厂模式工厂方法模式抽象工厂模式单例模式结构性型设计模式(重点)适配器模式桥…

ARouter基本使用及原理分析

作者:愿天深海 ARouter简介 ARouter是阿里开源的一款帮助Android App进行组件化改造的路由框架,是Android平台中对页面和服务提供路由功能的中间件,可以实现在不同模块的Activity之间跳转。 ARouter的特点是灵活性强还能帮助项目解耦。 除…

软件架构、中间件、典型系统集成技术

信息系统项目管理师备考软件架构、中间件、典型系统集成技术常考点,易考点

软件工程实验-医院患者监护系统设计

医院患者监护系统 author whj 1、需求分析 1.1系统的功能模型 0层数据流图 1层数据流图 1.2系统的数据模型(E-R图) 2、总统设计 系统功能结构图

【2023RT-Thread全球技术峰会】一套全新的物联网多应用框架xiotman,助你解决多应用的难题

写在前面 就在上周,我作为讲师参与了2023RT-Thread全球技术峰会的主题演讲,我给大家带来了一套全新的解决物联网终端应用多样化的软件架构解决方案,在这里我再次以图文的形式介绍一下给社区的小伙伴,希望借此机会找到更多的同频小…

开源免费OA项目:让工作任务动态显示,团队共享

在工作中,经常会遇到这些问题: 管理者/领导者: ● 感觉每个下属都需要监督和定期督促才能保证任务的执行 ● 分配工作时,总是担心分配不均,多了怕下属抱怨,少了怕项目完成不了 ● 在出差的时候&#xf…

分布式系统(Distributed Systems)概述

随着互联网的持续发展(以Web应用为代表)、计算机应用的深入、分布式系统构建技术的日益成熟,分布式系统逐渐深入到人们的日常生活,并渗透到社会、经济、文化生活的各个方面。现如今,分布式系统已成为主流的软件系统。本文主要介绍下分布式系统…

关于面试的那点事,我想说……

最近有许多公司的陆陆续续开始秋招了,但有不少粉丝像我说吐槽秋招难。实话实说现在确实有点难,要在以前Android 开发岗位的工作遍地都是,而且面试问的也比较简单,到手的Offer任意选。可惜如今市场变咯,岗位需求量在减少…

程序员必知的几种软件架构模式

本文主要介绍了几种主要的软件架构模式。 架构模式是对给定上下文的软件架构中常见问题的一种通用的可复用的解决方案。 一种模式就是特定上下文的问题的一种解决方案。 然而,很多开发者至今还对各种软件架构模式之间的差别搞不清,甚至对其所知甚少。…

我与金融 —— 境外支付系统之安全测试实践(一)

😏作者简介:博主是一位测试管理者,同时也是一名对外企业兼职讲师。 📡主页地址:【Austin_zhai】 🙆目的与景愿:旨在于能帮助更多的测试行业人员提升软硬技能,分享行业相关最新信息。…

软件架构之前后端分离架构服务器端高并发演进之路

软件架构之前后端分离架构&服务器端高并发演进之路 前后端分离架构从业务角度从质量属性从性能角度 服务器端关于不同并发量的演进之路1. 单体架构2. 第一次演进:应用服务器和数据库服务器分开部署3. 第二次演进:引入本地缓存和分部署缓存4. 第三次演…

Shifu高级功能:命令行中间件之HTTP 到 SSH 的中间件

介绍 为了使Shifu可以整合开发者的驱动,我们编写了一个简单的 HTTP 到 SSH 的中间件来供开发者使用 设计 这个 HTTP 到 SSH 的中间件设计如下: 从中间件利用容器提供的公钥建立一个到容器的 SSH 连接这个 SSH 连接会被用作反向 HTTP 代理&#xff0c…

3. 理解质量属性

文章目录 3.1. 功能性 质量从来都不是偶然的;它始终是高度意图,真诚努力,明智的方向和熟练的执行力的结果。 —William A. Foster 许多因素决定了系统架构中必须提供的质量(qualities)。这些品质比功能更重要&#xff…

软件体系结构

目录前言概述软件重用可重用的元素构件构件模型(规模——越大越好?越小越好?)构件获取可重用技术和领域之间的关系构件管理软件体系结构软件体系结构的反作用软件体系结构的商业周期软件体系结构建模41模型视图逻辑视图&#xff0…

Shifu高级功能:命令行中间件之HTTP 到 PowerShell 的中间件

简介 为了让你的设备接入Shifu。我们用Go编写了一个简单的HTTP到 PowerShell 的中间件,供开发者使用。 设计 这个HTTP到PowerShell的中间件是这样设计的: 中间件在主机上暴露了一个HTTP接口该HTTP接口用于转发来自外部的请求到 Windows 主机中间件将…

Rt-Thread 移植3--临界段保护(KF32)

1.什么是临界段 执行下的时候不能被中断的代码段。 系统调度和外部中断都会打断,系统调度本质是产生PendSV中断。NMI FAULST和Hard FAULE除外2.代码实现 contex_gcc.c中添加 rt_base_t __attribute__((noinline)) rt_hw_interrupt_disable(void) {asm volatile(…

用户手册:遥测服务之推送至 TDengine

创建TelemetryService Yaml 文件 apiVersion: shifu.edgenesis.io/v1alpha1 kind: TelemetryService metadata:name: push-endpoint-1namespace: devices spec:telemetrySeriveEndpoint: http://telemetryservice.shifu-service.svc.cluster.localserviceSettings:SQLSetting:…

对架构的理解

架构 什么是架构 总结一下,什么是架构,就是: 1.根据要解决的问题,对目标系统的边界进行界定。 2.并对目标系统按某个原则的进行切分。切分的原则,要便于不同的角色,对切分出来的部分,并行或串…

Android开发之性能优化:过渡绘制解决方案

1. 过渡绘制 屏幕上某一像素点在一帧中被重复绘制多次,就是过渡绘制。 下图中多个卡片跌在一起,但是只有第一个卡片是完全可见的。背后的卡片只有部分可见。但是Android系统在绘制时会将下层的卡片进行绘制,接着再将上层的卡片进行绘制。但其…

2023年全球软件架构师峰会(ArchSummit深圳站):核心内容与学习收获(附大会核心PPT下载)

本次峰会是一次重要的技术盛会,旨在为全球软件架构师提供一个交流和学习的平台。本次峰会聚焦于软件架构的最新趋势、最佳实践和技术创新,吸引了来自世界各地的软件架构师、技术专家和企业领袖。 在峰会中,与会者可以了解到数字化、AIGC、To…

软件架构模式+系统架构

架构模式对比 分层模式 一般信息系统中最常见的4层划分如下: Presentation layer 表示层(也就是UI层)Application layer 应用层(也就是服务层)Business logic layer 业务逻辑层(也就是领域层)…

面试:分布式系统接口,如何避免表单的重复提交?

关于怎么实现承载更多用户量的系统,一直是我重点关注的一个技术方向。改造架构提高承载力,通常来讲分为两个大方向,互相配合实现。 硬件架构改进,主要是使用阿里云这种多组件的云环境:通过负载均衡SLB,模版…

ARM CCA机密计算软件架构之软件堆栈概述

Arm CCA平台通过硬件添加和固件组件的混合方式实现,例如在处理元素(PEs)中的RME以及特定的固件组件,特别是监视器和领域管理监视器。本节介绍Arm CCA平台的软件堆栈。 软件堆栈概述 领域VM的执行旨在与Normal world(正常世界)隔离,领域VM由Normal world Host(正常世界…

TrustZone之顶层软件架构

在处理器中的TrustZone和系统架构中,我们探讨了硬件中的TrustZone支持,包括Arm处理器和更广泛的内存系统。本主题关注TrustZone系统中发现的软件架构。 一、顶层软件架构 下图显示了启用TrustZone的系统的典型软件栈: 【注意】:为简单起见,该图不包括管理程序,尽管它们可…

模式、框架、架构和平台的区别和联系

我们常常谈到软件的架构、框架、设计模式与平台&#xff0c;然而常常将它们混淆。 从复用角度讲&#xff0c;设计模式是代码级复用、框架是模块级复用、架构是系统级复用、平台是企业应用级复用。所以从应用规模上可以认为&#xff1a;设计模式<框架<架构<平台。下面做…

【学高项冲考试】信息系统项目管理师备考笔记 开篇

最近有一个考高项的需求&#xff0c;加上很久没有更博文&#xff0c;没有督促自己每日精进&#xff0c;积极性和主动性都没有在校时间那么自我九九六了~所以从备考计划到备考过程都记录下来&#xff0c;主要周一到周五每天20分钟过课程记笔记&#xff08;如果下班晚就优先休息&…

中国多位AI专家赞成马斯克等人呼吁暂停ChatGPT技术的快速发展

一些中国内地和香港的人工智能&#xff08;AI&#xff09;专家响应全球科技老将的呼吁&#xff0c;敦促暂停开发比GPT-4更先进的AI技术&#xff0c;因为他们认为当前的进展速度“过快”可能会带来危险。 上个月&#xff0c;研究人类社会技术风险的“生命未来研究所”&#xff…