Kotlin para el lado del servidor:
Kotlin es una excelente opción para desarrollar aplicaciones del lado del servidor, ya que permite escribir código conciso y expresivo mientras mantiene la compatibilidad total con las pilas de tecnología basadas en Java existentes y una curva de aprendizaje uniforme:
- Expresividad : las características de lenguaje innovadoras de Kotlin, como su soporte para constructores de tipo seguro y propiedades delegadas, ayudan a construir abstracciones potentes y fáciles de usar.
- Escalabilidad : el soporte de Kotlin para las rutinas ayuda a construir aplicaciones del lado del servidor que se adaptan a un gran número 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 cosecha 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 partes antiguas de su sistema en Java.
- Herramientas : además del excelente soporte de IDE en general, Kotlin ofrece herramientas específicas del marco (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 de las características clave del lenguaje con una serie de ejercicios interactivos.
Marcos para el desarrollo del lado del servidor con Kotlin
- ¿Android 1 hará historia?
- ¿Cuál es la aplicación de Android más útil para citas de Instagram con las mejores características?
- Si es un desarrollador de iOS, ¿cuál es la mejor y más rentable manera de crear una versión de Android de su aplicación?
- Cómo enviar un archivo por correo electrónico mediante programación en Android
- ¿Quiénes son los principales desarrolladores de Android en Silicon Valley?
- Spring utiliza las funciones de lenguaje de Kotlin para ofrecer API más concisas, comenzando con la versión 5.0. El generador de proyectos en línea permite generar rápidamente un nuevo proyecto en Kotlin.
- Vert.x, un marco para construir aplicaciones web reactivas en la JVM, ofrece soporte dedicado para Kotlin, incluida la documentación completa.
- Ktor es un marco web nativo de Kotlin creado por JetBrains, que utiliza corutinas para una alta escalabilidad y ofrece una API idiomática y fácil de usar.
- kotlinx.html es un DSL que se puede usar para construir HTML en una aplicación web. Sirve como una alternativa a los sistemas de plantillas tradicionales como JSP y FreeMarker.
- 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 de Kotlin a los requisitos del marco.
Implementación de aplicaciones del lado del servidor 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, puede seguir el tutorial oficial de Heroku.
AWS Labs proporciona un proyecto de muestra que muestra el uso de Kotlin para escribir funciones de AWS Lambda.
Kotlin para Android:
Kotlin es ideal para desarrollar aplicaciones de Android, ya que ofrece todas las ventajas de un lenguaje moderno a la plataforma de Android sin introducir nuevas restricciones:
- Compatibilidad : Kotlin es totalmente compatible con JDK 6, lo que garantiza que las aplicaciones de Kotlin puedan ejecutarse en dispositivos Android más antiguos sin problemas. Las herramientas de Kotlin son totalmente compatibles con Android Studio y compatibles con el sistema de compilación de Android.
- Rendimiento : una aplicación Kotlin se ejecuta tan rápido como una Java equivalente, gracias a una estructura de código de bytes muy similar. Con el soporte de Kotlin para funciones en línea, el código que usa lambdas a menudo se ejecuta incluso más rápido que el mismo código escrito en Java.
- Interoperabilidad : Kotlin es 100% interoperable con Java, lo que permite utilizar todas las bibliotecas de Android existentes en una aplicación Kotlin. Esto incluye el procesamiento de anotaciones, por lo que el enlace de datos y Dagger también funcionan.
- Huella : Kotlin tiene una biblioteca de tiempo de ejecución muy compacta, que se puede reducir aún más mediante el uso de ProGuard. En una aplicación real, el tiempo de ejecución de Kotlin agrega solo unos pocos cientos de métodos y menos de 100K al tamaño del archivo .apk.
- Tiempo de compilación : Kotlin admite una compilación incremental eficiente, por lo que si bien hay una sobrecarga adicional para compilaciones limpias, las compilaciones incrementales suelen ser tan rápidas o más rápidas que con Java.
- 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 de las características clave del lenguaje con una serie de ejercicios interactivos.
Kotlin para JavaScript:
Kotlin ofrece la capacidad de apuntar a JavaScript. Lo hace transpilando Kotlin a JavaScript. La implementación actual apunta a ECMAScript 5.1, pero hay planes para eventualmente apuntar a ECMAScript 2015 también.
Cuando elige el destino de JavaScript, cualquier código de Kotlin que forme parte del proyecto, así como la biblioteca estándar que se incluye con Kotlin, se transpira a JavaScript. Sin embargo, esto excluye el JDK y cualquier marco o biblioteca JVM o Java utilizados. Cualquier archivo que no sea Kotlin será ignorado durante la compilación.
El compilador de Kotlin intenta cumplir con los siguientes objetivos:
- Proporcionar resultados de tamaño óptimo
- Proporcionar salida que sea legible JavaScript
- Proporcionar interoperabilidad con los sistemas de módulos existentes.
- Proporcione la misma funcionalidad en la biblioteca estándar, ya sea para JavaScript o JVM (en el mayor grado posible).
Como puede ser usado
Es posible que desee compilar Kotlin a JavaScript en los siguientes escenarios:
- Creación de código Kotlin dirigido a JavaScript del lado del cliente que interactúa con elementos DOM . Kotlin proporciona una serie de interfaces de tipo estático para interactuar con el Modelo de Objetos del Documento, permitiendo la creación y actualización de elementos DOM. Interactuando con gráficos como WebGL . Puede usar Kotlin para crear elementos gráficos en una página web usando WebGL.
- Creación de código Kotlin dirigido a JavaScript del lado del servidor Trabajando con tecnología del lado del servidor . Puede usar Kotlin para interactuar con JavaScript del lado del servidor, como node.js
Kotlin se puede usar junto con bibliotecas y marcos de terceros existentes, como JQuery o ReactJS. Para acceder a marcos de terceros con una API fuertemente tipada, puede convertir definiciones de TypeScript del repositorio de definiciones de tipo Definitely Typed a Kotlin utilizando la herramienta ts2kt. Alternativamente, puede usar el tipo dinámico para acceder a cualquier marco sin tipeo fuerte.
Kotlin también es compatible con CommonJS, AMD y UMD, lo que facilita la interacción con diferentes sistemas de módulos.