中小学数学卷子自动生成程序——结对编程项目分析

该博文主要针对结对编程同学前不久完成的个人项目进行优缺点分析。

个人项目应实现:用户的登录、在登陆情况下用户的状态切换、用户的退出、针对出题状态(小学、初中、高中)进行题目的生成、并将生成的题目导出至本地文件夹内的txt文件中。

以下是对于项目代码书写以及项目完成的优缺点分析:

 

一.优点:

  1.遵循了代码规范中的命名规则:类的成员变量用特定表示m_”标记;函数命名简洁易懂,由一个动词一个名词单词组成,遵循驼峰命名法则,单词首字母大写。

    例如: 

 

 

 

  2.程序运行结果较大程度上模拟了真实软件的界面,可读性较高:

 

 

  3.代码写了用户类,用于实现用户名与密码的输入、用户的切换,将用户相关的内容与出卷子的内容分割开来,符合java“面向对象”的思想。将不同的对象对应的功能与变量分别封装,利用登录函数LoginPage()将二者联系起来。代码可读性更高。

 

 

  

 

二.缺点:

  1.“{}”符号的使用不够规范:

 

    按照代码规范,提倡的写法应为:

 

    这样的写法保证了符号{}”的对应性,更便于检查是否出现符号多或漏。同时,这样使用“{}”,使得“{}”内的代码内容更突出,在他人理解代码或本人检查代码时更加方便。

 

  2.注释过于多、过于乱,用于测试的代码段在完成测试后,并没有被删除,反而被注释并留在原来位置,影响代码的阅读:

 

     如图,注释掉的代码显然为运行后错误的代码或是用于测试的输出代码语句,在完成了测试后,应当删除,免得影响阅读。

 

  3.输出文件与实验要求不完全符合。实验要求:

 

    然而在程序运行后的输出文件中,每道题之间并未有空行,仅仅只是每道题不同行:

 

    同时能看到,这是生成的小学试题,但没保证排除只有一个数字的出题情况,如图中的第3516题,这样的题目实际意义很小,应当在生成题目时考虑到这一点并排除。

 

三.总体分析:

程序运行界面美观,通俗易懂,使用者能无障碍的输入命令与需求;代码的可读性较高,结合注释能较快的理解各个函数的功能;较大程度的完成了实验要求,完成了分别针对小学、初中、高中出题并显示在本地指定路径txt文档中以及题目的查重和用户的登录切换;但在出题方面有一些小瑕疵,没有完全满足实验要求,但不影响整体实验的完成度。

posted @ 2019-09-19 17:28  AAmberTT  阅读(166)  评论(0编辑  收藏  举报