• AOP与动态代理有什么联系


    曾遇到“AOP与动态代理有什么联系”的问题,现把个人观点整理如下:

    我觉得,动态代理是AOP的主要实现手段之一,AOP是动态代理的一种应用深化

    AOP是一种思想,或者是方法论,类似OOP,是OOP的有力补充;
    OOP侧重于主要业务功能设计(一般关注点);
    AOP侧重于横切关注点(事务、日志、安全等,贯穿于多个模块的功能)
    小分析:
    OOP在横切关注点问题的不足是:1)代码混乱 2)代码分散
    AOP很好的解决了这个问题,并且可以很好的解决“侵入问题”。

    AOP的实现,必然要求对截获的对象进行代理,这个地方无疑要用的是动态代理机制。

    如果非要说谁是谁的实现手段,我更倾向于AOP主要应用了动态代理,动态代理是AOP的实现手段。

    附记
    记得一个文章提及:
    AOP是设计模式的延续;
    GoF侧重于接口、抽象函数来解除耦合;却对对象的内部无能为力。
    AOP却恰恰从对象的内部着手,实现调用者和被调用者的分离。

    常思考之,甚是!

  • 相关阅读:
    解析库之 beautifulsoup模块
    请求库之 selenium模块
    请求库之 requests模块
    一句话
    JPA学习03
    JPA学习02
    JPA学习01
    SpringData学习04
    SpringData学习03
    SpringData学习02
  • 原文地址:https://www.cnblogs.com/zwb7926/p/3580845.html
Copyright © 2020-2023  润新知