OO第一单元

第一单元:表达式求导

 

第一次作业

分析

使用正则表达式识别出表达式的每一项,对每一项进行求导,直接把求导结果加入到字符串并未考虑优化。

度量

可以看出setItem方法iv(G)和v(G)最高,这是求导方法,对每个项进行判断类型,采用不同的求导方式。

类图

第二次作业

分析

与第一次作业相比,第二次作业增加了乘积项,整体思路跟第一次差不多,得到每一项后用*隔开得到每一个因子,用乘法公式进行求导。

度量

Mul方法的iv(G)和v(G)最高。

类图

分析自己程序的bug

在第一次作业中,识别空白字符是直接用了\\s输入除了\tspace之外的其他空白字符也能识别成功,在判断WRONG FORMAT! 时,用正则识别每一项后就把这一项从输入的表达式中删除,这会导致比如++  2+x这种不合法式子也能输出导数。

在第二次作业中,由于太大意没进行充分测试,强测分数很低,对cos(x)求导忘加负号了,并且对采用乘法公式求出来的式子用正号相连没去考虑负号情况。

 

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

找别人bug就直接运行自己在设计过程中构造可能会出错的式子,能不能找出就随缘了。

 

Applying Creational Pattern

总结

第一单元的作业完成情况很差,第三次作业没做出来,第一第二次作业也是没去考虑优化问题,设计的框架结构不好,接下来会好好努力,多多学习。

猜你喜欢

转载自www.cnblogs.com/catfish3/p/10607983.html
今日推荐