AOP OOP概念问题

11 篇文章 0 订阅
AOP是什么?
Aspect 方面
oriented 面向
programming 程序
  AOP是OOP的延续,是Aspect Oriented Programming的缩写,意思是面向方面编程。AOP实际是GoF设计模式的延续,设计模式孜孜不倦追求的是调用者和被调用者之间的解耦,AOP可以说也是这种目标的一种实现。


oop是什么?
object 对象
oritented 面向
programming 程序




OOP: Object Oriented Programming,面向对象的程序设计。所谓“对象”就是一个或一组数据以及处理这些数据的方法和过程的集合。面向对象的程序设计完全不同于传统的面向过程程序设计,它大大地降低了软件开发的难度,使编程就像搭积木一样简单,是当今电脑编程的一股势不可挡的潮流。
  面向对象编程(Object Oriented Programming,OOP,面向对象程序设计)是一种计算机编程架构。OOP 的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成。OOP 达到了软件工程的三个主要目标:重用性、灵活性和扩展性。为了实现整体运算,每个对象都能够接收信息、处理数据和向其它对象发送信息。OOP 主要有以下的概念和组件:
  组件 - 数据和功能一起在运行着的计算机程序中形成的单元,组件在 OOP 计算机程序中是模块和结构化的基础。
  抽象性 - 程序有能力忽略正在处理中信息的某些方面,即对信息主要方面关注的能力。
  封装 - 也叫做信息封装:确保组件不会以不可预期的方式改变其它组件的内部状态;只有在那些提供了内部状态改变方法的组件中,才可以访问其内部状态。每类组件都提供了一个与其它组件联系的接口,并规定了其它组件进行调用的方法。
  多态性 - 组件的引用和类集会涉及到其它许多不同类型的组件,而且引用组件所产生的结果得依据实际调用的类型。
  继承性 - 允许在现存的组件基础上创建子类组件,这统一并增强了多态性和封装性。典型地来说就是用类来对组件进行分组,而且还可以定义新类为现存的类的扩展,这样就可以将类组织成树形或网状结构,这体现了动作的通用性。
  由于抽象性、封装性、重用性以及便于使用等方面的原因,以组件为基础的编程在脚本语言中已经变得特别流行。Python 和 Ruby 是最近才出现的语言,在开发时完全采用了 OOP 的思想,而流行的 Perl 脚本语言从版本5开始也慢慢地加入了新的面向对象的功能组件。用组件代替“现实”上的实体成为 JavaScript(ECMAScript)得以流行的原因,有论证表明对组件进行适当的组合就可以在英特网上代替 HTML 和 XML 的文档对象模型(DOM)。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring AOP(面向切面编程)是Spring框架中的一个重要模块,用于实现横向关注点的模块化开发。核心概念包括以下几个部分: 1. 切面(Aspect):切面是一个模块化的单元,它封装了与横向关注点相关的行为。在Spring AOP中,切面可以是一个类,其中包含了一组通知和切点。 2.通知(Advice):通知定义了在切面的何处以及如何插入代码。在Spring AOP中,有以下几种类型的通知: - 前置通知(Before Advice):在目标方法执行之前执行的通知。 - 后置通知(After Advice):在目标方法执行之后执行的通知,无论目标方法是否抛出异常。 - 返回通知(After Returning Advice):在目标方法成功执行并返回结果后执行的通知。 - 异常通知(After Throwing Advice):在目标方法抛出异常时执行的通知。 - 环绕通知(Around Advice):在目标方法执行前后都可以执行的通知。 3. 切点(Pointcut):切点是指那些被通知所应用的连接点的集合。通过使用表达式或者注解等方式定义切点,可以精确地指定哪些方法将被通知所拦截。 4. 连接点(Join Point):连接点是在应用执行过程中能够插入切面的点。例如,在方法调用、方法执行、异常处理等时刻都是连接点。 5. 织入(Weaving):织入是将切面应用到目标对象并创建新的代理对象的过程。Spring AOP支持编译时织入、类加载时织入和运行时织入三种方式。 Spring AOP基于动态代理机制实现,通过在运行时动态生成代理对象,在目标方法执行前后插入通知代码来实现横向关注点的功能。它使得开发者能够将横向关注点与业务逻辑解耦,提高了代码的可维护性和可重用性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值