结对编程总结 -- 赵雄君 & 冯小纯

时间:2021-11-01 13:54:18

结对编程总结

一、        项目综述

通过对比分析两人代码,决定以本人的个人项目代码作为主要参考。

本系统是基于QT Creator 4.5.2开发环境,开发语言C++,能够实现用户注册,发送短信验证码,用户登陆,用户选择题目类型和数量,显示用户本次答题基本功能。支持对用户账号查重,账号密码以及验证码的准确性检测。

二、        项目实现

项目主要分成了5个模块,每个模块都有对应的ui以及cpp代码实现

0x01 系统登陆页面

#### file login.h & login.cpp & login.ui

#### 点击 "登录",成功时跳转至主菜单页面,失败时提示 “账户或密码错误” (此时需要注册新用户,或检查一下是否输入错误)

#### 点击 "注册",跳转至注册界面

0x02 系统注册页面

file regwindow.h & regwindow.cpp regwindow.ui

#### 点击 "获取短信验证码",成功时会弹出提示框"正在发送验证码",等待手机接收得验证码,填入框内

#### 点击 "注册",成功时会弹框提示"注册成功,点击跳转至登陆界面",

#### 点击 "注册",失败时如果弹出"该手机号已被注册",则需要更改手机号注册,如果提示"验证码错误",需要检查验证码输入是否正确

0x03 主菜单页面

#### file mainwindow.h & mainwindow.cpp & mainwindow.ui

#### 点击 "小学"或"初中","高中"  跳转到生成题目的界面,生成对应类型题目

0x04 生成题目页面

#### file createproblems.h & createproblems.cpp & createproblems.ui

#### 点击选项旁边按钮会记录用户选择的答案,首次四个按钮是没有被选,之后的题目,每次进入选项会和上次选的一样,用户需要重新点击要选的答案

#### 点击"下一题" 继续生成题目,当全部题目数量超过输入时,跳转至分数页面

0x05 分数页面

#### file grade.h & grade.cpp & geade.ui

#### 点击 "查看分数" 显示用户所得分数

#### 点击 "退出" 退出本系统

三、        项目经验及教训

由于结对两人的都是C++语言,虽然要带ui,也决定用C++开发。于是选择了从未接触过的QT。经过这次项目,也算是边学边入门了QT,从而得出要快速掌握一个工具,通过边写实例项目,边查找QT文档是比较快的,能够快速满足自己对工具功能的需求。不过一周下来,虽然用QT实现了项目,但是系统化的对QT认识依旧不够。如果需要熟悉,还是需要学习QT的基本功能文档这些。这样才不会过好久后,又需要重新学习QT。其次通过这次项目,真正体会到了类的模块化编程的优点,通过分模块编程,不仅可以让自己开发是思路逻辑清晰,还会减少bug的产生。

在开发过程中,也因为一些开发规范,导致了很多bug,比如类之间得互相包含,导致类型错误,发送post请求不成功等等。耗费了大量的时间

不过总体开发下来,和队友的合作,以及在开发过程中不断的查询资料,学习到了很多东西,包括短信验证码实现,QT的C++语法,以及对面向对象编程的理解深刻了。