正如我在Effective java
膨胀的类层次结构可能导致包含许多的膨胀类 只有它们的参数类型不同的方法,就像它们一样 类层次结构中没有类型可以捕获常见行为。
和Link
臃肿的类通常有许多特殊情况:属性或行为 对某些情况有效但对其他情况无效。 程序员经常尝试 通过引入类型标签处理特殊情况。
并且Tagged类和膨胀类之间存在相似性,如Effective java
中提到的那样:
一个类,其实例有两种或更多种类,并包含一个标记 指示实例风格的字段。实例负担沉重 与不相关的领域属于其他风味。
总结这两个类可能有标记类型/字段和两个类都有很多实现(在一个类中模拟了很多功能)。
我对这些术语感到困惑,我想知道,这两个 Bloated类和Tagged类之间有什么区别?
答案 0 :(得分:4)
"臃肿"是(有点)主观的,"标记"很难确定。 "鼓胀症"可以参考很多东西;关注点分离不佳,封装丢失,抽象层次不同等等。
"标记"不太主观,因为会有一个定义功能,抽象等分离的字段。