Documentos de Académico
Documentos de Profesional
Documentos de Cultura
VT03A Lenguaje Kotlin
VT03A Lenguaje Kotlin
2.7. Corrutinas.................................................................................................................................................4
3.2. Operadores.............................................................................................................................................. 6
4. Funciones ................................................................................................................................ 8
1
1.5. Versatilidad
● Multiparadigma: Kotlin soporta programación orientada a objetos y
programación funcional, ofreciendo a los desarrolladores una amplia gama
de posibilidades para resolver problemas.
● Multiplataforma: Más allá de Android, Kotlin también puede ser utilizado
para desarrollar software en otras plataformas a través de Kotlin
Multiplatform, permitiendo compartir código entre Android, iOS, Web y
Backend.
1.7Aplicaciones en la Industria
● Desarrollo de Aplicaciones Móviles: Kotlin es ampliamente utilizado para el
desarrollo de aplicaciones Android debido a sus ventajas mencionadas
anteriormente.
● Desarrollo Backend: Kotlin también se utiliza en el desarrollo de backend
utilizando frameworks como Ktor y Spring, gracias a su rendimiento y
eficiencia.
● Desarrollo Web: Con Kotlin/JS, los desarrolladores pueden utilizar Kotlin
para construir aplicaciones web, permitiendo compartir la lógica de
negocio entre el backend y el frontend.
● Data Science: Aunque Python sigue siendo el lenguaje dominante en
ciencia de datos, Kotlin también está ganando terreno en este ámbito
debido a su seguridad de tipos y eficiencia.
2
1.8 Conclusión
Kotlin ha demostrado ser un lenguaje de programación poderoso y eficiente que
facilita a los desarrolladores escribir código limpio, conciso y seguro. Su
versatilidad y la adopción por parte de Google para el desarrollo de Android han
establecido a Kotlin como un lenguaje clave en el desarrollo de software
moderno
2.3. Concisión
● Sintaxis Limpia: Kotlin tiene una sintaxis que busca ser clara y concisa,
permitiendo expresar complejas ideas con menos líneas de código en
comparación con otros lenguajes como Java.
● Inferencia de Tipo: Kotlin es capaz de inferir los tipos de las variables en
muchos casos, lo que reduce la verbosidad del código sin sacrificar la
claridad o la seguridad del tipo.
3
2.4. Seguridad Frente a Nulls
● Eliminación de NullPointerException: Kotlin introduce el concepto de
tipos nulables y no nulables, lo cual ayuda a eliminar el problema común
de NullPointerException.
● Operador Elvis: Kotlin ofrece el operador Elvis (?:) para gestionar de forma
cómoda y segura los valores nulos.
2.7. Corrutinas
Asincronía Elegante: Kotlin introduce el concepto de corrutinas, que permite
escribir código asincrónico de manera más directa y legible, facilitando la gestión
de operaciones que se ejecutan en segundo plano.
4
● Preferido por Desarrolladores: Muchos desarrolladores de Android
prefieren Kotlin sobre Java debido a sus ventajas en términos de concisión,
seguridad y funcionalidades modernas.
5
3. Sintaxis Básica y Tipos de Datos en Kotlin
3.2. Operadores
● Aritméticos: +, -, *, /, %
● De Comparación: ==, !=, <, >, <=, >=
● Lógicos: &&, ||, !
6
3.3. Estructuras de control
● if …. else
7
● for: Bucle para iterar sobre ● forEach es una función de extensión de
las colecciones
rangos, colecciones, etc.
8
3.4. Otras herramientas
● Filtros: Filtrar elementos de una lista sin necesidad de recorrerla de forma
explícita.
4. Funciones
● Definición: Las funciones se definen usando la palabra clave fun, seguida
del nombre, parámetros y tipo de retorno.
9
● Parámetros: Los parámetros de la función se definen con un nombre y un
tipo.
● Retorno: El tipo de retorno de la función se especifica después de los
parámetros.
10
5.1 Herencia y Polimorfismo
Herencia: Kotlin permite la herencia, lo que significa que una clase (clase
derivada) puede heredar características de otra clase (clase base).
(Nota: open es utilizado para permitir que una clase sea heredable)
11
5.2 Encapsulamiento
● Modificadores de Acceso: private, protected, internal, y public controlan la
visibilidad de las clases y sus miembros.
● Propiedades: Uso de propiedades para acceder a los campos de la clase.
12
● Clases Abstractas: Son clases que no pueden ser instanciadas
directamente y comúnmente se utilizan como clases base para otras.
13
6. Corrutinas, Expresiones Lambda y
Extensiones de Función
6.1. Corrutinas
● Definición: Las corrutinas son una característica del lenguaje que permite
escribir código asincrónico de manera sencilla, proporcionando una forma
estructurada y eficiente para realizar tareas concurrentes y asíncronas. Se
basan en el concepto de suspensión de funciones, que permite que una
función detenga temporalmente su ejecución para liberar determinados
recursos (procesador, memoria, etc.). Esto nos permite la ejecución de
tareas en segundo plano (cargar interfaces gráficas, etc.)
● launch lanzará la ejecución de un nuevo hilo, suspend marca una función
como susceptible de ser suspendida, y async lanza un hilo de ejecución de
forma asíncrona (el resto de ejecuciones no depende del resultado de esta
función).
14
15
6.2. Expresiones Lambda
● Definición: Una expresión lambda es una función anónima, o en otras
palabras, una función sin nombre. Kotlin permite expresar instancias de
interfaces funcionales (interfaces con un solo método) de manera concisa y
limpia mediante expresiones lambda.
● Sintaxis Básica: { parámetros -> cuerpo de la función }
16