使用Dagger2和Kotlin的重点是什么?
Dagger2文档说:
"首选构造函数注入是首选,因为javac将确保在设置之前不引用任何字段,这有助于避免NullPointerExceptions。"
Kotlin存在的主要原因是提供无效安全性。
将Kaglin与Dagger2一起使用是否值得?
答案 0 :(得分:1)
这句话(我没有在文档中直接看到,但没关系)说使用Dagger(构造函数注入)的一种方法比另一种方法(方法注入)更安全。
与不使用Dagger相比,它没有说使用Dagger提供null安全性。
如果你使用Dagger的构造函数注入Kotlin,你的属性将是正常的非可空属性;如果你使用方法注入,你需要使它们可以为空或使用lateinit
。因此,当与Kotlin一起使用时,构造函数注入仍然比方法注入提供更多的零安全性。