oo第四单元总结与学期总结

一、本单元两次作业架构设计

终于来到本学期最后一个单元的oo作业,到这一单元很辛苦,但是很遗憾,最后一个单元自己还是没有很好地完成,在这里也只能说一说自己最后两次作业的基本架构了。

第一次UML作业主要是完成对UML类图的解析并实现查询等操作,第一次作业类图如下:

但是还是出现了一点玄学bug导致测试点没有全部通过。。

第二次作业是在第一次作业的基础上增加了顺序图、状态图以及有效性的解析,但由于第一次作业没有成功完成,第二次作业也卡在了奇怪的bug点上导致没有完成,所以这一次作业就不多加赘述。

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


第一单元是刚刚开始oo课程的单元,刚开始便是多项式的求导,由于寒假摸鱼,所以对java编程知识掌握的并不多,再加之对正则表达式的不够理解,使得自己在完成作业上十分吃力,但是经过了三次作业之后(虽然没有尽数完成),我也还是开始对java程序设计有了一点初步的认识。

第二单元是多线程单元,相比于第一单元来说,不再需要担心输入输出的问题,也没有各种各样奇葩的输入格式,但是多线程又完全是一个新的概念,好在有大佬的帮助,这一单元基本采用的是生产消费者模型,也没有什么大的难度,更多的是开始懂得了封装一些不同的类。

第三单元是JML单元,这部分基本也就是照着源码的JML语言完成各个函数,由于对运行时间有着严格的限制,我也还是吃了很多亏,这一部分中体现了数据结构和对象为功能需求而设计的应用原则,JML总体来说难度不大。

第四单元是UML,总的来说UML难度相对于JML来说难度更大,但很遗憾两次作业都没有能够成功完成,也只能说是自己还不够尽力吧。

扫描二维码关注公众号,回复: 6596327 查看本文章

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


第一单元的测试自己也基本是盲测,自己创造各种奇葩测试数据来进行测试,一切全部看运气。。。。

第二单元的测试基本也是各种盲测,输入极端楼层,或者反复带人来进行测试,和第一单元来说没有什么区别。

第三单元的测试接触了junit,但是自己还是不太会使用,所以使用的是生成的随机数据进行盲测,感觉和前两个单元还是没有什么区别。。

第四单元没有成功完成,也就没有什么测试可言。

四、自己的课程收获

一学期的oo课程已经结束,虽然自己做的的确很烂,当然可能也是因为自己太懒吧,但是一学期下来也是多少有点收获:

1、对java程序设计有了初步的认识,也可以完成一些简单问题的解决。

2、对程序设计的架构有了认识,也能体会到一个优秀的架构的重要性。

3、在测试方面,虽然自己更多的还是盲测,但是也会开始尝试去使用一些方法构造测试数据,提高测试的准确性和效率。

五、给课程提的三个具体改进建议

1.课上的内容能不能更加细节一点,不止是我,我周围很多同学每次在听完课之后仍然还是一脸懵逼,不知所云,在每次完成作业时又需要去花费很多时间去看看ppt,了解课上知识,并且时常会感觉课上所讲知识对完成作业作用甚微,还得去求助大佬或者去网上各种寻找资料,虽然自学是必要的,但是能不能多一些细节。

2.课上实验的安排感觉实在是有点不合理,上午刚刚讲完的内容中午那么短的时间就必须去上机掌握,可能也是因为我自己理解慢吧,这学期已经不记得在课上实验懵逼过多少次了,课上实验能不能不要在马上上完课之后进行,哪怕只给一个下午去消化理解呢。

3.关于测试,感觉同一个互测屋里人数太多,根本在有限的时间里没有能力看完所有人的代码,基本就也就是生成数据去盲测,去炸,这应该也不是互测的初衷吧,可以适当减少互测屋的人数,能让同学们从代码本身去寻找错误,而不是一味盲测只是为了去hack他人得分。

猜你喜欢

转载自www.cnblogs.com/2019ljsoo/p/11076822.html