一、最终架构
-
Main类作为入口实例化MyScanner类读入数据和Manager类处理主要逻辑
-
AdventurerManager类负责管理冒险者相关信息,而FightLogManager类负责管理战斗日志相关信息
-
使用Command接口,为每一个指令创建一个Command类继承该接口,独立完成逻辑
-
Adventurer、Bottle、Equipment和Food类实现Commodity接口完成价值体相关逻辑,后三个类还继承了Item类来实现购买等相关逻辑
-
三种Bottle以及Equipment分别继承Bottle抽象类和Equipment抽象类,并且有BottleFactory以及EquipmentFactory
-
Store类使用单例模式,完成商店部分逻辑
第三次作业在第二次作业的基础上只是添加相关指令,将许多逻辑堆积在Main类中
第四次作业之前,将第三次作业的结构改成类似最终架构的样子
在往后的迭代中,新增指令以及功能比以往简单了许多
二、Junit体会
在本课程的作业中,Junit在一定程度上帮助我找出许多的错误,但是没有养成新建一个类或者一个方法就写测试的习惯。另外,我感觉在Junit的使用中,需要自己对要求非常熟悉,只有能够想出比较周到测试数据才能够起到很好的测试效果。
三、oopre心得体会
在我大一暑假的实习中,我学习了Java的基本语法以及相关框架,并且独立完成了一个小的任务,但是在学习了oopre之后发现,之前写的代码在结构上有着许多的不足。