oo第二单元(5-8周)作业总结

前言

  本次博客针对第二阶段的三次作业进行总结

1.作业过程

   知识迭代:本阶段的作业迭代关系主要是类的继承关系,第五次作业接触了简单的类继承,算是我对继承的一个初步了解,第六次则涉及到多态,第七次开始使用抽象类以及接口的使用,这三次作业逐步深入,让我对继承和多态有了初步的认知。

   在第五次作业中关于继承的部分只有简单的在子类中调用父类的方法,我当时对继承的了解只是对代码的复用,而言和复制粘贴没有什么不同,我并不理解这种做法的价值,同时在进行子类的编写时,我对封装性有了更对的了解,在初次编写时我没有对父类的private属性编写set方法,这使得我无法在子类中更改继承自父类的属性。在接下来的第六次作业中我们接触到多态的概念,此时我对继承性的意义有了更深一步的了解,多态的存在让我可以用更简洁的高效的实现功能;第七次作业中使用的抽象类也让我感觉非常好用,这也是通过继承才能实现的。  

   问题和解决:这一阶段作业主要针对类的继承、抽象类、接口和正则表达式进行练习,其中第五次的作业主要难度在于正则表达式,习题5-1针对日期的正则表达式进行练习,正则表达式比较复杂,对于我这样的新手来说比较困难,在编写表达式时我不知道使用"-9][0-9]{2}|[1-9][0-9]{3})"+ "/((([13578]|1[02])/([1-9]|[12][0-9]|3[01]))|(([469]|11)/([1-9]|[12][0-9]|30))|"这样的使用”+”链接字符串的写法,将表达式全部写在一起,导致难以阅读和修改,还有就是没有注意封装性造成的问题,第六次作业遇到的主要问题也是正则表达式方面的,在分离多项式的每一项时我不知道怎么对多项式项的正负号进行处理简单的用[+,-]来分离会使得对带 - 项的处理变得更加困难,最后我是用"-?"去掉所有的"+"得以解决;第七次作业中我没有仔细看作业指导书,没有使用主类之中的Scanner对象而是在其他类中兴建了Scanner这种写法在eclipse中可以正常输出答案,但是无法同国pta测试点,我误以为时输出格式有问题就在输出方面浪费了大量时间,最后是重新阅读指导书改正才解决,这也让我接触到流的概念。

    时间比例:这几次的作业花费的时间都比较长,大概的时间比例是3:2:3其中第一次因为不了解正则表达式导致花费了大量的时间而第三次则是因为没有意识到流的问题浪费了时间。

     对编程过程严谨性的认识及教训

2.oo设计心得

      对面向对象三大技术特性之间关系的理解:封装性,继承性和多态性是面向对象的三大特性,经过这一阶段的学习我对它们中间的联系有了一定的了解,封装是为了防止一些属性被随意改动而造成的程序稳定性下降加强了程式码的安全性,在继承关系中可以防止子类的方法改变了父类的重要属性,但用户可以通过接口的方法进行访问;态性是建立在继承的基础上的,通过多态性和继承性可以实现抽象类,用相同的方法实现多种效果,增加了程序的灵活性,增加了程序额可扩展性。

     面向对象基本原则的理解:单一职责原则:在这段时间的学习中我对单一职责原则的理解也得到了提高,在父类-子类关系中,单一职责原则表现在分得细上,在父类中不会有太多的方法,很多的方法会根据子类的特性细分到子类中,这使得程序在逻辑上更加合理也大大简化了编程的难度;开闭原则:我的理解是尽量不要改已经写好的程序,新加入的功能不因该对其他的已处在的方法造成影响,以防止出现意料之外的bug,在作业7-3中即使旧的方法已经不再使用,我也要重新编写新的方法,这是程序编写的基本要求。

    oo编程思维理解:这几次作业在类的继承上的练习符合了面向对象的思维,父类子类,由大到小这样的分类方法符合我们的生活中的逻辑,不同事物之间的相似和区别很好的表现了出来。

    类设计心得:主要是要符合单一职责原则,通过职责的细分来降低耦合性。

3.测试的理解与实践

     测试对代码质量的重要性:在编程时有些问题必须通过测试来了解,如正则表达式的合理性,如果没有按照要求输入程序是否也能正常运行,测试可以大大提高代码检测的效率,单步调试可以快速定位错误的位置,在现阶段,代码的长度快速增加,通过一行一行检测不太现实,必须通过大量的测试寻找问题,同时,测试还克以帮助我们对程序的效率进行优化。

扫描二维码关注公众号,回复: 11170974 查看本文章

     通过查阅资料,Junit测试是可行的。

4.课程收获

     总结收获,教训:在这段时间的学习中,感触最大的是编程的规范性,面向对象的原则和特性在编程中发挥了很大的作用,规范的编写看似麻烦,但好处无穷,在第一次作业中我忽略了封装,造成了很多的问题,通过学习我在程序规范的方面比以前有了很大的进步。同时,基本了解了继承,对我的编程能力有很大提高。

5.对课程的建议

     作业难度:现在的难度就很合适,需要花时间又不至于做不出来。

      课堂内容:希望老师多讲一些题目,包括pta练习和其他的好的题目。

猜你喜欢

转载自www.cnblogs.com/yzy-PI/p/12819594.html