结对编程--个人项目代码分析

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

结对编程--个⼈项⽬代码分析1. 简介
本博客⽤于结对编程项⽬中对"夸夸公⼦"的个⼈项⽬代码分析。

2. 程序功能分析
1. 命令⾏输⼊⽤户和密码,实现登录功能
2. 输⼊题⽬数量,根据年级⽣成题⽬,实现了⽣成试卷的功能
3. 出题后⾃动⽣成以时间YY-MM-DD-HH-MM-SS命名的txt⽂件,试卷信息保存在这⾥,实现了存储试卷的功能
4. 能够在命令⾏输⼊切换信息进⾏相应出题年级切换,实现了更改出题难度的功能。

功能展⽰:
登录、出题:
保存试卷:
切换年级:
登录安全机制:
亮点:良好的⽤户交互体验,加⼊了多次密码错误系统关闭的安全机制。

缺点:没有考虑⽤户历史题⽬重复的情况,虽然在该项⽬中这种概率⼏乎不可能,但是要满⾜需求。

3. 代码逻辑分析
整个项⽬⼀共拥有三个类:
1、handle类:⽤于处理操作,类⽅法⽤来实现主要功能如⽤户登录、⽣成题⽬、保存试卷等。

2、login类:类中包含⽤户登录输⼊和⽤户登录查询两个⽅法来实现⽤户登录系统的功能,并实现了多次登陆失败系统关闭的功能,类成员为登陆失败的次数。

⽤户登录输⼊⽅法:
⽤户登录查询⽅法:
3、main类:项⽬程序⼊⼝,包含主⽅法。

亮点:主类main中只有⼀个主⽅法,且只有⼀⾏代码,简洁。

登录和功能处理函数放在不同类中,便于管理查看。

缺点:该项⽬队友采⽤的是⾯向过程的设计⽅法,在做后期项⽬开发的时候拓展性低、函数容易混乱,不利于项⽬的开发。

为了实现⽣成不同年级的题⽬,handle类中包含了⼀个ProducePaper(String text,String password,String type,int nums)函数和三个不同年级的题⽬操作数的⽣成⽅法PrimaryPaperNumber()、MiddlePaperNumber()、HignPaperNumber()。

相⽐我⾃⼰设计了三个代码重复率较⾼的函数来实现三个题⽬的⽣成,队友这个设计⽐较巧妙。

但是在后期试卷系统项⽬开发中,将不同类型题⽬⽣成⽤不同函数来实现是必须的。

4. 代码规范分析
根据Google java 代码规范参考,队友的代码采⽤⼩驼峰法命名,缩进等符合规范。

代码不规范的地⽅:
1、类命名不规范,⾸字母应⼤写
2、程序包含多个空的main⽅法,应该删去
3、 switch格式缩进不符合Google规范
5. 总结##
总体来说,队友采⽤⾯向过程的⽅法进⾏编写代码,逻辑性⾼,队友的代码⼗分简洁,总共两百⾏左右,⾥边的⼀些编程技巧让我收获很多,抛去⼀些个⼈习惯。

虽然很多⼈不太喜欢阅读他⼈的代码,但是我认为在阅读代码的同时也是和队友的⼀个交流过程,和队友结对编程,我们要将彼此的逻辑耦合在⼀起,争取能做出⼀个好的项⽬出来。

相关文档
最新文档