20182301 2019-2020-1《程序设计与数据结构》课程总结
每周作业链接汇总
- 预备作业
- 简要内容
- 对自己的认识和期望
- 安装操作系统
- 学习Markdown格式
- 掌握Linux命令
- 简要内容
- 第一周作业
- 简要内容
- Java的基本概念与区分
- 再次学习Linux命令
- 简要内容
- 第二、三周作业
- 简要内容
- Java的对象
- Java基本语句
- 简要内容
- 第四周作业
- 简要内容
- 封装与重载
- 简要内容
- 第五周作业
- 简要内容
- 继承与重写
- 构造函数
- 简要内容
- 第六周作业
- 简要内容
- 异常与多态
- 简要内容
- 第七周作业
- 简要内容
- 算法效率
- 集合
- 栈
- 简要内容
- 第八周作业
- 简要内容
- 查找与排序
- 简要内容
- 第九周作业
- 简要内容
- 数和二叉查找树
- 简要内容
- 第十周作业
- 简要内容
- 图
- 简要内容
自认为写得最好一篇博客是?为什么?
- 我认为我写的最好的一篇博客是第九周的博客,以下是三点原因:
- 这篇博客学到了树,既是难点又是重点,所以我写得较为详细
- 在不断的书写博客中总结经验,格式和内容都走向标准化
- 对于树,我思考的比较多
作业中阅读量最高的一篇博客是?谈谈经验
- 我阅读量最高的一篇博客是第一周的博客,原因有二:
- 这篇博客还处于大家的懵懂学习中,所以可能多有借鉴
- 这篇博客的考试总结错题很详细
实验报告链接汇总
-
- 实验名称:Linux基础与Java开发环境
- 简要内容
- 基于命令行和IDE(Intellj IDEA 简易教程](http://www.cnblogs.com/rocedu/p/4421202.html)进行简单的Java程序编辑、编译、运行和调试。(本次实验主要使用命令行的方式)
- 练习Linux基本命令;
- 学习Java程序的JDB调试技能:https://www.cnblogs.com/rocedu/p/6371262.html
- 编写简单的Java程序。
-
- 实验名称:Java基础(数据/表达式、判定/循环语句)
- 简要内容
- 编写简单的计算器,完成加减乘除模运算。
- 要求从键盘输入两个数,使用判定语句选择一种操作,计算结果后输出,然后使用判定和循环语句选择继续计算还是退出。
- 编写测试代码,测试验证。(https://www.cnblogs.com/rocedu/p/4472842.html)
-
- 实验名称:面向对象程序设计
- 简要内容
- 步掌握单元测试和TDD
- 理解并掌握面向对象三要素:封装、继承、多态(自己去学!)
- 初步掌握UML建模
-
- 实验名称:Java Socket编程
- 简要内容
- 学习蓝墨云上教材《Java和Android编程》“第16章 输入/输出 ”和“第22章 网络”,学习JavaSocket编程
- 结对编程。结对伙伴A编写客户端SocketClient.java,结对伙伴B编写服务器端。
- 截图加学号水印上传蓝墨云,代码push到码云,并撰写实验报告。
-
- 实验名称:Android程序设计
- 简要内容
- 学习Android Stuidio调试应用程序
- Activity测试
-
- 实验名称:线性结构之链表
- 简要内容
- 链表练习
-
- 实验名称:排序与查找
- 简要内容
- 定义一个Searching和Sorting类
-
- 实验名称:哈夫曼编码测试
- 简要内容
- 链树LinkedBinaryTree的实现
-
- 实验名称:图
- 简要内容
- 无向图与有向图
团队项目报告链接汇总
- 第一周
- 简要内容
- 队员学号(标记组长)
- 队名
- 拟作的团队项目描述:一句话。
- 队员风采:介绍每一队员的风格、擅长的技术、编程的兴趣、希望的软工角色、一句话宣言等;
- 团队的首次合照(有图有真相,合照风格可以发挥创意)。
- 团队的特色描述,主要描述有别于其他所有团队的特点或核心竞争力,言简意赅。
- 简要内容
- 第二周
- 简要内容
- 完善
- 团队分工
- 简要内容
- 冲刺博客
代码托管链接
由于中间换了一次电脑,故统计代码使用下表
给出statistic.sh的运行结果,说明本学期的代码量目标达到没有?
达到了
加点代码,改点代码是理解的最好方式,参考编程的智慧,谈谈你的心得
- 首先,我认为每一个好的程序员都是从模仿开始的,所以加点代码,改点代码是理解的最好方式。
- 其次,当我们从一个小白晋升之后,我们要开始加点代码、改点代码来优化程序
- 最后,当我们成为大佬之后,美化代码就是高级境界,算法速度快都是从加点代码,改点代码开始的
积极主动敲代码做到没?教材实践上有什么经验教训?
- 主动敲代码有做到,积极我认为我还没有达到
- 书上的代码很有代表性,但是也含有错误,所以我们要辩证的去运用。
课堂项目实践
- Scanner&JDB练习
- Random和NumberFormat测试
- 类的编写
- Interface实践
- StringBuffer加分题
- 复数/有理数计算器(接口)
- 文件读写
- 出门条-栈-数组实现栈
- 后缀表达式求值
- ArrayStack类的实现和测试
- 时间复杂度分析
- 链栈补全(LinkedStack补全)size\isEmpty\toString\Push
- 链表实践
- 链表插入
- 选择排序最坏情况
- 二分查找(折半查找)实践
- 线性表实践(ArrayList、LinkedList)
- 哈夫曼编码实践
课堂实践对提高应用能力有帮助吗?
有。课堂实践一定程度上考验的是我们对于课堂知识的合理运用能力和独立思考解决问题的能力。锻炼我们的逻辑思维和设计代码的能力。
课堂实践上自己有什么经验教训?
要认真听老师讲课,往往认真理解了,我们才可以在代码上更好地运用
课堂实践上对老师有什么教学建议?
希望老师能继续在实践前讲一下知识重点
课程收获与不足
自己的收获(投入,效率,效果等)
- 对于数据结构有了一定的学习,在android端的实践能力经过实践项目和团队项目也有了很大的进步。
- 对于Java有了一定的学习。
- 代码的阅读理解和编写时的逻辑思维有了一定的提高。
- 在团队实践时学习到了很多组织团队的方法
自己需要改进的地方
- 良好的编码规范习惯。对于一些注释的要求,代码规范。在编程的时候,注意自己的逻辑性。注意细节,站在用户的位置上思考,是否有问题,是否方便合理。
- 寻根究底 对于学习的东西,不能只知道结论,而不知道其内涵。就像,有些方法,我们只会用,却不会去编写,就是学习的不全面。
- 不能因为忙其他的事情,就进行敷衍。
结对学习是不是真正贯彻了?写一下你提供的帮助或接受了什么帮助,并对老师提供参考建议
- 本学期的结对学习真正贯彻了。
- 首先,我们建立良好的交流,其次,还可以互相促进。
问卷调查
你平均每周投入到本课程有效学习时间有多少?
- 至少十个小时
每周的学习效率有提高吗?你是怎么衡量的?
- 看每周的学习任务和难度。学习效率我是通过对于某部分的理解程度衡量。
蓝墨云班课的使用对你的学习有促进吗?有什么建议和意见吗?
- 有促进,时间相对充裕一些
你觉得这门课老师应该继续做哪一件事情?
- 保持课堂实践。
你觉得这门课老师应该停止做哪一件事情?
- 过度的博客浪费时间且繁琐
给出你的总结中涉及到的链接的二维码
码云项目链接: 二维码
总结博客: 二维码
-
预备作业
-
第一周总结
-
第二、三周总结
-
第四周总结
-
第五周总结
-
第六周总结
-
第七周总结
-
第八周总结
-
第九周总结
-
第十周总结
实验博客 二维码
-
实验一
-
实验二
-
实验三
-
实验四
-
实验五
-
实验六
-
实验七
-
实验八
-
实验九
实践名称:二维码
-
Scanner&JDB练习
-
Random和NumberFormat测试
-
类的编写
-
Interface实践
-
StringBuffer加分题
-
复数/有理数计算器(接口)
-
文件读写
-
出门条-栈-数组实现栈
-
后缀表达式求值
-
ArrayStack类的实现和测试
-
时间复杂度分析
-
链栈补全(LinkedStack补全)size\isEmpty\toString\Push
-
链表实践
-
链表插入
-
选择排序最坏情况
-
二分查找(折半查找)实践
-
线性表实践(ArrayList、LinkedList)
-
哈夫曼编码实践