Spring學習筆記(一)依賴注入
?
依賴注入——是Spring最靈魂的設計思想,有人也叫做控制反轉。
1、不管是依賴注入(DI:Dependency Injection)還是控制反轉(IoC:Inversion of Control)它的思想是:控制權由應用代碼中轉到了外部
容器,即組件之間的依賴關系由容器在運行期決定,形象的來說,即由容器動態的將某種依賴關系注入到組件之中。
2、依賴注入的目標并非為軟件系統帶來更多的功能,而是為了提升組件重用的概率,帶來靈活性。
3、舉個例子來說明這個問題。
我曾看到夏昕的《Spring 開發指南》,上面為說明這個思想,舉了電腦、USB硬盤和U盤的例子,感覺還是不太貼切,今天想了個自認為比較好
理解的例子:
有兩種變形金剛的玩具,
一種是固定的,我把它比作原來那種控制權由應用代碼寫死的程序
一種可以拆開重新裝配的,我把它比作用了依賴注入設計思想的程序
變形金剛的各個部件就象程序的各個組件。
變形金剛的廠家,相對它來說是內部的。就象程序的代碼
變形金剛的玩家,相對它來說是外部的。就象程序的容器
大家試想一下,固定變形金剛的控制權是不是廠家決定的,外部無能為力
而可拆卸的變形金剛的控制權轉移到了外部的玩家,玩家在玩之前可以重新決定各個組件的連接關系
而這種組件的連接圖是不是也很像依賴注入思想里的配置文件。
大家再從這個例子分析一下依賴注入的目標。
posted on 2006-03-23 13:46
阿成 閱讀(309)
評論(0) 編輯 收藏 所屬分類:
Spring