Execute Arount Method

via http://d.hatena.ne.jp/kikaineko/20060207#p1

で、これってFileのopenとかと似てない?こういうのん↓
File.open("aho.txt").each_line do |line|
  #なんかする
end
こうやってFileを扱うと、内部で勝手にclose処理とかしてくれるから楽。これもテンプレートメソッドパターンと言っていんやなかろうか?

上記のパターンはExecute Around Methodパターンとも呼ばれてるみたい。Smalltalk Best Practice Patterns(Kent Beck!!)の出典のパターンです。

ケント・ベックのSmalltalkベストプラクティス・パターン―シンプル・デザインへの宝石集 Smalltalk Best Practice Patterns