20182333 2018-2019-1《程序设计与数据结构》课程总结
前言
转眼间,一个学期转眼间也已经过去了,回想起来这几个月的学习时光,有欢乐,也有汗水,有喜悦,也有痛苦。经历了第一次写出代码能运行成功的雀跃,也饱受在深夜写不出代码不能实现功能的苦恼。在这段时间里,我学习到了很多,也成长了很多。最后我也有模有样的进行了一次小组合作。在进行小组协作的那段时间内,虽然自己许多都不会,但在和小组成员一些学习努力实现app的功能还是很有收获的,最后app成功实现的时候还是非常开心的,也确是得到了一个不错的结果。在这一学期里,首先非常感谢王志强老师(我们的强哥),看得出来王老师在每节课前都有认真仔细的准备,课后也能耐心的给我们答疑。还有就是余坤澎和于欣月两位助教,能够仔细的批改我们的作业和博客,一遍遍不厌其烦的纠正我们的基本错误。在这里向你们表达真挚的感谢。本篇博客也是这学期的最后一篇博客了,就这样为本学期的java课程画上一个圆满的句号吧!
每周作业链接汇总
- 简要内容:对java课的期望、认识以及对linux虚拟机的学习。
- 简要内容:了解了计算机的组成和java语言中一些基本知识点,编写一些简单的代码。
- 简要内容:学习类和包的概念,学习使用对象引用变量的声明与初始化以及注意事项。
- 简要内容:对类和对象的定义理解进一步加深,对方法设计和方法重载进行初步的学习。
- 简要内容:学习类之间的关系,了解类的层次结构。
- 简要内容:学习利用接口和继承实现多态性以及异常以及异常的处理方法。
- 简要内容:
- 初步接触了数据结构的概念,学习大O计数法的表示和时间复杂度的分析。
- 分别用数组和链表实现栈和队列。
- 简要内容:学习了一些查找和排序的算法,也学会了计算ASL
- 简要内容:学习了树的四种遍历,和怎样根据已知序列求未知序列等等
- 简要内容:学习了如何求图图的广度和深度优先遍历,以及如何用Prim算法和Kruskal算法计算最小生成树等等。
自认为写得最好一篇博客是?为什么?
- 最好的博客:第十周作业
- 原因:第十周的知识点是听课理解最多的并且课下也有认真在温固的,所以有更深的理解,自然写博客也就写的是最好的的一篇。
作业中阅读量最高的一篇博客是?谈谈经验
- 阅读量最高的博客:第一周作业
- 原因:可能是刚开学大家都不知道该如何写博客,怎样写好博客,所以就看看大家是怎样写博客的。自然而然阅读量就是最多了。
实验报告链接汇总
- 简要内容:学习IDEA的安装和使用。
- 简要内容:编写一个简单的计算器并进行测试代码
- 简要内容:学习使用JUnit,初步理解设计模式和开发原则。
- 简要内容:学习使用JavaSocket实现客户端/服务器功能,并对密码学的知识进行实践以及编写复数、有理数计算器。
- 简要内容:学习AS的安装和使用学习Android开发的基本语法。
- 简要内容:熟悉链表的功能以及使用,并在android上实现链表的功能。
- 简要内容:熟悉查找与排序算法的使用,并且在android平台上实现。
- 简要内容:熟悉树及其相关知识的使用。
- 简要内容:熟悉图及其相关知识的使用。
团队项目报告链接汇总
- 简要内容:
- 团队展示
- 团队选题介绍
- 采访学长经验
- 团队分工和占比
- 团队任务计划
- 需求说明书
- 简要内容:
- 修改完善上周提交的需求规格说明书
- 团队的编码规范
- 团队项目的数据库设计及相应ER图
- 项目的后端架构设计
- 团队分工
- TODOList及燃尽图
- 本次分工及工作量比例。
《记忆边缘》—团队冲刺阶段--领航篇(First Day):
- 简要内容:
- 整体冲刺阶段安排、
- 成员贡献值计算规则。
- 简要内容:冲刺阶段第二天——博客编写者:钱佳禹。
- 简要内容:冲刺阶段第三天——博客编写者:钱佳禹。
- 简要内容:冲刺阶段第四天——博客编写者:钱佳禹。
- 简要内容:冲刺阶段第五天——博客编写者:钱佳禹。
- 简要内容:冲刺阶段第六天——博客编写者:钱佳禹。
《记忆边缘》——团队冲刺阶段--Seventh Day(总结篇):
- 简要内容:整体总结、发行版本功能、各部分功能具体说明——博客编写者:钱佳禹。
代码托管链接:
给出statistic.sh的运行结果,说明本学期的代码量目标达到没有?
- 目标已达到
加点代码,改点代码是理解的最好方式,参考编程的智慧,谈谈你的心得
这学期学完之后,发现自己打代码并不是需要自己把第一行代码到最后一行代码敲出,那样既浪费时间又没有必要。现如今很多东西都有开源代码,可以去寻找相关代码,看懂源代码后,从源代码中进行修改或者添加或者删除的操作,把自己的创新点表达出来,做出属于自己的东西。
积极主动敲代码做到没?教材实践上有什么经验教训?
基本上算是没有做到吧,一般都是等老师布置了任务之后采取自己敲代码,这方面做得不是很好,另外在教材实践中有很多内容自己还是不懂的,课后项目大多都是向别人请教学习之后才知道应该怎么做,总的来说还是知识掌握不到位。
课堂项目实践
- Scanner&JDB练习:输入输出
- 类的编写实践:
- 类的编写实践:使用StarUML编写类
- Random和NumberFormat测试:随机数的生成
- Interface实践:接口的实现
- 复数/有理数计算器(接口):用接口实现复数/有理数计算器
- 文件读写:读写文件
- 链表实践:实现链表
- 线性表实践:安卓上实现链表
- CircularArrayQueue方法补全:队列的补全实现
- 二叉排序树实践:二叉排序树的实现
- 二分查找(折半查找)实践:递归二分查找
- 二叉树的建立和层序遍历法实践:层序遍历
- 递归前中后序和非递归前中序遍历实践:用递归和非递归方法实现遍历
- 哈夫曼编码实践:哈夫曼编码
- 图实践:定义有向图、无向图
课堂实践对提高应用能力有帮助吗?
有,课堂实践基本上都是巩固课堂所学知识,对于我来说很有用的,能够更好地了解老师上课所讲内容。
课堂实践上自己有什么经验教训?
上课还是要认真听讲的,因为之前的预习做的不到位,所以老师上课所讲内容至关重要,所以一定要牢牢跟紧老师的思路
课堂实践上对老师有什么教学建议?
可以稍微的少布置一点吗???
课程收获与不足
自己的收获(投入,效率,效果等)
- 总的来说算是对程序设计与数据结构这一门课的所有内容都有了认识和理解诶,有的已经全部掌握也有的还存在欠缺,自己的动手能力也是得到了进一步的加强吧。
- 投入的时间相对于老师得要求来将可能还是不够。而这门课本身是两个学期学完的可我们却用了一个学期,效率当然不高,有些东西没有足够理解。效果还行吧,也算是学到了许多知识。
自己需要改进的地方
- 在做项目前,思路与想法并不是很清楚,老想着走一步看一步,导致无用功的增加。并且没有一个较好的代码规范形式,不爱打注释,命名不规范等,使得自己的代码很乱不清楚。
- 没有主动的学习,主动积极的敲代码
结对学习是不是真正贯彻了?写一下你提供的帮助或接受了什么帮助,并对老师提供参考建议
- 贯彻了。在学习中,我们会相互询问并解答一些疑惑,也会集体讨论一些问题,在做项目时,会针对每个人擅长的部分而分配任务。我觉得结对学习非常的有必要,会比自己学习的效率高出很多,我支持老师的这个决定。
问卷调查
- 你平均每周投入到本课程有效学习时间有多少?
平均下来每周有效的学习时间应该有15小时左右吧 - 每周的学习效率有提高吗?你是怎么衡量的?
学习效率一般吧,大多数都是自己的懒惰不想学习造成学习效率太低,一小部门是课程安排不合理。
- 蓝墨云班课的使用对你的学习有促进吗?有什么建议和意见吗?
蓝墨云上有很多资源可以叫我们去学习,对课程学习提醒和监督有较大作用,而且老师给的资料以及同学们拍的视频都挺有用的。
- 你觉得这门课老师应该继续做哪一件事情?
课堂实践和学生跟着老师一起编代码。
- 你觉得这门课老师应该停止做哪一件事情?
我觉得这个课程总结可以取消了,可以吗???
再过分一点的:博客可以取消吗???
-
其他任意发挥
java 拜拜了您呢!
博客 再见了您呢!
给出你的总结中涉及到的链接的二维码
- 码云项目连接
- 预备作业:课程基础
- 第一周作业
- 第二、三周作业
- 第四周作业
- 第五周作业
- 第六周作业
- 第七周作业
- 第八周作业
- 第九周作业
- 第十周作业
- 实验一
- 实验二
- 实验三
- 实验四
- 实验五
- 实验六
- 实验七
- 实验八
- 实验九
原文地址:https://www.cnblogs.com/qianjiayu/p/12109185.html