代码互改
博客班级 | https://edu.cnblogs.com/campus/fzzcxy/2018SE1/ |
---|---|
作业要求 | https://edu.cnblogs.com/campus/fzzcxy/2018SE1/homework/11195 |
作业目标 | 进一步熟练运用git,并且学习别人的代码思路 |
作业源代码 | https://gitee.com/huang-pengwei/personal |
学号 | 211806320 |
issue模板
commit提交截图
“让我看看你的代码”
- 罗通
- 问题:待处理的两份网页文件存在相同的html结构,可以改进解析方式,然后调用两次解析方法解析,减少代码复杂性、冗余。
- issue截图
- 赵泽阳
- 问题:读取网页文件时,将文件写死,无法接收处理命令行的传入的文件名
- issue截图
- 池杰龙
- 问题:文件路径上使用绝对路径,降低了代码的移植性
- issue:
- 邱建杰
- 王晓玲
- 问题:1、没有接收处理外界参数,增加了代码的局限性,灵活性减低。
2、未做封装处理,降低了代码的复用率。
-issue截图:
“容我改一改”
问题一:
修改结果:
private void calcScore(HashMap<String, Integer> all) throws IOException {
Properties pro = new Properties();
pro.load(new FileInputStream(new File("total.properties")));
int befores, bases, tests, programs, adds;
befores = Integer.parseInt(pro.getProperty("before"));
bases = Integer.parseInt(pro.getProperty("base"));
tests = Integer.parseInt(pro.getProperty("test"));
programs = Integer.parseInt(pro.getProperty("program"));
adds = Integer.parseInt(pro.getProperty("add"));
int before = all.get("before");
int base = all.get("base");
int test = all.get("test");
int program = all.get("program");
int add = all.get("add");
double gredit = 0;
gredit += before * 1.0 / befores * 100 * 0.25;
gredit += base * 1.0 / bases * 95 * 0.3;
gredit += test * 1.0 / tests * 100 * 0.2;
gredit += program * 1.0 / programs * 95 * 0.1;
gredit += add * 1.0 / adds * 90 * 0.05;
int t = (int) (gredit * 100);
System.out.println((double) t / 100 + 6);
}
问题二:
修改结果:
----here
问题三:
修改结果:
Score score = new Score();
HashMap<String, Integer> small = score.parseHtml(args[0]);
HashMap<String, Integer> all = score.parseHtml(args[1]);
问题四:
修改结果:
if (args.length < 2) {
System.out.println("程序需要两个html文件参数,请重试");
System.exit(0);
}
catch (IOException e) {
System.out.println("系统找不到指定的文件:" + html + "。");
System.out.println("请检查文件名或文件路径是否正确!");
System.exit(0);
}
“让我再看看”
- 罗童
建议结果:
- 赵泽阳
建议结果:采纳,但最后注释,未使用 - 王晓玲
建议结果:
心得体会
1、编码时未考虑到各种报错情况,降低了代码健壮性
2、在观看他人代码之后,获得更多的解题思路
3、一直留意是否有助教提issue,结果,,,,,