20172325 2017-2018-2《程序设计与数据结构》课程总结

20172325 2017-2018-2《程序设计与数据结构》课程总结

一、每周作业链接汇总

  • 寒假作业01对大一上学期的总结、对专业的认识和期望以及我希望的师生关系。
  • 寒假作业02关于自己最擅长的技能的成功的经验,对于专业课程的目标,如何利用“做中学”达到我的目标。
  • 寒假作业03关于虚拟机的安装、Ubuntu操作系统的安装、Linux命令的学习过程。
  • 第一周作业下载相关软件;学习一些简单的java程序编写;
  • 第二周作业学习类和包的概念,学习使用对象引用变量的声明与初始化以及注意事项。
  • 第三周作业对类和对象的定义理解进一步加深,对方法设计和方法重载进行初步的学习。
  • 第四周作业对类和对象的定义理解进一步加深,对方法设计和方法重载进行初步的学习。
  • 第五周作业学习了循环语句和条件语句的语法和使用,对原先简单涉及的逻辑运算符也进行了系统详细的学习。
  • 第六周作业对数组进行学习和使用
  • 第七周作业学习类之间的关系,了解类的层次结构。
  • 第八周作业学习利用接口和继承实现多态性。
  • 第九周作业学习异常以及异常的处理方法。
  • 第十周作业学习集合的同构和异构,学习线性数据结构和非线性数据结构。
  • 第十一周作业初步学习Android,学习UI组件。

自认为写得最好一篇博客是?为什么?

  • 如果是在每周总结中选择,我觉得应该是第七周博客,因为:
    第一:这一篇博客从内容上来说比较完整,对问题的总结比较详细;
    第二:那一周的活动不是很多,在课程上投入的时间较多,知识掌握的比较透彻,在那部分的内容上较为丰富;
    第三:在本篇博客中加上了前一周问题的学习结果,对问题的研究总结很有价值,不仅加深自己的理解,还能够给其他遇到相同问题的同学有一定的帮助。这算是丰富了博客内容,体现的了博客的意义。
  • 如果是在所有博客中选择,自认为应该是结对编程项目第三周总结,因为:
    第一:这一篇博客的内容十分的完整,每一个部分都很有料;
    第二:在内容上,这篇博客的总结是我用了很大心思的,毕竟是结对的项目报告,为了给结对伙伴,给一起合作的结果充分的尊重,在这篇博客上投入了很多精力;
    第三:在结果展示上很完整,对于项目的各个部分又有所展示;
    第四:在博客中分享了项目实践中遇到的问题,并且详细的给出了解决办法。

作业中阅读量最高的一篇博客是?谈谈经验

  • 阅读量最高的一篇博客是第五周总结;
  • 经验:我觉得那一篇博客的特别之处在于对问题的总结很多,这也正好体现出博客的意义,那就是对问题的记录与分享。一篇有意义的博客绝对是对某一个问题有较好的理解和解决过程,能够系统的分享一个问题从发现,到研究,到解析,最后解决的过程。这一篇博客给我更多的提醒也就在于应该关注博客的本身意义,注重学习过程的跟进,学习过程中遇到的问题的记录。一篇好的博客不仅是一份好的总结,更是一份好的学习资料。

二、实验报告链接汇总

实验一

          实验名称:Java开发环境的熟悉(Linux + Eclipse)和Intellj IDEA 简易教程
          简要内容:Eclipse 内容换成IDEA(通过命令行和IDEA两种方式实现)换成前两周项目内容

实验二

          实验名称:Java面向对象程序设计
          简要内容:(1)初步掌握单元测试和TDD;
                            (2)理解并掌握面向对象三要素:封装、继承、多态;
                            (3)初步掌握UML建模;
                            (4)熟悉S.O.L.I.D原则;
                            (5)了解设计模式;

实验三

          实验名称:敏捷开发与XP实践 
          简要内容:(1)代码规范;
                            (2)协同测试;
                            (3)重构;
                            (4)密码学应用;

实验四

          实验名称:Android程序设计
          内容简介:(1)Android Stuidio的安装测试;
                            (2)Activity测试;
                            (3)UI测试;
                            (4)布局测试;
                            (5)事件处理测试;

实验五

          实验名称:结对编程
          内容简介:完成客户端与服务器端的数据传输相关技术的学习。

三、团队项目报告链接汇总

简要内容:初期的需求分析、设计思路;中缀转后缀以及计算的初步实现。

简要内容:实现各部分的具体代码;团队贡献度划分。

简要内容:完成相关类的测试;对BUG的调试和对代码的修改;项目总结。

四、代码托管链接

给出statistic.sh的运行结果,说明本学期的代码量目标达到没有?

  • 本学期的目标是5000行代码,从代码行数上来说是达到了目标了,但是我觉得,在知识的掌握程度上来说,我离目标还有很大的差距,看起来我确实有7500行代码,但是实际上有很多是课本例题,而我对于代码的理解还在不够透彻,这是本学期的不足,我觉得我不仅要在假期好好复习整理,还要在下学期的学习过程中更加努力认真,提高自己的编程能力。

