51、面向切面编程(AOP)实战指南

面向切面编程(AOP)实战指南

1. AOP 设计要点

在进行 AOP 设计时,整体系统架构和具体项目需求起着关键作用。设计方面,要考虑使用之前的模式作为模板,同时注重方面的命名规范,这有助于选择切入点和指定方面优先级。此外,还需决定是否创建可复用的方面,以应对相同的横切关注点。

在组织方面时,要确保构建配置灵活且易于使用。可按功能将方面分离到不同的包中,这样能方便地在构建中包含或排除某些方面。需关注以下两个因素:
- 部署 :某些方面在开发阶段很有用,如用于调试/分析的跟踪和策略执行方面。可将这些开发方面分组到单独的包中,便于在开发阶段使用,同时确保不影响部署系统。
- 正确性 :软件系统的正确性是最基本的特性,其他特性如效率是次要的。例如,事务管理支持对系统的正确性至关重要,而缓存提高的效率则不是。在部署构建系统时,必须确保对正确性必要的方面始终包含在任何构建目标中。

2. 维护阶段的 AOP 应用

系统实现和部署后,进入维护阶段。维护阶段主要包括满足新需求的实现和修复已部署系统中的 bug。AOP 在维护阶段可处理以下任务:
- 创建保护墙 :维护阶段的一大挑战是确保新更改不会破坏系统的其他部分。策略执行方面可确保新功能不违反策略,从而防止引入新的 bug。
- 实现新功能 :与实现阶段一样,AOP 可以以非侵入的方式实现新的横切关注点,减少对系统核心代码的更改,降低引入新 bug 的可能性。
- 创建紧急补丁

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值