20162315 2016-2017-2 《程序设计与数据结构》第4周学习总结
教材学习内容总结
本周学习了条件语句,循环语句和数组两个章节的内容。在条件,循环语句中有高中已经熟悉的if else语句,while循环结构,也有不太熟悉的for语句。数组对于我来说则是一个比较陌生的概念,在阅读教材时感到了一定的吃力,直至此时仍然没有把教材读完。
教材学习中的问题和解决过程
- 问题1:不理解块语句存在的意义是什么。
- 问题1解决方案:做了书上的几个例题之后发现书上所说的装在大括号里的块语句能够把语句命令隔开,比如把else下的内容和if-else结构外的内容分开。
- 问题2:不明白有些题目要求中循环的程序如何的让使用者自己选择继续或终止?
- 问题2解决方案:看书,发现了通过利用字符验证作为while的布尔表达式验证,比如利用equalsIgnore对str“y“进行验证的方法。
- 问题3:例题7.2里最后的index是倒序显示的,index初始赋值是0,index不应该显示负数吗?
- 问题3解决方案:发现之前的一个思维误区,一直以为x++这个指令只是暂时赋值。其实x++与赋值语句是等效的,没有等号而已,运算后的值会作为新值。
-
代码调试中的问题和解决过程
- 问题1:跟我的搭档袁逸灏一起发现的一个问题,例如例题4.1在输入一个age小于if布尔表达式里的设定值的时候下面那行语句会跟着出现,最开始以为这是我们代码出错了。我当时试了一下高中的if then else条件语句套起来,发现java里面并行不通。
- 问题1解决方案:后来读书读到后面的章节,发现其实是因为这个语句没有加else,下面这行语句是必然出现的,无论布尔表达式结果的真假。而我最初的直觉还是十分准确的,不过java里面只有if else,不用输入then。
- 问题2:没有注意到逻辑语句都是两个值之间的比较,PP有一个slotmachine的题目,我直接用num1num2num3连等式作为布尔表达式了,导致编译不通过。
- 问题2解决方案:通过错误显示修改成了两个布尔表达式并起来(num1=num2&&num2=num3)
[代码托管]https://git.oschina.net/pdds2017/MJ20162315-JavaFoundation2nd
http://i2.buimg.com/4851/e1652b8e45de7e84.png
(statistics.sh脚本的运行结果截图)
上周考试错题总结
- 使用JDB进行调试时单步执行命令有step和next,我们优先使用(next)。
使用JDB进行调试时查看源代码的命令是(list)。 JDB的使用教程读的不仔细。要多看多记。
结对及互评
- 上个星期我与袁逸灏同学结对,在周一已经讨论了放在上面代码调试的问题。也一起讨论过上周的错题,感觉各有收获。
对于他的博客,我觉得我在学习态度方面有很多东西要学习,代码量因为这周其他事太多的缘故与他差距不小,希望以后能达到他的这种投入度。
评分标准
-
正确使用Markdown语法(加1分):
- 不使用Markdown不加分
- 有语法错误的不加分(链接打不开,表格不对,列表不正确...)
- 排版混乱的不加分
-
模板中的要素齐全(加1分)
- 缺少“教材学习中的问题和解决过程”的不加分
- 缺少“代码调试中的问题和解决过程”的不加分
- 代码托管不能打开的不加分
- 缺少“结对及互评”的不能打开的不加分
- 缺少“上周考试错题总结”的不能加分
- 缺少“进度条”的不能加分
- 缺少“参考资料”的不能加分
-
教材学习中的问题和解决过程, 一个问题加1分
-
代码调试中的问题和解决过程, 一个问题加1分
-
本周有效代码超过300分行的(加2分)
- 一周提交次数少于20次的不加分
-
其他加分:
- 周五前发博客的加1分
- 感想,体会不假大空的加1分
- 排版精美的加一分
- 进度条中记录学习时间与改进情况的加1分
- 有动手写新代码的加1分
- 课后选择题有验证的加1分
- 代码Commit Message规范的加1分
- 错题学习深入的加1分
-
扣分:
- 有抄袭的扣至0分
- 代码作弊的扣至0分
点评模板:
-
基于评分标准,我给本博客打分:XX分。得分情况如下:xxx
点评过的同学博客和代码
- [学号1]http://www.cnblogs.com/VersionP1/p/6623837.html
- [学号2]http://www.cnblogs.com/lxrlxr/p/6610603.html
- [学号3]http://www.cnblogs.com/pingch/p/6616718.html#3651730
其他
这个星期感觉学习非常吃力,不仅仅是内容翻倍带来的消耗,也有完全陌生的数组这章加大的难度,希望老师恢复到一周一章的模式。这周因为个人原因,其他方面的事情相当繁多,对java的课后学习有所懈怠,过两周闲下来了一定要加大学习的力度。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 150/150 | 1/1 | 4/4 | |
第二周 | 300/450 | 1/2 | 14/18 | |
第三周 | 300/750 | 1/3 | 14/32 | |
第四周 | 450/1200 | 2/5 | 14/50 |
尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。
-
计划学习时间:20小时
-
实际学习时间:14小时
-
改进情况:
(有空多看看现代软件工程 课件
软件工程师能力自我评价表)