结对编程总结

总体结构

       整个项目我们是分了两个大部分,一个客户端,一个服务器。

       客户端则分为四个部分,对应四个界面,实现登录 选择 生成题目 计算成绩等功能

       服务器则负责接收客户端传过来的信息即账号密码

客户端具体结构

       客户端包含文件如下

      

       每个.ui .h .cpp为一组,对应每一个界面,.ui是界面方面的设计,.h则是对函数变量的声明,,cpp是对函数的实现

       根据项目需求client界面是登录(注册)界面,在完成登录和注册之后client窗口会关闭,生成一个新的select窗口,实现选择难度和题目数量(这个我们设定成1-1000,输入也只能输入数字),在完成输入之后,点击确定会关闭这个窗口并生成一个新的exam窗口,实现显示题目,统计答案的功能,在点击交卷按钮之后,程序会进入第四个窗口,显示分数,询问继续或是退出,如果是继续,则回到第二个窗口,如果是退出,则直接关闭此窗口

       以下是四个窗口的设计:

 

服务器的结构

       服务器并没有设计太多功能,只是利用socket加QT设计了一个按钮实现启动服务器(这里有一点,如果在服务器启动之前打开客户端,是无法连接上服务器的,必须要在服务器先打开之后再打开客户端)数据的保存是存在当前文件下的一个txt文件中的(本来是想做数据库,但是想了想,做了数据库就根本打不了包了…所以选择以txt的格式来存储)

 结对编程对个人项目的利用

  整个结对编程项目中,我们对个人项目的利用只有生成题目的那一部分,本来还可以对用户类加以利用,但是考虑到不分账户类型以及储存的问题,便没有在加入进去

结对编程的感想

  其实吧,国庆节我们两个都挺忙的,主要是线上交流,目前就我自己以及室友的体会,一个人写代码的效率要比两个人的要高,首先是心理上嘛,大家都能偷懒就偷懒一起的时候就是推来推去,然后分开的话,别人写的代码,超过200行的基本是不太想看的(即便有注释),还有一个问题就是对需求的分析能力没有那么高,在对接之前给了这样的接口,可能到后面发现还需要其他的东西,导致中间修改有点麻烦,然后大家思考问题的角度不太一样然后交流也做的不够好,我这边符号用int型0 1 2 3代表,而他那边直接存char型+ - x /,也属于对接上的问题吧,总得来说吧,感觉这个结对编程是很有意义的,可以说是对后面团队编程的一个铺垫吧,现在遇到的问题可能到后面就会注意一点,然后自己也确实自学了不少东西(QT做ui啊 socket链接啊,这玩意应该是下学期的课吧)。总得来说就是对需求的分析还要更全面一点,多多交流,分工合作,这样才能事半功倍,要不然就是事倍功半。

猜你喜欢

转载自www.cnblogs.com/raidenmei/p/9756382.html