java 0-3之间的_OO-java 第三阶段总结(3/3)

OO-java第三阶段总结

0.前言

本次作业是对面对对象程序设计(Java)第七八次作业的总结

1.作业过程总结

1.总结三次作业之间知识的迭代关系:

第七次作业,是对雨刷程序功能的扩展设计,在给出部分设计思想及框架的情况下,如何扩展就是这次作业的难点。这次作业的扩展求源的话就是对继承的实际运用,相比上三次作业,继承的运用更加学院化,没有实际意义,而这次的就是现实,实际意义上的继承运用

第八次作业(1),知识点多是map映射得运用,跟之前的题目没有太大的关系就是统计关键字出现的数目,对map的运用,以及对字符串的分割处理上有一些挑战,当然跟之前几次作业的关系可能就在字符串的处理方面了,通过分割函数方法,以及正则的运用,还有这题是唯一一次没得满分的题目,有一个测试点死活过不去,也不晓得是哪里有问题的,难搞

第八次作业(2),知识点是栈和数组的应用,当然对字符串的处理还是少不了的,其中运用了栈,实现了四则运算,这也是数据结构中的部分内容,倒也没啥说头,老师还特地发了讲解的ppt,按部就班实现功能即可

2.如何通过作业逐步掌握一些算法:

这几次作业,在对继承方面的运用更加熟练了,还有map映射的应用以及栈,数组的应用,和字符串的处理,字符串的检查中运用了部分正则的知识,正则也是蛮麻烦的,总体很难,我们也只是应用了正则的一点点简单的运用

3.作业中遇到得问题及解决方法:

第七次作业中遇到得问题倒也不多,基本上是粗心或者是不细节造成的一些编译小错误或格式小错误。但有两个程序内容错误,让我比较记忆犹新,其一是第一次作业得第四题判断三角形种类得,对于等腰直角三角形存在输入数据是约等于得数据,可能会导致计算上精度出现问题,这是一开始没有考虑到得细节错误,后来通过数据相减,当差值小于某个极小值时,即判断数据相等,实现了数据精度极小化;其二是第四次作业第一题,计算N天前或后得题目,在这应该是某个细节点没考虑进情况,在重审代码时内心始终没有细下心来认认真真得审视自己代码,反而是左改改这个,右改改那个让自己及其浮躁,花了数倍得时间,始终没有找出错误原因,后来自己将核心代码删除后,重新写过核心代码才解决几个测试点案例,顺利通过,故而记得极其深刻

4.每次花费得时间比例

说实话,没有记过,只能大概估摸着应该是 5:2:2    其中第七次作业就是上一小节所说的错误,改了好久好久好久得代码,最后还是重写解决的,故而时间长上不少

5.对编程过程的严谨性的认识及教训

这个小节又让我再次反思自己了,不在于别的,就这次博客要求而言,也看了数遍,却始终没有极其仔细的注意每一条要求,想着按部就班一个个点看下去写下去的,而事实上在这个博客的编写过程中,好多后面谈到的小节,在之前的小节就写了上去,上两小节中所说的第三次作业的错误,就是最大的不严谨性错误,导致时间消耗大把,没有起到事半功倍的效果,还有编程过程中,很多时候对于程序设计有些许头绪,就开始打代码了,事实上还没有完整的头绪,总是打着走一步看一步的思想,导致程序设计不够严谨,就会出些及其细节的错误,还有又是设计错误,有时就会极难发现,耗费大量时间!

2.OO设计心得

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

面对过程更多的是一些功能设计,程序设计出来的指定目标,指定对象的代码,然而当设计需求出现些许变化,或者是指定目标出现了些许变化,都会导致之前的设计出现没用的现象,这就会造成大量的浪费。

而面对对象设计理念可能就是为了弥补大量浪费的,面对对象设计理念核心应该是对象,由对象来统筹一切,所有的操作是围绕对象来进行的,所有的调用 操作都必须通过对象下的方法来实现,这就可以重复进行某些操作了,而且只要代码写出来了,换任何人都可以进行运用。相比于面对过程而言,面对对象在一些细枝末节上会比较麻烦,因为它需要严格的规范,在小设计上显得操作麻烦,但是当需要进行大项目时,不浪费的那些操作就可以用来节省大量时间

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

