第三次BLOG作业——面向对象课程总结
一、前言
这学期开始的面向对象程序设计课程,和上学期的C语言比较,简直是当头一棒。老师管理的非常严,课程设计的也是很紧密,同样是程序设计,简直不是一个量级的。这门课是线上线下结合教学的,前面的Java基础语法和基本的东西都是在学堂在线是学习的,而是上课的内容就比较精炼,都是一些重要的思维,比如面向对象七大法则,就让我记得很清楚。PTA作业算是里面难度和作业量比较大的,基本上和实验一起把上课讲到的东西应用到了。
课程基本上是周期化的,就和我们的blog差不多,第一周期就是在家里结合线上课程学习Java的基础语法,然后第二周期就是开始上课之后学习class的设计等等,第三周期就是面向对象技术的学习,最后一段就是一些Java FX的学习等等。而PTA作业和实验的难度也是逐渐上升的,像第一次做电梯相关的PTA作业就简直是折磨,三次迭代每一次都会遇到各种各样的困难,最后也没写出来多少。然后紧接着就是第一次BLOG作业,这一开始上课的强度确实比较大,到后面难度略微有些下降但是工作量也不少,一些面向对象的设计的作业,基本就是上课的内容再一次实现。后面都是一样的节奏,PTA,实验,最后是BLOG,最后JavaFX是翻转课堂,让我们自己学习和举例子,然后到台上讲,这也让我负责的部分记得特别清楚,查了label的好多东西。
虽然课程并不是特别多,但是确实学到了很多东西,效率很高,不仅仅局限于语法,会写Java程序,而是学会了程序设计,能够让程序更合理。最开始难度很大,后面老师也根据情况降低了难度,总的来说工作量也是可以接受的程度。翻转课堂不仅能让知识点记得更清楚,还可以锻炼我们讲解的能力,和团队合作的经验。
二、面向对象技术总结
第一阶段的PTA作业和实验主要是考察了一些Java的基本语法和一些最基本的逻辑。
第二阶段的PTA作业(也就是电梯的考察)主要是学习了封装和类设计相关的内容,里面最难的部分还是电梯的逻辑和算法设计,look算法确实难倒了我。
第三阶段的PTA作业就是开始学习了多态和继承,学习了父类和子类之间的一些法则,和继承和组合的区别以及每个情况应该怎么做。
第四阶段的PTA作业就是抽象类和接口了,里面航空货物系统里面都体现出了了,这两者的区别和优缺点,当然现在抽象类的使用已经没有接口多了。
最后一阶段就是我们JavaFX的学习,和一些异常处理等等,工厂模式之类的。
实验基本上和PTA是相同的进度,考察的也是上面的内容。
其中贯穿全部的就是面向对象法则,从开始的类设计的迪米特法则,到后面继承多态的开闭原则,依赖倒转原则,到最后接口隔离原则,这就是面向对象的根源和优点,可以让程序的拓展和修正更加的方便,更加的稳固。
封装讲的就是类和类之间要尽量减少相关度,以至于在写程序的时候一个class出现问题,其他的所有class都要修改。
继承多态是密不可分的,继承实现了代码的复用,多态基于继承让代码的可拓展性大大加强,他们的目的都是让代码更加有生命力,减轻程序员后期的工作。
抽象类和接口两者非常的相似,但是接口更加好用,两者也是多态实现的基础。
集合框架和异常处理都是程序避不开的功能,能让Java程序更加方便和强大,而老师讲的一些异常处理的方法也是非常的巧妙。
JavaFX 主要就是可视化的实现,和C语言中ege有相似之处,但是简单更加易于理解。
经过这个学习Java课程的学习,大概掌握了一些面向对象的设计方法,能够写一下比较简单的程序。
还有好多地方掌握的不够,好多Java的设计方法都没有了解,一堆Java的函数什么的都是不会应用,JavaFX也有好多地方需要更加多的练习,不得不说那界面我做的就是一坨,根本做不了一点复杂的。Java简直是深如大海,需要学的对象一个接一个,还有要多加练习,编程速度也是不太行。
三、踩坑心得
这门课的坑可太多了,数不胜数。
第一点就是C语言学习的时候程序都没有啥太复杂的,这玩意电梯程序一搞,在某些也写不出来,根本就没有提前设计的思维,而且也没有写注释的习惯,后面第二次迭代的时候都看不懂自己写的是什么玩意,到最后全在做无用功什么都没搞出来。
第二点就是Java的配置问题,那idea出现问题,Java FX的配置在网上找到的五花八门,到最后搞了半天还不能用,不如直接去官网直接下一个。
第三点就是AI这玩意就不能全部依赖,让它改个代码不是刮风就是下雨,纯纯给自己找事,等全部描述完了自己也就会了。
第四点就是上课一定要预习和复习,这课上讲的一些东西要是不预习那完蛋了,听的啥不是啥。
第五点就是小组合作只能相信自己,不要把希望放在小组的其他人身上!!!
最后一点就是不要低估老师给的时间很充裕,要是全部堆在最后一天写,那完蛋了绝对写不出来。
四、改进建议及总结
总结:
这学期的面向对象程序设计课程就和老师说的一样是打怪升级。从最开始被电梯算法虐到怀疑人生,到后来能独立设计简单的类结构,到最后能写出真正的面向对象程序,让我明白了老师说的这门课的重点不是Java,而是真正理解了 “面向对象” 的思维方式 。
面向对象和C不一样,不是一堆堆起来的函数,而是有层次 ,职务分明的类,轻松能够变通和修改,以及拓展。
虽然段老师很严厉,但是也在给我们不断降低难度。
虽然JavaFX做的还是不行,程序设计的还是亢余,但总算是进入了面向对象的大门。
回想起一次次被PTA折磨的时候,回想起改的越来越差的代码,也是一段值得记录的时光。
改进和意见:
1.实验系统太难搞了,虽说老师是为了提高我们的打字水平,但是我认为可以做的更加人性化一点,这不显示行数,容易闪退,很让人红温。
2.那线上课程的答案有的设计的和讲的都不一样,而且线上课程也可以更新一下了。
3.PTA可以设计的难度递增小一点点,比如那前面很简单的题到了电梯就不是一个级别了。
4.JavaFX 的学习可以是先让自学后面一个小组做一个小项目讲解一下自己的感悟。
5.blog三千字有点太多了。

浙公网安备 33010602011771号