类
类的组织
- 类应该从一组变量列表开始。如果有公共静态常量,应该先出现。然后是私有静态变量,以及私有实体变量。很少会有公共变量(尽量可能公共变量的数量)。
- 公共函数应跟在变量列表之后,最后再是私有函数。
类应该短小
- 类名应该精确。类的名称应该描述其全责。
- 一个类应该只有一个全责。
- 内聚。类应该只有少量实体变量。类中的每个方法都应该操作一个或多个这样的变量。高的内聚性,意味着类中的方法和变量互相依赖、互相结合成一个逻辑整体。
- 有时候,随着对方法的扩充,实体变量的数量开始上升,往往这意味着至少有一个类要从大类里面挣扎出来。重构代码后,实体变量就分给几个不同的类了。
修进类的技巧
我们知道编写一个类不是一触而就的,而是通过了无数次修进的。而系统的每处修改(添加功能,改变逻辑方法等)都让我们冒着系统会出现问题的风险。这时候我们要对类加以修进(组织和重构),以降低修改所面临的风险。
- 当一个类庞杂巨大需要重构的时候,将一个类分隔为几个类,用明确的功能权责来划分。
- 当有新特性要添加时,可以写一个新类,如果能达到新类只用了原有类的极少数(一个或两个)方法时,就是低耦合度。原有类没有被干扰,新类也相当简洁(只服务于某个新特性)。