结对编程——队友个人项目分析
本博客是对樊琚岗同学的个人项目代码的运行感受和分析评价。评价内容仅代表个人意见。
使用:
1.开启服务器端和客户端
先开启server.py,显示“服务器启动,等待客户端连接”,即可开启client.py。
每开启一个client.py连接上之后就会在服务器端有显示。
2.登录
在客户端输入正确的用户名和密码即可登录并显示“当前选择为xx出题 ”,凡是不满足格式或账号密码不对的都会提示“请输入正确的用户名、密码 ”。
3.运行
输入n(10<=n<=30)即可生成n道带题号的题目的试卷,并存储在该账号同名文件夹下
输入“-1”,则退出当前账号。
输入”切换为xx“,则转换为相应的账户类型
除上述情况外,任何输入都只会得到 “请输入正确的内容:(-1————退出; 切换为xx————切换类型; 10-30的数————生成的卷子的题目数) ”
4.退出客户端
直接终止客户端的运行,此时服务器端会显示”客户端 () 已断开!“。


优点:
1.代码符合google的python规范,缩进统一,排版舒适。每个模块、函数、类都有字符串文档注释,难以理解的地方也有行注释,并带有函数使用样例。
2.运用socket和多线程的知识,服务器、客户端分离,服务器端负责处理计算,客户端负责和用户交互,这样客户端可以有更好的扩展性。服务器端可以同时处理响应9个客户端的请求,也就是说可以有9个用户同时使用。

3.考虑了绝大部分服务器端和客户端之间接收和发送的情况,经过大量测试暂时未遇到有输入导致程序崩溃的现象,并且添加了一些提示使得交互性更好,如客户端连接和断开后都在服务器端显示,客户端输入错误的内容会得到提示告知正确的输入格式。

缺点:
1.缺少对线程的异常处理
2.生成题目的代码冗长,使用的是字符串变量存储各个操作数和运算符最后将其拼接成一个问题,如果换用列表存储,这样插入删除运算符都会方便的多。

浙公网安备 33010602011771号