OOPRE心得体会

本文讲述了作者在OOPRE课程中的学习历程,包括从面向过程到面向对象编程的转变,迭代中架构的优化,以及使用JUnit进行单元测试的心得。作者反思了代码架构问题和对面向对象核心思想的理解。
摘要由CSDN通过智能技术生成

1.作业最终的架构设计, 在迭代中的架构调整及考虑

4daa7836bb2d493c8b263ebe786dff9a.jpg

 以上是最后一次迭代之后产生的代码文件。

在第一次迭代作业中,我们被要求实现一些简单的操作,当时新建了CLASSMAIN,BOTTLE,EQUIPMENT三个类,第一次实操面相对象编程,还有些不大适应,但是在完成本次迭代之后就感觉稍微上手,并且知道自己的知识短板,并产生了补齐短板的强烈兴趣。

在第二次迭代中,我在原有的基础上进行了扩展,并且采用了更加适合的输入方式,这使我的代码的适应性和可扩展性变得更好。

中间有一次,因为主函数内部的行数过多,于是就仅将读入的功能留在了主函数内,将其他的操作全部抽离,并且每一种操作写一个函数,这时,我的代码架构变得更加清晰了。

在后来,学习了接口和继承,代码的可扩展性变得更强,这时我对三种特异瓶子,三种特异武器都进行了继承,并且对这几种类也实现了接口。

可惜的是,在最后一次迭代时,因为之前的架构已经不好改成工厂模式和观察者模式了,因此仅仅是新建了store类来解决问题,这也造成了最后的很多的重复代码段,希望在下学期oo正课中开始就能有这些面向对象编程的意识,以及时规避以上的问题。

2.使用junit的心得体会

在本学期中,我第一次接受到测试代码的概念,一开始不知道怎么写,但是后来越来越熟练。在提高覆盖度和分支度的时候总是绞尽脑汁想数据,这也让我明白了代码的可靠性是要去穷尽每一种可能并且没有问题。

3.学习oopre的心得体会

(包括但不限于从面向过程编程过渡到面向对象编程的体会)

本学期的oopre让我提前接触到了面向对象编程的思想,并且通过几次的迭代开发初步掌握了JAVA语言的多样性,体会到了JAVA的强大。

从上个学年学习c语言,一直都是面向过程的编程思想,在当时编写很长的代码段能够产生很强的成就感。但是当时看到**荣耀这种游戏就会想,如果是我,我会怎么写出来这样的游戏,但是最终草草了之。知道这个学期接触到了面向对象编程的概念,我才对这个问题有了一个较为明确的方向:就是利用面相对象!所以说,面相对象的核心思想就是以对象为中心,模块内只实现自己的功能,降低耦合度。

4.对oopre课程的简单建议

(不多于两条)

建议的话首先表扬一下助教们,太牛了!然后就是希望老师的PPT能不能多一点样式,感觉有点太简约了(😓)。

53f98c5a8f5c426bb6de8e025cf33345.jpg

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值