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 閱讀(533) 評論(0)  編輯  收藏 所屬分類: refactoring-從地獄中重生
          主站蜘蛛池模板: 浑源县| 芮城县| 麻阳| 南安市| 高安市| 聂拉木县| 马山县| 安化县| 阿图什市| 济源市| 岳普湖县| 高密市| 贡嘎县| 天镇县| 英超| 孝义市| 三河市| 莱阳市| 庄河市| 奇台县| 峨边| 呈贡县| 贵港市| 金溪县| 吴桥县| 双桥区| 新巴尔虎右旗| 石林| 雷州市| 巴楚县| 汉川市| SHOW| 南康市| 峨眉山市| 高邮市| 遂平县| 云梦县| 新龙县| 格尔木市| 南陵县| 黄山市|