结对编程——基于JAVA开发的中小学生数学试卷自动生成程序

这两个星期,我和马同学一起参与了基于个人项目的中小学生数学试卷的自动生成程序结对编程项目。结对编程的实现是基于个人编程的,不过由于我是用c++而同伴是用的PYTHON商量之后我们决定用JAVA从头开始写。原本打算使用mvc框架来完成这个项目,但是由于对其使用不够熟悉,最后还是没怎么能用上。

这次项目我负责的是前端部分,前端部分做起来还是挺麻烦的,我们使用的是java来完成这个项目,对于UI界面我们使用了jframe来编写,在项目过程中遇到几个很莫名奇妙的bug,原本是用阿里云短信服务返回的验证码作为验证,但是突然过了几天其返回的验证码无法通过验证,只能直接提取本地生成的随机六位数。还有输入框部分,原本想输入后清除原有提示语列如“请输入密码”,但是不太成功,而且会把已输入的清空,最后没想到怎么解决,只好把这个功能删了。

在密码修改模块,原本打算使用数据库来存储学生信息,但是之前写好了用文件存储账户名和密码,就不懒得改成数据库了。这也导致了修改密码时的一些逻辑不够严谨,导致了某些小bug。应该传入账户名然后进行检测,再对其原密码进行替换,但是结果把其他人的相同密码也替换了。

在题目生成模块,我们使用了java的ScriptEngine来计算算式,但是这样就不得不把原来的算式生成部分进行改动,将其替换为ScriptEngine可直接计算的算式。这使我们计算三角函数的特殊值出现了问题,所以最后只好把特殊的三角函数值去除了。

总地说来,这次结对编程项目还有很多不足吧。主要是时间不够,每天花在这上面的时间太少了,如果多花点时间可以做的更完美。

原文地址:https://www.cnblogs.com/wujiefei/p/11605808.html

时间: 2024-10-06 15:42:57

结对编程——基于JAVA开发的中小学生数学试卷自动生成程序的相关文章

结对编程-基于JAVA的GUI程序

在结队编程的开发中,为了更方便和队友的合作编程,我放弃了Golang选择使用Java进行项目的编写.另外使用Java还有两个好处就是Java自带GUI的包,另外在短信发送的程序编写上也很成熟. 这次的结对编程需求如下: 1.用户注册功能.用户提供手机号码,点击注册将收到一个注册码,用户可使用该注册码创建账户完成注册: 2.用户登录功能.将用户信息存储在txt文件中: 3.修改密码功能.输入两次密码后即可修改密码: 4.选择难度功能.用户点击选择题目难度和数量: 5.答题功能.用户输入题目数量后,

中小学数学试卷自动生成程序-对张凯翔同学代码的评价

张凯翔的优点: 面向对象编程,结构清晰,修改难度小 生成了UI界面,清晰美观 相比张惟盛的代码生成的题目更加科学,比如会在平方和开方的部分增加括号,以确保意义明确 相较于C语言,采用了更加方便的Java,调用函数以及捕获异常,确保了程度的稳定性 张凯旋的缺点: 代码习惯有点问题,杂乱且缺少注释 虽然采用了全随机生成运算符的方式,但在某些算式中也会出现无意义的括号,比如在正常的加减乘除中,第一个为乘法,已经是优先的但是还是会添加无意义的括号,有瑕疵 缺少了对同一老师的不同试卷进行题目查重的步骤,虽

个人项目:中小学数学卷子自动生成程序-队友代码测评

结对编程-队友代码分析 上一周,我们完成了个人项目编程.在经过对队友代码的分析,我感触颇深,觉得非常有必要来写一篇文章分析一下队友的代码,我是用的java,而队友用的c++,以下开始正文! ------------------------------------------------------------------------------- 项目需求简述: 个人项目:中小学数学卷子自动生成程序 用户: 小学.初中和高中数学老师. 功能: 1.命令行输入用户名和密码,两者之间用空格隔开(程序

中小学数学卷子自动生成程序分析

结对编程对方个人项目分析 个人项目:中小学数学卷子自动生成程序 用户:小学.初中和高中数学老师. 功能: 1.命令行输入用户名和密码,两者之间用空格隔开(程序预设小学.初中和高中各三个账号,具体见附表),如果用户名和密码都正确,将根据账户类型显示“当前选择为XX出题”,XX为小学.初中和高中三个选项中的一个.否则提示“请输入正确的用户名.密码”,重新输入用户名.密码: 2.登录后,系统提示“准备生成XX数学题目,请输入生成题目数量(输入-1将退出当前用户,重新登录):”,XX为小学.初中和高中三

结对编程--基于android平台的黄金点游戏

游戏内容: 阿超的课都是下午两点钟,这时班上不少的同学都昏昏欲睡,为了让大家兴奋起来,阿超让同学玩一个叫“黄金点”的游戏: N个同学(N通常大于10),每人写一个0~100之间的有理数 (不包括0或100),交给裁判,裁判算出所有数字的平均值,然后乘以0.618(所谓黄金分割常数),得到G值.提交的数字最靠近G(取绝对值)的同学得到N分,离G最远的同学得到-2分,其他同学得0分. 玩了几天以后,大家发现了一些很有意思的现象,比如黄金点在逐渐地往下移动. 结对编程的体验 这是第一次接触到结对编程,

结对编程 四则运算Java实现by 姚建东,李晓阳

GitHub地址:https://github.com/YJOED/Code/tree/master/Arithmetic/src 结对人:姚建东,李晓阳. 一.项目简介: 实现一个自动生成小学四则运算题目的命令行程序 二.项目要求: 使用 -n 参数控制生成题目的个数(完成) 使用 -r 参数控制题目中数值(自然数.真分数和真分数分母)的范围.该参数可以设置为1或其他自然数.该参数必须给定,否则程序报错并给出帮助信息.(完成) 生成的题目中计算过程不能产生负数,也就是说算术表达式中如果存在形如

Java语言编程 - 搭建Java开发环境

2.1 JDK.JRE和JVM关系 要弄清楚JDK.JRE和JVM这三者之间的关系,先看如下图,有个感性的认识: JDK:Java Development ToolKit(Java开发工具包).JDK是整个Java的核心,包括了JRE,一堆Java工具(javac/java/jdb等)和Java基础的类库. JRE:Java  Runtime  Enviromental(Java运行时环境).也就是我们说的Java平台,所有的Java程序都要在JRE下才能运行.包括JVM和Java核心类库和支持

中小学生试卷自动生成程序--jialin大佬代码分析

结对编程代码评价 有幸和小jialin结对编程.拿到jialin的代码后. 我先是尝试用idea运行.结果报了如下错误. 无法加载主类,再尝试用eclipse运行. 好的,可以运行,那为什么用idea跑不了呢? 度娘了一下,发现是环境变量设置的问题. 接下来步入正题,开始看代码. 打开工程,发现在只有一个class文件,头大,这样的架构肯定不够好.一个一个函数看下来吧. 第一个函数是 CheckNameAndPassword(),用于检测账号密码是否正确 boolean CheckNameAnd

结对编程(Java实现)

一.Github项目地址:https://github.com/qiannai/CreateArithmetic 二.PSP2.1表格: PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟) ·Planning ·计划 30 40 · Estimate · 估计这个任务需要多少时间 30 20 ·Development ·开发 300 420 · Analysis · 需求分析 60 50 · Design Spec · 生成设计文档