・・・・・・ブログ村参加中!・・・・・・
応援お願いいたします!
・・・・・・・・・・・・・・・・・・・・
皆さん、おはようございます。
今週は1日祝日があったので
1週間が早く終わるので
とてもありがたいです。
仕事が出来ない私は
仕事が嫌いなので、、、苦笑
ではでは、仕事は嫌いですが
良くなりたいという向上心はあるので
プログラミングの勉強は
たまに行っています(;・∀・)
ということで
今日は、C#関連の記事です。
私自身、プログラムを書くことは
基本的にはないのですが
せっかくこの業界で
仕事をしているなら
少しは勉強したいということもあり
※何なら自分でコードを書けるように
なりたい、、、
会社のコードを見て勉強しています。
勉強しているのはしているのですが
よく分からん内容が
たくさん出てきて
混乱することが多いのです。
今回は、タイトルにある
DIコンテナが良く分からんとなりました。
調べてみると、
DIは(Dependency injection)の略で
依存性の注入だそうです。。。
、、、全然意味が分からん苦笑
別のクラスのインスタンスを生成して
利用する際に
依存性が強いと単体テストが大変、
コードを再利用しづらいといった
デメリットがあるので
DIデザインパターンというものが
あるとのこと。
さらにそのDIデザインパターンを
使いやすくしてくれるフレームワークが
DIコンテナというらしいです。
※間違っていたらご指摘ください汗
その中で、.Net Core環境では
[Microsoft.Extentions.
DependencyInjectio]なる
DIコンテナが準備されているみたいです。
使用するにはNuGetパッケージから
[Microsoft.Extentions.
DependencyInjectio]を
インストールして参照。
調べた感じの手順は以下の通り。
1.ServiceCollectionクラスの
インスタンスを生成
2.DIしたいクラスを登録
下記のいずれかのメソッドを使用
・AddSingleton
・AddTransient
・AddScoped
3.ServiceProviderを生成
下記のメソッドを使用
・BuildServiceProvider
4.オブジェクトを取得
下記のいずれかのメソッドを使用
・GetService
・GetRequiredService
とりあえず昨日の勉強で
分かったことはここまでです(;'∀')
ただ、まだ自分の中で
全然しっくり来ていないのと
コードを書いていないので
かなりふわっとしている感じです。
引き続き勉強して
身に付けたいと思います。
それでは、またヽ(^o^)丿
この記事を最後まで読んで頂いて、
本当にありがとうございます!
もし、記事が参考になった、
面白かったと少しでも
感じていただくことが出来たなら、
クリックしていただけたら嬉しいです(^^)
応援お願いいたします!