前言
面向对象程序设计课程已经开设四周了,也已经完成了3次相应的作业,于是这篇博客就是对前三次作业进行总结。
一.作业过程总结
1.这三次作业难易程度由易到难,第一次作业中五道题目基本掌握,但还是有部分细节问题没有掌握,例如一些小的易被忽略测试点,导致作业提交不能完美通过。在这次作业中还只是面向过程程序设计的内容,只使用了简单的程序代码。在第二次作业中,难度上升,需要使用到方法的知识,并且需要掌握时间月份的知识。在第三次作业中,作业难度更加难了,是第二次作业的升级版,需要使用类的知识,恰好与本周的上课知识点相结合,并且需要将前两次作业的知识点结合到第三次作业中。
2.一二三次作业从面向过程逐步过渡到向面向对象设计,第一次作业基本与面向过程无异,仅仅的只是代码的表示格式不同,输出输入方式不同。第二次作业出现了方法的概念,这是为了能够与第三次作业中的类相结合,但本质上其实与面向过程中的函数无太大差别。第三次作业就基本转到了面向对象的情况了,给出了Main函数,需要自己定义类,定义类中的方法,进行构造方法等步骤。
3.在首次作业中一般遇到的是输入问题,即会忘记如何从键盘输入一个数字,字符并储存到已定义的变量中。解决方法为:在网络上进行查询。查询结果为Scanner s = new Scanner(System.in);但由于前期并不知道一个Scanner s = new Scanner(System.in);可以进行多个变量操作,于是在每个需要输入数值时都会加上Scanner s = new Scanner(System.in);但其实只需一个Scanner s = new Scanner(System.in);就能实现多个变量的输入。
其次在首次使用布尔类型是不了解其值只有true和false两种类型,导致方法返回值错误。解决方法:网络查询。 在写类的时候没有构造方法,导致在Main方法中的类的调用无法进行传参,报错。解决方法:使用构造方法,完成对象的初始化。
4.在每次作业的时间花费:几次作业时间依次加长,首次作业的5道题大概只花费了4个小时左右,而第二次作业由于是分批次做,大概花费了两天的样子,第三次作业就更加难了,花费了4,5天,并且还有取巧的部分。
5.在编程时,代码经常出现错误,有时是编译错误,有时是语法错误,但无论出了哪个错误,都无法使程序正常的运行,这保障了编程过程的严谨性。我发现,在代码长的情况下,进行程序的调试显然是非常耗时又耗力的,但有了方法,这一困难就显得更加容易克服,只需将方法调试并且可以根据方法名进行调用,十分快捷方便。
二.OO设计心得
1.面向过程与面向对象的比较:在PTA上提交作业时,面向过程总是比面向对象的运行时间更快,根据网络搜索发现,面向对象中类的调用需要实例化,开销比较大,耗费资源大。这为面向过程的优点。在上一学期中学习的c语言是面向过程,是直接将问题的解决方法用代码的方式写出来,而面向对象则是编写出一个个的类,方法,然后在对这些类创造出一个个对象来解决问题,由此可见面向对象可以有更好的对一类问题进行解决,而不用再进行对同一类问题进行编码,而面向过程则是对一个问题进行更好的处理,解决。
2.面向对象设计的基本原则理解:面向对象则是编写出一个个的类,方法,然后在对这些类创造出一个个对象来解决问题。
3.OO编程思维的理解:就是运用类创造出一个个对象来解决问题。
三.测试的理解与实践
1.测试对编码质量的重要性:测试对于编码来说十分重要,在为进行测试前,编译器仅能识别出代码的语法错误和逻辑错误,但却无法检测代码的真时运行可行性,以及答案或者最终结果是否正确。
2.假如让我设计测试用例,我将使用一些输入变量的最大值或者最小值,一些特殊数据,以及常用数据,输入规定数据的范围然后查看结果是否正确。
四.课程收获
学会了简化代码,会简单的使用类,方法。
五.对课程的意见
希望老师能够讲解一下一些作业解题思路,或者给予提示,不然有些题目对于一些同学来说真的难度太大了。
                    
                
                
            
        
浙公网安备 33010602011771号