20172315 2017-2018-2《程序设计与数据结构》课程总结
每周作业链接汇总
- 预备作业1:对大一上学期进行总结,谈谈你对本专业的认识和期望,你期望的师生关系是什么样的,谈一下从小到大对你帮助/影响最大的老师和原因。
- 预备作业2:你有什么技能比大多人(超过班级90%以上)更好,针对这个技能的获取你有什么成功的经验?与老师博客中的学习经验有什么共通之处?你对《程序设计与数据结构》的学习有什么具体目标?如何通过“做中学”实现你的目标?
- 预备作业3:安装Linux操作系统,学习Linux命令。
- 第一周作业:了解了计算机是如何运行的,以及计算机硬件相关知识。了解了各种网络的类型,以及网络怎么链接的。初步了解Java相关的知识,及Java如何编译。
- 第二周作业:学习了如何输出符号的问题,了解了System.out.println的含义,了解了如何链接过长的字符串
- 第三周作业:了解了如何对对象的创建,学习了String类的用法,知道了包的概念,学习到了包中的一个Random的用法,了解了Math类的使用,知道了什么叫枚举型及包装器类
- 第四周作业:第四章主要介绍了关于编写方面的一些问题,介绍了类型与对象之间的关系,通过例题等介绍了怎样编写一个属于自己的一个类和如何使用它,介绍了实例数据和UML图的概念,在封装一节,我学习到了如何对自己程序中的一些东西进行封装,并知道了如何读取和修改它,学习了return语句相关的知识,第七章主要讨论了面向对象软件的设计方法,了解了静态类相关的知识,其中包括静态变量与静态方法,知道了类间的各种关系,包括依赖、聚合和继承关系,学习了接口的相关知识,在测试一节,学习了各种软件测试方法及其必要性。
- 第五周作业:学习了条件循环和判断以及其他条件判断和循环两章内容。学习了条件语句中的if语句、if-else语句、switch语句。 学习了循环语句中的while语句、do语句、for语句。
- 第六周作业:学习了如何使用数组,以及数组相关的知识。
- 第七周作业:学习继承是如何实现的,及类之间的关系,了解类的层次结构。
- 第八周作业:学习多态这一章,学习了利用接口和继承实现多态性。
- 第九周作业:学习了异常和递归这两章,学习异常以及异常的处理方法和递归的实现。
- 第十周作业:学习了集合这一章,了解了集合的同构和异构,学习线性数据结构和非线性数据结构。
- 第十一周作业:学习《Java和Anroid开发学习指导》的几章内容,学习UI组件。
自认为写得最好一篇博客是?为什么?
自认为写的最好的博客是《程序设计与数据结构》第五周学习总结,因为对于学习内容总结非常到位,问题提出的较多,代码完成较好,截图较多。
作业中阅读量最高的一篇博客是?谈谈经验
作业中阅读量最高的一篇博客是《程序设计与数据结构》第五周学习总结,大概就是因为上述的原因吧。
实验报告链接汇总
- 实验一:学习IDEA的安装和使用。
- 实验二:学习使用JUnit,初步掌握单元测试和TDD,理解并掌握面向对象三要素:封装、继承、多态,初步掌握UML建模,熟悉S.O.L.I.D原则,了解设计模式
- 实验三: 安装alibaba 插件,学习代码编程标准。
- 实验四:学习AS的安装和使用学习Android开发的基本语法。
- 实验五:学习使用JavaSocket实现客户端/服务器功能,并对密码学的知识进行实践。
团队项目报告链接汇总
代码托管链接:
- 给出statistic.sh的运行结果,说明本学期的代码量目标达到没有?
代码量应该勉强及格吧。。 - 加点代码,改点代码是理解的最好方式,参考编程的智慧,谈谈你的心得
不要为了写代码而写代码,之前一直不懂,但保持着好学的心态,每天学习的很晚,然后发觉并没有什么用。理解,理解 ,理解比什么都重要,思路要清晰,其他都是浮云。 - 积极主动敲代码做到没?教材实践上有什么经验教训?
应该勉强算是做到了吧,教材实践是我觉得我们不能一味的对着书上的代码死敲,要学会理解其中代码的意义,否则你敲了代码跟没敲没什么区别。一旦你照着书上敲代码发生了错误,你甚至不能找到是什么原因。
课堂项目实践
-
实践1
生成[-10,10)之间的随机数PseudoNumber,并输出PseudoNumber;
输出PseudoNumber的二进制、十六进制形式; -
实践2
编写一个Book类,其实例数据分别表示书名、作者、出版社以及版权日期。
定义一个Book构造方法,接收并初始化实例数据;为所有实例数据定义获取和设置他们的方法
定义一个toString方法,返回几行描述该图书的字符串。
创建一个Bookshelf驱动类,其main方法实例化并输出一些Book对象。 -
实践3
编译并运行PP7.4 -
实践4
使用for循环计算n的阶乘,并截图上传。
使用while循环计算n的阶乘,并截图上传。 -
实践5
命令行参数测试
从命令行传入 学号、课程的成绩,计算平均成绩,并输出
输入 java computeAverage 20172301 98 99 100
输出:2017 2301' average score is :99
使用边长参数列表实现。 -
实践6
已知抽象类Animal,定义Cow类和Sheep类,继承Animal类,并测试 -
实践7
使用选择和插入排序法,写出第3次排序的结果:3 1 9 3 6 2 10 -
实践8
1.从键盘可以输入任意个整数(int);
2.写入文件;
3.从文件读取所有的整数;
4.使用插入排序对读取的整数进行排序,并将排序的结果写入原文件。
5.使用try-catch语句处理IO异常,例如文件创建异常 -
实践9
使用递归实现;
输入一个数n;
使用递归计算F(n)的值;
写入文件中。 -
实践10
完成P397页例题中的节点删除和插入操作,并测试
完成插入、删除功能
加分项:用Magazine类实现Comparable接口,并对链表中的杂志按照字母顺序排序,并输出。 -
实践11
下载附件中的world.sql.zip, 参考http://www.cnblogs.com/rocedu/p/6371315.html#SECDB,导入world.sql
编写程序,查询世界上超过“你学号前边七位并把最后一位加到最高位,最高位为0时置1”(比如学号20165201,超过3016520;学号20165208,超过1016520)的所有城市列表,运行并截图上传(Java代码截图、运行结果)。SQL语句:SELECT * FROM city WHERE city.Population>5000000
编写程序,查询哪个国家的平均寿命最长,哪个国家的平均寿命最短,并截图上传(Java代码截图、运行结果)
SQL语句:SELECT * FROM country WHERE country.LifeExpectancy=(SELECT MAX(country.LifeExpectancy)FROM country) SQL语句:SELECT * FROM country WHERE country.LifeExpectancy=(SELECT MIN(country.LifeExpectancy)FROM country)
编写程序,查询世界上的所有中东国家的总人口
SQL语句:SELECT SUM(Population) FROM country WHERE country.Region="Middle East"
-
实践12
在Android平台上开发移动程序,模拟栈的操作:Push、Pop。 -
实践13
开发一个Android应用程序,要求:输入一个中缀表达式,输出后缀表达式。 -
实践14
开发一个android应用程序,完成以下功能:
随机生成一个中缀表达式,并使用控件显示。
将该表达式转换为后缀表达式,并使用控件显示。
计算后缀表达式的值,并使用控件显示。
(选做)显示每一步操作数栈和操作符栈的变化过程。 -
实践15
伙伴1编写服务器端程序,接收客户端发送的数据(形式如下:12 15 8 100 25 34 19),将其排序后,发回给客户端。
伙伴2编写客户端程序,将一串字符串(形式如下:12 15 8 100 25 34 19)发送给服务器端,接收排序后的程序,并显示。 -
课堂实践对提高应用能力有帮助吗?
当然有帮助啊,要不然老师为什么要我们课堂实践呢?我有很多书本上学不到的知识都是从课堂实践中学来的呢。 -
课堂实践上自己有什么经验教训?
要注意提高自己的速度以及自学能力,否则时间上就很赶。 -
课堂实践上对老师有什么教学建议?
建议给学生多一点提示,免得学生跟无头苍蝇一样,无从下手。
课程收获与不足
- 自己的收获:在程序设计与数据结构这门课上真正的入门了,从此以后再学习类似的课程将适应的更快,进步也应该会更迅速吧。
- 自己需要改进的地方:写代码的速度还是要提高,以及写代码的规范上也应该改善。
- 结对学习是不是真正贯彻了?写一下你提供的帮助或接受了什么帮助,并对老师提供参考建议:当然贯彻了,我受到结对伙伴的启发很多,当自己对一个程序无从下手时候,你的伙伴不经意的一句话或许就能给你一个全新的思路,而往往这个思路也确实是正确的。
问卷调查
- 你平均每周投入到本课程有效学习时间有多少?
就这么说吧,我自习一大半时间是在学Java - 每周的学习效率有提高吗?你是怎么衡量的?
大概会有提高吧,从写代码的速度来衡量。 - 蓝墨云班课的使用对你的学习有促进吗?有什么建议和意见吗?
很有促进,建议目前没有 - 你觉得这门课老师应该继续做哪一件事情?
继续实行每周测验 - 你觉得这门课老师应该停止做哪一件事情?
博客的频率应该缓缓 - 你觉得这门课老师应该开始做什么新的事情?
老师做的都很不错,不需要开始新的征程了。
给出你的总结中涉及到的链接的二维码
按照顺序: