zoukankan      html  css  js  c++  java
  • AOP 切面编程思想

    AOP思想 - 切面思想 Aspect Oriented Programming

    面向对象 OOP设计原则是:

    把应用程序分解成若干的对象
    高内聚
    弱耦合

    比如说,

    应用程序里很多业务逻辑都要在操作之初进行“权限检查”,在操作之后进行“日志记录”,

    如果直接把处理这些操作的代码加入到每个模块中,那么无疑破坏了OOP的“单一职责”原则,模块的可重用性会大大降低,

    这时候传统的OOP设计往往采取的策略是加入相应的代理(Proxy)层来完成系统的功能要求,但这样的处理明显使系统整体增加了一个层次的划分,复杂性也随之增加,从而给人过于厚重的感觉

    为了处理上面的问题,AOP(面向方面编程:Aspect-Oriented Programming)思想应运而生了,

    假设把应用程序想成一个立体结构的话,OOP的利刃是纵向切入系统,把系统划分为很多个模块(如:用户模块,文章模块等等),

    而AOP的利刃是横向切入系统,提取各个模块可能都要重复操作的部分(如:权限检查,日志记录等等)。

    由此可见,AOP是OOP的一个有效补充。

  • 相关阅读:
    SpringMVC—概述
    Spring—切点表达式
    Spring—Ioc
    Spring—spring概述
    MyBtis—原理及初始化
    mysql数据增删查授权
    mysql完整性约束
    mysql枚举类型与集合类型
    mysql字符类型
    mysql日期类型
  • 原文地址:https://www.cnblogs.com/fangdada/p/14783851.html
Copyright © 2011-2022 走看看