Adapterパターン vs Decoratorパターン

2020/12/15 08:30

GoFのAdapterパターンとDecoratorパターンを比較します。コンポジションによって内包するスタイルが両者は似通っていますが、その目的の違いに着目するとよく理解できるでしょう。

AdapterパターンDecoratorパターンと大変よく似た構造になります。

ただし、パターンは目的や背景が重要なのでDecoratorパターンの主目的である「拡張を動的にして柔軟にしたい」ということと、Adapterパターンの主目的である「インターフェースの差異を吸収したい」という目的の違いに着目すると理解が捗ると思います。

この結果、Decoratorパターンの場合にはDecorateする側とされる側のインターフェースが同一のものになる事が多いですし、Adapterパターンの場合には全く別のインターフェースによって操作できるようになります。

関連記事