//每一个人都弄了一个我的项目,而后结队,编程实现更多功能。编程
//在此以前,看了队友的代码,并发表一些我的见解。并发
优势:模块化
1.容错性较好,在询问是否“切换为XX”时,除了用户输入正确格式就转换为对应格式外,任何输入都默认不切换。那么用户输入“不切换”,“不”,“就这个难度”等答案时就能够获得所需答案。函数
2.产生卷子的路径不存在时,能够生产不存在的文件夹,使代码移植性高,而不须要下载整个程序(带有提早生成好的文件夹)或者下载代码后本身再生成文件夹。学习
3.书写习惯良好,命名,尤为是代码注释作的很是好,这是值得学习的。spa
(敲代码不是一我的的事,一个团体实现一个项目,你的代码必定得规范,并且必要的注释是颇有必要的,也方便往后本身看)设计
4.排错程序(异常处理)较多,好比检测 I/O 是否读入正常等,能够排除不少莫名其妙的错误。blog
5.代码逻辑清晰,模块化设计良好,一个函数实现一个功能,加强代码逻辑性,可读性。数学
不足:it
1.读入姓名学号时,输入格式太过固定,只有“姓名空格密码”才可能判为正确(且输出信息未对输入格式作出阐述)。可对易出现状况,如“姓名回车密码”等输入格式进行判断,提高用户体验感。
2.切换难度(“切换为XX”)后无任何提示性消息,虽然也输出了当前难度,但不论成功与否,输出都是“准备生成XX数学题目,请输入生成题目数量”,不够直观,容易被忽略,就可能致使误操做。
可考虑输出一个切换为XX成功。
3.程序设计,当输入生成试卷题目数量错误时(10~30正常),从新输入数量便可,却实现为从询问是否切换难度开始,我的认为提升了用户打扰度。
4.功能模块的逻辑衔接上有一些不妥之处。如,生成完试卷后因可选择退出(彻底退出也行,退回上一级也行),但只能实现是否切换难度,而后再在题目中输入-1退回到从新登陆界面。
还有,在从新登陆界面,将会死循环的让你登陆,我以为能够加一个以供退出程序的选项。
小小的总结一下
本身写代码收获更大的是对代码的熟练度,以及少部分不会功能,代码的学习;分析别人的代码,你能见识到别人编程的优势,比较本身和他人的代码,分析出本身目前作的好的,以及须要学习的地方。
我如今这么努力奋斗,就是为了之后我爱的可以幸福。