20182330 2019-2020-1《数据结构与面向对象程序设计》第一周学习总结

20182330 2019-2020-1《数据结构与面向对象程序设计》第一周学习总结

教材学习内容总结

  1. 掌握Linux、vim基本命令
  2. 了解并学习什么是markdown格式
  3. 简单编程、编译、调试并实现代码托管
  4. 完成课后自测题

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

  • 问题1:理解面向对象与面向程序
  • 问题1解决方案:在网络上查找、在书中寻找解释

    对象(object)是java程序中的基础实体。本书通过定义相互交互的对象来介绍软件开发的思想。

    • 面向过程的思想解决问题就是要按部就班,一个步骤一个步骤直到问题解决;
    • 面向对象则是将问题分解给不同的对象,注重的是该对象在整个过程中的行为。
    • 区别:我看到一篇很有意思的博客,他将面向对象与面向程序比作盖浇饭与蛋炒饭。

"盖浇饭菜饭易于分离,你可以用你想吃的菜替换不想要的,可以增加或减少;蛋炒饭要实现蛋饭分离便很难。"

  • 由此便引出了两个概念,叫做耦合度和可维护性。

  • ==面向过程:性能高但可维护性差,耦合性高==
    
  • ==面向对象:灵活,易于维护,耦合性低==
    
    • 这样的比喻生动而形象,我觉得我会一直记住盖浇饭和蛋炒饭的爱恨情仇。
  • 问题2:程序和软件的区别?

  • 问题2解决方案:在网络上查找

    • 每天编程却不知程序为何物。每天玩手机却不知道程序与软件的区别。这大概就是我与大佬的差距吧。
    • 软件=程序+文档=数据结构+算法+文档
    • 简单来说,软件是为了实现某一功能的程序的集合。
  • 问题3:始终不能理解标识符与保留字

  • 问题3解决方案:在网络上查找、在书中寻找解释

    • 标识符:简单来说就是编程过程中遇到的名字。

- 关键字:在Java语言环境中被赋予了特殊含义的单词。
- 保留字:特殊含义的标识符。

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

  • 问题1:

  • 问题1解决方案:在网络上查找

main class and arguments must be specified
翻译:必须指定主类和参数

    ```run hellojdb```即可解决
  • 问题2:虚拟机无法连接网络

  • 问题2解决方案:上网寻找无果,求助助教学姐。

    • 方案一:输入代码--> 无果

    • 方案二:网络资源配置与物理机共享--> 无果

    • 方案三:关机重启--> 成功
      -我的虚拟机一直处于挂机状态。学姐经验比较丰富,告诉我一般改动了配置之后,需要重启一下才会更新配置。于是我第一次重启了虚拟机,问题解决!用了一下午的时间,不胜欢喜!
  • 问题3: 物理机文件无法直接复制到虚拟机。

  • 问题3解决方案:

    • 由于系统提示的VMware tool无法安装,于是通过网页上的QQ邮箱当作传送门。

 - 但是如果有更好的方法解决这个问题,希望大家能够提供给我学习学习,感谢!
  • 问题4: 第二次push失败,强制提交也无果。

  • 问题4解决方案:多次调试无果,又去求助万能学姐。
    • 解决方法如下:
      -步骤一:输入

      git fetch origin
      git merge origin/master
      

      -步骤二:输入y进入

      -步骤三:按下i进入输入模式,任意输入字母,esc回车即可(忘截图了)

    • 原因分析:本地和远程的文件应该合并后才能上传本地的新文件,而我因为修改了文件导致远程仓库和码云成为了两个。

代码托管

上周考试错题总结

  • 无错题

结对及互评

  • 博客中值得学习的或问题:

    • 博客引用生动活泼,解决问题时运用了多种方式,比如在解决始终不能理解标识符与保留字时使用了网络和书本并行的方式。
    • 问题:图片插入有几分突兀,希望加强markdown水平
  • 代码中值得学习的或问题:

    • 无,和我一样
  • 基于评分标准,我给本博客打分:16分。得分情况如下:
    -1. 正确使用Markdown语法(加1分)
    -2. 模板中的要素齐全(加1分)
    -3. 教材学习中的问题和解决过程(加3分)
    -4. 代码调试中的问题和解决过程(加4分)
    -5. 其他加分(加7分)
    -6. 进度条中记录学习时间与改进情况(1)
    -7. 感想,体会不假大空(1)
    -8. 有动手写新代码(1)
    -9. 排版精美(1)
    -10. 错题学习深入(1)
    -11. 点评认真,能指出博客和代码中的问题(1)
    -12. 结对学习情况真实可信(1)

  • 本周结对学习情况

  • 结对学习内容
    - Markdown格式学习
    - 码云上传代码
    - 简单编程
    - 解决虚拟机崩溃问题

  • 上周博客互评情况

其他

  1. 第一周的代码量远远不够,主要精力用在熟悉Linux系统,处理安装程序、调试运行时的各种问题,下一周就可以增加代码练习。
  2. “前紧后松学习法”!
  3. 写博客效率低。(尤其是Markdown格式,对于我这种强迫症晚期的人来说,简直是身心上的摧残)

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 10000行 30篇 400小时
第一周 42/42 2/2 20/20 学会Linux基本操作

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

-计划学习时间:30小时

-实际学习时间:20小时

-改进情况:重视学习时间,量的积累达到质的飞跃。

参考资料

原文地址:https://www.cnblogs.com/weiii/p/11502432.html