面向切面编程和面向接口编程的区别

面向切面编程:手段:分离业务的主逻辑和次逻辑的一种思想。目的:解决的是逻辑分离问题(主逻辑和次逻辑分开,其实主要是分离业务逻辑和非业务逻辑分开)。案例:我们开发项目的时候基本都要去连接数据库操作数据等,但是都会涉及到事务的提交,这时我们就用到了面向切面编程,我们在业务层只写自己的业务...
面向切面编程和面向接口编程的区别
谈谈自己的理解吧:
面向切面编程:
手段:分离业务的主逻辑和次逻辑的一种思想。
目的:解决的是逻辑分离问题(主逻辑和次逻辑分开,其实主要是分离业务逻辑和非业务逻辑分开)。
案例:我们开发项目的时候基本都要去连接数据库操作数据等,但是都会涉及到事务的提交,这时我们就用到了面向切面编程,我们在业务层只写自己的业务逻辑,提交事务这一块统一的动作我们就浓缩到了一块儿统一处理,形象一点比喻就是我们做什么事之前都以一个准备动作或结束动作的时候就把它统一起来,只关注我们要完成的事,这些准备动作统一完成!
类似的面向切面编程案例还有:系统日志的记录、请求的拦截等
面向接口编程:
手段:通过接口规约对象的属性和方法,是面向对象一部分。
目的:统一标准问题,让大家不至于各行其事而对代码的可读性造成影响(公用部分行为)。
案例:其实这个比较好解释,就是有一件事,需要大家去完成,但是给你规定了完成的方式,你只能怎么去做,这时我们当中任何一个人都能去完成这件事,只不过因人而异会有效率和风格的差异,但是都是按照事先的规定来的!比如:让你去给数据库添加一行数据返回受影响的行数,这里大家都去实现接口写SQL,中间可能会有差异,但是最后都得返回一个int类型的受影响行数回来
大体意思就是说:接口给我们规定了完成一个任务的标准,但是具体过程不限制,任何人都能通过遵循的规定去完成这件事!这样扩展性就很强!
个人水平有限,如果不满意请参考:网页链接
2018-01-18
mengvlog 阅读 5 次 更新于 2025-07-21 03:12:22 我来答关注问题0
  • 类似的面向切面编程案例还有:系统日志的记录、请求的拦截等 面向接口编程:手段:通过接口规约对象的属性和方法,是面向对象一部分。目的:统一标准问题,让大家不至于各行其事而对代码的可读性造成影响(公用部分行为)。案例:其实这个比较好解释,就是有一件事,需要大家去完成,但是给你规定了完成的方式...

  •  湖北倍领科技 ioc和aop的区别

    1、定义不同 ioc:控制反转(Inversion of Control,缩写为IoC),是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。aop:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。2、功能不同 ioc:Class A中用到了Class B的对象b,一般情况下,需要在A的...

  •  文暄生活科普 oop aop_oop zhihu_ooa ood oop编程思想

    AOP(面向切面编程)与OOP(面向对象编程)相辅相成,AOP提供了一个全新的编程视角,通过抽象和横向抽取,实现重复逻辑的统一管理,提升代码重用性和复用性。AOP在Spring框架中通过JDK动态代理和CGLib实现,前者要求目标类实现接口,后者无此限制,通过动态生成子类实现代理。JDK代理性能较高,但生成代理性能较低...

  •  翡希信息咨询 什么是AOP?

    AOP,即面向切面编程,是一种软件设计模式。以下是关于AOP的详细解释:核心概念:AOP通过将业务代码中常见的通用逻辑提炼并封装成独立的“切面”,实现了与业务逻辑的分离。设计目的:补充面向对象编程,减少代码冗余,降低模块间的耦合度。使代码结构更加清晰,维护更加方便。实现方式:静态代理:在编译阶段就...

  •  阿暄生活 aop底层是什么

    AOP(面向切面编程)的底层实现主要依赖于以下几种技术:代理模式(Proxy):静态代理:在编译时或者在程序运行时创建一个代理类,该代理类对目标对象进行增强。这种方式需要预先定义好代理类,灵活性相对较低。动态代理:在运行时动态创建代理类,这种方式更加灵活,可以根据需要随时生成代理对象。例如,Java...

檬味博客在线解答立即免费咨询

编程相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部