中小学数学卷子自动生成程序:队友代码分析

本次的个人项目是——中小学数学卷子自动生成程序,同学的程序基本实现了个人项目的几点要求,我觉得还是不错的:D

 

优点一:代码编程风格统一,增加开发过程代码的可读性和易维护性。

优点二:函数及变量命名规范准确,具有自我描述性,可以让人一眼看出是什么功能。

 

优点三:多个不同功能函数分离,虽然没有分包管理,但是日后要实现的话也便于分离。

优点四:和之前的卷子查重部分写得挺好,分离了查重所需要的三个步骤,提高代码的内聚程度,减少耦合程度。

 

 

 

 

 

 

问题一:java的思想是面向对象,但是同学的代码中体现的思路更偏向面向过程,也没有任何类方法的运用,违背了java的核心思想。感觉可以从最简单的拆分用户类入手,可以更好的储存用户信息,后期也可以用ArrayList管理。

问题二:代码没有分包管理,全部写在一个主类里面,没有系统模块化,不利于后续的调试、维护和迭代开发。我的代码一开始也是一个函数里混杂了很多不同且可拆分的功能,调试起来非常不便,后来拆分后发现一些函数可以重复调用减少代码复杂度。

当然这里还有一个问题:一定要记住自己函数的返回类型啊啊啊啊啊啊!!!我的AddBrackers函数返回类型设置的是String但是一直把它当void用,还想了半天为啥这函数没用。。。

问题三:代码段中,缺少一些检测,例如一套卷子内题目重复性的检测(当然概率很小)。出题目的部分缺少了加括号的步骤,使得问题趋于简单化,缺少多样性。

问题四:代码段中,运用太多全局变量,如果函数中用到的类成员变量或者其他全局变量可以用传入参数的方式代替,则用参数代替,这样可以减少该函数和外界的关系,提高内聚。

 

总而言之,本次个人项目让我学到了很多(深刻认识到了自己的菜),看同学的代码,和同学交流思路更让我受益匪浅(果然一个人死磕经常会陷入思维误区),希望在接下来的项目里可以更上一层楼。

转载于:https://www.cnblogs.com/llzzz/p/11553258.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值