使用Kotlin進行服務器端開發

Kotlin非常適合開發服務器端應用程序,用它可以編寫簡潔明瞭的代碼,同時保持與現有基於Java的技術堆棧的完全兼容性和平滑的學習曲線:

  • 表現力:Kotlin語言創新一些功能,如支持類型安全的構建器和委託屬性,可幫助構建功能強大且易於使用的抽象。

  • 可擴展性:Kotlin對協同程序的支持有助於構建服務器端應用程序,擴展到擁有適度硬件要求的大量客戶端。

  • 互操作性:Kotlin與所有基於Java的框架完全兼容,可以讓您保持熟悉的技術棧,同時獲得更現代化的語言的優勢。

  • 遷移:Kotlin支持從Java逐步的遷移大型代碼庫到Kotlin。 您可以開始在Kotlin中編寫新代碼,同時將系統的較舊部分保留在Java中。

  • 工具:除了一般的IDE支持之外,Kotlin還爲IntelliJ IDEA Ultimate插件提供框架特定的工具(例如:Spring)。

  • 學習曲線:對於Java開發人員,Kotlin入門很容易。 包含在Kotlin插件中的自動化Java到Kotlin轉換器有助於實現代碼轉換。 Kotlin Koans通過一系列互動練習提供了語言的主要功能的指南。

使用Kotlin進行服務器端開發的框架

  • Spring使用Kotlin的語言功能提供更簡潔的API,從Spring 5.0版本開始。在線項目生成器允許在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應用程序可以部署到支持Java Web應用程序的任何主機,包括Amazon Web Services,Google Cloud Platform等。

Kotlin服務器端的用戶

Corda是一個開源的分佈式分類帳平臺,由各大銀行支持,完全使用Kotlin建立。

JetBrains帳戶,負責JetBrains整個許可證銷售和驗證過程的系統由100%的Kotlin編寫,自2015年以來一直在投產,沒有重大問題。