标签:难度 系统 试题 代码分析 技术 数学题 面向对象 文件内容 s函数
将用户信息封装成Student类。Java的类型能够把相同属性的对象抽象出来,无论是概念上还是编程上都会帮助我们理解整个系统的架构。
虽然前面说到有将用户信息封装成类,方便管理。但是整个项目仅仅只有两个类,另外一个是主类,我觉得结构可以更加优化一些,因为Java是面向对象语言,类是很重要的一个概念,可以实现功能的解耦。比如这个项目的登陆模块和出题模块都可以设计成类,一方面可以对整个系统的架构有更清晰的认知,另一方面起码可以降低维护难度(修Bug的难度)。我这一方面的能力也很薄弱,有时候不知道功能要细化到什么程度可以收手,导致分了太多类,管理这些类花很多时间 。
用户登录部分做法是重写类内的equals函数,实现了两个对象的比对来实现登录查询。之前我没想过这种方法,我的做法是拿遍历用户名来查找匹配的用户对象,王同学是通过遍历对象来匹配对象。
试卷的查重,王同学采用的是提取当前文件夹下的所有文件内容,然后使用For循环查重。
生成试题的程序部分。这是我做的最不好的地方,所以我要多学习新的想法。
王同学的思路是随机生成括号,记录下左右括号的个数,这样可以保证括号闭回。
......中间略
王同学这样做的好处是可以较便捷准确的生成多个括号,而我只弄了一个括号。(●ˇ∀ˇ●)其实我的方法应该也能快捷生成多个括号(我将数字和符号分离成数组,根据数字的下标和括号跨距,进行插入括号),但是我以为会很容易出现这种情况 (4+5()9)+8 ,仔细想想只要检查一下就可以取除这个问题
为当前用户真正实例化了一个临时的Student对象,用它装载信息。这个想法不错,我的做法只是保持住用户输入的用户名密码,去访问登录和生成试卷。所以看了王同学的代码收获很大??
首先是看懂了,以前看别人代码很吃力(觉得像是在看不同语言),这次非常顺畅,当然主要原因是写的很好。然后一个发现是即使做同一个项目,代码的不同之处也特别多,能够看到对方的优点并加以学习是结对编程的第一个收获,希望在这之后能和项目组大佬们有更多友好交流。
标签:难度 系统 试题 代码分析 技术 数学题 面向对象 文件内容 s函数
原文地址:https://www.cnblogs.com/zhoushihuan/p/11553104.html