EasonDian 2019-06-24 16:40 采纳率: 66.7%
浏览 803
已采纳

一直没理解的依赖注入

本人小白,最近项目用.net core来开发,里面用到了依赖注入,但是自己一直没有理解依赖注入的好处,都说依赖注入可以降低耦合,如果一个方法需要修改逻辑,我想说的是就算我用new的方式也可以实现只改被调用类代码就可以了啊?调用方的代码依然不用变。代码量也不会减少,所以到底依赖注入好在哪里呢?求通俗解释。

  • 写回答

2条回答 默认 最新

  • adele_handsome 2019-06-24 17:37
    关注

    假设有两个类a,b。其中a依赖b,换句话说就是a这个类要能使用,必须要有b这个类的实例。所以你每次使用a这个类时都要先去实例化b这个类,然后传入a这个类。这样会有很多重复代码。这样就不符合DRY原则了,重复的代码越少,可维护性越高。比如以后a这个类需要同时依赖a和c类,那你是不是就要把所有用到a类的地方都要做相应修改,每个修改的点是不是都要做测试。如果你写了单元测试的话,相应的单元测试也要做修改。
    想要详细了解依赖注入为什么很有用的话,可以看martin的文章。https://martinfowler.com/articles/injection.html

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 已采纳回答 1月12日

悬赏问题

  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改