文章目录
一、作业最终的架构设计, 在迭代中的架构调整及考虑
1,作业最终的架构设计
main类
用于处理输入,并通过创造数组存储输入、冒险者、日志和商店数据,并将数据和输入行数传入Fangfa类中。
Fangfa类
将输入数据按行进行分类,并依次将输入的数据送往Srcc类和Adve类中,直至将输入数据处理完。
Srcc类
将输入数据进行不同的处理,并作用于冒险者、日志和商店数据以及输出中,
Adve类
冒险者类,负责储存各个冒险者的拥有物品、携带物品、将要使用的物品、雇佣的冒险者、相关的战斗日志和等级、血量等状态,拥有关于对冒险者及其拥有物品各种参数的访问、对冒险者状态的改变的函数。
Rizhi类
日志类,负责按时间存储所有的战斗日志,拥有增加日志、判断日志是否合理和输出日志内容的函数,
Shop类
商店类,负责按类别存储所有冒险者出售物品的价值和部分参数,拥有购买物品和出售物品的函数。
Bottle类
药水类,负责药水参数的存储,拥有增加药水和按type分类的函数。
Equipment类
武器类,负责武器参数的存储,拥有增加武器、对武器升级和按type分类的函数。
Food类
食物类,负责食物参数的存储,拥有增加食物的函数。
2,在迭代中的架构调整及考虑
在数次迭代过程中,进行过一次比较大的改动,因为main类过于臃肿,将main类分出来了Fandfa类,因为Adve类内函数过多,将其分出来了Srcc类,并化简了Adve类中一些冗余的部分,然后增加了新的冗余 。
二、使用junit的心得体会
使用junit一方面可以直接碰巧发现代码中的数组越界和空指针等问题,另一方面还可以直接通过对各个函数的输出与自己的计算进行比较,来较直接和方便的找出是哪个函数出了问题。随着一步步提高自己的分支覆盖率,还能找出各种自己在编写代码是没注意到的可能。自己意外设计的错误数据也能够让自己对于自己代码的运行过程有更加深刻的了解。
junit是一个非常方便的对自己函数进行检查的手段,通过对junit的不断使用,我对于代码的架构更加清晰,虽然在写的时候会觉得相当麻烦,对数据的设计也感觉无从下手,但是写完之后的效果也是很明显的。
三、学习oopre的心得体会
学习OOpre,首先是对用java进行了编程。与C语言相比,java是一种相当方便的编程语言,数组的建立、数组的查找和删除等功能都非常的简便,结构体的使用也是简化了很多,对继承、封装、多态有了一定的了解。对于面向对象编程和面向过程的不同有了一定的认知。
四、对oopre课程的简单建议
希望可以增加更多对junit的介绍和范例。