OO第一作业周期(前四周)总结

0.前言

刚接触Java写的第一个代码就是HelloWord,貌似是所有语言的最初入门代码。

而后就是第一阶段的练习,第一阶段一共有三次java作业。

第一次作业一些比较简单入门练习,但都是在有C语言的基础上进行的。

第二次作业则涉及到了日期的基本逻辑判断以及简单算法的设计,同时还用到了方法,以及方法之间的调用。

第三次作业主要是对类的理解和运用,不同的UML图可以有不同的设计程序方法。


主要说明本次博客针对的作业情况


1.作业过程总结

 

①总结三次作业之间的知识迭代关系:这三次作业是一个循序渐进的过程,从第一次简单的条件语句,循环语句的运用,数组声明以及输入输出等建立在C语言基础上的运用,到第二次作业主要是类中方法的调用,但主要还是面向过程的思路,有点类似于C语言内的函数调用,再到第三次作业各种类的不同运用。虽然第二第三次都是关于日期的题目,但要求变得不一样了,逐渐从面向过程思维转向了面向对象的思维。就比如下面两个类图,虽然题目要求相同,但实现的方法却不同。

②如何通过作业逐步从面向过程过渡到面向对象:面向过程的编程应该关注的是如何使用函数去实现既定的功能,例如C语言中各种函数的用法,而面向对象的编程,是关注如何把相关的功能,包括函数和数据有组织地捆绑到一个对象身上,就类似Java中类之间的调用等。面向过程程序设计不是面向对象程序设计的前提,有相似的地方但思维却大不相同。通过这几次的作业,从第一次中更多的还是写函数到第二次的增加了方法,到最后第三次的作业增加了类,让我们更明白类之间的联系和其不同的调用关系。

③作业过程中遇到的问题及解决方法:第一次作业中遇到的问题有pta内提交的基础格式,主要是第一题内算税率的数据比较复杂,一不留心就会算错,当时没有熟练运用单步调试这个功能,就只能从第一步开始筛查,总体来说还是较为简单,都是基于C语言中的一些基础用法。第二次作业逐渐转变到类中的方法,第一题中只有一个实数根那部分无法实现,后面经过调试解决了问题,第三题有几个日期测试无法通过,后面检查代码进行调试发现是输出放错了地方。第三次的作业转变到了类,遇到的问题还是挺多的,包括类中的传参数问题,UML图中各个类中的调用看的不太清楚,毕竟是新接触到,还没有足够多的练习去巩固,解决办法是询问同学或者上网找资料去搞懂不懂的地方,我觉得写作业中出现问题是好事,可以更加了解自己哪方面的东西欠缺,更好的去查漏补缺。

④每次作业花费的时间比例:每次作业的时间都是层层递进的,第一次还算比较顺,上手后一会就写完了。但第二三次就会卡住,有的时候是思路,有的时候是算法不知道如何实现,就会去找资料,所以有的时候一坐就是一天,为了把写作业过程中遇到的问题搞懂,不然拖到明天可能就又要重新开始。可能是我基础比较差吧,花费的时间就比别人多一些,往往都要到作业快截止了才做完。

⑤对编程过程的严谨性的认识及教训:编程过程中严谨性是非常重要的,如果不严谨的话就可能出现测试点能过,但另外的其他测试点之外的内容就会出现错误,这就是编程过程中不严谨的表现,不能只为了过测试点而不去考虑编程过程中的严谨性。教训就是编程过程一定要有清晰的思路,要运用好UML图,把自己的思路写下来,有个大概的框架然后往里面一点点填东西,再就是代码不能太长,要尽量用简洁的方式实现需求。


2.OO设计心得


①面向过程与面向对象的比较:面向过程看名字它是注重过程的。当解决一个问题的时候,面向过程会把事情拆分成: 一个个函数和数据(用于方法的参数)。然后按照一定的顺序,执行完这些方法(每个方法看作一个个过程),等方法执行完了,事情就搞定了。面向对象看名字它是注重对象的。当解决一个问题的时候,面向对象会把事物抽象成对象的概念,就是说这个问题里面有哪些对象,然后给对象赋一些属性和方法,然后让每个对象去执行自己的方法,问题得到解决。我觉得类无疑是面向过程和面向对象最大的区别,类是面向对象程序语言中的一个概念,表示具有相同行为对象的模板,类声明了对象的行为,它描述了该类对象能够做什么以及如何做的方法。

②面向对象设计的基本原则理解:目前只了解单一功能原则:一个对象有且仅有一种功能,同时也仅有一种功能需求的变更能够引发该对象实现的修改。在第一阶段了解到面向对象设计在于类和对象的理解和构造。

③OO编程思维的理解:类和对象是oo编程中最重要最基本的两个元素,在设计时,先将找到要处理的各个对象,再找到各个对象的共同的父类,逐层抽象。最后确立各个类之间的承关系。


3.测试的理解与实践


①测试对于编码质量的重要性:代码较多且较复杂时,测试的重要性便凸显出来了,测试可以保证代码的严谨性,测试是检测代码质量标准,只有通过测试的代码才是合格的代码。


②假如让你设计测试用例,你会如何做:例如我会测试边界值,最大最小值以及中间值。还有输入输出形式的测试,特殊值和正常值都要测试到。


4.课程收获


总结这四周来在OO方面的教训及收获:这四周来的最大教训就是上课要好好听讲,不然课后要花更多的时间去补,老师上课举的例子都很通俗易懂,比自己去找资料学习效率更大,课后也要去及时巩固所学内容,不要走马观花。收获是思维逐渐从面向过程转变到面向对象,在学习过程中对类和方法有了一些了解,但还需要多加练习。


5.对课程的建议

老师上课能及时的答疑解惑,课程安排也比较合理。但不足的是希望老师能上课的时候录个屏,然后上传群里,腾讯课堂回放不能很快到位,有的时候做课堂作业想要去回放一下老师上课的内容就不能及时观看。再一个就是希望老师可以把每节课的代码打包放群里,可以让我们课后方便学习。

 

posted @ 2020-04-05 11:42  LyiFour  阅读(121)  评论(0)    收藏  举报