加点代码,改点代码是理解的最好方式,参考编程的智慧,谈谈你的心得

  • 读了这篇文章,首要感觉是震撼,对代码的要求竟然能够研究出一朵花来,就像精心创造一件艺术品一样。启示我不管什么事,都要潜心研究,做到尽善尽美。
  • 在这篇文章中我体会较深的应该是关于注释的那一部分,对代码的理解并不是注释越多越好,而是能够在关键的步骤加以画龙点睛般的提点,而大多数的地方不用刻意加上注释,如果表达不清反而会加深对于代码理解的难度。

积极主动敲代码做到没?教材实践上有什么经验教训?

  • 目标基本完成,不过我觉得这个学期积极主动没有体现的很明显,因为课程节奏的关系,很多情况下是赶着学习进度走的,被博客追着跑,每一周都有每一周的任务,时间安排的很密集,没有能够体现出积极主动敲代码。不过我想如果在暑假期间能够好好复习,把课本上的知识和代码再次实践并认真理解,是不是也能算做积极主动敲代码呢?还有在下个学期中,我们没有了晚自习,那个时候能够做到约束自己,主动敲代码才算做真正做到积极主动敲代码把!
  • 在教材实践上的经验教训:
    (1)课本上的代码不能全信,课本上的不一定是对的,记得在某一周的学习过程中,课本上的一个知识点出错导致很多同学直接跳过,但是那个时候其实只要我们心存怀疑,和老师同学一起探讨问题出在什么地方,兴许就能发现问题所在,而且还能加深知识点的理解。
    (2)要学会看课本,总结课本知识的讲解思路,比如在例题中,给出的代码类和对象是分开的,如果不认真看书的话,就不能确定哪一段和哪一段是能够相互结合,共同实现一个程序。思路是学习过程中很重要的技巧,在掌握了课本的讲解思路之后,才能够正确,深刻的理解课本。
    (3)“投机取巧”,在代码的实践中有些知识能够运用前面章节的代码来实践,这个时候,运用前面章节的代码能够达到温故而知新的效果,在课堂实践中已经有所体现。

五、课堂项目实践

参考蓝墨云班课

课堂实践链接

简要内容:用for和while语句实现n!的计算。

简要内容:从命令行传入 学号、课程的成绩,计算平均成绩,并输出;使用边长参数列表实现。

简要内容:已知抽象类Animal,定义Cow类和Sheep类,继承Animal类,并测试。

简要内容:使用选择和插入排序法,写出第3次排序的结果:3 1 9 3 6 2 10

简要内容:使用递归实现:
(1)输入一个数n;
(2)使用递归计算F(n)的值;
(3)写入文件中。

简要内容:使用try-catch语句处理IO异常,例如文件创建异常。

简要内容:完成课本P397页 例题中的节点删除和插入操作,加分项(额外加1分):用Magazine类实现Comparable接口,并对链表中的杂志按照字母顺序排序,并输出。

简要内容:下载附件中的world.sql.zip,编写程序,查询指定信息。

简要内容:Android开发实践:栈;在Android平台上开发移动程序,模拟栈的操作:Push、Pop。

简要内容:开发一个android应用程序,完成中缀转后缀,后缀表达式计算等功能。

简要内容:开发一个Android应用程序,输入一个中缀表达式,输出后缀表达式。

简要内容:结对编程,实现客户端传给服务端一串数据,服务端排序之后传给客户端。

课堂实践对提高应用能力有帮助吗?

  • 课堂实践让我们在有限的时间内完成规定的任务,需要我们迅速的理清设计思路,能够灵活的应用课堂上学到的知识。从效率上来讲,要是只带着耳朵来听,一堂课上也许会因为走神等开小差的行为影响了学习效果,而课堂实践督促我们在课上要聚精会神学习心得知识,同时,在课上学的知识有时候可能一知半解,有时候可能不知道如何运用,通过课堂实践,帮助我很好的解决了这些问题,很好的巩固了课堂知识的同时还能够有问题及时答疑,起到很好的学习效果。

课堂实践上自己有什么经验教训?

  • (1)课堂实践就像高中考试一样,我们要在有限的时间内尽可能多的做出自己能够完成的任务,跳过疑点的同时做好记录方便答疑;
  • (2)课堂实践的时候也是一场小的头脑风暴,这里指的是向已经完成的同学请教问题,还有完成以后和其他同学讨论如何能让程序更加完善美观;
  • (3)因为是课堂实践,所以节奏会比较快,所有有疑问的时候一定不要等,很有可能一等就不会再想起,而在代码的实践过程中,细节往往会造就两个完全不同的结果,所以一定要及时答疑,及时改正,才能够帮助理解课堂知识取得应有的学习效果。

