一. 总结本单元两次作业设计
第十三次作业主要便是把每个需求在需要的时候用递归算出之后保存到相应数据结构中,之后要用时就可以直接取出使用。
第十四次作业对于顺序图和状态图的查询与上一次的作业相似,对于有效性检查可以用递归查找的方法,找到之后储存到数据结构中。
二.总结自己在四个单元中构架设计及OO方法理解的演进
这四个单元带给我的是逐步递增的学习过程,这门课带我深入的了解了面向对象的意义,也对Java进行了一定的了解。
第一个单元是对多项式的求导,由于一开始对于面向对象的不理解,几乎三次作业每一次都要进行重构,这就说明我的代码并不具有包装的效果。
第二单元始对电梯调度的编写,而这次就体现出来对于不同模块的封装。电梯与调度器两个的编写都要单独封装。
第三单元是对JML规格的理解,了解了规格可以让我们的代码工程更加抽象。
第四个单元是UML模型图,比较系统的学习了类图、顺序图和时序图,可以在设计架构的阶段就将程序的结构用图的方式清晰的表现出来。
从上述四次作业分析可以看出,四次作业oo方法理解的演进循序渐进,层层递进,从基本的java语法与一些面向对象思想,到面向对象思想的高阶应用,再到规格化设计的工程化思想,最后软件架构层次上的学习。
三.总结自己在四个单元中测试理解与实践的演进
第一单元时对于这门课程的测试还不是很了解,所以基本上都是手动输入然后用眼睛看是不是对的。但后面渐渐的对于数据的测试变的越来越困难,所以渐渐需要使用测评机来进行测试,与同学之间相互讨论,互相分享。
四.总结自己的课程收获
首先本学习学习了很多经典的面向对象的思想、模型、架构和设计,也自己动手实现了其中的一些。因此对于我的代码能力和架构能力有了很大的提升。
其次便是杜宇面向对象问题的分析能力以及工程化设计的思想,在自己写代码是会更加注意自己的代码是否符合规范,是否有可读性,在接下来的添加需求是是否有可扩展性。
最后便是与同学之间的沟通交流能力。当自己实在是想不到自己的bug是出在哪时可以多和其他同学交流一下思想,没准就可以找出自己的错误。
五.具体建议
1)实验课与理论课之间最好空一点时间给我们多学习一下。
2)中测能够增加一些难度。
3)课上测试之后希望可以给我们看看标准。
六.总结
OO课程顺利结束了,祝各位老师事业有成,助教们学业腾飞,我在今后的学习中会更加努力的。