结对编程项目感想

受益匪浅啊受益匪浅,出去阿里云短信的JAR,总共约1600行,目前为止没有完成这么长的项目过。首先我上学期并没有学JAVA课,暑假到开学自学的JAVA,经过这次结对编程,可以说对JAVA编程了解的七七八八了。第一个登录UI编写时对JAVA的编程习惯不太适应,在类中建新类,方法又在新类外,带来了一系列麻烦,在后来又重构了第一个UI,给我心态也带来了一些影响,还好最终是完成了,比较顺利也很快乐。

首先说一下UI。UI的学习是有很强的反馈的,编写完一个UI就能立刻获得一个图形界面的反馈,给人的成就感是很大的,因此UI编写是让我感觉很快乐的部分。尽管我是在类中新建JFrame而不是extend JFrame,但是我认为这样将类与窗口分开更便于编写和维护。困扰我时间最长的问题是在按下按钮时获得文本框返回值的问题,这个问题在一个类使用一个Frame的情况下就很顺利的解决了。另一个问题就是出题界面,点击下一题后就要出现下一题的内容,如果创建新窗口就太麻烦了,因此我把RadioButton和label分开,使用setText改变已有label的值,并且把所有题目提前生成并以数组储存,设置当前量来确定目前是第几题,以此完成了下一题刷新页面的效果。另外一提,在写感想的同时修了一个下一题按钮与完成按钮只能单向变化的BUG...

然后是复用之前的代码,由于结对对象使用了C++编写题目生成,因此就使用了我的JAVA代码。首先我的JAVA代码是分段输出题目的,因此将每一段保存就可以得到一道题的字符串,使用javax.script.ScriptEngine的eval就可以得到string算式的值,而eval不支持平方、开根号、三角函数等,我就用另一个字符串,分段将平方、开根号、三角函数计算完后。加入到字符串中,以此字符串进行计算,就可以得到正确答案。同时分段算式也保存下来,随机将每段的结果无效或者反向操作,就可以随机生成三个错误答案了。同时文本读取也可以直接使用。可以说我的JAVA代码很适合这次的需求。

其他零碎的东西有很多,查重是利用字符串哈希;用户名和密码的检查都是利用getText和getPassword,设置了很多条件;题目的选项清空一开始使用setSelected(false),然而还是有小黑点,因此使用了group.clearSelection();短信验证码使用阿里云的jar和类,只需要更改KEY、签名等等即可……等等很多东西不再赘述,一个项目的开发不只是功能的实现,还有构思、增加需求和DEBUG。

最后附上效果图和需求分析图。

原文地址:https://www.cnblogs.com/WinnoLY108/p/9750788.html

时间: 2024-10-04 16:00:48

结对编程项目感想的相关文章

结对编程项目——收获及感想

结对编程项目-带UI的小初高数学学习软件 一.项目需求 用户: 小学.初中和高中学生. 功能: 1.用户注册功能.用户提供手机号码,点击注册将收到一个注册码,用户可使用该注册码完成注册: 2.用户完成注册后,界面提示设置密码,用户输入两次密码匹配后设置密码成功.密码6-10位,必须含大小写字母和数字: 3.密码设置成功后,跳转到选择界面,界面显示小学.初中和高中三个选项,用户点击其中之一后,提示用户输入需要生成的题目数量: 4.用户输入题目数量后,生成一张试卷(同一张卷子不能有相同题目),界面显

结对编程项目:带UI的小初高数学学习软件总结

需要实现的功能: 1.用户注册功能.用户提供手机号码,点击注册将收到一个注册码,用户可使用该注册码完成注册: 2.用户完成注册后,界面提示设置密码,用户输入两次密码匹配后设置密码成功.密码6-10位,必须含大小写字母和数字.用户在登录状态下可修改密码,输入正确的原密码,再输入两次相同的新密码后修改密码成功: 3.密码设置成功后,跳转到选择界面,界面显示小学.初中和高中三个选项,用户点击其中之一后,提示用户输入需要生成的题目数量: 4.用户输入题目数量后,生成一张试卷(同一张卷子不能有相同题目,题

结对编程项目-开发环境搭建过程

开发成员:2015035107169 焦广鑫 2015035107161 杜念泽 结对编程项目:四则元算器 这次我们开发的项目是四则运算器,用到的开发语言为python2.7,具体环境搭建链接为http://jingyan.baidu.com/article/eb9f7b6da950c4869364e8f5.html

结对编程项目——四则运算

1. 结对编程项目---四则运算 (10分) 基本功能要求: 1) 实现一个带有用户界面的四则运算.2) 生成的题目不能重复.3) 支持负数,例如-1,-1/2,-3‘4/5等.(达成) 需要支持的基本设定参数 1) 题目的数量  2) 数值的范围  3) 题目中最多几个运算符(目前没有达成)  4) 题目中或运算过程中有无有分数(比如进行整数除法的时候不能除尽) 5) 题目中是否有乘除法  6) 题目中是否有括号 (目前没有达成) 7) 题目中或运算过程中有无负数         学习感受:

结对编程项目作业

结对编程项目作业内容:成员0:    学号:2015035107153    姓名:吕爽成员1:    学号:2015035107155    姓名:陶丽爽结对编程项目作业名称:四则运算出题器.选择该结对编程项目原因:零基础开始,希望我和队友可以一起努力共同完成.

结对编程项目(除附加题)开发过程

结对编程项目(除附加题)开发过程 结对同伴:李云涛 一.照片 结对同伴在家,等回校后补上. 二.结对编程评价 优点: 1.两个人的编程思想.算法.代码风格可以互相借鉴和学习,对于两人的编程水平的提高都很有帮助. 2.两个人可以分工写不同的相对独立的模块,加快开发的进度. 3.自己程序的bug可能自己怎么找都找不到,而自己的同伴就能很快找到. 缺点: 有些工作必须得两人在一起才能进行,而两人都空闲的时间不是太多,很多时候需要通过线上进行交流,导致工作被耽搁. 我自己的优点:做事认真.有恒心.有学习

结对编程项目

内容: 成员0: 学号:2015035107149 姓名:黄妍 成员1: 学号:2015035107154 姓名:马璐 结对编程项目作业名称:井字棋游戏 选择该结对编程项目原因:巩固自己的知识,让自己能更加熟练的编程.

结对编程项目作业0

标题: 结对编程项目作业 内容: 成员0: 学号:2015035107003 姓名:鞠牧孜 成员1: 学号:2015035107010 姓名:郑月 结对编程项目作业名称:五子棋游戏 选择该结对编程项目原因:因为五子棋游戏是一种受大众喜欢的一款游戏,其规则简单,变化多端,只需要另个人即可进行,非常富有趣味性和消遣性.

结对编程项目——电梯调度

电梯调度 现有一新建办公大厦,共有21层,共有四部电梯,所有电梯基本参数如下表所示: 电梯编号 可服务楼层 最大乘客数量 最大载重量 1 全部楼层 10 800 kg 2 单层 10 800 kg 3 双层 20 1600 kg 4 全部楼层 20 2000 kg 其使用规定如下: 1.楼层号为0~20,其中0号为地下一层: 2.有楼层限制的电梯不在响应楼层停靠,如单双层: 3.所有电梯采用统一按钮控制 请根据上述要求设计并实现一个电梯控制程序,如果有图形显示就更好了. 伙伴介绍与评价: 本次结