「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。 -[[戻る>IoC、AOP → DI → 依存性反転原則]] --[[IoC]] --[[DI]] * 目次 [#def0ee37] #contents *概要 [#z5831059] 上位スタックは、抽象化により、下位スタックを差し替え可能になる。 *概要 [#ebf5f37a] [[移動しました。>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?%E4%BE%9D%E5%AD%98%E6%80%A7%E5%8F%8D%E8%BB%A2%E5%8E%9F%E5%89%87]] -共有された抽象化を通じて、高次と低次の抽象化レイヤー間の結合度を下げる。 -[[DI]]によって実現される。[[IoC]]とは関係があるが、=ではない。 **原則 [#c6ba0c68] -上位モジュールは下位モジュールに依存してはならない。 -上位モジュールも下位モジュールも、抽象に依存するべき。 -抽象は実装の詳細に依存してはならない。実装の詳細が抽象に依存するべき。 **問題 [#x995f0ac] -フレームワーク差し替えを実現するための「共有された抽象化」の設計が困難。 -また、「共有された抽象化」の設計を行うのは、ユーザ側でもプロダクト側でも無い。~ (第三者機関が「オープン標準」的な規格として、制定する必要がある。) *参考 [#r2179715] -20160526 依存関係逆転の原則~ https://www.slideshare.net/ShintaroKurosawa/20160526-62511723 **[[ASP.NET Core における DI]] [#dea1500b] ---- Tags: [[:プログラミング]], [[:.NET開発]]