"fully static" Dagger2 文档中是什么意思?



谷歌的dagger2文档从开始

Dagger是一个完全静态的编译时依赖注入框架。。。

在这种情况下,"完全静态"是什么意思?难道"编译时间"不足以描述它的工作方式吗?

"编译时"依赖注入框架如何是动态的?

还有其他DI框架具有在编译时运行的注释处理器,这些处理器不是完全静态的。

例如Roboguice有一个可选的注释处理器。因此,在某种意义上,它可以声称具有"编译时"方面。然而,它仍然依赖于运行时的反射进行注入,因此您不能声称它是"完全静态的"。

用"完全静态"限定"编译时"区别了Dagger 2的显著特性,即使用注释处理器完成DI代码生成,而无需依赖反射。

最新更新