代码的坏味道(20)-Data Class(纯稚的数据类)

代码的坏味道(20)-Data Class(纯稚的数据类)
所谓Data Class是指:它们拥有一些值域(fields),以及用于访问(读写)这些值域的函数,除此之外一无长物。这样的classes只是一种[不会说话的 数据容器],它们几乎一定被其他classes过分细琐地操控着。这些classes早期可能拥有public值域,果真如此你应该在别人注意到它们之 前,立刻运用 Encapsulate Field(206)将它们封装起来。如果这些classes内含容器类的值域(collection fields),你应该检查它们是不是得到了恰当的封装;如果没有,就运用 Encapsulate Collection(208)把它们封装起来。对于那些不该被其他classes修改的值域,请运用 Remove Setting Method(300)。

然后,找出这些[取值/设值]函数(getting and setting methods)被其他classes运用的地点。尝试以 Move Method(142)把那些调用行为搬移到Data Class来。如果无法搬移整个函数,就运用 Extract Method(110)产生一个可被搬移的函数。不久之后你就可以运用Hide Method(303)把这些[取值/设值]函数隐藏起来了。

你可能感兴趣的:(代码的坏味道(20)-Data Class(纯稚的数据类))