kotlin第三方库记录

一、测试

除了JUnit与TestNG,下面两个框架提供了用kotlin编写测试的更有表现力的DSL

1.KotlinTest(https://github.com/kotlintest/kotlintest)——灵活的测试框架,它的灵感来自于ScalaTest,支持多种不同的编写测试的样式

2.Spek(https://github.com/jetbrains/spek)——属于Kotlin的BDD风格的测试框架,由JetBrains发起,现在由社区维护

3.Hamkrest(https://github.com/npryce/hamkrest)——如果你对JUnit还算满意,只是对更有表现力的断言DSL感兴趣

4.Mockito-Kotlin(https:github.com/nhaarman/mockito-kotlin),它解决了mock Kotlin类时出现的一些问题,还提供了一套更漂亮的用于mock的DSL

二、依赖注入

常见的Java依赖注入框架,比如Spring、Guice和Dagger,都能很好地和Kotlin一起工作。如果你对原生的Kotlin方案感兴趣,试试Kodein(https://github.com/SalomonBrys/Kodein),它提供了一套漂亮的DSL来配置依赖,而且它的实现也非常高效。

三、JSON序列化

1.jackson-module-kotlin(https://github.com/FasterXML/jackson-module-kotlin)——提供深度的Kotlin集成,包括了对数据类的支持。

2.Kotson(https://github.com/SalomonBrys/Kotson)——为GSON提供了一套漂亮的包装器。

3.Klaxon(https://github.com/cbeust/klaxon)——轻量的纯Kotlin方案。

四、HTTP Clients

1.Retrofit(https://square.github.io/retrofit)——构建REST API的client,完全兼容Android的Java库,能和Kotlin平滑对接。

2.OKHttp(https://square.github.io/okhttp/)——更底层的方案。

3.Fule(https://github.com/kittinunf/Fuel)——纯Kotlin的HTTP库。

五、Web应用

1.Spring Kotlin(https://github.com/sdeleuze/spring-kotlin)——在老版本的Spring项目上使用Kotlin。

2.vert.x(https://github.com/vert-x3/vertx-lang-kotlin/)

3.Ktor(https://github.com/Kotlin/ktor)——JetBrains的研究项目,探索如果借助符合语言习惯的API来构建一个现代的、全功能的web应用项目。

4.Kara(https://github.com/TinyMission/kara)——最初的Kotlin Web框架,JetBrains和其他一些公司在正式产品中使用了它。

5.Wasabi(https://github.com/wasabifx/wasabi)——基于Netty构建的HTTP框架,具备表现力丰富的Kotlin API。

6.Kovert(https://github.com/kohesive/kovert)——基于vert.x构建的REST框架。

7.kotlinx.html(https://github.com/kotlin/kotlinx.html)——生成HTML。

8.Thymeleaf(www.thymeleaf.org)——更传统的方式,java模板引擎。

六、访问数据库

除了像Hibernate这样的传统的Java选项外,可以试试Exposed(https://github.com/jetbrains/Exposed).

七、工具和数据结构

1.现今最火热的新编程范式莫过于响应式编程。和JVM响应式编程库RxJava一样,官方提供Kotlin绑定(https://github.com/ReactiveX/RxKotlin).

1.funKTionale(https://github.com/MarioAriasC/funKTionale)——实现了各种函数式编程原语(比如偏函数应用)。

2.Kovenant(https://github.com/mplatvoet/kovenant)——Kotlin和Android的promise实现。

八、桌面应用编程

最有可能用的就是JavaFX

TornadoFX(https://github.com/edvin/tornadofx)——为JavaFX提供了一套强大的Kotlin适配器,让你能自然地使用Kotlin完成桌面应用开发。

你可能感兴趣的:(kotlin,开发语言,android)