OO_Unit3
Part 1
两阶类图在正向建模过程中的作用
OO_pre 的惨痛教训告诉我在着手写代码之前理清楚架构是非常有必要的,但具体怎么理是个问题。我在前几个单元的训练中已经形成了一套自己的设计习惯,大致上是设计文档 -> 手绘草图 -> 代码骨架 的流程,所以刚开始接触 UML 这种很高级但很死板的模式就让我有点消化不良了。所以我依旧遵守了自己的设计习惯,把 UML 的绘制放到了最后的最后 —— 完全由 AI 完成。
架构 && 对比分析最终的代码设计和UML模型设计之间的追踪关系
我的 UML 是跟着代码一起更新的,每个 HW 只在最后更新一次。
大模型辅助正向建模
我很快意识到大模型不太会画 UML,而且鉴于我没有去学 UML 的规则,我也没法指导大模型学习。
把学长/学姐的 UML 源码和我写好的代码一起喂给 AI 是一个相当不错的选择,不过很偷懒。
我在这里第一次接触了 skill 撰写,整合了 UML 绘制的基础要求与 OO 作业的特殊要求(关键词、MainClass)。
Part 2
架构设计思维的演进
测试思维的演进
在这个学期开始之前,我对评测机的实践水平停留在计组的评测机,也就是少量的模块化指令和跳转指令生成 加 大量的无脑枚举,靠暴力生产所有指令组合。
表达式月的评测机(这是唯一一个非指令流式的),唯一一个纯手搓的评测机,我学会了分析各种错误点,主动设计引爆隐藏 bug 的表达式模式,撰写从弱测到强测的数据生成器,搭建结构完整(评测入口、测试模式选择、好看的 GUI)的评测机。
电梯月的评测机,
JML 月的评测机,这是一个针对 CTLE 的评测机,为了省事我甚至都没有赋予它正确性检测的功能。
UML 月的评测机,唯一一个纯 vibe 的评测机,
综(含课程收获)
从表达式月兴致满满 + 精力旺盛、被程序架构可以达到的优美程度折服,到电梯月愉快地写了所有能想到或者看到的调度算法然后性能大比拼,到 JML 月接触了主题设计致力于给代码和 vscode 调色、学会撰写清晰(稍微有点长)的提示词而不是暴躁地跟 AI 吵架,到 UML 月力竭开始偷懒全职撰写提示词。





