一、类的组织
遵循Java约定,类的组织顺序:公有静态常量、私有静态变量、私有实体变量。接下来是公共函数紧跟在变量列表之后,私有工具函数则紧跟其使用函数。这样符合了<b>自顶向下</b>原则。
封装:保持变量和工具函数的私有性。但是,往往需要根据测试,破坏一定的封装性。用protected或者是默认访问的包访问域。
二、类应该短小
SRP(单一职责原则):类和模块有且只有一条加以修改的理由,一个类应该只有一个权责。
在OO中SRP是一个极其重要的原则,一般的类也需要遵循这个原则,同时类应该只有少量的实体变量。类的每一个方法应该操作一个活多个这种变量。通常方法操作的变量越多,就越黏聚到类上。
一般来说,创建极大化内聚既不可取也不可能;另一方面,内聚性高代表方法和变量是凝聚的逻辑体。保持函数和参数列表短小往往导致了实体变量的数量增多。从而往往需要将类拆分,重聚。
三、为了修改而组织
对于多数系统,修改一直持续。往往每处修改都可能造成系统其它部分不能如期工作。修改也违反了开放-封闭原则。
OCP(开放-封闭原则):类应当对扩展开放,对其修改封闭。
因此为了防止系统扩展带来的问题,我们需要隔离修改。也就是解耦各个部件,这就遵循了另一条设计原则DIP。
DIP(依赖倒转):类应当依赖于抽象而不是依赖于细节。