ivaneeo's blog

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

            BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
            669 Posts :: 0 Stories :: 64 Comments :: 0 Trackbacks
          開發(fā)初期,你可能會在兩個classes之間建立一條單向連接,使其中一個class可以引用另一個class.隨著時間推移,你可能發(fā)現(xiàn)referred class需要得到其引用者(某個object)以便進行某些處理.也就是說它需要一個反向指針.

          [反向指針]手法有點棘手,所以在你能夠自在運用它之前,應(yīng)該有相應(yīng)的測試.通常我不花心思去測試訪問函數(shù)(accessors),因為普通訪問函數(shù)的風(fēng)險沒有高到需要測試的地步,但本重構(gòu)要求測試訪問函數(shù),所以它是極少數(shù)需要添加測試的重構(gòu)手法之一.

          本重構(gòu)運用反向指針(back pointer)實現(xiàn)雙向關(guān)聯(lián)(bidirectionality).其他技術(shù)(例如連接對象,link objects)需要其他重構(gòu)手法.
          posted on 2005-09-13 10:31 ivaneeo 閱讀(305) 評論(0)  編輯  收藏 所屬分類: refactoring-從地獄中重生
          主站蜘蛛池模板: 尖扎县| 旬邑县| 秀山| 新沂市| 武平县| 绥宁县| 仪征市| 宜川县| 鄂托克前旗| 民丰县| 临海市| 田东县| 石屏县| 隆子县| 洛隆县| 阿拉善左旗| 定日县| 丹凤县| 南岸区| 凯里市| 泸西县| 昭平县| 濮阳市| 梅河口市| 安义县| 恭城| 铜川市| 荔浦县| 尤溪县| 长白| 栾川县| 房产| 修文县| 呼和浩特市| 行唐县| 卢湾区| 长泰县| 晋宁县| 固安县| 招远市| 南部县|