Math Problem Generator

育儿软件第一弹!

0x00开发环境

操作系统:Windows10
开发语言:JAVA
开发环境:Eclipse
运行环境:多平台,仅测试Windows10 JDK SE8

0x01需求分析

-软件工程结对第二次作业,题目要求如下:
    -能够自动生成四则运算练习题
    -可以定制题目数量
    -用户可以选择运算符
    -用户设置最大数(如十以内、百以内等)
    -用户选择是否有括号
    -用户选择输出方式(如输出到文件等)
    -最好能提供图形用户界面(根据自己能力选做,以完成上述功能为主)

我们认为在数学题中出现divide 0和 mod 0的情况合法,可以充分考察学生的基础。

Not a BUG but a FEATURE.

0x02 具体设计

已实现:
    -支持取余运算,负数,小数精度
    -支持控制数学表达式中的数值个数
    -支持输出到文件或窗口
    -支持随意设置数值范围
    -支持输出divide 0和 mod 0的定义考查题
    -支持防呆输入控制,避免非法输入和过大输入

未实现:
    -保存历史生成,避免原题出现

0x03 代码

Code

0x04 预览

软件界面

输出到窗口(打印)

输出到文件

0x05 感想

驾驶员:李卓儒,领航员:王宁

我们先写功能和UI部分,由我上场。刚开始两个人之间不免有些紧张和羞涩,但随着代码行数的增加,问题的不断出现,两个人的讨论渐渐多了起来,配合也渐渐默契起来。就这样,氛围变得轻松愉快。我们在这样氛围中,相互鼓励,克服困难。而且效率也自然十分喜人,特别是两个人一起找bug的时候,比一个人的时候快多了。
图形界面的编写对于我们两个人来说都是新鲜玩意。我有一点点慌,还好领航员王宁在身旁不断地帮我查找资料,解释方法。图形界面的编写才以破笋之势搞定。同时两个人也学到了很多有趣的新东西。

接下来换领航员王宁写单元测试了,我们也相应地对调了我们的位置。就像打乒乓球一样,是时候给与对手绝杀了。因为之前的“热身”,我们这次的效率比上次又高了不少,思路也更加清晰明朗,仿佛就贴在视网膜上。领航员王宁同学真是巾帼不让须眉,她的手速快如闪电,我都为之震撼。虽然她中途有几次思路断点,但都成功地被我成功地提醒了。

后来王宁成功地找到了一些bug,比如没有处理好负数,浮点数随机的值越界。虽然这都是一些小bug,但却很致命。我十分感谢王宁的付出,使得我们的育儿软件第一弹以一个近乎完美的姿态诞生于世,造福万千小学生。最后,我们还一起找了一个很棒的UI,让我们的界面看上去很靓丽。

猜你喜欢

转载自www.cnblogs.com/donzoru/p/8835358.html