IoC容器和依賴反轉模式

  1. 在極限編程中對單元測試和重構等實踐的強調體現了在軟件開發過程當中對質量的承諾,這是軟件項目成功的一個重要因素。
  2. 關於如何反轉對依賴的控制,把控制權從具體業務對象手中轉交到平臺或者框架中,是下降面向對象系統設計複雜性和提升面向對象系統可測試性的一個有效的解決方案。它促進了IoC設計模式的發展,是IoC容器要解決的核心問題。同事,也是產品化的IoC容器出現的推進力。
  3.  控制反轉是關於一個對象如何獲取它所依賴的對象的引用,在這裏,反轉的是責任的反轉。
  4.  簡單地說,由於不少對象依賴關係的創建和維護並不須要和系統運行狀態有很強的關聯性,因此能夠把在面向對象編程中須要執行的諸如新建對象、爲對象引用賦值等操做交由容器統一完成。這樣一來,這些散落在不一樣代碼中的功能相同的部分就集中成爲容器的一部分,也就是成爲面向對象系統的基礎設施的一部分。
  5. 若是對面向對象系統中的對象進行簡單分類,會發現除了一部分是數據對象外,其餘很大一部分是用來處理數據的。這些對象並不常發生變化,是系統中基礎的部分。在不少狀況下,這些對象在系統中以單件的形式起做用就能夠知足應用的需求,並且它們也不常涉及數據和狀態共享的問題。若是涉及數據共享方面的問題,須要在這些單件的基礎上再作進一步的處理。          
  6. 同時,這些對象之間的相互依賴關係也是比較穩定的,通常不會隨着應用的運行狀態的改變而改變。這些特性使這些對象很是適合由IoC容器來管理,雖然它們存在於應用系統中,可是應用系統並不承擔管理這些對象的責任,而是經過依賴反轉把責任交給了容器(或者說平臺)。
相關文章
相關標籤/搜索