结对编程-中小学数学卷子自动生成程序分析
一.简介:
本博客为对胡同学中小学自动出题个人项目的代码评价,该项目主要为用户登录生成可小学、初中、高中对应要求的题目并以.txt形式保存
二.代码分析:
创建user类储存用户名密码等信息
Framework类中调用各种函数实现登录,出题,提醒等各种功能
createUser()函数生成用户 login()函数进行登陆判定
createExamPaper()函数完成切换学校,退出,生成试卷等功能
其中内含setQuestions(String type, int count)生成对应的.txt文件进行保存
setQuestions(String type, int count)函数中又包含createPrimaryQuestions、createSeniorQuestions、createJuniorQuestions三个函数分别进行小学、初中、高中题目的生成,这三个函数在生成题目过程中又调用checkWeight函数进行查重
三.优点:
- 对高中三角函数题目的生成进行了特殊处理使得情况更加接近真实状态下的三角函数运算,也解决了出现tan90的情况
- 相对路径存储,使项目发送给他人时不需改动路径即可使用
- 代码命名规范,使用大小驼峰命名,很容易看出变量及函数用途
- 函数分类清晰,利于后续功能改动与补充,目录划分细致、接口对接明确
四.缺点:
- 生成试卷和题目时,小学初中高中函数分别生成,造成有较多重复代码,显得有些啰嗦,不利于后续迭代
- Try catch使用较多使得代码量较大
- 利用arrayList<User>存储用户数据,对用户信息维护及新增用户不便
五.功能测试:
登录

切换

生成题目

功能完成完善,细节思考较多,完成度高
浙公网安备 33010602011771号