概述

服务端Kotlin

使用Kotlin进行服务端开发

Kotlin非常适合服务端应用程序开发,允许编写简单明了的代码,同时保持与现有基于Java的技术栈的完全兼容性和平滑的学习曲线。

  • 表现力:Kotlin的创新语言功能,如支持类型安全的构建器和委托属性,可帮助构建功能强大且易于使用的抽象
  • 可扩展性:Kotlin对协同程序的支持有助于构建服务端应用程序,以适度的硬件要求扩展到大量客户端。
  • 互操作性:Kotlin与所有记忆Java的框架完全兼容,可以让您保持熟悉的技术栈,同时获得更现代化的语言的优势
  • 迁移:Kotlin支持将大型代码库从Java逐步逐步迁移到Kotlin。你可以开始用Kotlin写新代码,同时将系统旧的部分继续使用Java中。
  • 工具:除了一般的IDE支持之外,Kotlin还为IntelliJ IDEA插件提供了框架特定的工具(例如:Spring)
  • 学习曲线:对应Java开发人员,Kotlin入门很容易。Kotlin Koans通过一系列互动练习提供了语言的主要功能的指南。
使用Kotlin进行服务端开发的框架
  • Spring从5.0开始使用Kotlin的语言功能提供更简洁的API。在线项目生成器允许在Kotlin中快速生成一个新项目。
  • Vert.x是在JVM上构建反应式Web应用程序的框架,为Kotlin提供了专门的支持,包括完整文档。
  • Ktor是由JetBrains构建的Kotlin本机Web框架,利用协同程序实现高可扩展性,并提供易于使用和惯用的API。
  • kotlinx.html是一种可用于在Web应用程序中构建HTML的DSL。它可以作为传统模板协同的替代品,如JSP和FreeMarker
  • 持久化的可用选项包括直接JDBC访问,JPA以及通过其JAVA驱动程序使用NoSQL数据库。对于JPA,kotlin-jpa编译器插件使Kotlin编译的类适应框架的要求。
部署Kotlin服务端程序

Kotlin应用程序可以部署到支持JavaWeb应用程序的任何主机

深入学习这门语言,查看参考文档和Kotlin Koans

Kotlin for Android

使用Kotlin进行Android开发

Kotlin非常适合开发Android应用程序,将现代语言的所有优势带入Android平台,无需引入任何新的限制

  • 兼容性:Kotlin与JDK 6完全兼容,确保Kotlin应用程序可以在较旧的Android设备上运行,无任何问题。 Kotlin工具在Android Studio中完全支持,与Android构建系统兼容。
  • 性能:Kotlin应用程序运行速度与Java类似,非常类似的字节码结构。随着Kotlin对内联函数的支持,使用lambdas的代码通常比使用Java编写的代码运行得更快。
  • 互操作性:Kotlin可与Java进行100%互操作,允许在Kotlin应用程序中使用所有现有的Android库。这包括注释处理,所以数据绑定和匕首也是一样。
  • 脚印:Kotlin有一个非常紧凑的运行时库,可以通过使用ProGuard进一步减少。在真实的应用程序中,Kotlin运行时只添加了几百种方法,并且小于等于100K的.apk文件的大小。
  • 编译时间:Kotlin支持高效的增量编译,因此,对于清理构建来说,增加的构建通常与Java一样快或更快。
Android开发工具

Kotlin团队为Android开发提供了一套超越标准语言功能的工具:

  • Kotlin Android Extensions是一个编译器扩展,可以让您摆脱代码中的findViewById()调用,并将其替换为合成编译器生成的属性。
  • Anko是一个提供围绕Android API的一组Kotlin友好的包装器的图书馆,以及一个DSL,可以用Kotlin代码替换您的布局.xml文件。