解耦,复用,冗余

解耦,复用,冗余
提到设计就不能没有解耦。
那么解耦的目的是什么呢,解什么耦呢,就是解专有的耦,变成通用的耦。
一个机能A,和B耦合紧密,那么C也要用A的机能,那么咋办呢,把A和B解构,变成B和C的公共组件。
这里提供了A的复用,解除了A和B耦合,消除了A1的冗余。
说到A1可呢您要说,那来的A1啊?
试想如果A和B解耦,A无法为C用,那么C得用一个A1为他提供机能支撑。
A1和A一定是有机能冗余的。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring IOC(控制反转)和AOP(面向切面编程)是Spring框架的两个核心概念。 1. Spring IOC: Spring IOC是一种设计模式,它通过将对象的创建和依赖关系的管理从代码中移除,实现了对象的解耦和可复用性。具体来说,Spring IOC通过容器管理对象的实例化、依赖注入、生命周期管理等过程,使得应用程序的开发更加简单、灵活和可扩展。 比如,我们在开发一个Web应用时,需要使用数据库连接池来管理数据库连接。传统的做法是在每个需要数据库连接的类中创建连接池对象,并通过构造函数或者setter方法注入到类中。这样,如果我们需要更换连接池,就需要修改所有使用到连接池的类,这会导致代码的耦合性增加、维护性下降。而使用Spring IOC,我们只需要在配置文件中配置连接池对象,然后在需要使用连接池的类中通过注解或者XML配置文件引用该对象即可,这样就可以实现对象的解耦和可复用性。 2. Spring AOP: Spring AOP是一种编程范式,它通过在代码执行过程中动态地插入切面代码,实现了系统的模块化和横切关注点的复用。具体来说,Spring AOP通过定义切面(Aspect)和切点(Pointcut),将切面代码织入到应用程序的执行流程中,从而实现了对系统的横切关注点(如日志、安全、事务等)的统一管理。 比如,我们在开发一个Web应用时,需要记录用户的访问日志。传统的做法是在每个需要记录日志的方法中添加记录日志的代码,这样会导致代码的重复和冗余。而使用Spring AOP,我们可以通过定义一个切面类,实现对所有需要记录日志的方法进行拦截,并在方法执行前后插入记录日志的代码。这样就可以实现对系统日志的统一管理,提高代码的复用性和可维护性。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值