第四次博客作业

目录

一 架构设计
(一) 第一次作业
建立类图

1590906-20190623103213678-258430735.jpg

如上图所示,

建立了com包来管理自定义类,MyClass,MyInterface,Operation,Association。

整个UmlInteraction结构保存三个HashMap

mainHashMap<Container>() (存储MyClass,MyInterface以及其下的Operation等数据)
operationHashMap<Operation>() 
associationHashMap<Association>() 

MyClass和MyInterface实现了Container接口(考虑到他们的数据结构和方法极度一致)

这样的数据层次分类使得后续添加功能十分方便,在MyUmlInteraction添加功能之后,根据功能函数涉及到的层级,在不同HashMap中遍历找到查找单位。并在其对应的类中调用方法,得到结果。

Bug修复

BUG是由于没有考虑接口多继承引起的,修改后一次AC。

(二) 第二次作业
建立类图

1590906-20190623103226077-1585260441.jpg

构建与第一次类似,不过多出了

MyUmlClassModelInteraction
MyUmlCollaborationInteraction
MyUmlStateChartInteraction

三个容器分别解决各个图的功能(Rules在MyUmlClassModelInteraction中得以解决)

基于第一次的设计,添加功能较快,整个程序大概写了8小时左右。

Bug修复

​ 撰写时还未修复完。但大部分的BUG是因为调试时调用的System.out忘记删除了(x)

​ 另外的BUG应该在Rule上。会尽快解决。

二、四个单元中架构设计及OO方法理解的演进

四个单元依次是表达式求导 多线程电梯 JML规格化 UML模型化

第一单元基本是按照指导书要求的构架进行相关实践;第二单元引入设计模式,在设计模式的基础上对自己的电梯进行设计;第三单元对JML进行查询,第四单元对UML进行查询,架构设计较为自由。具体架构设计在每次的总结中都有提到,不再赘述。

至于OO方法,最后一单元UML是最好的例子。

三、四个单元中测试理解与实践的演进

在测试过程中尝试过自动化测试,规格化测试,以及单元测试。

在个人编写中,后两者使用频次较低。最常使用的还是自动化测试(或者对拍)。

四、三个具体改进建议
  1. 尽快公开标程以及其设计思想解读。
  2. 降低第一单元难度,将重心放在设计与基本的JAVA代码实现上。(回顾下来,第一单元反而是最痛苦的)
  3. 降低授课学时,增加讨论课学时。

转载于:https://www.cnblogs.com/pandapan-buaa/p/11071999.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值