在NEventStore的Nanocontainer类背后有没有故事?是否存在与其他IoC的关系依赖关系,或者它是由NEventStore的作者自己从头开始编写的?
我问这个是因为我喜欢这个类的智能方法,它似乎是一个非常轻量级的IoC容器,非常容易理解。
如果有一个唯一的包只有这个功能,那就没问题了。
发布于 2014-06-11 01:10:29
你的问题只有NEventStore的开发人员才能真正回答,但是从available source code中很容易发现它的实现是非常简约的,并且“缺乏”许多使它成为“真正的”DI容器的功能。据我所知,代码并不是真正基于任何现有的容器,尽管在basic中所有的容器看起来都是一样的。
NanoContainer实现的目的是实现NEventStore本身需要的足够功能,或者在更改框架的默认行为时用户需要的功能。
DI库应该具备哪些特性才能成为一个“真正的”DI容器还有待讨论,但我相信它至少应该能够自动连接类型(依赖项会根据构造函数的参数自动注入构造函数)。NanoContainer不支持此功能。它缺少的其他功能包括:
releasing instances (当done)
的常见配置问题时,处置实例
当然,你是否需要这些特性取决于很多因素。
https://stackoverflow.com/questions/24134306
复制相似问题