优点:
文件结构:如下图所见:
类的分类准确,并且按照类功能划分到不同的包里,结构严谨。
myloginbegin包:存储启动类Begin、登录窗口类LoginDemo、登录功能类LoginFunction、
以及用户类User。
mytest包:使用@Test注解,一一测试了功能。
testpaper包:包含试卷类。
一目了然,结构清晰。
项目结构方面:
考虑到了后续项目的迭代开发,将试卷抽象出来为一个父类Paper,然后有三个子类HighPaper、JuniorPaper、JuniorPaper、PrimaryPaper继承父类,功能扩展容易实现。
代码功能实现方面:
1、代码功能实现完全。
2、在程序启动后,用户登录前,将账号存入了对应的哈希表中,并以此进行账号验证,一来在用户登录时账号验证更快,提高效率;二来账号文件安全性有了保证。
3、使用随机数生成操作数、操作符、操作数位置、操作符位置等,并对不同的符号特性做了进一步处理,加以特殊性判断,算法较为严谨,随机性强度高。
4、最后使用SimpleDateFormat类标准化时间格式。将对应试卷命名。
项目代码规范方面:
1、类名使用大驼峰命名、方法名、参数等使用小驼峰命名,并且命名清晰,可以第一时间看出对应方法和类的作用,但是注意到有一些参数不规范,希望下次更加细心。
2、包名都为小写。
3、导包规范,按照要求分为了三类,并且按照字典序排列。
4、注释格式规范且较为详细。
需要改进的地方:
1、代码规范还需加强。比如:else if 应该紧跟在大括号后,但是却习惯性换行再写。还有if,while等后面的大括号前应该空一格,二元运算符两侧应该空格等等。加强java谷歌规范提高可读性和美观性。
2、在进行查重时,可以考虑依旧用哈希表,提高效率。
3、试卷生成代码可能是一味追求了随机性,而忽略了代码量,显得方法有些臃肿,可读性不高。希望可以精简一下算法,优化一下代码。
4、在高中题目生成时有bug,没有考虑到特殊操作符的值域问题,导致生成题目不符合数学规范,例如 tan90不存在, 0作为被除数等,希望之后改进。
标签:结对,登录,账号,试卷,编程,规范,互评,功能,代码 来源: https://www.cnblogs.com/cyuming/p/16691290.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。