posts - 120,  comments - 19,  trackbacks - 0
          Spring學習筆記(一)依賴注入
          ?
          依賴注入——是Spring最靈魂的設計思想,有人也叫做控制反轉。
          1、不管是依賴注入(DI:Dependency Injection)還是控制反轉(IoC:Inversion of Control)它的思想是:控制權由應用代碼中轉到了外部
          容器,即組件之間的依賴關系由容器在運行期決定,形象的來說,即由容器動態的將某種依賴關系注入到組件之中。
          2、依賴注入的目標并非為軟件系統帶來更多的功能,而是為了提升組件重用的概率,帶來靈活性。
          3、舉個例子來說明這個問題。
          我曾看到夏昕的《Spring 開發指南》,上面為說明這個思想,舉了電腦、USB硬盤和U盤的例子,感覺還是不太貼切,今天想了個自認為比較好
          理解的例子:
          有兩種變形金剛的玩具,
          一種是固定的,我把它比作原來那種控制權由應用代碼寫死的程序
          一種可以拆開重新裝配的,我把它比作用了依賴注入設計思想的程序
          變形金剛的各個部件就象程序的各個組件。
          變形金剛的廠家,相對它來說是內部的。就象程序的代碼
          變形金剛的玩家,相對它來說是外部的。就象程序的容器
          大家試想一下,固定變形金剛的控制權是不是廠家決定的,外部無能為力
          而可拆卸的變形金剛的控制權轉移到了外部的玩家,玩家在玩之前可以重新決定各個組件的連接關系
          而這種組件的連接圖是不是也很像依賴注入思想里的配置文件。
          大家再從這個例子分析一下依賴注入的目標。
          1)功能變化有限,你變形金剛設計的再好,可變換的東西也不過相似的幾種。
          2)真正的目的是提升組件重用的概率,帶來靈活性。
          引用地址 http://spaces.msn.com/pococoon/blog/cns!D25B6032F7AD1992!195.entry


          posted on 2006-03-23 13:46 阿成 閱讀(316) 評論(0)  編輯  收藏 所屬分類: Spring
          主站蜘蛛池模板: 忻州市| 定兴县| 江北区| 广平县| 临清市| 西贡区| 亳州市| 盐亭县| 临西县| 嘉善县| 札达县| 老河口市| 东海县| 北海市| 萨嘎县| 视频| 泊头市| 赣榆县| 抚州市| 大同县| 双江| 三穗县| 定州市| 蒲城县| 安西县| 巴塘县| 广昌县| 五寨县| 延长县| 涡阳县| 慈溪市| 安溪县| 定西市| 黄冈市| 德州市| 新田县| 通许县| 荥经县| 阜平县| 华安县| 资阳市|