码迷,mamicode.com
首页 > 编程语言 > 详细

SpringAOP

时间:2018-04-29 17:49:40      阅读:253      评论:0      收藏:0      [点我收藏+]

标签:面向对象编程   特定   spring   需求   面向切面   求和   模块   1.5   面向   

 

1 编程范式

  1.1 面向过程

  1.2 面向对象

  1.3 面向切面编程

  1.4 函数式编程

  1.5 事件驱动编程

 

2 什么是面向切面编程

  2.1 是一种编程范式,而不是一种编程语言

  2.2 解决一些特定的问题

  2.3 作为面向对象编程的一种补充

 

3  AOP产生的初衷

  3.1 解决代码重复性问题 Don‘t Repeat Yourself

  3.2 解决关注点分离问题 Separation of Concerns

    3.2.1 水平分离(技术上划分)

      控制层 -> 服务层 -> 持久层

    3.2.2 垂直分离(模块上划分)

      模块划分

    3.2.3 切面分离(功能上划分)

      分离功能性需求和非功能性需求

 

4 使用AOP的好处

  4.1 集中处理某一个关注点、横切逻辑

  4.2 可以很方便地添加、删除关注点

  4.3 侵入性减少,增强代码可读性和可维护性

  

5 AOP的使用场景

  5.1 权限控制

  5.2 缓存控制

  5.3 事物控制

  5.4 审计日志

  5.5 性能监控

  5.6 分布式追踪

  5.7 异常处理

  

 

SpringAOP

标签:面向对象编程   特定   spring   需求   面向切面   求和   模块   1.5   面向   

原文地址:https://www.cnblogs.com/NeverCtrl-C/p/8971388.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!