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

Aprendiendo Kotlin

Aprendiendo Kotlin

@gdgramosmejia #devfest19 talk with an introduction to the Kotlin Programming Language.

Facundo Rodríguez Arceri

December 07, 2019
Tweet

More Decks by Facundo Rodríguez Arceri

Other Decks in Programming

Transcript

  1. Agenda • Sobre el lenguaje • Funciones • Variables •

    Nulabilidad • Strings • Condicionales • Estructuras de repetición • Clases y objetos
  2. Sobre Kotlin • Lenguaje de programación de propósito general. •

    Orientado a Objetos + Programación Funcional. • Open Source. • Estáticamente tipado. • Desarrollado por JetBrains. • Kotlin Island != Island of Java. • Corre sobre una JVM. • Mismas convenciones que Java.
  3. Lo básico • Archivos .kt • Uso de packages, como

    en Java. • Puede declararse más de una clase por archivo. • Funciones de alto nivel. • No es necesario que las sentencias terminen en punto y coma.
  4. Funciones • Pueden retornar un valor, o no (Unit). •

    Los parámetros pueden indicarse por su nombre. • Los parámetros pueden tener valores por default.
  5. Variables • Definen su tipo. ◦ Explícitamente: Se indica. ◦

    Implícitamente: El compilador lo deduce. • Definen si son: ◦ Mutables (var) ◦ Inmutables/Constantes (val)
  6. Nulabilidad • Característica que hace seguro al lenguaje. • Para

    que una variable pueda tener el valor nulo, esto debe declararse sí o sí en su tipo, utilizando el operador ?. • Elvis operator.
  7. Clases y objetos • Se pueden definir en una sola

    línea. • Puede haber más de una por archivo. • Pueden recibir parámetros en el constructor o no. • Pueden heredar de una sola clase ◦ Por default: Any • Para poder extender una clase, esta debe ser marcada como open
  8. Magia ✨ • data class • extension functions • Implementación

    de singletons: object • sealed classes • enums • Interfaces • coroutines
  9. Links útiles • Documentación - https://kotlinlang.org/docs/reference/basic-syntax.html • Kotlin & Android

    - https://developer.android.com/kotlin • Kotlin/Everywhere Buenos Aires - https://www.youtube.com/watch?v=ySBP34IcRuc&list=PLCDIutLaQECNAam6Zf jWkV67RuUIbYt14 • Motivos para convencer a tu jefe de usar Kotlin: https://medium.com/@facundomr/six-reasons-to-convince-your-team-to-start-usi ng-kotlin-for-android-4e47c2e36546 • Código de la charla: https://gist.github.com/facundomr/8a6ef1602dc3ca8a504e44a2fe50a073