この文書の現在のバージョンと選択したバージョンの差分を表示します。
次のリビジョン | 前のリビジョン | ||
デザインパターン:02_adapter [2019/03/16 21:19] ips 作成 |
デザインパターン:02_adapter [2019/08/24 15:32] (現在) ips |
||
---|---|---|---|
ライン 1: | ライン 1: | ||
- | ====== Adapter ====== | + | ====== 02_Adapter:アダプター ====== |
- | {{:デザインパターン:pasted:20190316-211946.png}} | + | <uml> |
+ | title Adapter | ||
+ | interface Target{ | ||
+ | method1() | ||
+ | method2() | ||
+ | } | ||
+ | |||
+ | Class Adapter{ | ||
+ | method1():実態はmethodA | ||
+ | method2():実態はmethodB | ||
+ | } | ||
+ | |||
+ | Class Adaptee{ | ||
+ | methodA() | ||
+ | methodB() | ||
+ | methodC() | ||
+ | } | ||
+ | |||
+ | Target <|. Adapter : ◀implemnets | ||
+ | Adapter -|> Adaptee : extends▶ | ||
+ | |||
+ | </uml> | ||
+ | |||
+ | ===== 概要 ===== | ||
+ | |||
+ | Adapterの実装は、Adapteeを継承したもの。 | ||
+ | Adapterのメソッドでラップしている。 | ||
+ | |||
+ | AdapterがMySQL、SQLSERVERと別であっても、同じinterfaceを通してOPENやSELECTが実行できる。 | ||