工具类Util和通用类Common的反模式

Util和Common反模式在错误的方向上快速增长。

最初开始于一个开发人员创建一个单一的util类,一个简单的方法不适合任何其他地方,然后,其他人跟随他添加许多其他方法。

如果没有正确处理,Utils类可能会成为代码中最有问题的地方。 我曾经看到过一个Util类,可以将整个银行的估值变为零。

以下是我写更好的代码所遵循的5条规则:

1、划分组团相关逻辑
对相同数据进行操作的方法应该在同一个类中。
将数据和行为分配到一个组”类“中。

2、实行单一责任制
每个类都应该只有一个改变的理由。
这意味着一个类应该只有一个功能或职责。

如果你发现一个类做得太多了,那么是时候把它分解成更集中的类了。

3、通过组合进行封装
在可行的情况下,更喜欢组合而不是继承。

使用对象来表示可以组合到类中的行为或状态,而不是通过继承来扩展它们。

4、在公共接口处的验证输入
当你的方法需要接受来自代码其他部分的输入时,不要仅仅相信输入是正确的。

验证以确保其符合方法的要求。

5、剪切可变状态
形式与内容分离,可变状态属于内容,减少内容对形式逻辑的改变,减少数据对算法的影响。
减少类中可更改状态的数量。
可以改变的变量越多,就越难跟踪它们的相互作用并维护系统。
在可能的情况下,使类实例不可变。

不使用封装会导致系统更难维护。