HIT软件构造Lab2总结

HIT软件构造Lab2总结

这次实验老师留给我们两周半的时间完成,时间还是比较充裕的。Lab2这个实验的目的在于让我们通过实践来巩固老师课堂上讲的规约、ADT的设计和测试类编写的知识。总体上来说,整个实验写起来还是比较顺利的,在这里总结一下自己本次实验遇到的困难和收获。

实验环境的搭建
这次实验只需要在之前的基础上,安装配置EclEmma,这是一个用于统计JUit测试用例的代码覆盖度的插件,直接在eclipse的marketplace上搜索安装即可。也可以参照该网址上面的步骤学习其安装和使用:link

基于Java的编程
这次编程难度很低,几乎没有用到什么算法方面的知识,但是工作量很大,需要写注释、规约、测试类和实验报告等,这些占去了大量时间。因为这次实验的主要目的在于让你熟悉一个ADT的设计,巩固近期老师上课讲授的内容。个人认为一个ADT的设计可以分为四个步骤:根据需求设计规约,根据规约编写测试用例,根据规约实现ADT,通过测试用例修改代码。设计的过程中要注意防止内存泄漏,必要时需要防御式拷贝来保护数据的安全。

关于ADT
为ADT撰写specification, invariants, RI, AF,以及checkRep方法,虽然过程有些繁琐,但方便客户的使用,划清责任界限,同时也方便今后对代码的维护。这次实验要求我们先根据规约编写测试用例,再去实现ADT。我觉得先编写测试用例,考虑等价类的这个过程其实就是在思考ADT需要哪些功能,适应哪些情况,这让我之后实现ADT时思路更加清晰、缜密。而且先编写测试用例,能够及时发现bug,及时修改,及时止损。

一点小提议
老师其实可以给出往届学长piazza的地址,我们在写代码的过程中遇到问题可以先去看往届有没有类似的问题,毕竟有个检索功能,查找起来还是很方便的,找不到的问题再提问。这样一来可以节省老师们和助教们宝贵的时间,二来同学们也能及时地找到解决方案。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值