O第一单元(前四周)作业总结(第四次作业)

一. 前言

 

     本次博客主要记录这几次作业后的思考,出现的问题和我的解决办法,唯一不足的地方就是对面向对象的设计思路,采用类的方法去解决问题等方面不太熟悉。解题的方法总是会被我表达的很复杂,有很多语句,不简洁。

 

二. 作业过程总结

1.第一次作业是关于JDK和Eclipse环境的搭建,完成一个程序编写,运行和调试的过程。第二次作业用Java语言解决一些应用题和数学问题。第三次作业就是运用Java类的思路来解决一些复杂的题目,主要就是从面向过程转变成面向对象。

2.     通过作业逐步从面向过程过渡到面向对象:首先面向过程就是分析出解决问题所需要的步骤,然后用函数把这步骤一步一步地实现,使用的时候一个一个调用就可以了,而面向对象就是把构成问题的事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。从C语言(面向过程)到Java(面向对象)的过渡,就是把方法写进了类里面,然后创建一个对象,采用对象的方法去实现目的(像C语言的函数)。

3.写作业时难免遇到许多问题,比如不会使用面向对象的方法去解决问题,解决方法很简单,在网上查找相关的代码,看看人家是如何用面向对象的方法。还有创造的方法过于繁琐,为解决一个小问题写了非常多的代码,导致后面的拓展题无法使用,于是就向同学请教,并且上网搜资料,获得解决办法。

4.前几次作业有C语言的基础,做起来很快,可题目越到后面,越来越难,有时候写了400多行代码,而且还要花大量的时间去修改代码中的错误,耗费的时间越来越多,比例大概是1:2:7

5. 逻辑严谨性非常重要!在写题的过程中,要方方面面考虑到解决办法,要是一个情况没有考虑到,答案就会错误,然后要想办法进行调试,测试,输入等来发现问题。

  教训:千万要在写代码之前,把自己的思路理清,写下来,再进行写代码

 

三.OO设计心得

1.面向过程与面向对象的比较

      面向对象关注的是事件的主体,而面向过程只关心逻辑

      面向对象每个类都有自己的工作,一个类只能做一种事情,而面向过程一个函数可以干很多事

2. 面向对象设计的基本原则理解

     对象应该仅具有一种单一功能的概念

     软件体应该是对于扩展开放的,但是对于修改封闭的概念

     程序中的对象应该是可以在不改变程序正确性的前提下被它的子类所替换的

     多个特定客户端接口要好于一个宽泛用途的接口

     个方法应该遵从“依赖于抽象而不是一个实例”的概念

3. OO编程思维的理解

面向对象能够将一个工作分成几个小工作,再设计一个类来将这个工作做好,而不像面向过程,一个功能出错,可能会牵扯到其他功能的错误,就需要全局修改,而面向对象,一个功能错误,只需将错误的部分修正,而对其他类的工作产生很小的影响。

四.测试的理解与实践

1.测试电可以测试出代码哪个地方出现了问题,可以针对问题这方面进行修改,提高了编写代码的质量

2.在每个功能上给一个测试

五.课程收获

   思路可以决定出路,人的学习是永无止境的,只有不断学习,才能给自己更丰富,更开阔的思路,经过这段时间的学习,让我感悟到了很多,但还是对Java的继承,接口,重载,覆盖等半知半懂。我还是需要认真去揣摩。在学习Java的语法时,Java的语法是类似c语言的,所以学习的比较轻松。唯一需要注意的是有几个不容易搞清楚的关键字的用法,public,protected,private,static,什么时候用,为什么要用,怎么用,和同学一起讨论了好久才得以解决,要养成良好的习惯,对一个简单的例子也要有耐心去琢磨、调试、改动,并且一定要自己动手去做,自己动手去写代码,而不是看看例子就结束,很多东西必须要自己动手才能真正属于自己。网上很多专业论坛,也有很多专业大佬,要会从网上搜索有用的东西加以整理,促进自己知识水平的提高。

 

6课程建议

    希望老师能够分享一些能够提高解题能力的一些资料

posted @ 2020-04-04 20:31  ShaulChen  阅读(91)  评论(0)    收藏  举报