Kotlin es ideal para desarrollar aplicaciones del lado del servidor, lo que le permite escribir código conciso y expresivo mientras mantiene una compatibilidad total con las pilas de tecnología basadas en Java existentes y una curva de aprendizaje fluida:

  • Expresividad: Las innovadoras funciones de lenguaje de Kotlin, como su compatibilidad con constructores con seguridad de tipos y propiedades delegadas, ayudan a crear abstracciones potentes y fáciles de usar.
  • Escalabilidad: El soporte de Kotlin para corrutinas ayuda a construir aplicaciones del lado del servidor que escalan a una gran cantidad de clientes con requisitos de hardware modestos.
  • Interoperabilidad: Kotlin es totalmente compatible con todos los marcos basados ​​en Java, lo que le permite permanecer en su pila de tecnología familiar mientras disfruta de los beneficios de un lenguaje más moderno.
  • Migración: Kotlin admite la migración gradual, paso a paso, de grandes bases de código de Java a Kotlin. Puede comenzar a escribir código nuevo en Kotlin mientras mantiene las partes más antiguas de su sistema en Java.
  • Estampación: Además de la excelente compatibilidad con IDE en general, Kotlin ofrece herramientas específicas para marcos (por ejemplo, para Spring) en el complemento para IntelliJ IDEA Ultimate.
  • Curva de aprendizaje: Para un desarrollador de Java, comenzar con Kotlin es muy fácil. El convertidor automatizado de Java a Kotlin incluido en el complemento Kotlin ayuda con los primeros pasos. Kotlin Koans ofrece una guía a través del key características del idioma con una serie de ejercicios interactivos.

Frameworks para el desarrollo del lado del servidor con Kotlin

  • Primavera utiliza las funciones de lenguaje de Kotlin para ofrecer API más concisas, comenzando con la versión 5.0. El generador de proyectos online le permite generar rápidamente un nuevo proyecto en Kotlin.

  • Vert.x, un marco para la creación de aplicaciones web reactivas en la JVM, ofrece apoyo dedicado para Kotlin, incluyendo documentación completa.

  • Ktor es un marco construido por JetBrains para crear aplicaciones web en Kotlin, haciendo uso de corrutinas para una alta escalabilidad y ofreciendo una API idiomática y fácil de usar.

  • kotlinx.html es un DSL que se puede utilizar para crear HTML en una aplicación web. Sirve como una alternativa a los sistemas de plantillas tradicionales como JSP y FreeMarker.

  • Micronauta es un marco moderno, basado en JVM y de pila completa para crear aplicaciones de microservicio y sin servidor modulares y fácilmente probables. Viene con muchas funciones prácticas incorporadas.

  • Javalin es un marco web muy ligero para Kotlin y Java que admite WebSockets, HTTP2 y solicitudes asíncronas.

  • Las opciones disponibles para la persistencia incluyen acceso directo JDBC, JPA, así como el uso de bases de datos NoSQL a través de sus controladores Java. Para JPA, el complemento del compilador kotlin-jpa adapta las clases compiladas por Kotlin a los requisitos del marco.

Implementación de aplicaciones del lado del servidor de Kotlin

Las aplicaciones de Kotlin se pueden implementar en cualquier host que admita aplicaciones web Java, incluidos Amazon Web Services, Google Cloud Platform y más.

Para implementar aplicaciones de Kotlin en Heroku, puedes seguir el tutorial oficial de Heroku.

AWS Labs ofrece una proyecto de muestra mostrando el uso de Kotlin para escribir AWS Lambda funciones.

Google Cloud Platform ofrece una serie de tutoriales para implementar aplicaciones de Kotlin en GCP, tanto para Ktor y App Engine y Spring y motor de aplicaciones. Además hay un laboratorio de código interactivo para implementar una aplicación Kotlin Spring.

Usuarios de Kotlin en el lado del servidor

Corda es una plataforma de contabilidad distribuida de código abierto, respaldada por los principales bancos y construida completamente en Kotlin.

Cuenta JetBrains, el sistema responsable de todo el proceso de validación y venta de licencias en JetBrains, está escrito en 100% Kotlin y ha estado funcionando en producción desde 2015 sin problemas importantes.

Próximos pasos

  • El Creación de aplicaciones web con servlets Http y los tutoriales de Creación de un servicio web RESTful con Spring Boot le muestran cómo puede crear y ejecutar aplicaciones web muy pequeñas en Kotlin.
  • Para obtener una introducción más detallada al idioma, consulte la documentación de referencia en este sitio y Kotlin Koans.
  • Micronaut también tiene muchos detalles bien detallados. guías, que muestra cómo puede crear microservicios en Kotlin.