- 博客(761)
- 资源 (1)
- 收藏
- 关注
原创 为什么多数技术公司做需求分析不用DFD图
DFD图专注于数据处理流程,但现代系统(如移动应用、微服务架构)更强调对象交互和用户行为。用例图(UML)能更直观描述用户目标与系统功能的关系(如“用户登录”“提交订单”),而DFD无法直接映射类、对象等概念。DFD图(数据流图)在传统结构化分析中是经典工具,但现代需求分析中“一般公司不用DFD图”的现象确实普遍存在。UML工具链(用例图、类图、序列图)覆盖需求全流程,DFD无法无缝集成。DFD的符号(如加工☐、数据存储⏹)对非技术人员晦涩,而业务流程图(BPMN)以任务和岗位为核心,更符合业务视角。
2025-10-21 00:01:41
440
原创 C++的主要并发开发方法有哪些
• 线程管理:通过std::thread创建线程,绑定函数/Lambda表达式实现任务并行。• 进程创建:通过fork()或std::process(C++23)创建独立进程。• 原子操作 (std::atomic):无锁编程,高效更新共享变量(如计数器)。2.减少锁竞争:缩小临界区范围,或用无锁数据结构(如std::atomic)。• 管道(pipe)、共享内存(shm)、套接字(socket)传递数据。• 非阻塞I/O模型:单线程监控多个I/O事件(如网络套接字)。
2025-10-18 15:08:49
855
原创 C语言能否支持C++所支持的并发开发
C语言本身的标准库不直接支持类似C++标准库中的高级并发开发功能(如线程、原子操作、异步任务等),但可通过系统级API实现并发能力。C++的std::thread、std::atomic等封装降低了复杂性,而C需直接操作底层API,代码冗长且易出错。• 互斥锁:pthread_mutex_lock()/pthread_mutex_unlock()• 条件变量:pthread_cond_wait()/pthread_cond_signal()(3)I/O多路复用:select/poll/epoll。
2025-10-18 15:01:06
584
原创 设备系统的异步控制和同步控制的区别是什么
如快递柜取件:用户点击“取件”后无需等待,系统处理完成后通知用户;期间用户可做其他事。如工厂流水线:所有环节按统一节拍运作,若某环节延迟(如装配零件慢),整条线停止等待。• 模块速度相近的短距离传输(如内存读写)。• 异构系统互联(如CPU与慢速U盘通信)。• 低功耗场景(无全局时钟,动态功耗低)。• CPU内部指令执行。
2025-10-17 21:01:58
179
原创 软件程序的同步模式和异步模式的区别是什么
• 用异步:处理高延迟操作(网络I/O、大文件操作)、需高并发或实时响应(聊天应用、股票行情更新)。• 异步:回调函数、Promise(JS)、async/await(C#/Python)。• 用同步:任务简单、需严格顺序执行(如登录验证:先验证用户名,再验证密码)。• 异步:需处理回调地狱或协程,复杂度高,但提升响应速度(如网页局部更新)。• 同步:逻辑简单易调试,但可能导致界面“假死”(如网页白屏)。• 异步:资源利用率高(等待时可处理其他任务)。• 同步:资源利用率低(等待期间CPU闲置)。
2025-10-17 20:50:50
527
原创 计算机中断控制器常见所处位置是什么
• 工作原理:当外设(如键盘、磁盘)产生中断时,PIC会汇总中断信号,并通过外部总线向CPU发送中断请求(INTR)。在早期的计算机系统(如x86架构的PC)中,中断控制器(如8259A PIC)是独立的芯片,通过外部总线(如系统总线或I/O总线)与CPU通信。• 8259A可编程中断控制器(PIC):在IBM PC兼容机中,PIC位于主板上,通过中断请求线(IRQ)连接到CPU的引脚。• 核心标准:无论位置如何,中断控制器需通过可靠的总线(外部或内部)与CPU通信,确保中断信号的及时传递和处理。
2025-10-15 21:06:04
393
原创 MySQL如何编写触发器实现并发CRUD安全
在 MySQL 中实现并发 CRUD 安全的关键在于正确利用事务和锁机制,而触发器本身是在事务中执行的,其安全性高度依赖于底层的事务隔离级别和锁策略。触发器的操作与触发它的 DML 语句(INSERT/UPDATE/DELETE)在同一事务中。若事务未提交,触发器中的修改不会被其他会话看到(遵循 ACID 特性)。• 在触发器中修改数据时,FOR UPDATE语句会获取行级排他锁(X锁),阻塞其他事务的写操作。• 若需更高一致性,可临时提升事务隔离级别(如SERIALIZABLE),但会牺牲并发性能。
2025-10-13 13:18:08
429
原创 软件设计模式中原型模式、工厂模式和生成器模式的区别是什么
• 适用场景:对象创建成本高(如数据库连接、复杂计算)、需动态生成相似对象(如游戏敌人变体)、避免分层次工厂类。• 适用场景:对象创建过程复杂或需动态扩展(如新增产品类无需修改客户端代码)、隐藏具体实现类(如插件架构)。• 关键点:分为简单工厂(单一工厂类)、工厂方法(子类决定实例化)、抽象工厂(创建相关对象家族)。• 适用场景:对象构建过程复杂(如多步骤、多参数)、需灵活控制构建细节(如订单处理、文档生成)。• 关键点:包含抽象建造者(定义构建接口)、具体建造者(实现构建逻辑)、指挥者(控制构建流程)。
2025-10-08 15:03:42
945
原创 系统工程的螺旋模型如何做到预防风险,统一开发与维护,与传统模型的对比如何
案例:某银行系统升级中,评估“数据迁移失败”风险值=0.8(概率)×¥200万(损失)=¥160万风险等级→ 团队优先开发迁移验证工具并备份旧系统。螺旋模型本质是风险驱动的渐进式演进:开发过程不断消化维护需求,系统在迭代中持续进化,最终降低全生命周期成本。• 发生概率(Probability):按0-1尺度评分(如新技术失败概率0.7)。• 影响程度(Impact):估算成本/进度损失(例:延期20天,成本超支50万)。B --> C[计划制定:将维护需求纳入]C --> D[风险分析:评估维护影响]
2025-10-07 02:29:54
751
原创 白盒测试的路径覆盖和条件组合覆盖哪个能发现更多的错误
理论上路径覆盖应包含条件组合覆盖,但若程序存在不可达路径或条件取值被路径上下文固定(如某条件在特定路径中恒为真),可能导致条件组合未完全覆盖。强制覆盖判定1真→执行判定2、判定1真→跳过判定2、判定1假→执行判定2等所有路径组合,包括条件组合覆盖无法触发的场景。示例:若程序中有循环或嵌套分支,路径覆盖会验证循环0次、1次、多次的情况,而条件组合覆盖仅验证循环体内的条件组合。• 条件组合覆盖仅能保证单个判定内的逻辑完整性,而路径覆盖确保全局执行路径的完备性。• 路径覆盖不保证条件组合覆盖?
2025-10-07 02:19:42
438
原创 管道过滤器架构简介并用C++实现
管道过滤器架构的本质是“流水线式分工”,通过拆分-连接-协作,将复杂数据处理简化为可管理的步骤,是流式系统的经典解决方案。• 分层架构:垂直分层(如UI层→业务层→数据层),强调整层隔离;• 模块化与可重用性:过滤器可独立开发、测试和复用(如ETL中的通用清洗模块)。• 灵活扩展性:新增过滤器只需插入管道,无需修改现有组件(如添加数据加密步骤)。• 解耦作用:隔离过滤器实现细节,仅传递标准化数据(如字节流、结构化对象)。• 并发处理能力:管道缓冲支持并行执行多个过滤器(如流水线式并行计算)。
2025-10-06 22:23:16
313
原创 嵌入式系统初始化过程是什么
*完成嵌入式微处理器的初始化,包括设置嵌入式微处理器的核心寄存器和控制寄存器、嵌入式微处理器核心工作模式和嵌入式微处理器的局部总线模式等。**片级初始化把嵌入式微处理器从上电时的默认状态逐步设置成系统所要求的工作状态。这是一个纯硬件的初始化过程。,为随后的系统级初始化和应用程序的运行建立硬件和软件环境。这是一个同时包含软硬件两部分在内的初始化过程。BSP将对嵌入式微处理器的控制权转交给嵌入式操作系统,由操作系统完成余下的初始化操作,包含。片级初始化→板级初始化→系统级初始化。
2025-10-03 14:08:01
183
原创 C++示例,演示同一进程中的线程共享堆、全局变量、静态变量和文件资源,同时各自独享栈和寄存器
注意:由于线程调度顺序不确定,每次运行的具体数值可能不同,但最终共享变量的总和应该等于线程数量的累加(本例中每个线程对共享变量+1,3个线程共+3)。• 文件资源:通过std::cout演示需要同步的输出(实际文件操作需要更严格的同步)• 使用std::mutex保护对共享资源(如std::cout)的访问。• 寄存器:线程切换时会自动保存/恢复寄存器状态(通过编译器自动处理)• 堆:所有线程通过new分配的SharedData对象。• 栈:每个线程的stack_var有不同值和地址。
2025-09-28 09:15:48
323
原创 C++类的成员函数内部发生崩溃,还会进入类的析构函数吗
如果***成员函数内部抛出异常且未被捕获(即异常传播到函数外)***,C++ 会自动启动栈展开(Stack Unwinding)机制。栈展开过程会析构当前作用域内的局部对象(包括成员函数所属的对象本身),因此***会调用该对象的析构函数。如果崩溃是不可恢复的硬件/系统级错误(例如***空指针解引用、除以零、堆栈溢出***等),进程会直接终止。• 析构函数内抛异常:若未捕获,程序可能直接终止(std::terminate())。• 若构造函数内发生硬件错误(如段错误):无任何析构调用。
2025-09-26 21:47:40
525
原创 在面向对象设计中,依赖(Dependency)、关联(Association)、聚合(Aggregation)和组合(Composition)的区别
/ Student作为成员变量(关联)•*** 类B作为类A方法的参数、局部变量或静态方法调用。聚合 较强 部分可独立 成员变量(外部传入) 汽车包含外部引擎。关联 中等 无绑定 成员变量(平等持有) 教师持有学生引用。• ***类A通过成员变量引用类B(单向或双向)***。• 定义:类A临时使用类B,但B不是A的成员属性。• 生命周期:无绑定。• 生命周期:无绑定,但类B可被多个类共享。• 典型场景:客户与订单(客户拥有订单)。• 典型场景:人使用船过河(临时借用)。• 耦合度:★☆☆☆☆(最弱)
2025-09-26 19:37:31
373
原创 3 1 4 1 5 9 6 5使用简单(选择)排序需要几次比较
是的,简单选择排序无论初始序列如何,比较次数总是恒定为n(n−1)/2 n(n-1)/2 n(n−1)/2次(其中n n n是元素个数)。总比较次数:7+6+5+4+3+2+1=28 7 + 6 + 5 + 4 + 3 + 2 + 1 = 28 7+6+5+4+3+2+1=28.• 第 2 轮:需比较n−2 n-2 n−2次(从剩余n−1 n-1 n−1个元素中选最小值);• 第n−1 n-1 n−1轮:需比较1 1 1次(最后两个元素比较)。• 第1次遍历:比较7次(在索引1-8中找最小值)。
2025-09-22 14:39:01
448
原创 船舶设计电气设计主要内容
关键技术点:需依据船级社规范(如CCS、DNV)确定电制参数(交流50Hz/60Hz,直流单/双线制)。• 关键计算:电力负荷分析(三类负荷法)、短路电流校验、电压降校核。• 核心规范:中国船级社(CCS)、国际电工委员会(IEC)标准。• 绝缘监测与接地系统(IT/TT/TN系统选择)。• 船舶辅机(泵、风机、空压机)的电机启停与调速方案。• 机舱监测报警系统(温度/压力/液位传感器集成)。• 无线电通信设备(VHF、卫星站)的不间断电源。• 区域分配电箱划分(机舱、甲板、居住区)
2025-09-07 18:36:58
254
原创 船舶设计生产设计主要内容
关键特点:生产设计是设计与生产的桥梁,强调工艺性、可施工性、标准化(如托盘管理),直接影响建造成本与周期。注:现代船舶生产设计普遍采用三维建模软件(如TRIBON、CATIA)辅助出图,实现虚拟装配验证。零件明细表 分段所有零件清单(材质、尺寸、数量)• 确定分段划分方案(如总段/分段/小组立划分)• 分段结构图(含零件编码、组合顺序、焊接符号)• 焊接工艺规范(方法、坡口形式、焊材选用)• 胎架与样板设计(保证曲面分段精度)。• 矫正时机与方法(热矫正/机械矫正)。• 精度控制标准(公差要求、测量基准)
2025-09-07 16:58:41
378
原创 船舶设计详细设计主要内容
船舶详细设计(也称技术设计)是船舶设计的核心阶段,在初步设计基础上深化技术方案,为生产设计和建造提供完整依据。注:现代船舶设计中,详细设计阶段还需应用三维建模(如TRIBON、CATIA)进行虚拟装配验证,减少建造返工。• 指导后续生产设计:为施工图绘制、材料采购、设备订货提供数据支撑。详细计算书 稳性、强度、航速、油耗等性能计算(含法规符合性证明)• 总纵强度、局部强度校核(按船级社规范如CCS、DNV等)• 分段结构图(首尾、舱壁、甲板等局部结构)• 各层甲板平面图(设备、舱室、通道定位)
2025-09-07 16:56:48
743
原创 船舶设计中铁舾与舾装的内容是什么
舾装(Ship Outfitting)是船舶建造的核心环节,指船体主要结构完成后安装的所有非船体、非动力装置的设备与系统,涵盖机械、电气、电子、生活设施等。3. 分工明确:铁舾保障结构安全与功能性(如系泊、支撑),木舾优化居住环境(如隔热、装饰)。2. 舾装范围更广:包含铁舾(金属)、木舾(非金属),并按功能分为外舾装、内舾装及机装。舾装 船体+动力装置外的所有安装工程(含金属与非金属) 锚机、空调、家具、门窗、管路。例:管路、梯子、系泊桩 例:家具、地板、舱壁装饰。
2025-09-07 15:34:08
838
原创 机械加工刀具一般采用什么材料,硬度熔点韧性经济性如何
韧性:韧性较差,脆性大,承受冲击和振动能力低,但通过调整钨钴等合金成分,可精准匹配钢、铸铁等多种材料的加工需求。经济性:成本较高,但适用于特定加工场景,如高硬度材料的干切削,可减少冷却液消耗和加工污染。经济性:成本较高,但适用于特定加工场景,可减少冷却液消耗和加工污染,长期来看具有经济优势。韧性:强度低,焊接性差,但与铁族材料亲和力小,适合黑色金属的高速切削和难加工材料的切削。经济性:成本较高,但适用于高硬度材料加工,可大幅缩短加工周期,长期来看具有经济优势。
2025-09-06 17:47:43
843
原创 车、铣、磨及其他常用工序具体说明与实例
车、铣、磨是机械加工中最核心的切削加工方法,此外还有钻、镗、刨、插、拉、铸造、锻造、冲压、焊接等多种常用工序。不同工序协同完成零件从毛坯到成品的转化,车、铣、磨侧重精密切削,铸造/冲压/焊接则用于成形与连接。• 车螺栓:将圆柱形棒料夹在车床主轴上旋转,用车刀车削外圆、端面、螺纹等,形成螺栓的杆部和螺纹。• 车床主轴加工:毛坯经粗车(去除大部分余量)→半精车(预留精加工余量)→精车(达到最终尺寸)。• 模具型腔加工:如图3-60所示(),通过数控铣床编程,用环形铣刀分层铣削模具内腔结构。
2025-09-06 11:28:21
604
原创 为何表面粗糙度(如Ra 1.6)、热处理要求(如HRC 40-45)、装配公差(如H7/g6)等无法写入3D模型,需在二维图中标注
现代CAD软件可通过三维模型一键生成二维工程图,但最终制造仍回归二维标注体系,因其完美***平衡了精度、效率与普适性的工程定律***。在工程制造领域,表面粗糙度(如Ra 1.6)、热处理要求(如HRC 40-45)、装配公差(如H7/g6)等技术要求必须通过二维工程图标注,而非直接写入3D模型,根本原因在于技术限制、标准化规范及工程实践需求。•*** 工人操作依赖简明明示:车间师傅需快速定位关键尺寸(如用红笔圈出Ra 1.6的加工面),二维图纸可张贴在机床旁,3D模型需专用设备查看。
2025-09-04 00:30:49
706
原创 为何工业制造比如6轴铣刀都要三视图,而不是一个立体图,三视图在3d打印中的必要性如何
关键结论:6轴铣削和3D打印减少了部分对图纸的依赖,但工程图(三视图为核心)仍是制造端唯一权威标准,承载设计意图与验收标准,确保产品从设计到落地的精确可控。•** 立体图难以清晰标注所有尺寸(如孔位深度、内部结构),三视图通过多角度投影,确保每个尺寸可精确测量下**(例如:俯视图标平面尺寸,侧视图标高度)。• 示例:侧视图标注的垂直度公差(如⊥0.02mm)是刀具路径规划的约束条件。在工业制造中优先使用三视图(正视图、俯视图、侧视图)而非单一立体图,三、3D打印时代:三视图仍是必备。一、三视图的核心优势。
2025-09-03 22:44:07
390
原创 UML包图主要要点和作用,举例说明
│ <<包>> │ │ <<包>> │。│ <<包>> │《use》│ <<包>> │。│ 用户界面层 ├───────► 业务逻辑层 │。│ (封装数据库操作类) │◄──────┤ (Logger、加密工具等) │。• 避免循环依赖:包A依赖包B,包B又依赖包A会导致设计缺陷。包A ───依赖───> 包B。
2025-09-03 13:15:16
611
原创 UML计时图主要要点和作用,举例说明
UML计时图(Timing Diagram)是UML交互图中的一种,专注于***系统元素状态随时间的变化规律和时序约束,尤其适用于实时系统或对时间敏感的场景(如硬件控制、嵌入式系统)***。|─────────── 关闭 ───────────|─── 启动中 ──|── 运行 ──。|── 检测中 ──| 检测中 |─── 稳定(超标) ──────────────。|─── 空闲 ───|────── 处理中 ─────|─── 空闲 ────。
2025-09-03 13:07:32
496
原创 UML组合结构图主要要点和作用,举例说明
UML组合结构图(Composite Structure Diagram)***是用于描述复杂类、组件或对象的内部结构及其协作关系的结构图,尤其擅长展示运行时对象部件的连接与交互。• 端口契约性:端口通过接口定义严格的输入/输出契约(如«provide»提供接口,«require»需求接口)。端口(Port) 小方块(依附部件边缘) 定义部件与外部环境或内部其他部件的交互点(如 API输入端口)14。• 通过端口定义部件间的标准化交互接口,避免直接耦合(如限制传感器只能通过端口访问控制器)。
2025-09-03 13:01:17
1068
原创 UML交互概览图主要要点和作用,举例说明
UML交互概览图(Interaction Overview Diagram)是UML中用于整合高层控制流与细节交互行为的特殊图表,通过嵌套交互图的方式简化复杂流程建模。• 用交互发生(Interaction Occurrence)符号(带折叠角的矩形)封装子交互图。• 结合活动图的流程控制框架(决策节点、分支等)与交互图(顺序图、通信图等)的细节行为。• 将多分支、多并发的交互流程拆解为层次化模块(如电商订单含支付、库存、物流)。• 渐进细化:对复杂节点展开子交互图(如点击“支付”后调用顺序图)。
2025-09-03 10:17:11
425
原创 UML组件图主要要点和作用,举例说明
• 提供接口(带圆圈直线):组件对外暴露的功能(如PaymentService接口)。• 拆解系统为高内聚、低耦合的组件,明确职责边界(如分离订单、库存、支付模块)。• 组件图:描述物理模块的部署单元与接口契约(如订单微服务与支付SDK的交互)。• 需求接口(带半圆直线):组件依赖的外部服务(如Logger接口)。• 展示组件间依赖,避免循环引用(如支付服务不直接依赖物流服务)。• 链接提供接口与需求接口(如支付接口 → 订单需求接口)。• 虚线箭头表示组件间的依赖(如订单服务依赖支付服务)。
2025-09-03 10:14:08
453
原创 sysml与uml的主要区别是什么
• SysML通过需求图链接需求与设计(如ISO 26262安全标准 → 代码模块 → 测试用例),确保合规性。• SysML的块定义图可描述物理系统层级(如整车系统 → 动力子系统 → 电池模块),支持软硬件一体化设计。• SysML的参数图支持工程计算(如电机功率与扭矩的约束方程),用于性能仿真。• UML用例图仅描述功能,无法追溯非功能性需求(如可靠性)。• UML类图仅限软件对象关系(如订单类 → 支付类)。• SysML过度:无需参数图或物理层级建模。• UML无此能力。案例2:电商系统开发。
2025-09-03 10:10:26
488
原创 UML一共有哪些图,分别举例说明主要功能
• 实例::顾客 --1. 提交订单()–> :订单服务 --1.1 检查库存()–> :库存服务。• 实例:订单状态:待支付 → 支付成功 → 已发货 → 已完成(事件:支付、发货)。• 实例:用户UI → 订单服务:1. 提交订单()→ 库存服务:2. 检查库存()。• 功能:描述系统中类、接口、属性、方法及它们之间的静态关系(如继承、关联)。• 实例:电商系统中订单类包含属性(订单号、金额),与支付类存在依赖关系。• 功能:描述系统功能需求及外部参与者(用户、系统)的交互。
2025-09-03 09:35:37
798
原创 UML部署图主要要点和作用,举例说明
• 物理设备:IBM Blade(Web服务器)、HP ProLiant(数据库服务器)、Mobile(终端)。• 组件(Component):可部署的软件单元(如订单服务、数据库模块)。• 构造型(Stereotype):自定义标签(如<>、<>)明确节点角色。• 物理连接:TCP/IP(服务器间)、HTTP(用户与服务器)。• 注释(Note):补充部署约束(如“端口号:8080”)。• 识别硬件瓶颈(如单点故障风险)或资源浪费(如闲置服务器)。• 组件图:描述软件模块的逻辑依赖(设计层)。
2025-09-03 09:14:13
342
原创 UML活动图主要要点和作用,举例说明
UML活动图(Activity Diagram)是描述系统动态行为的工作流程图,强调活动顺序、并发流程与责任分工。以下结合核心要点、作用及实例详细说明:一、核心要点基础元素• 活动(Activity):圆角矩形,表示原子操作(如“提交订单”)。• 起点/终点:实心圆(起点)、同心圆(终点)标识流程始终。• 控制流(Control Flow):带箭头实线,连接活动顺序。• 决策节点(Decision):菱形符号,表示条件分支(如“库存充足?”)。
2025-09-03 09:13:37
594
原创 UML通信图主要要点和作用,举例说明
UML通信图(Communication Diagram),又称协作图(Collaboration Diagram),是UML交互图的一种,注重描述对象间通过消息传递形成的协作关系,强调对象的结构组织与交互逻辑。:顾客 ------链接------ :订单服务 ------链接------ :库存服务。• 对象(Object):参与交互的实体,以矩形框表示(如:顾客、:订单服务)。• 链接(Link):对象间的关联路径(直线),表示通信通道。
2025-09-03 09:13:01
365
原创 UML顺序图主要要点和作用,举例说明
UML顺序图(Sequence Diagram)是UML交互图的核心类型,主要用于描述对象间通过消息传递实现的动态协作关系,强调行为的时间顺序。• 激活期(Activation):生命线上的窄矩形,表示对象执行操作的时间段(控制焦点)。| |—显示主页--------->| # 异步更新UI。| |—验证请求---------->| # 同步调用数据库。| |<–验证结果---------| # 返回消息。
2025-09-03 09:12:29
376
原创 uml用例图中包含扩展泛化的区别,剪头方向,详细举例说明
• 本质:有条件扩展,基础用例可独立运行,扩展用例仅在特定条件下触发(类似插件功能)。• 本质:强制性依赖,基础用例必须调用被包含用例(类似函数调用)[1][3]。• 箭头方向:从扩展用例指向基础用例(虚线箭头 +<>+ 标注扩展条件)。• 箭头方向:从基础用例指向被包含用例(虚线箭头 +<>)。• 触发条件:无条件触发,基础用例执行时必然执行被包含用例。•*** 包含指向“零件”(基础用例依赖被包含用例)***;•*** 扩展指向“本体”(扩展用例依附基础用例)***;• 子用例:微信支付、信用卡支付。
2025-09-02 13:35:14
839
原创 《无名》(转载)
透过八路军兵工厂战士温云甫的胸前勋章。英烈墙上只留下4860多位烈士的英名。倾听铁道游击队队员李洪杰的无畏誓言。是怎样的呐喊,撞碎了侵略者的铁蹄。是村口那棵没来得及告别的老槐树。是怎样的温热,滋养了新生的自由。转自人民网2025年9月2日。撑着破碎的国土,未向黑暗低头。无数个“没有名字”的脊梁。风里飘着他们未写完的家书。野草会漫过他们倒下的位置。但每一粒破土的种子都记得。每一阵掠过山河的风都记得。留下名字的只有4692人。百团大战持续五个月零四天。我们走过的每一条平坦的路。都是他们用血肉铺就的不朽。
2025-09-02 13:16:44
256
原创 UML类图主要要点和作用,举例说明
关系类型 - 泛化(继承):实线空心三角(子类 → 父类) - 实现:虚线空心三角(类 → 接口) - 关联:实线箭头(类间引用,可标注多重性) - 依赖:虚线箭头(临时使用关系) - 聚合:空心菱形+实线(整体-部分,可独立) - 组合:实心菱形+实线(整体-部分,同生共死)356 见下方示例图。类(Class) 三层矩形:1. 类名(正体普通类/斜体抽象类)2. 属性(±属性名: 类型)3. 方法(±方法名(参数): 返回类型)34 -title: String+getPrice(): double。
2025-09-02 09:29:34
354
原创 UML状态图主要要点和作用,举例说明
UML状态图通过「状态-事件-动作」三元组精准刻画对象行为,适用于状态明确、事件驱动的复杂系统(如硬件控制、业务流程),是规避逻辑漏洞、提升系统可靠性的核心工具。转换(Transition) 带箭头的线,格式:触发事件[条件]/响应动作(如 支付成功/更新库存)• 入口/出口动作:进入或退出状态时自动执行(如entry/初始化资源,exit/释放资源)。状态(State) 圆角矩形表示,对象在某一时刻的条件(如 待支付、运行中)• 跟踪对象从创建到销毁的完整路径(如订单从创建→支付→发货→完成)。
2025-09-02 09:17:18
461
原创 UML用例图主要要点和作用,举例说明
包含(Include):基础用例必须调用被包含用例(虚线箭头+<>) 例:下单必须包含“验证库存”。参与者(Actor) | 系统外部与功能交互的角色(人、设备或其他系统),如“顾客”、“支付网关”。- 扩展(Extend):特定条件下扩展用例(虚线箭头+<>) 例:支付可扩展“使用优惠券”。用例(Use Case) 系统提供的独立功能单元(动词短语),如“下单”、“支付”。• 聚焦系统“做什么”(功能需求),而非“如何做”(实现细节)。• 参与者:顾客(主动交互者)、支付网关(外部系统)。
2025-09-02 08:57:01
516
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