• 结对编程之队友代码赏析


    前言:

    本以为结对编程就只是让两个小伙伴合作完成一个小工程项目就OK啦,没想到在开始之前还有这么一手操作——赏析队友的代码!因为在我看来,现阶段大家写的代码的规范性都是稍微欠缺一些的(PS:队友用的是java,我用的是C++),读别人的代码无疑是对心态的一种挑战,不过从中,收获颇多~

     

    队友代码总括:

    用的是java语言来写,整个工程的完整性以及条理性都很好,思路也是特别地清晰,可拓展性强,能满足用户的需求,很好地利用了java语言的优点。

    1. TestPaperProgram类

    这个类完成了用户的登录、状态的切换、以及题库生成等用户需求。

    优点:

    使用MAP来完成账号和密码的配对,值得学习;

    ②JudgeInput可以完成登陆后在输入的时状态切换;

    ③代码条理清晰,每个方法分开实现,便于维护;

    缺点:

    ①变量没有注释,部分重要代码注释有点儿少,不便于小编读代码;

    可将PrintInfor方法写进main函数中;

    1. PrimaryMathTeacher类

    这个类完成了小学题库的生成,难点在括号的处理。

    优点:

    ①生成后缀表达式,然后利用栈转换成中缀表达式来完成对括号的处理;

    ②通过运算优先级的判断,完成对无意义括号的删除;

    ③巧妙地生成了用户文件夹和调用了系统时间;

    ④查重函数将每次生成的题目保存下来,再将其保存之前依次比较确定是否为重复题目;

    缺点:

    ①随机函数可写成一个方法多次调用,就不必多次写随机函数;

    ②在后缀表达式中,少了一些情况没有考虑到;

    1. JuniorMathTeacher类

    这个类完成了初中题库的生成,难点在括号的处理及根号和平方的处理。

    优点:

    ①随机生成根号和平方,避免了题目中过多的根号和平方的出现;

    ②巧妙地考虑根号和平方能出现的位置来完成题目的生成;

    缺点:

    ①随机函数可写成一个方法多次调用,就不必多次写随机函数;

    ②代码有些冗余,建议再精简些;

    1. SeniorMathTeacher类

    这个类完成了高中题库的生成,难点在括号,三角函数及度数的处理。

    优点:

    ①抛出异常,打印轨迹,方便查错;

    巧妙地考虑不合理题目的生成,例如:sin(60+sin60°);

    缺点:

    ①题库中缺少三角函数及根号、平方的套用的题目;

    ②覆盖面不全,应考虑平衡每一题的难度;

  • 相关阅读:
    在WM中画个带有边框的Panel
    在PPC上安装SQL Mobile库
    利用SQL语句清理日志
    Asp.net Ajax 中的脚本错误: Sys未定义的解决方法
    python搭建简易服务器
    STL源码剖析读书笔记第3章
    mongodb 查找 排序 索引 命令
    STL源码剖析读书笔记第2章
    词排序
    关于淘宝直通车优化的一点感悟
  • 原文地址:https://www.cnblogs.com/peboddy/p/9715757.html
Copyright © 2020-2023  润新知