DEV Community

Daniela "Ingeniela" Barazarte
Daniela "Ingeniela" Barazarte

Posted on

依赖注入 | 完整解释(定义、用法、结构和示例)

依赖注入 | 完整解释(定义、用法、结构和示例)

介绍

您好,我的名字是 Daniela Barazarte,欢迎您阅读有关依赖注入的完整说明。 这个解释以及#DetectaLaLogica 中的所有解释一样直观且简单。

如果您喜欢视频,这里是我在 YouTube 上制作的完整教程,它是西班牙语,但也有字幕:https://www.youtube.com/watch?v=Sz4acLjFvrU

理论

每个单词的定义

“设计模式”

  • 模式:是一种重复事件或对象 设计模式
  • 设计:创意活动,其目的是设计有用且美观的物体

“依赖注入”

  • 注入:指将某些东西引入到元素中的行为

注入器

  • 依赖:指一件事需要另一件事才能正常运作的关系

关系

完整定义

依赖注入是一种软件设计模式,它包括为对象提供其运行所需的所有依赖项,而不是由对象自己创建它们。

#DetectTheLogic

之所以称为依赖注入,是因为您将一个对象的组件注入到另一个对象中,并且这种关系是一种依赖关系,因为如果没有这种注入,该对象就无法正常运行。

练习

### 锻炼
您必须制作一个控制台项目来生成进入足球比赛的门票。

您可以通过多种方式来实现这一点,但我们将测试使用依赖注入来实现这一点的方法。

方法:无依赖注入

无注入

票务方法、视图、类、代码和其他组件会在代码中混乱,并且会与足球场代码捆绑在一起。

方法:依赖注入

带注入

门票的方法、视图、类、代码等组件是完全有序的,并且与足球场的代码分离。 Ticket 通过依赖项注入将其组件传递到体育场(该依赖项被涂成金色)。

重要性

依赖注入设计模式有几个好处:

  • 增加代码重用:如果我想重用门票组件并将其放置在另一个项目中,例如音乐会,我可以这样做
  • 更大的灵活性:允许轻松更改组件而不影响应用程序的其余部分。
  • 将代码分解为更小、更清晰的部分:使代码更易于理解和维护。

告别

(记住)#DetectTheLogic:之所以称为依赖注入,是因为您将一个对象的组件注入到另一个对象中,并且该关系是一种依赖关系,因为如果没有该注入,该对象将无法正常运行。

您可以在我的 GitHub 存储库(C# 语言代码)中练习此主题:https://github.com/danielabarazarte/DetectaLaLogica/tree/main/Conceptos

非常感谢您的阅读,如果有什么问题可以评论,也可以关注我看更多这种风格的帖子,谢谢<3.

Heroku

Build apps, not infrastructure.

Dealing with servers, hardware, and infrastructure can take up your valuable time. Discover the benefits of Heroku, the PaaS of choice for developers since 2007.

Visit Site

Top comments (0)

Billboard image

Create up to 10 Postgres Databases on Neon's free plan.

If you're starting a new project, Neon has got your databases covered. No credit cards. No trials. No getting in your way.

Try Neon for Free →

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay