ivaneeo's blog

自由的力量,自由的生活。

  BlogJava :: 首页 :: 联系 :: 聚合  :: 管理
  669 Posts :: 0 Stories :: 64 Comments :: 0 Trackbacks
所谓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)把这些[取值/设值]函数隐藏起来了。
posted on 2005-08-19 17:05 ivaneeo 阅读(505) 评论(0)  编辑  收藏 所属分类: refactoring-从地狱中重生

只有注册用户登录后才能发表评论。


网站导航: