2008-01-23から1日間の記事一覧

Adapter その2

標準ライブラリを使ってみました。 require "forwardable" class PrintBanner extend Forwardable def initialize(str) @banner = Banner.new(str) end def_delegator :@banner, :show_with_paren, :print_weak def_delegator :@banner, :show_with_aster, :…

Adapter その1

所謂ラッパーですね。まずは単純に移植。継承の場合 module Adapter class Banner def initialize(str) @str = str end def show_with_paren puts "(#{@str})" end def show_with_aster puts "*#{@str}*" end end class PrintBanner < Banner def print_weak…