在软件开发中,我们平时需要对很多非业务性需求进行处理,比如日志,安全,事务,性能统计。为了不把业务性代码和非业务性代码混杂,使得阅读过去复杂及书写的麻烦,一般采用几种方法处理。
1.设计模式:模板方法
在父类中,把非功能性代码写好,留下一个口子(抽象方法doBusiness())让子类实现。调用也非常容易。
缺点:父类定义一切,子类无条件接受,不能自由选择需要哪些功能。
2.设计模式:装饰者
调用
3.AOP
AOP面向切面编程,是一种编程思想。
在软件开发中,我们平时需要对很多非业务性需求进行处理,比如日志,安全,事务,性能统计。为了不把业务性代码和非业务性代码混杂,使得阅读过去复杂及书写的麻烦,一般采用几种方法处理。
在父类中,把非功能性代码写好,留下一个口子(抽象方法doBusiness())让子类实现。调用也非常容易。
缺点:父类定义一切,子类无条件接受,不能自由选择需要哪些功能。
调用
AOP面向切面编程,是一种编程思想。