Duffblog

          前進一步,看看,需要前進更大一步才可以。

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

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


          網站導航:
           
          主站蜘蛛池模板: 镇原县| 区。| 左权县| 兴化市| 嘉禾县| 吴江市| 临洮县| 长汀县| 东山县| 澄迈县| 宁安市| 马鞍山市| 中方县| 兰考县| 景洪市| 遂宁市| 夹江县| 南乐县| 临颍县| 建宁县| 宁武县| 泾川县| 三穗县| 池州市| 阜宁县| 玉树县| 新邵县| 东阿县| 扎鲁特旗| 聂荣县| 莱阳市| 类乌齐县| 遂昌县| 永胜县| 泾川县| 桃园市| 衢州市| 海口市| 弥渡县| 延安市| 英吉沙县|