作业集4~6数字电路模拟程序阶段行总结
一、前言
作业4、作业5、作业6为一套递进迭代式Java数字电路仿真开发项目,三次作业基于同一业务场景分阶段迭代优化,完整复刻了小型软件项目“基础搭建、功能扩展、架构迭代、重构优化、异常容错”的完整开发流程。本人三次作业最终得分分别为作业4满分100分、作业5得82分、作业6得93分。分数梯度差异直观体现出我的能力特征:基础面向对象封装、分层设计能力较为扎实,但在复杂功能兼容扩展、标准化架构落地、多层边界校验、多优先级异常处理等工程化能力方面存在明显短板。本文将从知识点体系、代码体量指标、难度梯度递进三个维度,对三次阶段性作业进行整体概述,并结合类图、流程图、代码度量数据、测试用例展开全方位总结分析。
1.1三套作业核心知识点
作业4(数字电路模拟1)作为整套项目的底层基础版本,核心知识点涵盖接口抽象、抽象类封装、继承与多态、正则文本解析、HashMap拓扑建模、记忆化缓存递归求值、自定义排序等,落地单一职责、开闭原则、依赖倒置等基础设计思想。业务层面仅实现与、或、非、异或、同或五类基础逻辑门,搭建“输入解析-器件运算-信号仿真-结果输出”的基础四层架构,无多引脚适配、多路输出、嵌套电路等复杂逻辑,整体偏向基础面向对象建模训练。
作业5(数字电路模拟2)为功能增量扩展版本,在作业4基础上大幅拓宽业务边界,新增多类型引脚管理、迭代循环仿真、多输出器件数据存储、差异化输出适配等核心知识点。新增三态门、译码器、多路选择器、数据分配器四类复合器件,整体器件总数达到九类,彻底打破作业4统一单输入、单输出的器件规范,重点考察代码兼容性、功能拓展性与复杂分支逻辑处理能力。
作业6(数字电路模拟3)属于架构重构与程序健壮性升级版本,核心知识点包含组合模式应用、子电路分层隔离、跨层级信号传递、全局引脚冲突检测、多优先级异常校验机制等。新增子电路自定义嵌套、跨层级调用、五类语法异常捕获与分级提示功能,不再侧重功能堆砌,重点考察软件整体架构设计、代码解耦能力与程序容错稳定性。
1.2代码体量统计
本次未使用 Windows 专属本地工具 SourceMonitor,全程依托IDEA 内置 Metrics-Reloaded 插件完成代码指标采集,插件生成的度量面板截图作为量化数据支撑,核心统计数据如下:
(1)作业 4 基础逻辑门版本:

总代码 326 行,有效业务代码 271 行;工程包含Component顶层接口、BaseGate抽象父类、5 类基础逻辑门、CircuitReader解析工具、LogicEvaluator仿真工具,共 32 个方法。
插件全局汇总:总环形圈复杂度Total CogC=48,单方法平均 CogC=1.66,平均 ev (G)=1.62、iv (G)=1.69、v (G)=2.28,整体复杂度极低。
明细方法特征:构造器、get/set 无分支方法 CogC 全部为 0;仅少量解析、信号运算方法 CogC 在 4~7 区间,最高复杂度方法CircuitReader.instantiateDevice()仅 7;无任何 CogC≥10 的高风险函数,无多层深度嵌套分支,重复代码占比不足 5%。
配套三层极简 UML 类图完全匹配度量数据:统一接口 + 抽象父类分层,所有逻辑门输出规则完全统一,职责划分单一清晰,是三次迭代中代码整洁度、可维护性最优版本,也是唯一满分作业。
(2)作业 5 大一统仿真容器版本:

