轻量级的依赖注入框架Koin

依赖注入的优点:

1.依赖注入会自动释放不再使用的对象,减少资源的过度使用。

2.减少模版代码,代码变的更具可读性。

3.编写低耦合代码,更容易测试。

4.符合依赖倒置原则

Koin与Hilt的区别

1.Koin使用功能解析,无代理,无代码生成,无反射,使用dsl进行配置,高内聚,但会增加启动时间,运行时正确性

2.Hilt:由于jetpack开源,Android Studio提供了强大的基础支持,在关联代码之间进行导航,编译时正确性。使用Kapt会生成代码,代码量增加,编译时间加长,门槛比较高。

Hilt基于Kotlin的特性实现的

1.基于Kotlin的高阶函数特性,可以作为类,参数及变量

2.inline,reified ,infix关键字的特性

3.Kotlin trailing lambdas表达式

4.Function with receiver的特性

Hilt原理

1.通过限定符存储在map中

2.通过rootScope 和自定义scope实现生命周期的管理。

3.factory和single 区分单个范围

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容