Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Kotlin Multiplatform - Un código para dominarlo...

Kotlin Multiplatform - Un código para dominarlos a todos

En un mundo donde la diversidad de plataformas es la norma, Kotlin Multiplatform (KMP) emerge como una solución poderosa para desarrollar aplicaciones eficientes y mantenibles con un solo código base.

En esta charla, te guiaré a través de los primeros pasos para adentrarte en el desarrollo multiplataforma con Kotlin.

Exploraremos cómo configurar tu entorno de desarrollo, las mejores prácticas para estructurar tu proyecto y las librerías esenciales que te facilitarán el camino.

Descubrirás cómo KMP te permite compartir lógica de negocio y de UI entre Android, iOS, Desktop y Web, reduciendo el tiempo de desarrollo y mejorando la consistencia de tus aplicaciones.

Antonio Leiva

November 30, 2024
Tweet

More Decks by Antonio Leiva

Other Decks in Programming

Transcript

  1. . ¿Qué es Kotlin Multiplatform? . Creando un proyecto desde

    cero . Ecosistema de Librerías . Demo y Conclusiones
  2. Permite escribir código en Kotlin para múltiples plataformas Cada target

    puede tener su propia implementación Decidimos hasta dónde vamos a compa ir el código
  3. // Common expect class PlatformConfiguration { fun getPlatformName(): String }

    // Android actual class PlatformConfiguration { actual fun getPlatformName(): String = "Android" } // iOS actual class PlatformConfiguration { actual fun getPlatformName(): String = "iOS" }
  4. UI

  5. :

  6. : Compose: UI declarativa para Android, que ahora también sopo

    a Desktop, iOS (beta) y Web (alpha) UIs nativas: Podemos compa ir lógica de aplicación, e implementar vistas nativas
  7. :

  8. : ViewModels de Architecture Components: Patrón MVVM Mismo código que

    se usa en Android Navegación con Navigation Compose
  9. : ViewModels de Architecture Components: Patrón MVVM Mismo código que

    se usa en Android Navegación con Navigation Compose Voyager: Navegación para Compose También ofrece ViewModels
  10. :

  11. : Ktor Client: Cliente HTTP Sopo a corrutinas Kto it:

    Wrapper sobre ktor Similar a Retro t para Android
  12. :

  13. :

  14. : Corrutinas: Sopo e para programación asíncrona Todo el API

    es multiplataforma Flows para manejar eventos asíncronos
  15. :

  16. : Coil: Carga de imágenes en CMP Sopo e para

    Web Multiplataforma Kamel: Alternativa a Coil La primera para CMP
  17. :

  18. : SQLDelight: ORM para SQLite Más popular Room: La de

    Android, ahora para KMP Sopo e en alpha (2.7.0-alphaXX)
  19. : SQLDelight: ORM para SQLite Más popular Room: La de

    Android, ahora para KMP Sopo e en alpha (2.7.0-alphaXX) Realm: Solución NoSQL
  20. :

  21. : Koin: Se está convi iendo en estándar Multiplataforma Muy

    fácil de usar Kodein: Alternativa a Koin API muy similar
  22. :

  23. : kotlinx.text: Desarrollar tests una vez Reutilizar en todas las

    plataformas Kotest: Framework de testing Librería propia de Asse ions Prope y testing
  24. : kotlinx.text: Desarrollar tests una vez Reutilizar en todas las

    plataformas Kotest: Framework de testing Librería propia de Asse ions Prope y testing Mokkery: Mocking framework