控制反转(ioc)和 面向切面(AOP)
1. IOC(Inversion of control)不是技術(shù),是一種編程思想。ioc意味著將設(shè)計(jì)好的對(duì)象交給容器控制,而不是傳統(tǒng)的在對(duì)象內(nèi)部直接控制。
2. IOC(控制反轉(zhuǎn))? ‘誰(shuí)控制了誰(shuí) 控制什么 為什么是反轉(zhuǎn) 那些方面反轉(zhuǎn)了’
誰(shuí)控制誰(shuí):IOC容器控制了對(duì)象
控制什么:控制了外部資源獲取
為什么是反轉(zhuǎn):IOC容器幫助查找及注入依賴(lài)對(duì)象,對(duì)象只是被動(dòng)的接受依賴(lài)對(duì)象
那些方面反轉(zhuǎn):依賴(lài)對(duì)象獲取被反轉(zhuǎn)
DI(依賴(lài)注入):“誰(shuí)依賴(lài)誰(shuí) 為什么需要依賴(lài) 誰(shuí)注入誰(shuí) 注入了什么”
誰(shuí)依賴(lài)誰(shuí):應(yīng)用程序依賴(lài)于ioc容器
為什么需要依賴(lài):應(yīng)用程序需要ioc容器來(lái)提供對(duì)象需要的外部資源
誰(shuí)注入誰(shuí):Ioc容器注入應(yīng)用程序某個(gè)對(duì)象,應(yīng)用程序依賴(lài)的對(duì)象
注入了什么:注入某個(gè)對(duì)象所需要的外部資源
3. AOP(面向切面):AOP是一種編程思想,在java中利用反射機(jī)制實(shí)現(xiàn)
事先只需要考慮主流程,不需要考慮哪些不重要的流程。
AOP不會(huì)把代碼加到源文件中,但是它最終會(huì)正確的影響機(jī)器代碼
轉(zhuǎn)載于:https://www.cnblogs.com/wangdx1107/p/10245451.html
總結(jié)
以上是生活随笔為你收集整理的控制反转(ioc)和 面向切面(AOP)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: [译] 常用 Phpstorm tips
- 下一篇: Dubbo自定义日志拦截器