课堂实践上对老师有什么教学建议?

  • 我觉得老师在课堂实践上的节奏掌控做得很好,首先是在频率上,课堂实践的次数挺合适的;其次是在每次时间的控制上,先给出了限制然后由准许延后,充分考虑了我们的时间安排,我觉得挺好的。
  • 一点建议:希望老师在每次的实践过后能够给我们较为规范的代码作为学习参考,这样能够让我们在代码规范和预期要求的完成度上有一个较为标准的参考。

课程收获与不足

  • 一个学期下来,从对编程完全不懂到现在有一定的基础编程能力,还是学到了很多东西的。首先是在编程能力上有所进步,能够完成简单的程序设计,学会了前期准备工作应该如何做,在一个任务着手实践之前应该在整体框架上有所思考,例如UML类图的构建,然后就是在编程时的整体思想,类与方法的调用等等。不仅在具体的知识上,还有在学习体验上,在这个学期中,我看到了很多同学在深夜还不忘敲代码,他们积极进取的精神和忍受枯燥的耐心让我感到很震撼,就是那句励志名言说的:

“比你优秀不可怕,可怕的是比你优秀的人比你更努力。”

这也就在时刻提醒着我不能松懈,要以在自己前面的同学为小目标,积极进取,向着更加优秀的目标前进。

  • 自己需要改进的地方:我觉得自己最需要改进的地方就是不够努力,没有做到向上面所说的那些同学一样的努力;在知识的掌握上还有很大的不足,知道知识点但是不知道该如何实践运用;在编程能力上还在有所欠缺,没有能够很好地完成老师布置的编程任务,这些都是我现在还在不足急需改正的地方。

结对学习是不是真正贯彻了?写一下你提供的帮助或接受了什么帮助,并对老师提供参考建议

  • 结对学习真的给我很大的帮助,尤其是在代码的实践上,有很多细节上我都还在存在问题,这个时候结对伙伴20172306刘辰同学就给了我很大的帮助,他教给我了很多知识点的运用,帮助我巩固了知识点,十分感激。我在结对学习上主要提供的是设计思路的构建,能够支撑起整个设计框架。不仅如此,每周的结对互评也在促使我们去总结自己一周的学习结果,与结对伙伴比较还有什么不足,他有什么值得自己学习借鉴的地方。所以我觉得结对学习相辅相成,互相帮助,是一种很有效的团队学习方式。

问卷调查

你平均每周投入到本课程有效学习时间有多少?

  • 平均投入java的学习时间大约有21个小时。

每周的学习效率有提高吗?你是怎么衡量的?

  • 随着学习进度的推进,我觉得我的学习效率是有所提高的,因为掌握了学习思路和方法之后自己能够将时间更多的用在更有价值的地方。我的衡量方式是在掌握了所有新的知识的情况下所投入的时间精力越少,则效率越高。而不是在相同时间精力内掌握了多少知识,因为后者意味着自己的投入还不够规定的学习任务,那就不能够有更大的提高。

蓝墨云班课的使用对你的学习有促进吗?有什么建议和意见吗?

  • 我觉得有帮助,蓝墨云班课的使用省去了很多作业检查的繁琐步骤,也使得老师给我们分享资料更加方便快捷,节省了很多时间精力。

你觉得这门课老师应该继续做哪一件事情?

  • 继续课堂实践和班课任务,继续在下一周上课前将要讲的内容提前告诉我们,让我们能够提前预习,不至于上课听不懂。

你觉得这门课老师应该停止做哪一件事情?

  • 停止高频率的博客任务,高频率的博客让大家有了很大的时间压力,或者说不要给出十分繁琐的博客要求,很多时间都花在了博客的编写上了,有些内容并不是每周都有内容可写。

你觉得这门课老师应该开始做什么新的事情?

  • 习题和课堂实践的讲解。先讲课在完成编程任务,在刚开学的时候,每周要自学完新知识并且完成课后习题,导致之后老师在课堂上讲普通知识没有太大意义,而且自学过程并没有取得一个很好的效果。

给出你的总结中涉及到的链接的二维码

作业博客

  • 寒假作业1:

  • 寒假作业2:

  • 寒假作业3:

  • 第一周作业:

  • 第二周作业:

  • 第三周作业:

  • 第四周作业:

  • 第五周作业:

  • 第六周作业:

  • 第七周作业:

  • 第八周作业:

  • 第九周作业:

  • 第十周作业:

  • 第十一周作业:

实验

  • 实验一:

  • 实验二:

  • 实验三:

  • 实验四:

  • 实验五:

结对编程-四则运算

  • 第一周:

  • 第二周:

  • 第三周:

实践

  • 实践一:

  • 实践二:

  • 实践三:

  • 实践四:

  • 实践五:

  • 实践六:

  • 实践七:

  • 实践八:

  • 实践九:

  • 实践十:

  • 实践十一:

  • 实践十二:

posted @ 2018-06-24 18:05  20172325  阅读(170)  评论(0编辑  收藏  举报