1. 程式人生 > >AOP和IOC的概念

AOP和IOC的概念

AOP

            AOP(Aspect Oriented Programming 面向切面程式設計)AOP是OOP( Object Oriented Programming  )的延續,是軟體開發中的一個熱點,也是Spring框架中的一個重要內容,是函數語言程式設計的一種衍生範型。利用AOP可以對業務邏輯的各個部分進行隔離,從而使得業務邏輯各部分之間的耦合度降低,提高程式的可重用性,可維護性,同時提高了開發的效率,底層實現是在生成class檔案的時候為每個已切入的類加入該段位元組碼後再生成位元組碼檔案。

IOC

         Ioc(Inversion of Control)即“控制反轉”,不是什麼技術,而是一種設計思想  在Java開發中,IOC意味著將你設計好的物件交給容器控制,而不是傳統的在你的物件內部直接控制。我認為想要理解好Ioc的關鍵是要明確“誰控制誰,控制什麼。傳統Java 我們直接在物件內部通過new進行建立物件,是程式主動去建立依賴物件。而IOC是有專門一個容器來建立這些物件,即由IOC容器來控制物件的建立並且他還可以做一些相應的修改和業務處理。所以到這裡控制權就已經改變了