cuiheyu
  1. 0.  前言

本次博客总结java第三阶段的学习,以及对于面向对象语言的学习体会。

1. 作业的过程总结

除去前两个阶段的作业不谈,第三阶段的作业难度以及复杂度增大了很多,最主要的是没有作业手册中出现的类图让我去理解编程的过程,而是要求学生自己进行类的设计。

(1)第一次作业

第一次作业要求设计雨刷程序的扩展设计,第一次作业是以老师在课堂上将结过的例题的拓展,在原先的基础上扩展雨刷系统的功能。

(2)第二次作业

          第二次作业要求统计java中关键词的出现次数。

(3)第三次作业

          第三次作业要求完成表达式的求值。

 

   这三次作业相对于前两次的作业来说,更加侧重于类的设计,以及学生对测试点的把控。第一次作业建立在课堂例题的基础上,只要重新设计类,使其结构满足对扩展开放的设计要求,而第二次和第三次的作业,让我们自学了新的内容,和自行设计类。

       作业中遇到的问题以及解决方案

       这几次作业中我主要遇到的问题就是测试点无法通过,以及自学栈的时候出现了很大的问题。关于测试点的问题,在eclipse中可以有效通过的测试点,在pta的测试中无法有效通过,我觉得主要问题在与我使用的方法与系统给定的方法之间有一定差距,我测试了大量的数据,结果都是正确的,但是始终无法通过pta的测试点。可能是因为有个别数据错误或是漏掉了一些细节,在请教大佬之后采用了其他方法得以通过pta的测试。其次是在学习栈的时候,由于网上的资料过于片面,导致我无法深度系统地学习,其次,由于没有具体且相似的例子,导致我无法去借鉴与参考。

       作业花费时间

    由于测试点的问题,第二次作业和第三次的作业我花费的时间有点长,满打满算分别花费了7,11,14小时时间。第一次作业相对比较简单,老师在上课时已经对这一次作业有了一定的讲解。第二次作业由于分隔测试点无法通过,我花费了很长的时间,但是最终还是没有通过。第三次作业是最难的,因为要我们自学栈的相关知识,要求使用栈的特性将表达式改为后缀表达式,其中还考察到了正则表达式的应用,我可谓叫苦难堪。

       关于编程严谨性的认识

       我觉得不需要我多说了,一杯水一包烟,一个测试点敲一天,结果还过不了(doge)。但是还是要说一下,在写程序的时候,一定要给自己留好一条后路,在开始写代码之前,严谨地构思编程的步骤,想好自己编写程序对应应该实现的功能.。

 

2.设计心得

(1)关于对面向对象编程以及类的设计理解

早期的计算机编程是基于面向过程的方法,例如实现算术运算1+1+2 = 4,通过设计一个算法就可以解决当时的问题。随着计算机技术的不断提高,计算机被用于解决越来越复杂的问题。一切事物皆对象,通过面向对象的方式,将现实世界的事物抽象成对象,现实世界中的关系抽象成类、继承,帮助人们实现对现实世界的抽象与数字建模。通过面向对象的方法,更利于用人理解的方式对复杂系统进行分析、设计与编程。同时,面向对象能有效提高编程的效率,通过封装技术,消息机制可以像搭积木的一样快速开发出一个全新的系统。面向对象是指一种程序设计范型,同时也是一种程序开发的方法。对象指的是类的集合。它将对象作为程序的基本单元,将程序和数据封装其中,以提高软件的重用性、灵活性和扩展性。2)关于测试的理解

数据测试对于代码的检验是十分重要的,测试点无法完全通过的程序是不完整的,很有可能会出现bug。一个好的程序是要经得起大量数据的检验的。对于一段代码而言,正常运行往往不能够决定这段代码的好坏,只有完美通过测试才算初步完成。Pta平台上题目便是在程序没有编译错误的基础上判断程序是否通过多个测试点的测试来进行给分。测试可以直接判断一段代码是否有着某种功能,以及反映出这种功能的局限和质量。

 

3.课程收获与总结

终于,呼~结课了,经过这一个学期对java的学习,我深刻认识到了java这一门面向对象编程的强大所在,在这个学期这里,我主要学习了java的基础知识,这只是java庞大知识体系中的冰山一角。就如同上个学期C语言的学习,在这背后还有着大量的知识没有显露出来。在看CSDN大佬们的编程设计时,我这个初学者还是看不懂大部分。除去代码和数据库,我觉得我收获最大的还是在面向对象的编程思维上,这种思考事情的能力在之后的学习中一定也可以帮助我渡过难关。

4.对于课程的建议

    这个学期由于疫情的影响,我们没能与老师在课堂上相遇,而是通过线上教学的形式,学生通过上网课的形式学习。在此期间,我发现了有很多的问题。

(1)     学生只是了解到了编程的方法与思维,没能了解在现实生活中编程的运用,编程语言是一门工具,我们在学习工具的使用方法,却不理解这个工具的运用领域。这一定程度上限制了学生对未来的展望和思考。

(2)     老师上课的节奏太快,没有课间休息时间,导致无法短时间内消化新的知识,但是得益于网上课堂的录制功能,我可以重复观看课堂教学录像,但是这样子明显花费了过多的时间。

(3)     关于一些概念上的知识,这些知识大部分需要自学,老师上课无法讲解,由于在家上课没有课本,学生有一定程度上概念性知识的缺失,需要一定时间查看专业书学习。

分类:

技术点:

相关文章:

  • 2021-11-06
  • 2021-11-27
  • 2021-11-17
  • 2021-11-16
  • 2021-11-27
  • 2021-11-27
  • 2021-12-04
猜你喜欢
  • 2020-05-28
  • 2021-11-17
  • 2021-11-27
  • 2021-11-06
  • 2021-12-24
相关资源
相似解决方案