首页 > 编程语言 >【个人项目互评】————中小学生题目生成程序

【个人项目互评】————中小学生题目生成程序

时间:2023-09-20 15:49:12浏览次数:41  
标签:语句 中小学生 题目 函数 用户 互评 输入 进行

在完成个人项目的建设后,我和搭档互相交换了代码进行分析。在阅读过程中,看到了她代码的优势,也同时看到了自己代码的不足。再次写下这一次的项目分析;

一、题目要求

 

 

 

二、测试与分析

功能完成情况:

 在输入正确的账户名以及密码后,能够获得当前用户年级信息以及后续操作步骤,引导功能完善;

 在输入“-1”进行退出当前用户后,可以重新进行登录操作,并且对输入错误的信息操作能够有所提示,但美中不足的一点是在退出登录后并没有过多的提示语句,也没有下一步的引导信息;

并且发现了一个bug:

搭档在读取账号密码时采取使用两个String来储存,但是没有对登陆时仅输入一个字符串的情况进行处理,导致最开始的一个错误信息占据一个string,后续在输入的正确信息也只能读取到账号,导致后续再进行输入时会造成读取的信息错误,无法登录的情况;

 

 接下来输入想要生成的题目数量,在输入超过范围的数量时,也会有所提示;

 

生成的题目符合当前难度水准,且对于不符合符号要求或数量要求的题目会进行剔除

 进行切换难度操作也会有反馈,输入错误时会提示;

搭档使用了try{}catch{}语句结构能够在出现问题时将问题抛出;之后生成的各种难度题目也同样符合要求;

 

 代码分析:

创建了四个类,分别进行完成不同的操作;

 1.User类完成用户的函数,以及定义了user的账号,密码以及年纪情况;

makeFile()函数:

makefile函数完成了用户文件夹的创建,用来后续保存出的题目,函数思路为根据path路径找到文件夹,如果没有则创建,.txt文件命名为通过SimpleDateFormat类函数获得的时间进行命名;如果出现异常,则通过catch{}语句进行抛出;

makepape函数:

 makepapaer函数通过获得当前用户的年级情况,调用不同的出题函数。完成出题的目的;

2.Operations类则主要用于接受输入的信息进行处理以及存储了用户信息;

设计了log登陆函数,通过调用getPassword()函数获取返回相应的用户信息,如果错误给出提示;

 

prepare()函数则实现了对输入的信息进行处理,接受输入的题目数量,接受切换难度类型语句,并对于错误输入进行提示;

3.PaperMaker类主要实现了出题功能以及题目的写入和检查功能;

题目写入函数witrIn()调用了FileWriter类函数 ;

检查函数check()定义boolean变量进行指示,对读取文件的每一条进行检查,如果有重复则改变变量值,输出“重复”;

出题函数通过获得参数User user,Int number来进行题目的编排;

4.Main类

主函数,通过两个String类变量存储输入的用户信息,此处有bug,前面已经说明,不在赘述;

 

优点分析:

1.结构清晰:代码按照功能设计了4个类,每个类分别完成一个功能,每个类有函数处理这一个功能的不同问题,易读易懂;

2.异常处理:

善用try{}catch{}语句,在一些容易出现问题的地方选用这种结构,使系统能够做出相应的处理;

3.交互性较好:

有多处提示语句,能够引导用户完成,对于错误输入也能够有抽屉式,引导性强;

 

缺点分析:

1.缺少必要的javaDoc和注释:

 代码中,应当每一个类和方法都配置对应的Javadoc,增强可读性,使人一目了然。

在函数中,缺少一些必要的注释,对于方法实现的流程理解会有所不便。

 

2.出现*符号,违反规则:

 

3.在用户登录过程中,出现bug

 

标签:语句,中小学生,题目,函数,用户,互评,输入,进行
From: https://www.cnblogs.com/Rizuna/p/17717466.html

