我不懂好莱坞原则

问题描述 投票:0回答:2

对不起我的英语。

我在阅读《Head First Design Patterns》一书时偶然发现了这个原则。我看到其他人在 StackOverFlow 上问同样的问题和一些文章,但我仍然不明白。

有人可以用最简单的语言给我解释一下吗?

我读过的大多数示例都假设读者已经使用了像 Spring 这样支持 IoC 的框架。我以前从未使用过这些框架,因为我还是初学者。

谢谢你。

java inversion-of-control
2个回答
4
投票

已经有一段时间了,但由于观看人数太多,我解释一下。

好莱坞原则有时被称为控制反转说“不要打电话给我们,我们会打电话给你”,从软件工程的角度来看,它指出依赖于另一个对象的对象不应该调用它但应该等待对方打电话。

这个原则对IOC的定义更加抽象。如您所知,IoC 定义了依赖关系的反转控制。因此,首先您应该有一个控制中心,负责控制依赖项,即创建它们的实例。然后,该控制中心反转创建类实例的流程。因此,当您想在ClassB中使用ClassA时,您不会创建ClassB的实例然后调用ClassA。您创建 ClassA 的实例,并使用不同的技术将其传递给 ClassB 并使用它。

有关 IoC 的更多信息,请在互联网上进行一些投资,因为我刚刚解释了一些基本概念。


0
投票

我会看看“库与框架”的歧义问题。这是在 Google 搜索中找到的一篇文章:框架和库之间的区别

简而言之:一个被我们的程序调用(所以we在需要时调用这个库);当 it 需要时,framework 会调用我们程序的片段。

© www.soinside.com 2019 - 2024. All rights reserved.