:magnet: 磁铁 Magnet是一个简洁的,基于范围树的依赖注入(DI)库,专为高度模块化的Android应用程序而设计。 它由两部分组成:注释处理器(Kotlin)和无反射运行时库(Java + Kotlin)。 设计 磁铁定义并反对两个核心概念: Scopes和Instances 。 Scope是实例的容器。 可以通过引用父范围将范围合并到层次树中。 树层次结构中最顶层的范围(没有父范围)称为根范围。 Instance是注入类型的具体出现。 实例可以在作用域(作用域实例)中或在作用域之外(未作用域实例)进行分配。 依赖规则 范围使用强依赖关系相互依赖-范围依赖只能指向其父范围。