依赖注入和AOP巧解

前端之家收集整理的这篇文章主要介绍了依赖注入和AOP巧解前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
依赖注入(DI,Dependency Injection):假设你是一个特工人员,需要C4 炸
药去炸毁桥梁。一种办法是出发的时候自带100 公斤C4,到了地方引爆,这相当于我们常
见的自己给变量赋值然后调用;另一种办法呢,是当你到达目的地以后,呼叫总部空投200
公斤C4 炸药,然后你可以炸毁不止一座桥梁,这就相当于你在需要的时候被注入了200 公
斤C4,因为你不知道总部使用的是哪架战机,但是它知道你在什么时候和什么地点需要这
些炸药,换句话说,控制权在总部那,这就引出了另一个术语IOC(控制反转,Inversion of
Control),意即你现在只需要埋头写自己的代码,容器(总部)知道什么时候给你合适的
对象(炸药)。

AOP(Aspect Oriented Programming,面向切面编程):假设你被联邦调查局盯
上了,怀疑你和基地组织有一腿,那你就惨了,可以亲身感受AOP 的威力。打电话,有人
听;出门吃饭,有人在你饭里下毒;开汽车,发现车后有人为你“保驾”。也就是说你发现
以前能够直接操作的东西都被人过滤了,被人先行做了手脚。其实Web 开发中的过滤器就
是这样做的,那就是一个AOP 的例子。这个中间被强插入的一层,就是切面(Aspect)。
好的情况下你还能发现切面(暗探)的存在,差的情况下你压根不知道被人做了手脚。好
了,这就是AOP,就是那个对你下黑手的对象。
原文链接:https://www.f2er.com/javaschema/287471.html

猜你在找的设计模式相关文章