Aspect Oriented Programming 面向切面编程,AOP是 OOP的延续
AOP 作为现有的类的一个包装,
- 向一个现有的对象 class 添加新的功能,
- 同时又不改对象原有的结构和功能
- Decorator Pattern
- 函数是一等公民,使得装饰者模式变得想当精简
- 在方法名前面加一个
@xxx
注解来为这个方法装饰一些东西- 扩展现有的一个函数的功能
- 在现有的函数功能上再附加上一些别的功能
- 将一些非业务功能的、属于控制类型的代码给抽象出来
- 例如:打印 log,计算执行时间
装饰器模式知识点
ES7装饰器
core-decorators模块