Duffblog

          前進(jìn)一步,看看,需要前進(jìn)更大一步才可以。

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            5 隨筆 :: 53 文章 :: 5 評論 :: 0 Trackbacks
          Ioc:Inversion Of Control。即控制反轉(zhuǎn)。
          IoC模式基本上是一個高層的概念,在Martin Fowler的Inversion of Control Containers and the Dependency Injection pattern中談到,實現(xiàn)IoC有兩種方式:Dependency Injection與Service Locator。
          您可以在下面的網(wǎng)址中找到該篇文章:
          http://www.martinfowler.com/articles/injection.html(這個要好好看看。)
          Spring所採用的是Dependency Injection來實現(xiàn)IoC,中文翻譯為依賴注入,依賴注入的意義是:「保留抽象介面,讓組件依賴於抽象介面,當(dāng)組件要與其它實際的物件發(fā)生依賴關(guān)係時,藉過抽象介面來注入依賴的實際物件?!?br />依賴注入在Martin Fowler的文章中談到了三種實現(xiàn)方式:interface injection、setter injection與constructor injection。並分別稱其為type 1 IoC、type 2 IoC與type 3 IoC。
          -----------------------------------
          Spring支持type2Ioc(setter),以及type3Ioc(constructor )。在Xml中就支持這兩種。
          type 1 IoC,脫離目前這個容器,就必須修改程式,想想在更複雜的依賴關(guān)係中產(chǎn)生更多複雜的介面,組件與容器(框架)的依賴會更加複雜,最後使得組件無法從容器中脫離。
          所以type 1 IoC具有強的侵入性,使用它來實現(xiàn)依賴注入會使得組件相依於容器(框架),降低組件的重用性。
          -----------------------------------
          總結(jié):
          Spring的核心是個IoC容器,您可以用setter或constructor的方式來實現(xiàn)您的業(yè)務(wù)物件,至於物件與物件之間的關(guān)係建立,則透過組態(tài)設(shè)定,讓Spring在執(zhí)行時期根據(jù)組態(tài)檔的設(shè)定來為您建立物件之間的依賴關(guān)係,您不必特地撰寫一些Helper來自行建立這些物件之間的依賴關(guān)係,這不僅減少了大量的程式撰寫,也降低了物件之間的耦合程度。
          posted on 2006-10-16 17:08 追球者 閱讀(271) 評論(0)  編輯  收藏 所屬分類: 開源技術(shù)

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 井陉县| 五莲县| 伊春市| 合川市| 梁河县| 榆林市| 阜城县| 佳木斯市| 嘉祥县| 尖扎县| 京山县| 晋城| 泸西县| 望都县| 徐汇区| 胶州市| 哈巴河县| 洪雅县| 剑阁县| 河北省| 上杭县| 三亚市| 佛山市| 犍为县| 赤壁市| 定远县| 洛扎县| 格尔木市| 岳池县| 桂东县| 土默特左旗| 巴青县| 隆昌县| 松江区| 丹寨县| 二连浩特市| 合水县| 日照市| 三江| 曲周县| 剑川县|