就前四周作业情况大概总结
一、 前言:该板块主要是讲述这几次作业的情况
这几次作业主要分为两种题型。一种是求方程的解,二就是根据要求做日历
二、 作业过程总结
1)这三次作业循序渐进,从第一次作业的开始让我们收悉Java语言的编程风格和基本格式还有语法,到第二次的作业让我们对Java有了独立体和对象的概念,再到第三次作业让我们初步了解了Java语言中类与类之间的关系,还有Java语言的封装性。
2)就我个人而言在前两次作业中并没有感觉到面向对象和面向过程有什么区别,在第三次作业中了解到Java的封装性,类与类之间的各种关系才有点感觉到面向对象和面向过程之间的区别。从思考面向对象类的功能开始从面向过程过渡到面向对象。
3)在这几次作业中主要遇到的问题就是“空指针”,通过询问同学解决,后来我总结了一个算是心得吧,空指针只有在你使用一个方法而这个方法没有实例对象的时候才会出现,这是我这个阶段得出来的结论。
4)第一次作业花费时间较短,第二次刚开始遇到日历时,花费的时间较长,第三次花费的时间最长,因为这次作业涉及到了类与类之间的聚合关系,很多次都是错在空指针。假如这三次作业总量是10的话,那么这三次作业的比就是2:3:5。
5)对于编程的严谨性,在这几次作业体现的淋漓尽致,稍有不注意,马上就有空指针,稍有不注意马上就有超出最大限制等等,我从这几次作业上也学到了很多东西。只要你使用了这个方法,你就一定要注意这个方法是哪个实例的,有没有初始化,有没有new它,而且控制条件里的等于号也要慎重思考是否要加
三、设计心得
1)对象和面向过程的区别:
其实在前两次作业中并没有感觉到面向对象和面向过程有什么区别,直到第三次作业才有点感觉,面向对象的代码复用性为0,而面向过程代码的可复用性很高,以前在b站上学习Java的对象的时候,里面的老师做了一个很形象的比喻,他说面向对象和面向过程就像盖浇饭和蛋炒饭一样。在蛋炒饭中没有对象的概念,假如顾客提出我想吃没有鸡蛋的蛋炒饭,你要先炒一碗蛋炒饭然后将鸡蛋从里面挑出来,显然这是一个很难满足的要求。而盖浇饭就不同了,他的可扩展能力较高,不管顾客想吃啥,不想吃啥都就可以在里面去掉或者删除,在盖浇饭里就有独立体的概念,每一种东西都是一个独立的个体,它有自己的属性,自己的特征。在蛋炒饭中,去掉鸡蛋这就不叫蛋炒饭了,但是在盖浇饭中你去掉任何一种配菜,它都可以称之为盖浇饭,这就是我理解的面向过程和面向对象,用比较专业的术语来讲就是:面向对象的“耦合度”低,扩展能力高。更容易解决现实世界更复杂的业务逻辑。组件复用性强,但是前期投入的成本较高。而面向过程很难解决非常复杂的业务逻辑,另外面向过程的方式导致程序元素之间“耦合度”非常高,只要期中一环出现问题,整个系统受到影响导致最终程序扩展力差。另外由于没有独立体的概念,所以无法达到组件复用,但是面向过程对于业务逻辑较简单的程序可以达到快速开发的效果,而且前期投入成本较低
2)面向对象设计的基本原则理解:
就我目前的水平和了解到的知识,我觉得面向对象设计肯定有单一职责,一个类的功能必须是单一的,不能一个类做太多的工作,别的基本原就不是很了解了,希望在接下来的学习过程中能够很好的掌握下来。
3)OO编程思维的理解:
对于oo编程思维,我认为,编程首先你不应该想着整个的程序要怎么要连接起来,你首先要想的是,这个程序要实现什么样的功能,这些个功能要怎么写,要写几个类,这些个类里面应该具有什么功能,然后写出这些类之后,再来考虑把这些类串联起来。
四、测试的理解和实践:
1)个人觉得测试对于编程非常重要,要写出一个好的代码,少不了测试,要尽快地写出程序,少不了测试,简而言之,学会测试是一个程序员必备的技能。
2)假如让我设计测试用例,首先第一个就是判断边界问题,再在这两个边界之间去几个适中的值进行测试,然后在对题目代码中的变量类型的取值,进行整型,浮点型边界测试等等。
五、课程收获:
这四周来在Java中遇到的最多的错误就是“空指针”在这上面得到的教训十足,但是遇到教训,错误不可怕,我在这上面也有一定的收获,比如知道了空指针的错误点,知道了oo编程的大概思想等等。
六、对课程的建议
希望老师在能够在下一节课上课前,说明这节课要讲什么,让我们做好预习工作。

浙公网安备 33010602011771号