アダプターパターン
Gofデザインパターンの復習でアダプターパターンについて書きます。
書籍等で見ると最初は混乱したのですが、覚えるとデコレーターパターン同様、シンプルなパターンだと思います。
アダプターパターンとは
・ある型を別の型に適合させるパターン
アダプターパターンの構成
適合させたい型
・アダプターとなるクラスによって適合させる型、インターフェース推奨
public interface ISample { void DoSomething(); }
アダプター
・あるクラスを別のクラスに変換するためのクラス
・ラッパーとも言われる
・以下の例はstringをISampleインターフェースに適合させた場合
public sealed class SampleAdapter : ISample { public SampleAdapter(string adaptee) { // 省略 } public void DoSomething() { // 省略 } }
使用例
class Program { static void Main(string[] args) { new SampleAdapter("hoge").DoSomething(); } }
アダプターパターンのメリット
・外部のライブラリや標準ライブラリを自作した型で抽象化するこで、ライブラリへの依存を軽減する
・異なる型を抽象的な型で同一視、抽象的な型に対するロジックを共有することが出来る