当前位置: 首页 > 软件库 > 程序开发 > >

Koin

Kotlin 的依赖注入框架
授权协议 Apache-2.0
开发语言 Kotlin
所属分类 程序开发
软件类型 开源软件
地区 不详
投 递 者 叶书
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

Koin 是一个用于 Kotlin 的实用型轻量级依赖注入框架,采用纯 Kotlin 编写而成,仅使用功能解析,无代理、无代码生成、无反射。

Koin 是一个 DSL,一个轻便的容器和一个实用的 API。

Actual Version

koin_version = '0.9.3'

Gradle

确保已经有 jcenter repo

// Add Jcenter to your repositories if needed
repositories {
	jcenter()    
}

选择 Koin 模块

// Koin for Kotlin
compile "org.koin:koin-core:$koin_version"

// Koin for Android
compile "org.koin:koin-android:$koin_version"

// Koin for Android Architecture Components
compile "org.koin:koin-android-architecture:$koin_version"

// Koin for Spark Kotlin
compile "org.koin:koin-spark:$koin_version"

// Koin for Ktor Kotlin
compile "org.koin:koin-ktor:$koin_version"

// Koin for JUnit tests
testCompile "org.koin:koin-test:$koin_version"
  • 一.引入Koin依赖 Koin是一款轻量级的依赖注入框架,根据官方的描述,它无代理,无代码生成,无反射。 def koinVersion = "2.2.2" //Koin for android implementation "org.koin:koin-android:$koinVersion" //Koin for scope feature implemen

  • Koin、Dagger2、Hilt 目前都是非常流行的库,面对这么多层出不穷的新技术,我们该做如何选择,是一直困扰我们的一个问题。 Hilt 与 Dagger2 区别并不大,Hilt就是对Dagger2的封装。 Koin框架,适用于使用Kotlin开发 ,是一款轻量级的依赖注入框架,无代理,无代码生成,无反射。 相对于Dagger2 而言Koin更加适合Kotlin语言。 Koin官网:https

  • 相关库 // Koin for Kotlin implementation 'org.koin:koin-core:2.2.2' implementation 'org.koin:koin-core-ext:2.2.2' // Koin for AndroidX implementation "org.koin:koin-androidx-scope:2.2

  • Koin (可以理解为注入框架),在Android 使用频繁,并且Koin官方专门给Android做了依赖库。 使用起来非常方便。 我们可以通过看官网的例子快速入门。 这里根据官方给出的例子,加上自己的理解和使用过程中遇到的问题, 做了个简单记录。 1. 官网首页 https://insert-koin.io/ 2. change log: https://github.com/InsertKoi

  • Gradle Setup# 添加 Koin Android 依赖项,如下所示: // Add Maven Central to your repositories if needed repositories { mavenCentral() } dependencies { // Koin for Android compile "io.insert-koin:k

  • Koin是什么? Koin是一个轻量级的依赖注入框架,基于Kotlin的DSL进行DI的配置,全程无反射无代码生成。 与Dagger的比较 Dagger是Andorid官方推荐使用的DI框架,功能十分强大,但学习曲线陡峭,使用成本也相对较高。Koin在某些方面相对于Dagger具有以下优势: 使用成本低,比如一个完整的MVVM架构的项目,使用dagger的话,需要对M/V/VM各层分别实现Modu

 相关资料
  • 在不讨论原因的情况下,假设有人想要一个老式的Play Framework web服务,并且不想使用依赖注入,也不想依赖Google的Guice。在玩法2.8.x中还可能吗? 有没有一个简单的方法可以让你不去这里就呆在老学校里? 我承认,但不完全理解https://www.playframework.com/documentation/2.4.x/migration24。我认为我的问题与2.7中删除

  • 在React中,想做依赖注入(Dependency Injection)其实相当简单。请看下面这个例子: // Title.jsx export default function Title(props) { return <h1>{ props.title }</h1>; } // Header.jsx import Title from './Title.jsx'; export defa

  • 依赖注入 Dependency Injection is a strong mechanism, which helps us easily manage dependencies of our classes. It is very popular pattern in strongly typed languages like C# and Java. 依赖注入是一个很强大的机制,该机制可以帮

  • 简介 Hyperf 默认采用 hyperf/di 作为框架的依赖注入管理容器,尽管从设计上我们允许您更换其它的依赖注入管理容器,但我们强烈不建议您更换该组件。 hyperf/di 是一个强大的用于管理类的依赖关系并完成自动注入的组件,与传统依赖注入容器的区别在于更符合长生命周期的应用使用、提供了 注解及注解注入 的支持、提供了无比强大的 AOP 面向切面编程 能力,这些能力及易用性作为 Hyper

  • 出自维基百科 Wikipedia: 依赖注入是一种允许我们从硬编码的依赖中解耦出来,从而在运行时或者编译时能够修改的软件设计模式。 这句解释让依赖注入的概念听起来比它实际要复杂很多。依赖注入通过构造注入,函数调用或者属性的设置来提供组件的依赖关系。就是这么简单。

  • 问题内容: 我想知道 _什么是Spring Framework? 为什么和何时应该在Java Enterprise开发中使用它? _ 答案将是“依赖注入框架”。好了,使用依赖注入框架时我们有什么优势?用setter值和/或构造函数参数描述类的想法对我来说似乎很奇怪。为什么这样 因为我们可以更改属性而无需重新编译项目?这就是我们所获得的一切吗? 那么,我们应该用什么对象来描述?所有对象还是只有几个?

  • 主要内容:什么是依赖注入,value,factory,provider,constant,实例,AngularJS 实例 - factory,AngularJS 实例 - provider什么是依赖注入 wiki 上的解释是:依赖注入(Dependency Injection,简称DI)是一种软件设计模式,在这种模式下,一个或更多的依赖(或服务)被注入(或者通过引用传递)到一个独立的对象(或客户端)中,然后成为了该客户端状态的一部分。 该模式分离了客户端依赖本身行为的创建,这使得程序设计变得松耦