Adapter パターン

なおこ(・∀・)さんのサイトではこちら

Adapterとは「調整装置」のことです。*1

すでにあるものが使えそうだけど・・・まんまじゃ使えない、ちょっとした違いなんだけどな〜、って時にすでにあるものを再利用するために調整するインターフェイスを用意するパターン。

リンク先では数値が7以上かどうかを判断するメソッド(IsOverSeven)を文字としての数字に対しても使用するサンプルが掲載されています。文字としての数字を検証するメソッドを新しく実装することなく、すでにある IsOverSeven を再利用することで検証を実現するわけですね。

実際 数値を処理するメソッドにおいてはオーバーロードで引数に文字をとるものを実装しておくことが多かった(TextBoxでの入力等は文字列ですので。)です。これって、YAGNI ですね。必要になってから Adapter を作ればいい、と。

# 継承と委譲により2種類の方法があるようですね。Adapterパターンはなんとなく、自分の書いたプログラムにもありそうです。

*1:goo 辞書 曰く。