类
10.1 类的名称应当描述其权责。 实际上,命名正是帮助判断类的长度的第一个手段。如果无法为某个类命以精确的名称,这个类大概就太长了。
10.2 应该能够以大概25个词简要描述一个类,且不用“if”,”and” ,”or”和“but”等词汇。
10.3 单一权责原则(SRP) :类或模块应该有且只有一个加以修改的理由。
10.4 系统应该由许多短小的类而不是少许巨大的类组成。每个小类封装一个权责,只有一个修改的原因,并与少数其他类一起协同达成期待的系统行为。
10.5 类应该只有少量实体变量。类中的每个方法都应该操作一个或多个这种变量,这就是所谓的 内聚性。我们通常所说的高内聚,就是说类中的方法和变量互相依赖、互相结合成一个逻辑整体。
10.6 在将大函数拆分为小函数时,一般情况下我们很可能会传递多个参数。如果将这些参数提升为类的实体变量,就可以免除传递多个变量。但是 ,这会导致类丧失内聚性。最好的方法,是创建小类,将这些变量作为小类的实体变量。