学号 2016-2017-2 《程序设计与数据结构》第X周学习总结

教材学习内容总结

1、再谈类对象
2、类的剖析
3、封装
4、方法的剖析
5、静态类成员
6、类关系

教材学习中的问题和解决过程

  • 问题1:短路语句如何理解?
  • 问题1解决方案:短路语句例如||这类的语句如果不运用在代码中那么当条件显示错误时系统依然会自动进行运算。
  • 问题2:代码中问题描述中的每一个名词都能代表一个类吗?
  • 问题2解决方案:不一定,有些名词可能是其他对象的属性,设计者很有可能会放弃使用其他一些名词。

代码调试中的问题和解决过程

  • 问题1:除了“==”还有什么代码证明相等?
  • 问题1解决方案:!=
  • 问题2:代码提示错误多的原因
  • 问题2解决方案:有很多时候代码错误是因为赋值或者循环语句的错误而导致产生蝴蝶效应而错误增多

代码托管

上周考试错题总结

1、教材P103页代码SnakeEyes.java的运行结果是固定的。
没有好好查看代码 没有动手
Die.java中 roll()中是调用了随机数方法,每次运行结果不一样。
2、Suppose we have an array of String objects identified by the variable names. Which of the following for loops will not correctly process each element in the array.(假如我们有一个名为names的String对象数组,下面哪个for循环不能遍历数组中的每一个元素?)
Choice c will not process each element correctly due to a syntax error. The length variable is not a method and, therefore, does not have parenthesis after it. Choice b is an example of using a foreach loop to process an array, and choice a is a correct for loop.
3、Which of the following array declarations are invalid? (下面哪个数组声明是不合法的)
数组没有好好学
All three of these are valid array declarations. Choice b uses an alternate syntax. Choice c uses an initializer list to initialize the array.
4、The relational operators should not be used to test the equality of objects.(关系运算符不应当用于测试对象的相等性)
关系运算符没想好
o test the equality of objects, the equals() method should be used.
5、Which of the following for loop headers will cause the body of the loop to be executed 10 times?(下面哪个循环头能实现循环体执行10次?)
0与1弄混淆
The loop executes when i is equal to 0, 1, 2, 3, 4, 5, 6, 7, 8, and 9. Therefore it executes exactly 10 times. Choice a and c execute 11 times, while choice a executes 9 times.
6、Suppose we wanted to process a text file called “input.txt” using the Scanner object. Which of the following lines of code correctly creates the necessary Scanner object?(假如我们想用Scanner对象处理文件名为“input.txt”的文本文件,下面哪行代码正确的创建了Scanner对象)
The Scanner constructor needs to take a reference to a File object as a parameter, so choice a, b and d are incorrect. The constructor for a File object takes in a String, so choice c is incorrect. Therefore, choice e is correct.
7、Which of the following statements best describes the flow of control in the main method of a Java program that has no conditionals or loops? (在没有条件和循环语句的情况下,对于Java程序中main方法的描述,下面哪个选项最为合适?)
Program statements in a Java program are executed linearly when there are no conditionals or loops. This means that statements that appear earlier in the code are executed before statements that appear later in the code.

结对及互评

20162301

评分标准

  1. 正确使用Markdown语法(加1分):

    • 不使用Markdown不加分
    • 有语法错误的不加分(链接打不开,表格不对,列表不正确...)
    • 排版混乱的不加分
  2. 模板中的要素齐全(加1分)

    • 缺少“教材学习中的问题和解决过程”的不加分
    • 缺少“代码调试中的问题和解决过程”的不加分
    • 代码托管不能打开的不加分
    • 缺少“结对及互评”的不能打开的不加分
    • 缺少“上周考试错题总结”的不能加分
    • 缺少“进度条”的不能加分
    • 缺少“参考资料”的不能加分
  3. 教材学习中的问题和解决过程, 一个问题加1分

  4. 代码调试中的问题和解决过程, 一个问题加1分

  5. 本周有效代码超过300分行的(加2分)

    • 一周提交次数少于20次的不加分
  6. 其他加分:

    • 周五前发博客
    • 感想,体会不假大空
    • 排版精美
    • 进度条中记录学习时间与改进情况
    • 有动手写新代码
    • 课后选择题有验证
    • 代码Commit Message规范
    • 错题学习深入
  7. 扣分:

    • 有抄袭的扣至0分
    • 代码作弊的扣至0分
    • 迟交作业的扣至0分

点评模板:

  • 博客中值得学习的或问题:
    文字清晰明了 有逻辑性与学习性

  • 代码中值得学习的或问题:
    遇到代码问题不只是简单的纸上谈兵,会在得知错题的情况下用虚拟机验证

  • 基于评分标准,我给本博客打分:7分。得分情况如下:

    • 感想,体会不假大空
    • 排版精美
    • 进度条中记录学习时间与改进情况
    • 有动手写新代码
    • 课后选择题有验证
    • 代码Commit Message规范
    • 错题学习深入
  • 参考示例

点评过的同学博客和代码

其他(感悟、思考等,可选)

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 10/200 2/2 20/20
第二周 30/500 1/4 18/38
第三周 45/1000 2/7 22/60
第四周 300/1300 1/9 30/90

尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

参考:软件工程软件的估计为什么这么难软件工程 估计方法

  • 计划学习时间:200小时

  • 实际学习时间:100小时

  • 改进情况:

(有空多看看现代软件工程 课件
软件工程师能力自我评价表
)

参考资料

posted on 2017-04-02 20:43  20162319莫礼钟  阅读(293)  评论(10编辑  收藏  举报