print "hello world"
各メソッドが特定のステートメント(単なる例)で終わるクラスを書きたいとします。最も簡単な方法は、作成する各メソッドの最後にこのステートメントを単純に記述することです。
class Example(object):
def method1(self):
...
print "hello world"
def method2(self):
...
print "hello world"
...
しかし、同僚が 5 年後にクラスを拡張し、各メソッドがそのステートメントで終了する必要があることを一度も聞いたことがなかったらどうなるでしょうか? その場合、各メソッドの最後に手動でステートメントを記述するだけでは十分ではありませんでした。しかし、後で追加される拡張されたクラスやメソッドであっても、どうすればこれを達成できるでしょうか? 多分デコレータで?