前言:第一阶段的java学习我们一共有三次的主要作业。第一次是一些简单的java上手类型的题目,让我们练练手吧,通过一周左右的学习,第二次作业迎来了我们java学习的正式部分,开始让我们接触类与方法等java中的概念,让我们感受到一些与之前我们学习C语言时候的不同。第三次作业就更加体现了面向对象的思想以及java中一些特有的思想以及思考方式。
作业过程总结:第一次作业主要让我们熟悉了一下java的代码格式,让我们与C区别开来。第二次作业中的后面三题也就开始有了层次的递进,首先先从容易的入手,随后开始在此基础上增加难度,在这层层递进的过程中让我们对于面向对象这一思想有了许多体会。第三次作业也是在第二次作业的基础上增添一些别的内容,通过UML来给我们以直观的感受,让我们知道这就是面向对象,而不是我们之前编程学习中的面向过程思想。
在刚开始做练习的时候,我总是习惯性地用面向过程的思想去思考问题,总是拘泥与如何解决这个问题,怎么设置条件,怎么输出答案。渐渐地,通过老师上课一直强调的要将我们之前面向过程的思想纠正过来,了解面向对象的思想,这样才能更好地学习我们这一课程------《面向对象与设计》。还有就是刚开始进行第一次作业的时候,自己根本就不知道java编程的基本格式,也是在网上查找资料才得以了解,慢慢地自己动手去敲这些代码。因为网课的问题,我们也没有拿到纸质课本,也就忽略了自己要提前进行预习,起码要在开始编程之前你得知道,java的代码需要像C里面的头文件,输入与输出语句等,这些都应该是我们需要考虑的问题,所以才会在第一次作业中面对题目有些不知所措。这确实是自己学习上的懈怠带来的问题。
这三次作业由于难度的加大,耗费的时间也是呈现着递增的趋势,第一次作业也就在一个下午的两、三个小时解决了,还是可以用小时做单位进行计量,后面的作业又因为自己本身编程能力的问题,开始以天为单位进行计量,我记得第二次作业零零散散加起来该有一天半左右的时间吧。第三次作业就更加耗时了,老师给我们的时间也宽裕,我卡在第二题卡了两天之久,终于把它解决了。后面两题因为有了第二题的铺垫,两题加起来差不多一天半也能顺利地run起来。
对于java的学习,我们面向对象这门课程,主要是要我们运用面向对象的思想去思考并解决问题,我们不能使用我们一贯的面向过程的思维去看待问题,不然这就与我们的课程设置目的相悖了。
oo设计心得:面向过程与面向对象最大的区别我觉得是在思考问题的切入点上的不同。面向对象主要是通过这个问题所有的特征来思考,比如解决这个问题我需要多少个对象,每个对象所拥有的特征以及方法。而面向过程思考问题的时候,更多的是从如何解决这个问题入手,差不多就是你脑袋里面有了解决的思路,一股脑敲下来差不多就成了。面向对象思想,我认为就是你要抓住每个对象所拥有的特征以及它的活动问题,譬如一个人,他有什么特征,有头有四肢会思考,他还有许多活动的能力,也就是ability。面向对象的思想,让我们可以再许多问题类似的情况下,直接复用之前的代码,可以大量的减少我们写程序的工作量。
测试的理解与实践:测试,顾名思义就是为了测试代码的正确性,但是这不单单是为了检测代码的正确性,更是为了检查,程序在某些特殊情况下是否能正常运行。测试点我觉得吧,就应该符合正常的操作习惯,但是也要考虑到某些极端条件。在边界设置测试点,当然对于我们问题的主体的测试点需要更加细致。
课程收获:让我对于java的学习有了比较深刻的了解,也认识到了面向对象这一之前从没接触过的思想,对于编程,对于思考问题也有了新的角度与方法。很多时候我们思考问题不一定要从结果开始切入,我们可以想想过程中的某些解决问题的方法,以及问题中出现的个体,从而将我们面向对象的思想代入其中。这应该是我这段时间学习java最大的收获了吧。
对课程的建议:没啥建议,适应不了也是自己的问题。
接下来的学习计划:多练手,多思考,多多了解java的编程思想。