decorator は、元の関数のコードを変更することなく、別の関数をラップして振る舞いを追加する関数です。関数の上に @decorator 構文を付けて適用し、ロギング、計測、キャッシュ、アクセス制御といった横断的な関心事をきれいに追加するための手段です。
decorator の仕組み
python
():
():
()
result = func(*args, **kwargs)
()
result
wrapper
():
()
greet()
