Inversion of Control Pattern
2017/10/23
制御の反転(Wikipedia)
Inversion of Control(Martin Fowler)上のWikiの説明のソースはここ。
違いを絵にしてみた
従来の手続き型プログラミング
![手続き型プログラミング](/pub/pgmemo/image/adiary/2017/ioc010.png)
PGはプログラム
制御の反転
上と矢印の向きが変わっているので制御の反転(呼ぶ方と呼ばれる方が逆転している)。![制御の反転](/pub/pgmemo/image/adiary/2017/ioc020.png)
M AのMはモジュールのM
実装方法
- 依存性の注入
- Template Method pattern
- Service Locator Pattern
Prismにおける利用
依存性の注入に関してはこちら。テンプレートメソッドの例としてはUnityServiceLocatorAdapter(?)。