总代码 682 行,有效业务代码 594 行;新增InputPin/OutputPin引脚、4 类多路输出复合器件、全局仿真容器CircuitSimulator,器件总数达到 9 种。
插件全局汇总:项目总 CogC=156,单方法平均环形圈复杂度 3.71;平均 ev (G)=2.02、iv (G)=2.43、v (G)=3.21,对比作业 4 平均复杂度近乎翻倍。
报表两处严重超标高风险方法(行业安全阈值 CogC≤10):
LogicEvaluator.output():CogC=41,ev (G)=6,iv (G)=15,v (G)=19;兼容 9 类器件差异化打印,多层 if 分支堆砌,是输出格式、译码器无打印失分根源。
LogicEvaluator.tryCompute():CogC=37,ev (G)=14,iv (G)=13,v (G)=21;全流程仿真逻辑耦合单一函数,多层循环嵌套 if,修改规则极易引发连锁 BUG。
其余偏高复杂度方法:CircuitReader.instantiateDevice()11、LogicEvaluator.process()11、fetchSignal()10、Decoder.execute()9,解析、复合器件运算分支集中;基础门、构造、getter/setter 复杂度维持 0~3,复杂度高度集中在仿真、解析两大核心类,权责严重失衡。
配套作业 5 UML 类图印证缺陷:缺少统一多路输出抽象,依靠instanceof强耦合判断,大量硬编码引脚区间;开发阶段插件持续标红预警超高复杂度方法,但未及时拆分重构,最终多输出缓存、收敛逻辑、三态门格式多类边界 BUG 爆发,合计丢失 18 分。
(3)作业 6 分层重构 + 子电路时序版本:

总代码 617 行,有效业务代码 528 行;针对作业 5 大一统臃肿架构完整重构,拆分元件管理、信号连线、仿真运行三层独立模块,新增时序逻辑、子电路嵌套、五级优先级异常校验,支持多层子电路嵌套调用。
插件完整全局统计:项目总环形圈复杂度Total CogC=281,单方法平均 CogC=14.79,平均 ev (G)=3.79、iv (G)=6.11、v (G)=8.32。
复杂度上涨核心原因:新增子电路递归求值、跨层级引脚冲突检测、五级异常优先级判断、多层嵌套子电路解析,业务场景复杂度大幅提升,分支判断总量显著增加。本次重构将作业 5 两个巨型方法拆分、逻辑下沉,但子电路、顶层解析、仿真循环各自独立承载大量分支逻辑,分散后出现多处中高复杂度方法,不存在作业 5 那种单一方法 CogC 突破 40、包揽全部业务的极端情况。
报表内高复杂度方法明细:
~顶层仿真入口Main.simulate():CogC=54,ev (G)=1,iv (G)=17,v (G)=19;全局迭代仿真、多轮收敛判断、子电路递归调用逻辑集中。
~文本解析核心Main.parse():CogC=45,ev (G)=9,iv (G)=16,v (G)=18;同时处理顶层元件、子电路内部元件、跨层级连线、异常捕获多套分支。
~基础元件运算LogicGate.compute():CogC=42,ev (G)=15,iv (G)=7,v (G)=24;兼容与、或、非、译码器、多路选择器等全部器件运算规则。
~子电路单步求值SubCircuit.evaluateStep():CogC=43,ev (G)=1,iv (G)=14,v (G)=15;内部元件遍历、信号传递、本地冲突校验。
~连线解析Main.parseConnection():CogC=33,ev (G)=9,iv (G)=22,v (G)=25;区分顶层连线、子电路内部连线、跨层级引脚冲突校验。
其余中等复杂度方法:Main.createGateIfNeeded()13、getSignalValue()10、isSrc()9、isDest()7、output()14,各类边界、校验、输出逻辑均匀分散在独立方法内。
对比作业 5 核心优化点:作业 5 是两个巨型方法包揽全局逻辑,其余方法复杂度极低;作业 6 虽整体平均圈复杂度上升至 14.79,但实现逻辑均匀拆分:无单一方法承载全部仿真 / 解析流程,每一处高复杂度方法仅负责单一细分业务(元件运算 / 子电路求值 / 顶层解析 / 连线绑定),新增、修改功能仅改动对应独立方法,不会全局连锁影响。同时配套组合模式 UML 类图搭建统一CircuitComponent抽象层,门电路、子电路实现统一遍历接口,彻底消除作业 5 强耦合instanceof判断,架构可拓展性大幅提升。本次失分仅 7 分,均为跨层级引脚冲突校验、异常优先级顺序等边界校验漏洞,无作业 5 那种因单方法臃肿引发的批量连锁 BUG,重构优化效果显著。
三套作业横向对比总结
三份作业总代码合计超 1600 行,迭代业务场景持续升级,复杂度呈现清晰递进特征:作业 4 场景简单、分层规范,平均圈复杂度 1.66,代码质量最优,满分交付;作业 5 场景扩充但未同步分层重构,平均 3.71,复杂度高度集中在 2 个巨型函数,耦合严重,批量边界 BUG 失分;作业 6 场景最复杂(子电路嵌套 + 时序 + 分级异常),平均 14.79,但通过分层、组合模式拆分逻辑,消除单一巨型风险方法,BUG 分散、易定位,失分大幅减少。量化数据直观证明:平均圈复杂度数值不能单独评判代码好坏,复杂度是否均匀分散、方法是否单一职责才是核心指标;前期架构分层、借助 IDEA 度量插件提前拆分高耦合逻辑,能够有效规避迭代后期批量隐性缺陷。
1.3难度梯度
作业 4 难度中等:器件运算规则统一,边界场景较少,做好分层抽象与缓存优化即可拿到满分,是整套项目的标准基础模板。
作业 5 难度偏难:各类复合器件引脚定义、运算逻辑、输出格式无统一标准,迭代收敛判断、多路输出存储存在大量隐藏边界场景,是三次作业中失分最多的一次。
作业 6 难度最高:核心考察组合模式落地、跨层级引脚校验、异常优先级控制,隐藏测试用例数量最多,一处边界逻辑遗漏就会出现判题非零返回。
二、设计与分析
2.1作业4设计分析

