结对编程作业:13061212 赖彦谕 13061203 徐丞
[附加题]第四阶段目标 - 界面模块,测试模块和核心模块的松耦合。
在这个阶段的界面交换测试中,我们合作的队伍是赵庶宏和付帅组合的那个队伍,其实能够在现在找到还在用C++写软工的人已经不多了!所以我们还是比较幸运的其实,所以我们的界面都是通过MFC写的界面。
首先遇到的第一个问题就是我们设计的模块与对方的模块不相同,也进而发现我们使用的接口设计也是不相同的,所以也会使得我们界面的模块连接不顺畅。在解决这个问题的过程中,我们商讨了很多方案,就例如我们修改我们的API设计好的接口,但是以这个为例我们发现我们如果这么做真的会徒增很多很多的工作量,也会修改我们很多的参数,方法非常复杂,而且也达不到我们交换界面测试的目的了,最后我们决定我们在我们基础的API上增加新的API借口,让我们可以顺利的接受外界传入的参数并且一起整合修改,最后相当于我们在API的借口上又新建了一层借口,最后使得我们的模块可以与他们的界面进行连接。
[附加题]第五阶段目标 - 通过增量修改的方式,改进程序,完成对各种错误情况的处理。
关于错误处理,采取抛出异常外部捕捉的方式,由于C++的throw方法可以抛出字符串,常量,表达式对象,所以在处理异常方面,我们并没有单独设计异常类,而是采取直接抛出字符串的形式
Operand类,抛出:
操作数格式错误异常;
分母为0异常;
操作数范围越界异常;
无法生成要求数量的表达式异常;
除数为0异常;
Formular类,抛出:
表达式格式错误异常;
除数为0异常;
StuCalculator类,抛出:
参数不合法异常;
文件路径不存在异常;