Java前三次作业总结
0前言:
在完成Java前三次pta作业后的总结。
1 作业过程总结
①总结三次作业之间的知识迭代关系:
第一次作业涉及的知识比较简单,运用scanner进行输入,用if,else if,for进行条件判断和循环操作,还有考察了查找最大数的算法。都是一些基础的考察。
第二次作业较第一次有了明显的提升,Main类里面除了主方法还要设计各种功能不同的方法,体现了单一职责的原则。问题也开始与数学知识和日常生活常识相结合,比如求解一元二次方程的根,日期的计算等,算法比第一次作业更为复杂。还新学习了数据类型Boolean。
第三次作业是难度最大也是我出错最多的一次,它强调是对类的使用还有单一职责原则,我没有根据Main来写出类和实现功能,它的算法也是最难的,思考要非常全面,要把情况都讨论进去。
②如何通过作业逐步从面向过程过渡到面向对象:
第一次作业的时候题目都是通过一个Main就可以解决问题,到了第二次作用也就开始引导我们在Main里面用多种方法解决问题,最后第三次作业让我们去使用多个类来解决问题,培养我们单一职责的意识。从一开始一个Main解决问题,到使用多个类解决问题,使我们的代码更加的合理易懂。
③作业过程中遇到的问题及解决方法:
在写pta作业过程中经常出现一些小错误,笔误之类的,这个就要靠自己根据测试点慢慢的找。然后,也会出现一些知识上的错误,比如a*a+b*b-c*c<1e-6这个判断就要用1e-6来代替0,用来抵消浮点运算中因为误差造成的相等无法判断的情况。还有就是会出现一些算法上的错误,比如日期跨年等问题没有考虑,这些也是要通过测试点来进行查找。要解决上述问题就能,自己反复的去查看代码,进行推演,然后寻找一些可能的测试点进行测试,最后根据测出的错误测试点,来查找问题,修改自己的代码,再进行测试,一直要到通过所以测试点为止。
④每次作业花费的时间比例:
第一次作业大概是用了大概一个下午写完的,第二次作业就大概用了一天不到吧时间,然后第三次作业呢就大概用了两天左右的时间,主要是在修改测试点的错误。所以应该是 1:1.5:3的比例。
⑤对编程过程的严谨性的认识及教训:
就是考虑问题要具体全面,不然写出来的代码可能有部分测试点不能通过,而寻找测试点并且修改它很麻烦,所以看到一个问题一定要全面仔细的去考虑它,减少错误。
2.OO设计心得:
①面向过程与面向对象的比较:
面向过程重点在于去解决问题,代码形式比较简单,但要是代码那个地方除了差错就会很麻烦,比较难改。面向对象则会使用多个类去实现其所对应的功能,复用性也比较高,比面向过程更具有使用性。
②面向对象设计的基本原则理解:
就是单一职责原则,各个类执行其对应的功能,每个功能都各自独立,互不影响,类也可直接调用,从而提高代码的利用率。
③OO编程思维的理解:
我觉得,通过类去实现一个个独立的功能,然后把它们组合起来去解决问题就是编程思维。
3.测试的理解与实践:
①测试对于编码质量的重要性:
写出来的代码一般在逻辑上不会出现明显的问题,可能有时候还能通过样例测试,但着不代表代码就是完善的。复杂多样的样例可以测试这个代码到底有没有算法上的错误,有助于我们纠错,完善代码,提高代码质量。
②假如让你设计测试用例,你会如何做:
首先肯定是要检测错误数据,其次就是随机设置几个样例判断,然后要设置几个特殊样例,比如边界值等。
4.课程收获:
经常会出现测试点过不去的问题,然后查找和修改会花很多时间,导致作业完成效率不高,说明我的思维还不够严谨,所以下次要先对问题全面仔细的进行思考讨论,再开始编写代码,提高自己的准确率,和完成作业的效率。
5.对课程的建议:
希望老师会对作业设计到的内容,在课堂上会提前地讲解一下,或者在写作业之前对作业易错点进行提醒。
6.之后一阶段的学习计划:
会积极完成老师下达的任务,好好地锻炼自己的编程能力,训练自己的编程思维,希望完成了课程后自己的编程水平有提高。
浙公网安备 33010602011771号