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

    AOP思想 - 切面思想 Aspect Oriented Programming

    面向对象 OOP设计原则是:

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

    比如说,

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

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

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

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

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

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

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

  • 相关阅读:
    决定迁移过来,深耕于此。。。
    一篇搞定MongoDB
    一篇搞定vue请求和跨域
    自定义全局组件
    一篇搞定vue-router
    一篇搞定Vuex
    vue系列
    .Vue.js大全
    一篇搞定spring Jpa操作数据库
    自定义admin
  • 原文地址:https://www.cnblogs.com/fangdada/p/14783851.html
Copyright © 2011-2022 走看看