1. 程式人生 > 其它 >面試隨筆(一):Spring核心思想

面試隨筆(一):Spring核心思想

Spring三大核心思想

Spring三大核心思想分別是:控制反轉(IOC),依賴注入(DI),面向切面程式設計(AOP)。

  1. IOC(控制反轉):將元件間的關係從程式內部轉移至外部容器(xml檔案)中進行管理。
  2. DI(依賴注入):元件間的依賴關係由系統執行期間決定。外部容器將帶有依賴關係的目標物件例項動態注入到系統中的各個元件中。
    IOC與DI屬於不和分割的關係,要實現IOC需要DI,實現DI必須使用IOC。
  3. AOP(面向切面程式設計):通俗來講,是OOP的延伸。切分解剖封裝的物件的內部,找出影響多個類的公共行為,並將他們再次封裝到一個可重用的模組中去,命名為"Aspect",即切面。
    AOP可以進一步將業務無關的但是與業務模組共同呼叫的邏輯操作單獨封裝起來,減少重複程式碼,降低耦合性,提高維護性。
    使用”橫切“技術,重要的是分辨核心關注點和橫切關注點。核心關注點指的是核心業務處理流程,屬於不可分割、儘量減少改動的部分;橫切關注點指的是與核心業務流程關聯度不大的流程,類似於許可權管理、日誌等等,但是會經常出現在核心關注點周圍。因此AOP主要的目的就是將核心關注點與橫切關注點分離。