在 VBA 中很好地阅读了关于 DI 的内容:
https://rubberduckvba.wordpress.com/2016/07/05/oop-vba-pt-2-factories-and-cheap-hotels/
所以现在下一步是在 VBA 中使用 IoC 容器。但我想知道这是否可能!我是 VBA 的新手,我无法弄清楚一些事情:
- 如果在 VBA 中完成,则 VBA 没有名称空间或 C# 中的等效类型。那么我的查找表如何存储一个类型的唯一键呢?
- 我想过用 C# 编写一个 com dll 并在那里实现一个 IoC,但我不知道如何将接口类型传递给 com 接口。我什至无法实例化一个接口以将其作为对象传递给 com.
我是否简化为仅使用字符串并使用模块在 VBA 中实现命名空间?
PS:我没有找到任何用于 vba 的 IoC 容器的现有实现,所以如果有的话,我会全力以赴!