********2018-2019-1《程序设计与数据结构》课程总结
每周作业链接汇总
- 第一周作业
- 学习如何在Linux系统下使用Vim编写代码。
- 第二周作业
- 认识了Java的基本语法结构,可以编写一些简单的Java小程序,为以后的变成打下基础
- 第三周作业
- 了解了随机数的产生及格式化输出。
- 第四周总结
- 学习了如何编写类,了解了类的构成与用途,理解了各个数据的不同和其各自特点,学习了很多新的语句和方法及如何使用接口。还学习了IO流,Socket等新姿势。
- 第五周总结
- 学习了继承及其相关属性,以及Super关键字的使用方法
- 第六周总结
- 学习了多态的各种特点及使用方法,本周之后开始Android的学习。
- 第七周学习总结
- 进入Java的较深层次,难度有所提升,学到了Java的链表,栈的概念,特点及其应用
- 第八周学习总结
- 学了一些查找&排序算法,了解了各种排序&查找算法的优缺点。
- 第九周学习总结
- 开始算法学习,学习了几种树和树的特点,各种遍历的复杂度。还学到了哈夫曼编码
- 第十周学习总结
- 各种图的构建,出入度,以及权,加大AS的学习力度
自认为写得最好一篇博客是?为什么?
经过一个学期的学习,收获颇丰,但自己的学习方式或许存在问题,不能很好的抓住重点,同时思维有点呆板。。。吃了一些亏。一篇篇看过之后发现自己的博客质质量凑合但是某些个体质量并不高,可能是因为第一次写博客,自己偷懒并没有好好了解Mkdown的一些机制和操作。个人认为写的最好的博客应该是这篇:
我觉得这篇博文的内容比较重要,加上第四周作为学期刚开始不久,任务相对轻松,所以写的较为认真,事后还认真检查了MKdown的格式是否存在问题,尽管漏掉了一个模块,但是其他部分仍然遵守了MKdown格式标准,而且还将上周错题的对错用较为明显的对比色标示了出来。
作业中阅读量最高的一篇博客是?谈谈经验
作业中阅读量最高的一篇博客:
实验四《Java Socket编程 》实验报告
阅读量达到了69次,我觉得还好= =,没有其他人的强,可能我提交的比较早。
实验报告链接汇总
- 实验一
- 基于命令行和IDEA进行简单的Java程序编辑、编译、运行和调试。 简易教程]进行简单的Java程序编辑、编译、运行和调试。
- 基于命令行和IDEA进行简单的Java程序编辑、编译、运行和调试。 简易教程]进行简单的Java程序编辑、编译、运行和调试。
- 实验二
- 编写简单的计算器,完成加减乘除模运算。
- 编写简单的计算器,完成加减乘除模运算。
- 实验三
- 初步掌握单元测试和TDD;理解并掌握面向对象三要素:封装、继承、多态;初步掌握UML建模;熟悉S.O.L.I.D原则;了解设计模式;
- 初步掌握单元测试和TDD;理解并掌握面向对象三要素:封装、继承、多态;初步掌握UML建模;熟悉S.O.L.I.D原则;了解设计模式;
- 实验四
- 密码学应用,Java Socket 编程。
- 密码学应用,Java Socket 编程。
- 实验伍
- Android Stuidio的安装测试;Activity测试;UI测试;布局测试;事件处理测试
- Android Stuidio的安装测试;Activity测试;UI测试;布局测试;事件处理测试
- 实验六
- 链表练习,节点插入、删除、输出,将活动移植至安卓
- 链表练习,节点插入、删除、输出,将活动移植至安卓
- 实验七
- 类中实现linearSearch,SelectionSort方法,用test包进行测试,几种常用排序,移植到安卓平台上
- 类中实现linearSearch,SelectionSort方法,用test包进行测试,几种常用排序,移植到安卓平台上
- 实验八
- 完成链树LinkedBinaryTree的实现并进行测试,实现基于(中序,先序)序列构造唯一一棵二㕚树的功能,设计并实现一颗决策树,使用树将中缀表达式转换为后缀表达式,并输出后缀表达式和计算结果
- 完成链树LinkedBinaryTree的实现并进行测试,实现基于(中序,先序)序列构造唯一一棵二㕚树的功能,设计并实现一颗决策树,使用树将中缀表达式转换为后缀表达式,并输出后缀表达式和计算结果
- 实验九
- 图的综合实践,完成有向图和无向图的遍历,有向图的拓扑排序,无向图的最小生成树,有向图的单源最短路径求解。
- 图的综合实践,完成有向图和无向图的遍历,有向图的拓扑排序,无向图的最小生成树,有向图的单源最短路径求解。
团队项目报告链接汇总
代码托管链接:
-
statistic.sh运行结果:
-
目标是否达到:单从量上说达到了,但是质上还是有很大差距,代码虽然够了10000行的量,但是其中有一部分(约5000)基本是无效代码量。
-
加点代码,改点代码是理解的最好方式,参考编程的智慧,谈谈你的心得:
- 心得:我认为,这篇博文的博主很多东西是总结的很到位的,应该是位相当厉害的程序员,并且有相当高的自我认同感。这位博主是我见过除了知乎之外,头一次见到把付款方式写在自己博客里的人。
- 我认为,题目中的"加点代码,改点代码"确实是有道理的,如果能够对一个项目的代码进行增删改的话那也就变相的证明了自己对这篇代码相当熟悉,但对我自己来说,"加点代码,改点代码"并不是最好的理解方式,在学习的过程中我能够清晰的感觉到如果能够自己独立完成某一代码的构建,才是真正学会了那部分的知识。一味的参考别人的代码对别人的代码进行增删改虽然能够加大自己的代码阅读量但会有可能会让自己明明不会却会产生一种"我会了"的错觉。在我看来,如果我的技术能够再成熟一些,对语言能够精通的时候,这篇文章一定会让我受益匪浅。
-
积极主动敲代码做到没?教材实践上有什么经验教训?
- 我觉得我做到了,有时候确实因为做不出来会去参考别人的代码,但是私下里还是会自己敲一敲去实现一下,多敲代码还是很有用的。
-
课堂项目实践:
- 课堂实践对提高应用能力有帮助吗?
- 有,提高了对知识的接受效率,节省了课下时间。
- 课堂实践上自己有什么经验教训?
- 教训:头脑不要发热,好好审题最重要,有时候明明自己会的题一慌张反而做不出来。
- 课堂实践上对老师有什么教学建议?
- 建议加大力度,分层次布置任务,避免抄袭。
- 课堂实践对提高应用能力有帮助吗?
-
课程收获与不足 :
- 自己的收获:
- 相对于上学期的C语言,Java让我拥有了更高效的"程序员"思维。
- 自己需要改进的地方:
- 怠惰,对知识缺乏理解,有时候自己不理解就去敲代码,反而事倍功半。
- 结对学习是不是真正贯彻了?写一下你提供的帮助或接受了什么帮助,并对老师提供参考建议
- 开始还好。后来就各自为战了,接受的帮助就是20182316胡泊同学经常会帮助我理解难以理解的知识点,尤其是数据结构部分。建议:建议提奖励的分数占比或者结成多人小组,两个人感觉有点少,人多的话能够有思维碰撞还是很不错的。
- 自己的收获:
-
问卷调查 :
- 你平均每周投入到本课程有效学习时间有多少?
- 前期还挺多。。应该有2528个个小时,后期约1821小时左右。
- 每周的学习效率有提高吗?你是怎么衡量的?
- 有,头发变少了,代码也越来越熟练了,博客也越敲越快了。
- 蓝墨云班课的使用对你的学习有促进吗?有什么建议和意见吗?
- 帮助挺大的,资源很多。没啥建议
- 你觉得这门课老师应该继续做哪一件事情?
- 保持现状吧。。建议加大安卓的力度。
- 你觉得这门课老师应该停止做哪一件事情?
- 建议改进作业机制= =没有什么需要停止的。
- 你平均每周投入到本课程有效学习时间有多少?
-
任意发挥:
- 很高兴遇到了强哥,教会了我很多东西,还有两位助教也费了很多心思哈哈哈,我会在寒假继续Java的实践,加油,奥里给!!
-
总结中涉及到的链接的二维码
- 码云项目链接:
- 课程总结、实验:
- 码云项目链接: