结对编程项目:带UI的小初高数学学习软件
一、功能
- 用户注册功能。用户提供手机号码,点击注册将收到一个注册码,用户可使用该注册码完成注册;
- 用户完成注册后,界面提示设置密码,用户输入两次密码匹配后设置密码成功。密码6-10位,必须含大小写字母和数字。用户在登录状态下可修改密码,输入正确的原密码,再输入两次相同的新密码后修改密码成功;
- 密码设置成功后,跳转到选择界面,界面显示小学、初中和高中三个选项,用户点击其中之一后,提示用户输入需要生成的题目数量;
- 用户输入题目数量后,生成一张试卷(同一张卷子不能有相同题目,题目全部为选择题),界面显示第一题的题干和四个选项,用户选择四个选项中的一个后提交,界面显示第二题,...,直至最后一题;
- 最后一题提交后,界面显示分数,分数根据答对的百分比计算;
- 用户在分数界面可选择退出或继续做题。
二、组内分工
本人主要负责后端JAVA编程,设计各个接口方便前端队友调用。
三、设计过程
用户登录界面
当点击登录时,检测用户名和密码并到同级目录下的txt文本中检测该用户是否存在且密码一致,登陆成功后跳转到选择难度界面;而点击注册时,跳转到注册界面。
选择难度界面
先选择难度【小学 初中 高中】,当选择下一步时跳转到输入题目数量界面;选择重置密码时会跳转到重置密码界面。
重置密码界面
填入原密码后去txt文件内检测该用户,检测过程将文件内所有用户信息读出并存储,读取到该用户后将其对应密码更改,并把所有用户信息重新写入。点击返回首页则回到选择难度界面。
输入题目数量界面
当选择开始答题则跳转到做题界面,选择返回首页则是选择难度界面。
做题界面
系统根据题目数量出题,题目类型重用了个人项目中的出题方式,不过最后会多上计算公式结果的步骤,这里是通过将整个公式以字符串类型存储,并且根号与开方以及三角函数会先通过Math库自带函数计算出结果,最后利用jse.eval函数得到结果。(这里不建议使用该函数,jdk版本兼容性过低)至于选项则是先使用随机数得到一个选项,然后将公式答案与该选项匹配,最后只要利用另一个临时变量判断是否与随机出的选项相同即可判断做题是否正确。做完最后一题后自动跳到显示分数界面。
显示分数界面
系统会统计正确的题目数量除以总的题目数量得到最后的结果。若选择继续做题则回到选择难度界面,若选择退出则是结束运行。
短信注册模块主要由队友负责,这里就不过多赘述了。
四、总结
对于个人项目的复用主要是在登录、注册和出题模块,只需要将之前的这几个模块做成接口,进行调用即可。结对编程的过程还是较为简单和有趣的,特别是分工明确的情况下。但是让我觉得麻烦的是对接的过程,由于使用的jdk版本不一样,过程出现了很多例如背景图片无法显示,生成jar包打不开等问题。所以我觉得做结队项目的话一定要沟通好,让同伴留下什么接口调用自己要设计的函数,以及使用的环境要兼容。






浙公网安备 33010602011771号