python装饰器前世今生
本文主要讲解python中decorator的历史,然后说明decorator在python中的实现,以帮助初识decorator的pythoner能够灵活运用decorator。
装饰器模式
装饰器模式来自GoF的23种设计模式。
在设计模式中,装饰器模式的意图描述如下:
即将附加的职责动态添加到一个对象。在扩展功能时,它比子类继承的方式要来得灵活。它是面向切面编程的一种手段。
python中的装饰器
提出
在python中,decorator最早是在PEP 318 – Decorators for Functions and Methods被提出的。
具体实现
decorator在python中形如@decorator,如:
@log
def foo():
...
我们将通过观察字节码,看一看添加decorator