BUAA-2023年秋 OOpre博客总结

1.整体架构

架构调整

整个迭代的过程中,我的架构并没有进行大幅度的重构,大部分操作都放在Adventurer和main类(这其实是不好的)中操作,初始为Main、Adventurer、Bottle、Food、Equipment类,在第四次作业中加入了Fight类,用于记录战斗日志,第六次作业中加入了接口commodity用于连接Adventurer、Bottle、Food、Equipment四个不同类,实现价格的计算,第七次作业中加入了单例Shop类,实现出售和购买物品。

架构缺点及改善

1.在Main类中放了太多的代码,真正的工程中Main只有几行就可以了,因此可以选择第五次作业中的处理方法

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        Process process = new Process(scanner);
        process.solve();
    }
}

新建一个Process类,将输入指令传入到其中进行处理。

2.Adventurer类中代码有430多行,代码量很庞大,很不方便阅读以及debug,下次应该更灵活地运用继承和接口,将方法代码量缩减,增加可读性。

2.使用junit的心得体会

我之前debug都是用采取设置断点以及输入数据的方式,在刚开始使用junit的时候确实有亿点点不习惯,不过后来在代码量增大的情况下,junit的确能帮我发现一些很细小的bug,因为我一般每个方法都会写一个测试(为了卡junit通过率),所以当架构调整时很容易就会发现调整后的错误,但感觉目前对junit的体会还是比较浅,很多bug还是通过强测发现的。

3.学习oopre的心得体会

Java语言的封装、继承、多态与C语言的面向过程编程很不相同,C语言我一般都是解读题目,一步一步得到最终结果,其中在思考使用什么算法,必要时使用一定的数据结构,而Java的题目拿到手之后,更多的是思考不同类之间的关系,使用继承还是接口,使用什么样的容器才能最大程度地满足题目的要求,构建什么样的类对代码进行封装,顶层逻辑又该如何设计。这都是与C语言不同的。感谢大二上的OOpre课程让我从一个Java小白变成一个能写出几百行的Java新手。

4.对oopre课程的简单建议

建议在课程开始时就介绍一些比较好的代码架构,能减少在以后的迭代作业中代码重构的麻烦,还是挺痛的,减少弯路.

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ribber160

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值