uml

自传.11 小时前
架构·系统架构·软考高级·uml·案例分析·用例图·软考系统架构师
B 站更新|软考架构师案例篇・软件工程篇第 2-4 集上线|UML 用例图|类图|顺序图真题精讲各位备考软考系统架构设计师的小伙伴,大家好!继续案例分析‑软件工程篇更新!本集一次性更新 3 集内容:UML 用例图、类图、顺序图。UML 是案例分析高频出题板块,用例图三大关系、类图六种关系(聚合 / 组合辨析)、顺序图消息与组合片段均为历年真题常客。
码匠许师傅6 天前
c++·设计模式·uml
【设计模式精讲】29.行为型模式总结与对比(Behavioral Patterns Summary)【摘要】:行为型模式常被压缩成「一堆回调技巧」,十一种模式背起来像十一道独立考题。其实按「各自要解决的问题」聚类,四个问题就装下了:一组对象怎么对话(观察者/中介者/责任链)、变化的行为装进哪里(策略/模板方法/状态)、过去怎么留住(命令/备忘录)、结构怎么加工(迭代器/访问者/解释器)。同组是近亲,结构最像、最易混淆,本文逐组细说区别与联系,重点辨析「通信三兄弟」;跨组模式几乎不会认错,却常串成流水线。再以横向对比表、决策树、组合案例、常见误判与评审清单收口。读完你能对着一段交互代码说出:问题属于哪一组
码匠许师傅7 天前
c++·设计模式·uml·模板方法模式
【设计模式精讲】27.模板方法模式(Template Method)【摘要】:三个后台任务类各自手写同一套仪式——初始化、循环、异常捕获、收尾统计,三份代码长得像又各缺一角:有的忘了 try,有的收尾顺序不对,加「统一超时」要改三处将来 N 处。本文从仪式的复制讲起,给出模板方法的 GoF 意图:在基类固化算法骨架,把可变步骤延迟到子类——骨架非虚、钩子分「必填纯虚」与「可选默认」两档;C++ 特有的 NVI 惯用法(公有非虚 + 私有虚)与模板方法互为表里,现代版补上 final、函数注入版(骨架 + 局部策略)与 CRTP 编译期骨架;好莱坞原则「别调用我们,我们会调
码匠许师傅8 天前
c++·设计模式·策略模式·uml
【设计模式精讲】26.策略模式(Strategy)【摘要】:第一篇埋的伏笔到此兑现——反面教材一号 calcPrice 的 switch 又长回来了,二十七个分支,每加一种定价全函数回归。本文从「算法平行可换」与「状态依次迁移」的分野讲起,给出策略模式的 GoF 意图:定义算法族、各自封装、彼此可互换,让算法独立于使用它的客户变化;C++98 版把定价规则做成可注入的策略对象(自带费率与门槛数据),现代版给出 std::function 策略、模板策略(STL 比较器的形态)、以及把两个策略组合成链的高阶函数。C++ 的特殊地位值得一提:迭代器之后,策略
码匠许师傅8 天前
c++·ui·设计模式·状态模式·uml
【设计模式精讲】25.状态模式(State)【摘要】:订单能支付、能发货、能关闭——每种动作在每种状态下都有不同答案,直觉的实现是给每个方法配一份全量 switch,于是「Created/Paid/Shipped」的分支在五个方法里各复制一遍,加一个状态全体加 case,合法的迁移图散落得没人能一眼看清。本文从订单状态机的 switch 蔓延讲起,给出状态模式的 GoF 意图:状态一变、行为整个换一套,对象「看起来像换了一个类」;状态对象无状态、全程共享一份(与享元、单例同宗),迁移由当前状态自己决定;现代版给出迁移表与 C++17 的 varia
rolt8 天前
软件工程·ddd·uml·领域驱动设计·ontology·本体
用UML表示的行业标准02汽车-AUTOSARDDD领域驱动设计批评文集做强化自测题获得“软件方法建模师”称号《软件方法》各章合集
东莞市永盛电气9 天前
uml
CNC数控机床北美供电适配新实践:208V转380V变压器落地应用案例随着国内制造业向海外延伸的步伐加快,北美正成为许多机械加工企业新工厂的选址热土。然而,一个让不少设备管理者和工厂厂长头疼的问题,往往在设备到港通电的那一刻才真正暴露出来——国产CNC数控机床设计工况为380V三相电源,而美国工厂常见的工业供电电压却是208V或480V。电压对不上,设备动不了,产线无法按期投产,这一“最后一公里”的供电适配问题,正成为出海建厂的隐性门槛。东莞市永盛电气科技有限公司分享以下实践经验帮助大家了解。
码匠许师傅9 天前
c++·观察者模式·设计模式·uml
【设计模式精讲】24.观察者模式(Observer)【摘要】:传感器每来一个新样本,当前值面板、统计面板、告警模块都该刷新——直觉的写法是在 onSample 里逐个调用三个面板,订阅者从此焊死在发布者体内,加一块面板改一次传感器。本文从 RG 的经典气象站讲起,给出观察者的 GoF 意图:一对多依赖、状态一变、全体自动通知——发布者对订阅者的认知降到「一个接口」为止;C++98 版覆盖 notify 的重入副本、推与拉两种模型,现代版给出 std::function 槽位、RAII 订阅令牌与 weak_ptr 三件套,把「观察者悬垂」这个 C++ 最著
码匠许师傅10 天前
c++·设计模式·软件工程·uml·中介者模式
【设计模式精讲】22.中介者模式(Mediator)【摘要】:一个登录对话框,用户名变了要刷新按钮状态,按钮按下要冻结所有输入框,回调返回又要逐一解冻——每个控件都持有并调用其他所有控件,五个控件织出十条网线,加一个验证码框全体返工。本文从这张依赖网讲起,给出中介者的 GoF 意图:用一个对象封装一组对象的交互,网状收拢成星状——同事只认识中介者,规则集中成一处可单测的代码;C++98 版用 widgetChanged 单入口实现,现代版再用 std::function 回调槽让同事连中介者接口都不必认识。本文重点辨析中介者与观察者——同样是星型,一个是有
码匠许师傅10 天前
c++·设计模式·软件工程·uml·备忘录模式
【设计模式精讲】23.备忘录模式(Memento)【摘要】:命令模式靠「逆操作」撤销了绘图程序,但文本编辑器是另一回事——用户随手打字删字、移动光标,操作琐碎得没有形状。两条歪路摆在面前:为存档把字段全 public,封装陪葬;或者整个对象拷一份,句柄崩、「哪些字段属于状态」没人说得清。本文给出备忘录模式的 GoF 意图:在不破坏封装的前提下捕获并外化对象内部状态——C++ 用嵌套类加 friend 精确表达「只有本体能拆信、看守者只管邮递」的宽窄接口;现代版补上移动语义、快照与命令的成本曲线(大型系统的混合方案),以及值语义快照的取舍。文末对照 std
rolt11 天前
架构师·uml·ontology·本体
用UML表示的行业标准01-电力/智能电网-2DDD领域驱动设计批评文集做强化自测题获得“软件方法建模师”称号《软件方法》各章合集
码匠许师傅11 天前
c++·设计模式·rpc·迭代器模式·软件工程·uml
【设计模式精讲】21.迭代器模式(Iterator)【摘要】:for (Node* p = list.head(); p; p = p->next_)——为了遍历,链表被迫把节点结构公开,客户端被迫知道 head 和 next 的存在;换容器、换遍历序,全部调用点重写。本文从这行经典的越界遍历讲起,给出 GoF 意图与经典四操作接口,再完成 C++ 特有的关键一跃:按 STL 形态改造自己的容器——begin()/end() 加四个运算符,range-for 与上百个算法免费到手;随后讲透迭代器五类承诺与失效规则这两个工程硬契约,展望 C++23 生成器。
码匠许师傅13 天前
c++·设计模式·享元模式·uml
【设计模式精讲】15.享元模式(Flyweight)【摘要】:一局围棋上千颗棋子对象,每颗都揣着贴图引用、风格字符串与渲染缓存——可黑白加风格统共不过十来种,重复的信息被复制了上千份。本文从棋盘内存账讲起,给出享元模式的核心一刀:把「不随实例变化」的内部状态从对象里搬出去共享,把「随实例变化」的外部状态留给客户端随操作传入;享元因此必须不可变,工厂池负责「同键同对象」。现代 C++ 用 shared_ptr<const T> 把不可变纪律上锁、用 weak_ptr 池实现「可回收的共享」,并讨论「先问该不该共享」。文末对照 Boost.Flyweight
码匠许师傅14 天前
c++·设计模式·uml·外观模式
【设计模式精讲】14.外观模式(Facade)【摘要】:把一份源文件编译成中间码,本是一行需求;直接调用子系统,却变成五步固定仪式——预处理器、词法器、语法器、语义检查、IR 生成各有接口与状态,每个调用方都要背下组装顺序。本文从编译器前端的编排成本讲起,给出外观模式的 GoF 意图与「只编排、不决策」的定性,辨析它简化调用而非隐藏扩展点;现代 C++ 部分讲 PIMPL 编译防火墙与外观的正交叠加、分层「附加外观」对上帝对象的防御。文末对照 std::filesystem、POCO Crypto 对 OpenSSL 的门面化、Abseil 的命令行
码匠许师傅14 天前
c++·设计模式·uml·装饰器模式
【设计模式精讲】13.装饰器模式(Decorator)【摘要】:给指标上报加校验、加缓存、加日志,用继承来做就是灾难:三个维度自由组合,子类数量按 2 的幂次膨胀,而且全是「真子类不该有的职责」。本文从指标管道的继承爆炸讲起,给出装饰器模式的 GoF 意图——同接口包同接口的洋葱结构,动态叠加职责、按需拆装;C++98 版用裸指针级联销毁,现代版换成 unique_ptr 链、std::function 中间件与 CRTP mixin 三档实现,从运行时灵活到编译期零开销。文末对照 Boost.Iostreams 的过滤流、POCO 的计数流与 C++20
码匠许师傅15 天前
c++·设计模式·桥接模式·uml
【设计模式精讲】11.桥接模式(Bridge)【摘要】:形状两种、渲染器两种,继承矩阵先写四个子类;三角形一加入变六个,OpenGL 渲染器一加入变十二个——两个维度各自增长,子类数按乘法结算。本文从图形库的类爆炸讲起,给出桥接模式的 GoF 意图:把「抽象」与「实现」拆成两个独立的层次结构,用组合关系在中间架桥,类数从 n×m 塌缩为 n+m,两边各自加类互不相扰。C++ 实现覆盖引用造桥的传统版与运行期可换桥的现代版,并厘清 PIMPL 与桥接的血缘:前者是单实现的桥接退化,后者是多实现的 PIMPL 前瞻。文末对照 POCO 的 SocketI
Warren2Lynch18 天前
人工智能·uml
面向对象设计中的 UML 类图指南在面向对象设计(OOD)的世界中,**类(Class)**是基本的构建模块。虽然对象是执行我们应用程序的运行实例,但类是定义其结构和行为的蓝图。有效地对这些类进行建模对于创建健壮、可维护的软件系统至关重要。
东莞市永盛电气19 天前
uml
208V变380V干式变压器,绕组工艺与输出稳定性解析在全球工业设备贸易日益频繁的背景下,电压制式差异始终是设备跨境流通的关键技术门槛。以北美地区常见的三相208V工业用电与中国设备标准的380V输入要求为例,二者之间的电压转换并非简单的“升压”即可解决,变压器的绕组工艺设计与输出稳定性直接关系到设备的使用寿命与运行安全。东莞市永盛电气有限公司从技术维度出发,解析干式变压器在208V转380V场景下的工艺要点与稳定性保障机制。
东莞市永盛电气20 天前
uml
208V变380V变压器科普,北美三相电网升压转换原理国产工业装备出海北美市场已经成为行业常态,不少设备厂商到现场调试时会遇到电压不匹配问题。北美工业部份三相供电为208V/60Hz,而国内绝大多数数控机床、激光设备、自动化产线等的标准工作电压为三相 380V/50Hz。想要让国产设备在北美现场稳定运行,208V变380V变压器就成为必不可少的电力转换设备。很多采购与工程人员对它的工作原理、类型差异了解有限,东莞市永盛电气科技有限公司从电网基础、转换原理、产品分类、选型误区做系统性科普。
北风toto21 天前
笔记·uml·软件设计师
UML(统一建模语言)详细笔记UML(Unified Modeling Language,统一建模语言)是一种用于软件系统可视化建模的标准语言,由Booch、Rumbaugh和Jacobson三人于1990年代中期整合各自的建模方法而成,后被OMG(对象管理组织)采纳为标准。