タグ

ブックマーク / qiita.com/jun1s (2)

  • 「DI使うとインタフェース地獄に陥るらしいから使いたくない」と言っていたA氏がインタフェースを使わずにDIで幸せになるまで - Qiita

    「DI使うとインタフェース地獄に陥るらしいから使いたくない」と言っていたA氏がインタフェースを使わずにDIで幸せになるまでC#DIDependencyInjection依存性の注入 DIはインタフェース定義しなくても十分実用的だし、むしろそっちの方が質だよ、という話をします。C#や.NETを使っていますが、それに限らず普遍的な内容です。 インタフェースと実装に分けるとか無理。DIなど不要! 中堅社員のA氏は、「DIっていちいち実装とインタフェース分けないとダメなんでしょ?。さすがにやってられんわ」と言って頑なにDIを導入しようとしません。 DIはテスタビリティと併せて語られることが多かった為か、A氏は「注入するクラスは基的にインタフェース定義しましょう」という記事ばかりを読んでいたのです。 インタフェースと実装を分けるとは、例えば次のような事です。 services.AddScoped

    「DI使うとインタフェース地獄に陥るらしいから使いたくない」と言っていたA氏がインタフェースを使わずにDIで幸せになるまで - Qiita
    n314
    n314 2021/10/20
    PHPerならauto wiringねって話になるけど、C#だと生存期間の問題があるのか。JavaならSpringでAutowiredアノテーションがあるみたいね。
  • LoggerをDIする事についての議論 - Qiita


     Logger使ASP.NET MVC CoreDIILoggerLogger LoggerLogger使 static readonly log4net.Ilog _logger = log4net.LogManager.GetLogger("ErrorLog");   DI
    LoggerをDIする事についての議論 - Qiita
    n314
    n314 2021/10/13
    なかなか面白い
  • 1