BUAA-OO-2025-Unit4总结
BUAA-OO-2025-Unit4总结
一、正向建模与开发
本单元的正向建模即制作UML图,包括UML类图、UML状态图和UML顺序图。
其中UML类图是在开发开始前制作,UML状态图和UML顺序图是在开发完成后制作。
然而,“设计与实现相分离”的原则实践起来比较困难。对于习惯于“设计与实现一把抓”的笔者而言,在开发开始前设计类的个数、类的成员和类与类之间的关系尚可,设计方法个数、方法可见性和方法参数就显得异想天开。急于完成作业交差的心理下,笔者往往还不能充分理解情景,这会导致开发前能做的设计有限,做出的设计效果也有限,开发中不得不经常推翻或是反复修改,带来许多重复性、机械性的繁琐劳动。
这已经违背了“设计与实现相分离”的原则。为了突破困局,避免使用逆向生成工具,笔者认为有三种解决办法。一是肯花时间、下功夫,全面、充分、细致地理解情景,实则是做到设计时对实现心中有数;二是使用大模型辅助建模,让大模型代替人“全面、充分、细致地理解情景”,实则是第一种方案的现代化形式;三是让设计与实现彻底分离,即两个人合作分别完成设计与实现的任务,只允许有限的沟通交流,实际需要课程体系的改革。显然,第二种方案比较现实,笔者将在后文继续阐述。
UML 图的制作使用 StarUML 工具。该工具是付费工具,且无中文支持,但其试用期足以覆盖整个课程单元,且中文支持对于制作UML图而言并无帮助,是否选择使用破解和汉化脚本见仁见智。真正需要注意的是工具对工作图表与模型资源的分离,若选择逆向生成UML类图还需注意标准UML实践与课程要求的不同。
二、架构设计

最终的代码设计与UML模型设计之间基本对应。
显然,笔者的架构设计存在封装不足的问题,主要体现在未将各库存区域抽象为类,而是用裸的容器直接管理。这是由于笔者过于追求“避免过度封装”导致的,未考虑到可预期的迭代需求并不会引起大的架构变动,最终导致可维护性不足,强测出现错误。
三、大模型辅助体验
自使用大模型辅助理解JML之后,在课上实验的引导下,笔者体验了大模型辅助正向建模。
但与课上实验不同的是,笔者并未发现要求使用的那些“角色扮演”模式有其先进之处。对于当今有“预制提示词”的推理模型而言,直接提供指导书,加以简单的需求说明,已经足以应对课下作业。笔者猜测可能是作业情景相对简单,如果是现实中更为复杂的情景,可能就需要选择合适的方式,逐步引导大模型进行建模。
笔者听闻有同学在 Unit3 之后就不曾自己写过一行代码,虽有夸张之嫌,但也足以说明大模型在程序设计方面已达到可用,甚至是好用的程度。
四、架构设计思维的演进
四个单元的架构设计中,笔者从只关注代码编写,愈发认识到“设计”的重要性,也切身体会到时间紧迫的情况下进行“设计”的困难程度。
第一单元专注迭代式开发,重点是在迭代中保持代码的可拓展性,并选择适当的时机进行重构。
第二单元专注并发和多线程,重点是解决资源竞争、死锁等线程安全问题,同时避免忙等、轮询等线程性能问题。
第三单元专注契约式设计,重点是在满足JML要求的前提下,尽可能地提高性能、避免超时。
第四单元专注正向建模设计, 重点是制作UML图,用设计指导实现。
五、测试思维的演进
四个单元的测试中,笔者从只考虑黑盒测试,逐渐认识到白盒测试的必要性。
除第四单元未进行充分测试外,笔者均有利用评测机进行黑盒测试。然而,黑盒测试虽然简单方便,但无法保证覆盖率,特别是对极端情况的测试不足。第二单元互测时,手工构造的特殊测试点,往往更为有效;第三单元编写Junit进行单元测试时,针对JML契约构造合规测试,也是必然选择。
六、课程收获
《面向对象设计与构造》课程,名字不叫“Java语言程序设计”,有深刻的道理。
笔者在技术上的最大收获是并发和多线程。但比起技术进步,笔者在课程中最大的收获是深刻体会到“设计”的重要性。架构设计是一步错,步步错,错误越早挽回,危险越晚出现。只有架构合理,才有迭代空间;只有架构合理,才有优化余地!
然而,良好的设计只能建立在需求明确、不易改变的前提下。互联网时代的到来让这个前提失去了成立的基础。市场导向的“敏捷开发”,在理想情况下意味着达成设计时间和开发时间的平衡,但却常常表现为开发时间对设计时间的压缩,导致大量“技术债”、历史遗留问题和潜在安全漏洞,将项目推向彻底重构和彻底崩坏的两个深渊。这实际反应了程序虽然是项目核心,却没有、也无法得到重视。
相关推荐
论文复现基于变频与移相协同控制的全桥LLC变换器模式切换平滑性优化(Simulink仿真实现)
内容概要:本文针对“基于变频与移相协同控制的全桥LLC变换器模式切换平滑性优化”这一主题,开展Simulink仿真实现与技术复现研究。通过构建全桥LLC谐振变换器的详细仿真模型,深入探讨在不同负载工况(如轻载、重载、待机与运行模式切换)下,如何结合变频控制(FM)与移相控制(PSM)的协同策略,优化系统动态响应的平稳性与效率。研究重点在于设计合理的控制逻辑,解决模式切换过程中可能出现的电压电流冲击问题,提升系统的稳定性和电能质量。文中系统阐述了控制策略的设计原理、关键参数的整定方法,并通过仿真结果验证了该协同控制方案在抑制瞬态扰动、实现无缝切换方面的有效性,完整复现了高水平学术论文中的核心技术路线,为电力电子变换器的先进控制提供了可复现的实践范例。; 适合人群:电力电子、电气工程及其自动化等相关专业的研究生、科研人员及从事开关电源、新能源变流器开发的工程师,尤其适合具备一定Simulink仿真经验与电力电子拓扑分析能力的专业人士; 使用场景及目标:①深入理解全桥LLC变换器在多模式运行下的变频与移相协同控制机理;②掌握在Simulink中对复杂谐振变换器进行建模、控制算法实现与仿真验证的全流程方法;③为学术论文写作、科研项目申报或高性能电源产品的工程开发提供可靠的技术参考与仿真基础; 阅读建议:建议结合所提供的Simulink模型文件与技术文档进行同步实践,重点关注变频与移相控制的切换逻辑、参数配合关系及过渡过程的动态特性,可通过调整负载条件观察系统的响应变化,以深化对模式切换平滑性实现机制的理解。
高校技术转移办公室人员如何高效完成科技成果全周期管理?.docx
科易网基于40亿+科创知识图谱数据库,深度探索AI技术在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,研究科技创新领域的AI+数智化解决方案,推动科技创新与产业创新智能化发展。
可视化原型素材ppt格式
可视化原型素材ppt格式
氢氟醚:绿色高效的氟化解决方案.docx
氢氟醚:绿色高效的氟化解决方案.docx
2026最新广西省行政区划矢量图层-省市县乡镇四级行政区划数据下载
2026最新广西省行政区划矢量图层数据,包含省、市、县、乡镇四级行政区划数据,wgs84坐标


