OO第一单元总结

第一次做业

(1)基于度量来分析本身的程序结构

类图:

设计了三个类,分别为对输入进行判断和处理的Qiudao类,负责对表达式进行运算处理的MATH_WH类和将MATH_WH处理结果进行求导运算的QD类。
度量分析:

Metrics图中显示qd方法的圈复杂度过大以及嵌套深度过深。qd方法是负责对处理完的表达式进行求导运算的方法,其中有过多的if-else语句和对整个表达式的循环遍历,因此使得复杂度过大,嵌套过深。正则表达式

(2)分析本身程序的bug

强测中出现了8个bug。主要是第一次设计时正则表达式存在问题,致使了在对符号进行处理的阶段常出现将表达式化简成错误的形式,致使后面的求导过程也出现问题。时在数据类型的考虑上也有所欠缺,使用double和int没有考虑到系数和指数为数过长时的状况。app

第二次做业

(1)基于度量来分析本身的程序结构

类图:

设计了四个类,分别是对输入用正则表达式进行处理的Qiudao类,从表达式中拆分出项的Chaixiang类,对项进一步拆分为因子的Xiang类,对因子进行整理和求导、同时输出计算结果的Qd类。
度量分析:
设计

(2)分析本身程序的bug

强测中出现了7个bug。正则表达式的设计依然有一些问题,在后面将项拆分红因子时对符号的处理出现了问题,所以求导结果中也出现了符号的问题。blog

(3)Applying Creational Pattern

两次做业均采用建立型模式(Creational Pattern)io

总结

应该尽快的造成设计思路,并尝试实现;同时也要考虑多种状况,防止出现本身意想不到的bug,难以修复。循环

相关文章
相关标签/搜索