其他分享
首页 > 其他分享> > 第四单元总结及课程总结

第四单元总结及课程总结

作者:互联网

一、第四单元总结

第13次作业

第14次作业

第15次作业

二、架构设计思维及OO方法理解的演进

第一单元 多项式化简

  第一个单元中,是从零经验的开始。第一次作业时,对面向对象的思想还没有完全建立,基本上是模仿课程组的training在写,正是因为对于对象理解的不到,第二次作业不出意外的挂掉了。但是在三次作业的练习的过程中,对面向对象的理解也更为深刻。逐渐体会到了对象的妙处,明白了要如何合理的设计对象,学习到了对象设计的一些方法和原则。

第二单元 电梯

  第二个单元,主要就是多线程的线程安全和如何上锁的问题。这个单元更多的是对于编程模型的应用,如果应用得当那么任务将会变得非常简单。这个单元加深了我对于编程模型的理解,以往的编程是随心所欲毫无章法,导致了许多思路不清,代码写一半要重构的情况。学习前人总结出来的模型,对于个人编程能力的提升还是很可观的。

第三单元 规格化设计

  第三个单元,主要依据规格要求写出相应函数。主要考察对于JML的理解,只要代码满足规格就可保证整个程序的正确。这是一种工程化的训练,团队合作的项目中,每一个人只需要按照规格完成自己的代码,无需担心项目其他部分的具体实现,有效的提高了协作效率。更重要的是这种形式化的语言十分的严谨,不会产生表述上的歧义,进一步确保了团队项目的正确性。

第四单元 UML类图解析架构

  第四个单元,将类图解析与OO联系起来。UML作为被广泛认同的建模语言,十分精准的描述了一个面型对象程序的运行逻辑和协作关系,对于程序员理清代码逻辑,搭建大体框架提供了有力工具。也为其他人理解程序的逻辑提供了便捷的桥梁。有效建模也大大的减轻了我们编写代码时的逻辑复杂度,使我们的逻辑更加清晰。

三、测试理解与实践的演进

1、黑盒测试

最常用的测试方式,通过输入数据检查输出来测试程序的正确性。可以通过自动生成来获取大量的测试数据,但不能保证测试的覆盖率。常常配合程序对拍一起使用

2、白盒测试

互测时用到的测试方法,通过阅读代码,找出代码存在的bug。比较消耗人力,非常容易造成遗漏,但是容易发现隐形的不容易被构造数据测出的bug。

3、单元测试

利用Junit进行测试,可以实现对于函数功能甚至每一条语句的精准测试。可以保证测试的覆盖率,但是需要手动构造数据,比较消耗时间,要完成对于程序整体的测试需要比较漫长的时间。

四、课程收获

​ 这学期的OO作业,从面向对象的基本思想开始培养,区别于以前的面相过程式编程。再进行线程及其安全性的控制与判定,然后是依据规格进行程序设计,培养工程化设计的思想并进行数据完备性的检测。最后是解析UML类图,将图形化的东西与代码结合起来,原本抽象的东西有直观图像参考,而已有的直观类图信息也可转化为不同元素及其关系。

  我一直认为一个计算机学院的学生最可贵的不是掌握了多少们语言,学会了多少精妙的算法,而是我掌握了多少可贵的思维方式,上学期的CO让我明白了设计的核心不是代码,而是敲代码前的统筹规划。这学期的OO更多的是让我掌握了更多的设计方法(面向对象本身也是),其实无所谓是java还是其他的什么语言,最大的收获都不是我熟练的掌握了这门语言,而是明白了面向对象的这种思维模式。我可以很轻松的分析出一个任务是否合适用面向对象的思维去解决,也可以很轻松的从纷繁的设计要求中提炼出我所需要的对象,并且结合我的所学进行建模,这才是有价值的学习。

五、改进建议

标签:总结,return,代码,作业,课程,visited,id,单元
来源: https://www.cnblogs.com/0xiao-hei0/p/16406895.html