冗赘类
●症状和特点
理解和维护课程总是花费时间和金钱。因此,如果一个类做得不够吸引你的注意,它应该被删除。
●问题产生的原因
也许一个类被设计成具有完整的功能,但经过一些重构后,它变得小得离谱。
或者它可能是为了支持未来从未完成的开发工作而设计的。
●解决方法
几乎无用的成分应该使用内联类法处理。
对于函数较少的子类,请尝试使用折叠继承体系法。
●好处
减少代码大小。
更容易维护。
●何时需要忽略
有时创建冗赘类是为了描述未来开发的意图,在这种情况下,试着在代码中保持清晰和简单之间的平衡。
数据类
●症状和特点
数据类指的是只包含字段和用于访问这些数据的粗略方法(getter和setter)的类。这些只是其他类使用的数据的容器。这些类不包含任何额外的功能,并且不能独立地操作它们所拥有的数据。
●问题产生的原因
当一个新创建的类只包含几个公共字段(甚至可能只有几个getter /setter)时,这是很正常的事情。但对象的真正强大之处在于它们可以包含行为类型或对其数据的操作。
●解决方法
如果类包含公共字段,则使用封装字段来隐藏它们,以防止直接访问,并要求仅通过getter和setter执行访问。
对于存储在集合(如数组)中的数据,使用封装集合法。
检查使用该类的客户端代码。在其中,您可能会发现更适合放在数据类本身中的功能。如果是这种情况,使用方法搬移法和提取方法法将此功能迁移到数据类。
在类中的方法已经被精心设计过后,你可能希望摆脱用于数据访问的旧方法,这些方法对类数据的访问过于广泛。为此,移除设值函数法和隐藏方法法可能会有所帮助。
●好处
提高对代码的理解和组织。对特定数据的操作现在收集在一个地方,而不是在整个代码中随意地收集。
帮助你发现重复的客户端代码。