gpt4 book ai didi

dependency-injection - 依赖注入(inject)与不使用全局变量有何不同?

转载 作者:行者123 更新时间:2023-12-03 14:40:21 24 4
gpt4 key购买 nike

我一直在阅读很多关于依赖注入(inject)的内容,认为它可能是一种非常先进的编程方式,但我看不出仅仅避免全局状态之间的区别,因为当没有全局状态时,你被迫传入所有依赖项到对象。

有人可以向我解释一下,因为我认为我可能错过了关于什么是依赖注入(inject)的要点吗?

最佳答案

使用依赖注入(inject)看起来就像使用 Windows 注册表一样。你用你想要的东西加载注册表,然后将它们拉出来并在某个模块中使用它们。

但是,它破坏了面向对象的代码。

假设您的依赖注册表中有 20 个项目。数据库、记录器、异常处理程序等。

现在在给定的模块中,您不知道您的模块使用了哪些依赖服务。您的上下文会进一步丢失,因为您在运行代码时不知道依赖项注册表中的内容!

我在这里看不到任何好处。它只是使调试变得不可能。

关于dependency-injection - 依赖注入(inject)与不使用全局变量有何不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5440800/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com