整体三层分层结构清晰:顶层定义Component独立接口;中间BaseGate抽象父类实现运算接口,封装所有器件共用属性;底层 5 个基础逻辑门作为子类继承抽象类;配套工具类CircuitReader、LogicEvaluator分离解析与仿真逻辑;Main 仅作为程序入口调度流程。
类图泛化、关联关系规范:所有逻辑门仅重写calc核心运算方法,无冗余成员;BaseGate的computeOutput使用 final 修饰,统一完成引脚数量校验,避免子类重复编写判断代码;解析与仿真完全解耦,互不依赖。
设计心得
本次能够满分的核心原因是前期抽象分层规划到位,严格遵循开闭原则。如果后续需要新增逻辑门,仅需要新建继承BaseGate的子类并重写运算方法,解析、仿真、输出全部原有代码无需修改,扩展性极强。整洁的类分层结构大幅降低调试难度,也为作业 5、作业 6 的迭代开发提供了成熟代码模板,让我直观体会到接口与抽象类在代码解耦中的核心价值,同时 IDEA 度量插件实时反馈代码复杂度,开发阶段就能及时规避臃肿分支。
2.2作业5设计分析

保留作业 4 基础接口与抽象父类,新增四类复合器件,但原有统一代码规范被破坏,类图中缺陷十分明显:第一,译码器、数据分配器为多路输出器件,新增子类内部outputValues容器存储多电平,无全局统一多输出抽象方法,execute返回值失去作用;第二,各类器件控制引脚、输出引脚区间全部硬编码写在子类中,无统一配置类;第三,LogicEvaluator与 9 类器件强关联,tryCompute充斥大量instanceof类型判断,类图关联线杂乱,代码耦合度极高。
设计心得
本次大量失分的根本原因是扩展开发缺少架构兼容思维,只追求快速实现功能,忽略 IDEA 度量插件给出的高复杂度预警,没有提前设计适配多路输出器件的统一规范,只能依靠堆砌分支逻辑实现差异化功能,最终代码臃肿、边界 BUG 频发。对比作业 4 简洁规整的类图与低复杂度度量数据可以看出,迭代开发不能一味新增子类,必须同步完善顶层抽象标准,借助 IDE 度量工具提前识别代码缺陷,否则后期调试、修改成本会成倍增加。
2.3作业6设计分析

为适配子电路嵌套需求,本次完全重构 4、5 的器件架构,分为叶子节点LogicGate、组合容器SubCircuit,思路贴合题目推荐的组合模式,子电路独立存储内部输入、输出、连线、本地器件,实现与主电路数据隔离。但架构仍存在三处明显短板:一是叶子类、组合容器没有统一抽象父类CircuitComponent,顶层仿真需要两套独立循环遍历逻辑;二是冲突校验分为顶层topConflictMap、子电路本地conflictMap两套独立容器,无法检测跨层级引脚信号冲突;三是异常判断逻辑直接耦合在连线解析方法中,无独立异常校验工具类。
设计心得
本次重构让我明白,当原有架构无法支撑新增核心业务(子电路嵌套)时,完整重构分层体系是最优方案。同时 IDEA 内置度量工具可以全程辅助重构优化,实时查看拆分后各方法圈复杂度变化。但同时暴露了我设计模式落地能力的短板,仅能看懂组合模式理论类图,自主落地时缺少统一抽象层,造成代码重复、校验逻辑存在漏洞。本次开发开始重视程序输入容错,但全局边界统一校验、分层解耦的工程思维仍需要持续加强。
三、踩坑心得
本章节针对三次作业开发、提交过程中遇到的 BUG、扣分点完整复盘,所有问题均搭配测试用例、程序运行截图、UML 类图结构缺陷、IDEA 度量插件报表佐证,使用量化数据说明问题,无空泛总结,同步记录开发反思。
3.1 作业 4 踩坑复盘(全部修复,无失分)
(1)递归求值栈溢出
测试场景:串联 20 层异或门形成链式电路,运行截图直接抛出StackOverflowError异常,程序终止无输出。对照类图与 IDEA 度量报表分析根源:初始版本无全局缓存容器,每次读取器件输出引脚信号都会完整递归向下遍历所有依赖组件,多层串联电路递归深度超出 JVM 栈容量限制。
优化方案:新增valueRepository全局信号缓存 Map,读取引脚信号时优先查询缓存,存在有效电平直接返回,不存在再递归计算并存入缓存。优化后串联 100 层器件可稳定运行,仿真运算次数减少 60%,度量插件显示递归相关方法复杂度明显下降。
心得:拓扑依赖类仿真程序禁止无缓存纯递归,记忆化缓存是基础优化手段,架构设计阶段就需要规划全局信号存储容器,IDE 度量工具可以辅助判断递归分支复杂度。
(2)正则匹配器件编号漏洞
初始正则数字分组仅使用\d,只能匹配个位数编号,A (4) 10、X12 这类多编号器件无法完成实例化,输出截图缺失对应器件结果;将正则修改为\d+支持任意多位数字编号,覆盖全部器件命名规则,快速修复无失分。
3.2作业 5 核心踩坑复盘(合计丢失 18 分)
(1)多输出器件电平未同步全局缓存,丢失 10 分
测试用例输入标准 3-8 线译码器电路,程序运行截图无任何译码器输出打印。对照类图缺陷与 IDEA 度量报表:译码器多路输出仅存储在子类本地outputValues,没有同步写入全局信号缓存,输出遍历逻辑无法读取多路引脚电平,且tryCompute方法分支过多、逻辑集中,修改一处容易引发连锁错误。
修复方案:在tryCompute方法内循环遍历多输出 Map,将每一组输出引脚与电平批量存入全局缓存容器,修复后程序正常打印译码器有效输出编码,同时拆分部分分支逻辑,小幅降低单方法复杂度。
(2)迭代仿真收敛逻辑不准确,丢失 6 分
原代码循环逻辑固定 200 次强制退出,无状态变更布尔标记;存在信号反馈的循环电路测试截图显示部分引脚输出为空值。优化后新增changed标记变量,一轮循环无任何引脚电平更新则判定电路完全收敛,立即终止迭代,所有电路电平计算完整无缺失。
(3)三态门高阻状态处理逻辑错误,丢失 2 分
题目规范要求三态门控制引脚为 0 时输出高阻无效状态,程序直接忽略该器件输出,不可打印占位符。初始代码判断 null 时打印 “-”,输出格式与题目要求不符扣分;增加判空跳过打印逻辑后格式合规。
(4)代码结构臃肿带来隐性 BUG
IDEA 度量报表直观展示超长方法、多层嵌套 if 分支,每新增一类复合器件都需要修改核心仿真方法,开发阶段频繁出现输出缺失、电平计算错误等隐性 BUG,这也是度量插件预警的核心风险点。
3.3 作业 6 核心踩坑复盘(合计丢失 7 分)
(1)异常优先级判断顺序颠倒,丢失 4 分
测试用例[A A2-1 B2-1]同时满足 “连线多输入源”“引脚信号冲突” 两类异常,原始代码优先输出冲突错误提示,不符合题目优先级规范。重构校验流程,严格按照题目给定顺序自上而下判断,匹配高优先级异常直接阻断后续校验,运行截图可正常输出正确 ERROR 提示,拆分异常判断独立方法后,IDEA 度量显示圈复杂度明显降低。
(2)跨主电路、子电路引脚冲突检测失效,丢失 3 分
对照 UML 类图分层缺陷:顶层、子电路两套独立冲突 Map 数据互不连通;测试用例中主电路两条连线同时给子电路同一输入引脚赋值,程序无任何异常报错。优化方案新增全局唯一冲突校验容器,所有顶层、子电路引脚赋值统一存入全局 Map,实现跨层级冲突捕获。
(3)组合模式不标准存在长期维护隐患
LogicGate与SubCircuit无统一抽象父类,仿真流程存在两套几乎一致的信号遍历、更新代码。如果后续增加多层嵌套子电路、时序触发器,需要同步修改两处循环逻辑,极易出现逻辑不一致 BUG,虽不影响现有测试用例,但 IDEA 度量插件提示存在大量重复代码,属于架构硬伤。
四、改进建议
结合三份代码 UML 类图、IDEA Metrics 度量插件报表、业务流程图暴露的架构缺陷、扣分对应的逻辑漏洞,分作业给出针对性可落地优化方案,同时提供长期可持续迭代的整体改造思路,适配题目后续时序电路、多层嵌套子电路的扩展规划。
4.1 作业 4 基础架构通用优化方案
(1)抽取通用工具类PinUtil,统一封装引脚拆分、器件名称截取、正则匹配、字符串切割逻辑,消除代码中重复的substring、lastIndexOf操作,类图补充工具类与解析、仿真类的关联关系,降低整体代码重复率。
(2)将器件实例化逻辑重构为工厂模式,新建ComponentFactory工厂类,把冗长的多分支正则匹配、器件对象创建全部移入工厂。后续新增器件仅需在工厂内注册正则规则与构造方法,无需修改CircuitReader核心解析代码,彻底贯彻开闭原则,同时有效控制解析方法圈复杂度。
新建Constant常量类,统一管理器件类型标识、输出引脚默认编号、排序优先级字符串、正则匹配模板等固定内容,消除代码中大量硬编码字符串与数字。
4.2 作业 5 复合器件架构根治改进方案
(1)在BaseComponent抽象父类中定义统一多输出抽象方法getAllOutputPins(),单输出、多输出器件统一实现该接口,所有仿真逻辑仅依赖抽象接口读取输出引脚数据,不再通过强制类型转换区分器件,大幅降低tryCompute方法圈复杂度,消除 IDE 高复杂度预警。
(2)独立封装仿真迭代工具类SignalIterator,将电路信号更新、changed状态标记、迭代终止判断全部封装至工具类,仿真逻辑与器件业务解耦,新增器件无需修改迭代核心代码。
(3)器件引脚规则配置化,使用 HashMap 存储每类器件控制引脚、输入引脚、输出引脚区间,替代代码中固定数字硬编码,引脚规则变更仅修改配置 Map,无需改动运算逻辑。
(4)封装信号判空工具方法SignalUtil.isValid(Integer val),统一识别有效电平 0、1 与高阻 null,消除代码中重复的 null 判断逻辑。
4.3 作业 6 子电路与异常体系标准化优化方案
(1)标准化落地组合模式,新增抽象父类CircuitComponent,LogicGate(叶子器件)、SubCircuit(组合子电路)统一继承该类,统一定义evaluate求值、checkConflict冲突检测、getPinValue读取信号三类抽象方法。顶层仿真流程仅操作CircuitComponent抽象对象,一套逻辑兼容门电路、子电路、多层嵌套子电路,消除重复循环代码,减少冗余代码带来的复杂度提升。
(2)全局统一冲突校验器ConflictChecker,维护唯一全局引脚 - 信号源映射表,所有主电路、子电路引脚赋值统一传入校验器,一次性完成跨层级冲突检测,杜绝分层校验漏洞。
(3)异常逻辑枚举化封装,新建ErrorType枚举类,每个枚举项绑定异常优先级、输出提示文案,枚举顺序严格匹配题目优先级。解析连线时按枚举顺序循环校验,匹配异常直接阻断后续逻辑,无需手写多层 if 判断,拆分复杂异常分支。
(4)抽取通用信号分发工具SignalDispatcher,统一封装引脚赋值、电平更新、状态变更标记逻辑,主电路、子电路全部调用工具类完成信号分发,消除大量重复赋值代码。
4.4 项目长期可持续迭代改造规划
根据题目给出的迭代路线(后续增加时序电路、D/JK 触发器、多层嵌套子电路),优化后的架构可无缝完成扩展:时序器件新建子类继承统一CircuitComponent抽象父类,重写带时钟周期的evaluate求值方法;标准化组合模式天然支持SubCircuit内部嵌套其他子电路;全局统一冲突校验、枚举异常体系可直接复用,新增输入语法规则仅扩展ErrorType枚举。日常开发借助 IDEA 内置 Metrics 插件持续监控代码复杂度,及时拆分超长、高风险方法,整套数字电路仿真程序具备功能插拔、分层解耦、全局容错、长期迭代四大工程特性,满足课程后续全部扩展需求。
五、阶段性综合总结
通过作业 4、5、6 三次数字电路仿真项目完整迭代开发,结合 UML 类图、IDEA Metrics-Reloaded 插件度量报表、业务流程图多维度可视化分析,我完成了从 Java 基础语法编码到小型软件系统架构设计的系统性训练,知识储备、工程开发思维、代码调试能力均得到全方位提升,同时依托各类可视化图表与 IDE 量化工具清晰定位自身短板,明确后续学习研究方向。
知识掌握层面,本阶段完整吃透面向对象核心体系:熟练掌握接口与抽象类分层、多态继承、容器拓扑建模、正则词法解析、记忆化缓存算法、迭代仿真收敛逻辑、组合设计模式、分层异常容错、全局边界校验等核心开发知识点。能够独立依据需求绘制基础 UML 类图、业务执行流程图,结合 IDEA 度量插件提前预判架构分层缺陷;可独立完成复杂业务需求拆解、代码建模、逻辑编码、BUG 调试与架构优化,不再局限于简单单类程序编写,具备分层拆分大型业务的基础能力。三次作业分数差异结合度量报表可直观体现能力分层:基础分层建模、简单业务编码能力扎实,作业 4 类图整洁、代码复用率高,稳定拿到满分;但复杂扩展兼容、标准化设计模式落地、全局边界校验、多优先级异常处理存在明显短板,架构耦合严重、流程逻辑顺序错误直接导致作业 5、6 持续丢失测试点分数。
工程思维层面,三次迭代搭配 IDEA 代码度量插件、可视化图表绘制让我建立完整的软件迭代开发认知,深刻理解前期架构设计对后期扩展成本的决定性作用。作业 4 规范分层类图支撑作业 5 全部器件扩展,仅因未统一多输出规范、忽视 IDE 给出的高复杂度预警便导致大量 BUG;作业 4、5 老旧架构无法适配子电路嵌套需求,必须完整重构才能完成作业 6 开发,让我真正意识到 “快速实现功能” 只是开发基础,代码可扩展性、健壮性、可维护性才是工程开发核心标准。同时大量边界 BUG 调试、运行截图对比、IDE 量化报表数据分析,培养了我的量化测试思维,每一类逻辑都会主动设计覆盖空值、信号冲突、多层嵌套、多异常叠加等隐藏场景的测试用例,不再仅依靠简单样例验证代码正确性。
结合三份作业图表、源码、扣分情况暴露的短板,我梳理出后续需要重点深入学习与研究的内容:第一,系统深耕组合、工厂等常用工程设计模式,坚持先绘制 UML 类图、业务流程图再编写代码,结合 IDEA 度量工具实时监控代码质量,避免开发后期大规模重构;第二,强化边界测试与用例设计能力,开发阶段同步记录测试用例运行截图,主动覆盖跨层级、多条件叠加、空输入、循环依赖等极端边界场景,减少隐藏逻辑漏洞;第三,学习代码解耦与标准化工程规范,熟练抽取工具类、抽象公共父类、配置化业务规则,主动控制方法长度、降低代码圈复杂度,杜绝超长方法与多层 if 分支嵌套;第四,搭建标准化枚举驱动异常处理体系,不将异常判断耦合在业务解析流程中;第五,拓展仿真算法知识,学习拓扑排序替代盲目迭代仿真,按照器件依赖顺序有序计算电平,提升大规模电路仿真的运算效率与收敛精准度。
整体而言,本阶段三次递进作业搭配类图、IDEA 度量插件报表、流程图可视化分析,是一次高质量、全流程的工程能力实战训练。从 5 种基础逻辑门简易仿真,到 9 类复合器件功能扩展,再到子电路嵌套架构重构与全局容错校验,完整走完小型软件项目搭建、扩展、重构、优化全生命周期。虽然开发过程中频繁踩坑、两次作业存在失分,但每一处 BUG、每一次扣分、每一张标注缺陷的类图、每一份 IDE 度量预警报表都让我对 Java 面向对象工程开发形成更深刻的理解。在后续的学习中,我会转变开发思路,开发前优先完成 UML 架构设计、业务流程梳理,借助 IDEA 内置度量工具实时管控代码质量,从 “完成功能即可” 转向 “编写分层清晰、可扩展、高健壮性的工程代码”,持续补齐架构设计、边界测试、设计模式相关短板,稳步提升软件开发综合能力。
浙公网安备 33010602011771号