代码互评--中小学卷子自动生成程序
简介
本篇是对我的队友lq的个人项目的分析
项目需求
· 能根据需求生成对应阶段的试卷
· 登录后可以切换对应阶段
· 同一用户生成的题目与以往生成过的题目不能重复
· 剩下的就是项目的一些小的要求,例如相对路径、界面美观以及输入输出的一些不是什么大问题的需求
项目结构
·
|——com.lei
| |——dao
| | |── InsertDao.java
| | └── LoginDao.java
| |——entity
| | |—— HighschoolTeacher.java
| | |—— JuniorschoolTeacher.java
| | |—— PrimaryschoolTeacher.java
| | └── User.java
| |——jdbc
| | └── JdbcUtils.java
|——lib
| |——mysql-connector-java-8.0.23.jar
|——utils
| └── Constant.java
|——Database.properties
|——main.java
运行结果
登录
切换用户
生成题目以及错误指令
生成的题目
题目所在的相对路径
代码优点
1. 代码规范,符合谷歌编码规范
2. 有良好的注释习惯,每一个类与方法都有详细的注释
3. 结构严谨,分层明确,相同层的代码放在同一个package中
4. 逻辑严谨,考虑了多种输入情况且具有功能保障
5. 资源的使用和释放都非常严谨,能保证在方法结束使用时释放所有资源
6. lq同学将数据库远程布置在了云服务器上,这样可以在修改配置数据之后远程连接数据库了,极大提高了用户体验,在不用重新建立数据库的情况下保障了程序的运行,非常高级
代码缺点
1. 类名有一点长,在声明和使用时会略显厚重
2. 以及还存在一个小bug,我一开始并没有注意到,但是lq同学自己提出来了,类似下面的图片,虽然连续三个回车,但是并不影响账号和密码的读取,但是lq同学的代码不能这样,因为她自己的代码读取时是按行读取,如果回车,那么读取到的就是空行,会影响到账号和密码的输入。但是这只是一个小bug了,会轻微影响用户体验但是影响不大。
总结
本次项目不大,偏向基础编程,通过看lq同学的代码从她身上学到了很多,希望能一起进步!