OO第一单元作业总结
第一单元小结 基于度量分析自己的程序结构(工具:DesigniteJava、MetricsReloader) 总的分析:unit1的作业的代码的质量不是很高,主要有以下几点原因: 类与类之间耦合程度过高,可扩展性差 部分类内部实现过于复杂,不利于调试和维护 没有使用对象构造中的工厂模式进行因子、项等的创建 部分类内部方法的实现不够聚合,会与其他类的一些方法有较大联系 圈复杂度:和类内部实现的复杂度相关,循环条件判断等复杂的逻辑组合相关 类之间的依赖关系 UML图如下: 分析:在这次的设计过程中,类的划分上是存在一定的问题的,例如对于不同因子的求导的过程,求导应该交给对应的类自己去完成,在内部实现求导功能,返回一个统一的类型,而不是交由外部进行判断然后求出求出对应的结果,因此应当在之后的设计中尽可能降低类与类之间的耦合程度,增加类内部的聚合度,从而实现功能的专一性(职责明确),DIT为1。 优点:使用到了类的继承的设计结构,抽象方法的复写 缺点:方法的功能上不是很专一,方法与方法之间的耦合度比较高,有些方法的实现过于复杂,不便于调试和维护 Metrics分析: 分析:在这一单元的构造中,部分的代码架构不是很好,不太容易维护,其中最主要的原因是大量的使用到了if-else的逻辑判断的语句,同时存在者多层的嵌套结构,导致代码的可维护性和可扩展性大大降低; 解决的办法