OO总结

架构设计

在第一次作业中因为内容较少所以就直接采用一个java文件直接实现所有的方法,
但是由于本人在某些地方处理有点麻烦,导致超出了行数。第一次作业实际有用的就只有一个文件
所以没必要用类图。

第二次作业在第一次作业的基础上改动并不是很大,所以也比较容易的在一个文件的基础上增添了那些方法
由于那段时间比较懒,就没有改成分模块处理,一个文件干了几个文件的事情。对类图和状态机的处理都在
一个文件当中

第三次作业由于又多加了两种独立的要求,再加上前两次的代码风格分数太低,所以我就
把自己的文件按照不同的功能分成了几个文件,一个java文件处理自己的事情,然后由
MyUmlGeneralinteraction调用不同的文件中的方法,来使得文件功能更专一,目录树更
好看。
第三次作业类图如下

总结四个单元

这四个单元,第三单元就是照着写,我并没有进行什么改变。第一单元对整个表达式进行分层次
处理,一整个表达式可以由层次由低到高可以分为元素,项,表达式。同时表达式也可以作为元素
元素就是表达式最基本的构成sin,cos之类,项是由+-号分开的表达式,项组成了表达式。分开对这些进行
处理,但是当时我还没有很了解接口,所以就没有写求导接口,如果用求导接口来统一管理元素应该会更加
方便。
第二单元的多线程电梯,应该是我做的最舒服的一个单元了。我将代码写得比较形象,不过现在看起来还可以再抽象一点点
我写了一个楼房类,楼房类里由楼层类,楼层类里有person类,在请求到来的时候我就把生成一个人,加到对应的楼层
现在觉得其实直接将请求加到该楼层就好了,而且我并没有设置控制器类,我的电梯有自己的想法,自己决定去接人还是停下。
第四单元之前都说了。

测试感想

我基本都是自己手搓数据来测试,偶尔会用一用同学构造的数据来找一找自己的bug,这就导致我有可能会犯一些很傻的错误,
比如map里没有那个key,却想取出那个value,再第四单元的时候,由于用的容器太多了,有的时候就直接去取值了,忘记了判断。
有的时候就那一个地方忘了,然后就会错一些。手搓数据还是不够全面,但是生成数据又比较麻烦。还得是有效数据。但是测试
确实是很有必要的,可以发现很多bug,但是还有一些bug光靠测试也是不容易发现的,者是程序设计的问题。测试可以帮助我们发现问题
,是非常重要的手段。模块化测试的Junit我觉得不是很好用,有了写代码去测试自己构造出来的数据,不如直接去运行。希望日后可以学会
更加有用的测试手段。

课程收获

从一开始的java小白,学会了很多的东西。各种各样的容器,模式,对于各种容器的应用也比较熟练了,学会了接口的使用
可以统一管理有相同部分的类。最主要的是学会了面向对象的编程思想,万物皆是对象,以方法为主要的内容。而之前的c就是,一个文件写道最后,按照
过程一步步实现内容。而面向对象是先抽象出对象,再写出该对象应该具有的方法,最后才是调用方法,而不是写到那个位置
需要某个函数才去写那个过程,这应该算是最大的收获了

三个改进建议

  • 我觉得jUnit的部分可以换一个别的更好的测试工具,JUnit确实不是很好用
  • 中测的难度可以适当加大一点点,弱测等于没测,中测约等于弱测。
  • 没了

线上学OO的体会

其实对于OO来说,感觉如果我在学校上,估计和线上其实区别不是太大,感觉其实挺舒服的,就是有的时候提交页面炸了让人
很担心。体验还是挺好的,在家里舒舒服服的写代码,最多就是少一点设有的帮助和互相激励,代码会写的慢一点。出现bug交流不是
很方便。但是对个人的能力锻炼还是挺好的。

posted @ 2020-06-19 17:04  lpc??  阅读(115)  评论(0编辑  收藏  举报