面对对象设计,在我看来对象就是一个人,这个人有着自己的名称,状态(属性),这个人会进行各种行为(方法),这个人的这些行为会改变自身属性,而面对对象设计,就是设计一个人出来,是这个人做的什么什么事改变了什么,做成了什么,而不是一件事因为某些操作而被操作,从而进行改变。因为操作在不同的人身上,会出现不同的状况,而不同的人进行属于自己操作是不会出现问题的,是十分稳定的,也是可以更合理,更加的高效的完成整个代码世界的构建!

3.OO编程思维的理解:

在前面我就提到,我觉得面对对象是更加高效,更加有效的在设计大项工程时,它是会节省很多很多不必要的重复时间的。在我看来这个语言开发出来就是为了一项大工程 ,而这工程就是构建省时的代码世界,这就像一座高楼,一个国度,只有一个人哪怕是全身心,用尽一生的生命用来编写代码,建设高楼,建立国家,那也只是极其微乎其微的,只有由无数人一同来完成这一工作才是最明智的选择,而需要所有的人一同进行的编码,一定要有极其严格的规则,以及不累赘的代码设计,面对对象的思维就应运而生,毕竟是代代人进行填充的工具,其中复杂的格式需求以及规范的编码要求就是因此而来。当高楼不断被建设,国度不断被建设,那么后辈,需要一些复杂的操作,就只要简洁调用就行了,也就完成了其最初的开发目的。每个学习OO语言的人都是继承者,也都是传承者,就像是人类,生生不息,与时俱进

3.测试的理解与实践

1.测试对于编码质量的重要性:

代码设计,编写出来就是为了应用的,而应用中会出现非常之多的极端与偶然,一份合格的代码一定是在完成基本要求下还能胜任极端可能的。测试就是为了模拟用户体验,模拟不同数据测试下的运行情况。测试对于编码质量的重要性,就一句话,没有被测试过的代码,不是合格的代码,没有测试完成的代码,是没有编码完成的。

2.假如让你设计测试用例,你会如何做:

一份代码设计的起头肯定是需求,最先要进行的任务就是死命读题,题目研究透彻了,才能就各种条件进行测试。极端情况是务必考虑进去的,在要求的数据类型范围下,两个极端是必须的。还有高端点的,就是卡时间空间了,这也是一份代码的好坏判断,也就是算法的意义

4.课程收获

1.总结这四周来在OO方面的教训及收获

先谈收获吧,通过题目更加熟练的掌握了其中的知识点,其中继承,映射以及栈数组的学习也有了充分的实践。收获的还有在于对部分功能,部分思想,方法的实现上面,对继承的了解,对多态,接口的区别,对三者的运用,从简单到逐步复杂起来,学会的多了,能编程的也就多了,可以实现的功能也就多了。

教训吧,就目前来说吧,好像还没啥教训,主要还是在测试点那边吧,偶尔卡卡测试点,但相对来说,卡测试点的时间越来越少了。至于编程方面,作业方面的教训还是有些的,前面说过了,就不多逼逼了

5.对课程的建议

1.面对对象程序设计课程(Java)建议

老师给出的设计指导书,虽然对我们编程有很大的帮助,但是在查重方面,就太容易中招了呀。我觉得这门课主要还是偏向实践,我觉得在程序设计方面可以进行多一些练习,当然练习更多的是老师所讲的东西,在一些细枝末节上不要太要求。还有就是课程可以稍微快一点,我觉得课好像上了很多,但是真正的有用的东西,始终还没出来,上课的节奏稍微有点拖沓,还有就是有一些东西,老师最好是有一点文案之类的东西,发给我们好让我们回顾,毕竟学习这东西,就是不断模仿不断学习,不断记忆的嘛,有啥PPT之类的东西,好巩固记忆,单纯上课这样容易忘。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值