码迷,mamicode.com
首页 > 其他好文 > 详细

OOP向AOP思想的延伸

时间:2015-03-08 23:00:59      阅读:346      评论:0      收藏:0      [点我收藏+]

标签:

        最近几天一直在研究AOP。从什么是AOP都不了解的程度开始一点一点的摸索,上网查了很多关于AOP的资料,慢慢消化它。

什么是AOP?

         AOP是OOP的延续,它是一种面向切面编程,说白了它就是一种思想。说到OOP大家都很熟悉,既然说是OOP的延续,理解起来应该就容易多了。
      面向切面编程:即允许通过分离业务逻辑与系统服务进行内聚性开发。对“高内聚,低耦合”的一种实现,实现了调用者与被调用者之间的解耦和。

对比:

       首先:AOP和OOP是不同领域的两种思想。
 面向对象OOP:对现实世界的抽象及模型化分析问题,把一个大的应用系统分成一个一个的对象,然后把它们有机的组合在一起完成
通俗的讲:就是将一个系统抽象成一个一个的对象,每个对象都由属性和方法组成,当你完成这些属性和方法的编程时,系统也就快完成了。每个对象只干自己的事,所以对象加起来就是整个系统。

 面向切面AOP:分析问题是从关注点的角度出发,把一个软件分成不同的关注点。当我们使用OOP的思想编程时,编写的类不够纯粹,类中总是有一些不属于其完成的部分存在(错误处理,日志记录、事务处理等),所以要用到AOP来解决,所以AOP是OOP的一个补充。

使用AOP的好处:

      利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。
     所以说,使用AOP,我们可以专注于业务逻辑代码的编写,将诸如日志记录、安全监测等系统功能都交由AOP框架,在运行时刻自动耦合进来。

何时使用AOP

    比如:日志管理、权限管理、数据同步、事务管理等方面。
例如一个系统,之前我们是这样做的:
技术分享
引入AOP后:
技术分享

   那么,我们如何使用AOP呢,理论很好理解,具体要怎么实现呢?学习中,此博客待续。。。。。

OOP向AOP思想的延伸

标签:

原文地址:http://blog.csdn.net/u010785685/article/details/44139437

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