Php Joomla,将视图、模型和控制器注入容器是件坏事吗?
正如标题所说,我只想问,如果我将所有视图、模型、控制器和其他类(如helpers)注入容器(IoC),例如下图,这是否是一件坏事 样本: 注意:在这种情况下,我为我的组件创建了自己的基本视图、模型和控制器,所以我不使用默认的Joomla实例,比如Php Joomla,将视图、模型和控制器注入容器是件坏事吗?,php,joomla,dependencies,containers,Php,Joomla,Dependencies,Containers,正如标题所说,我只想问,如果我将所有视图、模型、控制器和其他类(如helpers)注入容器(IoC),例如下图,这是否是一件坏事 样本: 注意:在这种情况下,我为我的组件创建了自己的基本视图、模型和控制器,所以我不使用默认的Joomla实例,比如JModelLegacy::getInstance()或JControllerLegacy::getInstance() 谢谢。我就是这么做的。我已经厌倦了不断的改变,这些改变破坏了扩展,迫使我重写它们,而没有任何实际的好处 我强制了Joomla的所有
JModelLegacy::getInstance()代码>或JControllerLegacy::getInstance()代码>
谢谢。我就是这么做的。我已经厌倦了不断的改变,这些改变破坏了扩展,迫使我重写它们,而没有任何实际的好处
我强制了Joomla的所有MVC类,并为它们添加了前缀。一切正常
我认为您在一次加载所有内容时不会遇到问题。至少在你展示的清单上。如果你有数百个视图和模型的扩展,你可能会受伤
另一方面,你为什么要这么做?将您的库与Joomla的库分离,它将自动加载所有内容。(如果您的扩展包含数百个视图和模型,您可能会受到伤害)。是的,我知道,这是我问这个问题的第一个原因,在上图中,这只是一个例子,可能视图、模型和控制器的总数超过50+。(另一方面,你为什么要这样做?将你的库与Joomla的库分离,它会自动加载所有内容)。不,它们不是自动加载的,它们只在我需要时加载,我只是觉得这样可以保存我的工作,因为我可以访问从容器中注入到所有视图的任何内容,还有一个原因是我想在Joomla内部创建类似laravel的东西,而且我只将字符串或名称空间/类名绑定到容器中,除了Joomla核心之外,大多数都不是对象。对不起,我英语不好,我明白了。无论哪种方式,都取决于您如何构造扩展,但直接回答您的问题我不会担心立即加载所有内容。