相关文章

  • 【个人项目互评】结对互评-中小学数学试卷自动生成程序
    目录1.简介2.项目要求3.代码分析4.运行测试5.优缺点分析  1.简介本篇博客是对结对编程队友对于项目《中小学数学卷子自动生成系统》的学习,分析与总结,选用的编程语言为Java.  2.项目要求1、命令行输入用户名和密码,两者之间用空格隔开(程序预设小学、初中和高中......
  • 个人项目分析——中小学生数学卷子自动生成程序
    目录一.简介二.项目要求三.代码分析整体架构核心代码四.功能测试五.优缺点总结 一.简介本篇博客为对廖心怡同学的个人编程项目“中小学数学卷子自动生成程序”的分析与总结,在阅读代码的过程中学习到了许多优点,也发现了一些代码书写、代码结构等方......
  • 个人项目-小初高算数题目生成(Java互评)
    目录简介测试与分析功能测试代码分析总结一、简介本博客对结对编程队友高义林同学的个人项目进行分析测试,使用语言为Java。需求如下图所示:二、测试与分析1.功能测试1.登录功能测试分析:登录时输入错误账密、错误密码、空的账密均不可成功登录,可......
  • 结对编程队友个人项目互评
    一、项目简介1.项目名称:中小学数学卷子自动生成程序2.项目作者:党郑骅霖3.项目编程语言:Java 二、项目分析1.类图 2.流程图3.代码分析核心方法解析:1.`main`方法:-程序的入口点,包含主要的程序逻辑。-初始化已有用户列表,接收用户输入,允许用户登录,并根据用户的......
  • 软件工程导论个人项目互评
    本博客记录湖南大学2021级软件工程导论个人项目互评与代码分析成员:评价人:软件5班高义林项目作者:软件5班谢宇鑫需求:命令行输入用户名和密码,两者之间用空格隔开(程序预设小学、初中和高中各三个账号,具体见附表),如果用户名和密码都正确,将根据账户类型显示“当前选择为XX出题”,X......
  • 【HNU个人项目互评】--java
    湖南大学软件工程个人项目互评评测者:李姝萱项目作者:张乐盈 一.基本信息:  1.被评队友满足了个人项目要求的所有需求  1.1.登录:只有规定的账户可以登陆,其他的输入不会因为异常抛出强制终止程序 输入不满足格式要求,不会越界异常错误账户不能登陆登陆成功,清晰......
  • 中小学数学卷子自动生成程序——结对编程队友互评
    结对编程队友互评代码:软件2105何志成评价:软件2105陈相彤一、题目介绍用户:小学、初中和高中数学老师。功能:1、命令行输入用户名和密码,两者之间用空格隔开(程序预设小学、初中和高中各三个账号,具体见附表),如果用户名和密码都正确,将根据账户类型显示“当前选择为XX出题”,XX为......
  • HNU个人项目互评博客
    HNU个人项目——中小学数学卷子自动生成程序一.前言本次个人项目中我的搭档袁秀广同学使用了Java进行开发。袁秀广同学的代码实现了自动生成题目的基本功能,注解详细,内容丰富,但在一些细节上也存在一些可优化的地方。二.需求分析1、命令行输入用户名和密码,两者之间用空格隔开(程......
  • 【结对编程互评-C++】中小学数学卷子自动生成程序
    【结对编程互评-C++】中小学数学卷子自动生成程序项目名称:中小学数学卷子自动生成程序编程语言:C++代码作者:李义评价人:张恒硕目录[1.项目要求][1.1目标用户][1.2实现功能][2.代码分析][3.功能测试][3.1登录功能测试][3.2出题功能测试][4.优缺点分析与总结]......
  • 个人项目互评
    结队编程,分析结队队友的代码能够让小组队员之间更加了解彼此的风格。指出队友的优缺点,既能两个人互相提醒改进,也可以在往后的结队编程项目达到更好的效果。后续我将分析队友方缘的C++代码的功能及性能。基本功能实现基本要求:用户:小学、初中和高中数学老师。功能:1、命令行输......