一、分析程序结构
第一次作业:多项式加减
第一次作业的时候,由于对于Java程序不太了解,导致写的程序不是那么面向对象,自己的有一个类很长,占用了很大的空间。
第二次作业:
第二次作业在写之前,我看过指导书上面要求5个类,所以我就只写了5个类,我把main方法写到了调度类里,导致调度类太长,就会占用很多的资源。
第三次作业:
第三次作业我把之前的代码复制过来了,包括之前的调度类,因为要用到继承,所以我没有修改之前的调度类,又写了一个新的类,继承这个类,这样在加上之前的调度类,我就有两个类比较占用内存,这是第三次作业的不足之处。
二、分析自己程序的BUG
在第一次作业中,我的输出写错了,我没有判断输出的时候有没有判断输出相的系数是不是0,所以这样就会导致输出的时候会多输出一些相,但这些相的系数都为0,这就被公测测出了两个BUG。
在第二次作业中,写的时候我思考了很久,想到了如何让电梯运行起来,我想到了我们该什么时候入队,如何判断同质请求,这是一个很大的问题,我当时想到了通过电梯亮灯和灭灯来看是不是通知请求。
在第三次作业中,我写的时候思考了一个晚上,想了如何捎带,如何在捎带的同时判断同质请求,这个过程我用了根据主指令来判断通知请求和捎带请求的方法,在时间计算上有一些复杂。
三、分析自己发现别人程序bug所采用的策略
我首先看他的公测有没有问题,如果没有问题,我就会看一下他的代码的核心思路部分,如果没有问题,就认为他没有问题。
如果公测错了,我就会观察他是为什么错了,通过公测错误来找他的BUG,找到大概是哪里有问题,就去看这段代码,看还有没有其他问题,有就算BUG,没有就没有了。
四、心得体会
写oo作业的时候,要深入学习面向对象的方法,不能还是像以前一样面向过程,而且,在写程序的时候一定要先思考好,把各方面问题都想清楚了,在开始写程序,否则BUG会很多而且很难发现。各个类的资源尽量要写的平均,不能写一些没有用的类摆在那里。