第一次作业

类图:

 面向对象第一次总结

 

复杂度(使用Metrics):

 面向对象第一次总结

设计思路:

入口是Main类,在Polynomial中有生成列表、合并同类项等等方法。

优缺点:

功能性和性能较为完善,但是没有领会面向对象的思想,导致程序框架比较难看。

分析自己程序的bug:

第一次作业没有Bug。

分析自己发现别人程序bug所采用的策略:

手写对拍器,自动化寻找bug,发现错误时输出。

 

 

第二次作业

类图:

面向对象第一次总结

复杂度:

面向对象第一次总结

面向对象第一次总结

 设计思路:

不同功能放在不同类,Deri求导,Mono分解等等……但是没有继承和多态。

分析自己程序的bug:

在化简时,对List进行remove操作,但是没想到其调用了对象的equal方法,true则remove,而我重写了equal,因此删除了错误的对象。

 

第三次作业

类图:

面向对象第一次总结

 

复杂度:

面向对象第一次总结

面向对象第一次总结

设计思路:

建立表达式树,加、乘法、三角函数设为Operat的子类,形成继承关系。使用了重载、重写方法。

由于使用递归,导致复杂度较高。

未发现bug。

 

 

总结:

这三次作业让我有了完成较复杂项目的经验,也是OO思想的一次学习,让我受益匪浅。

学习其他同学的代码也是一项有意思的工作,非常有意义。

关于重构,应该结合Interface来重构,更好地诠释OO的含义。

相关文章:

  • 2019-03-26
  • 2021-05-26
  • 2021-09-18
猜你喜欢
  • 2022-03-08
  • 2021-10-02
  • 2021-07-01
  • 2021-08-02
  • 2021-10-06
  • 2021-06-12
  • 2021-06-14
相关资源
相似解决方案