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

  在结队编程的开发中,为了更方便和队友的合作编程,我放弃了Golang选择使用Java进行项目的编写。另外使用Java还有两个好处就是Java自带GUI的包,另外在短信发送的程序编写上也很成熟。

  这次的结对编程需求如下:

1、用户注册功能。用户提供手机号码,点击注册将收到一个注册码,用户可使用该注册码创建账户完成注册;

2、用户登录功能。将用户信息存储在txt文件中;

3、修改密码功能。输入两次密码后即可修改密码;

4、选择难度功能。用户点击选择题目难度和数量;

5、答题功能。用户输入题目数量后,生成一张试卷(同一张卷子不能有相同题目,题目全部为选择题),界面显示第一题的题干和四个选项,用户选择四个选项中的一个后提交,界面显示第二题,...,直至最后一题;

6、分数显示功能。最后一题提交后,界面显示分数,分数根据答对的百分比计算;

7、短信发送功能。输入手机号发送短信;

      

扫描二维码关注公众号,回复: 7378737 查看本文章

设计

工程结构

1)GUI界面

GUI界面利用Java的swing与awt进行的开发。

主要的难点在于界面美观与页面跳转的逻辑,按钮的位置以及监听都需要慢慢调试,最后的效果大致如下

背景图片是利用opencv进行处理后添加在界面上的。

2)题目生成

题目的生成是基于我队友之前的代码,在生成正确答案的时候,是进行字符串处理,将带平方,根号,三角函数的项,算出结果后,用结果将算式中的项替换,最后变成一个四则运算的表达式,然后利用js的eval函数直接算出结果(在看博客的时候,我发现有同学使用的是逆波兰表达式,由于时间原因我没有用)。然后其他的选项生成也有不少细节,答案是整数或者浮点数,生成的选项都会不一样。

3)短信注册

短信服务是在阿里云注册的服务,这部分由我队友负责的,我不是太了解,就不介绍了

项目心得  这一次项目经历让我收获不少,这次项目我感受到项目编写最难的就是算法和软件架构,其次,要与队友商定好同一套代码规范,规范是什么不重要,重要的是同一套规范。另外可以编写软件需求文档,商量好需要的接口。最后,与队友同事积极沟通,一起解决遇到的困难,才能又快又好的完成项目。

猜你喜欢

转载自www.cnblogs.com/melonpan/p/11600543.html