Kotlin

Kotlin

Tutorial Kotlin: Evaluación

Kotlin Evaluación: Repasa y consolida tus conocimientos desde lo básico hasta corutinas y concurrencia, comparando con Java y aplicando programación funcional.

Aprende Kotlin GRATIS y certifícate

Introducción

Este test está diseñado para ayudarte a medir tus conocimientos actuales de Kotlin. No importa si eres un principiante o si ya tienes experiencia; lo importante es que aproveches esta oportunidad para identificar tus puntos fuertes y las áreas donde puedes mejorar.

Temas a evaluar

Introducción a Kotlin:

  • Historia y filosofía de Kotlin
  • Usos de Kotlin en la actualidad
  • Kotlin vs Java

Instalación y primer programa de Kotlin:

  • Estructura básica de un proyecto Kotlin
  • Hola mundo en Kotlin
  • Compilación y ejecución
  • Paquetes e importaciones

Tipos de datos, variables y constantes:

  • Declaración y asignación de variables
  • Tipos de datos primitivos
  • Uso de constantes

Operadores y expresiones:

  • Operadores aritméticos, lógicos y relacionales
  • Precedencia y asociatividad de operadores
  • Conversión y casting de tipos

Cadenas de texto y manipulación:

  • Operaciones básicas con cadenas
  • Formateo de cadenas

Estructuras de control:

  • Estructuras condicionales (if, else, when)
  • Bucles (for, while, do-while)
  • Expresiones de control (break, continue, return)
  • Expresiones de control con try-catch

Funciones y llamada de funciones:

  • Definición y sintaxis de funciones
  • Parámetros y argumentos (por defecto, nombrados)
  • Sobrecarga de funciones
  • Funciones locales y anidadas

Clases y objetos:

  • Definición de clases y creación de objetos
  • Propiedades y métodos de las clases
  • Inicialización de objetos y constructores
  • Clases anidadas e internas

Herencia y polimorfismo:

  • Concepto de herencia en Kotlin
  • Uso de open y override
  • Polimorfismo y clases derivadas
  • Sobreescritura de métodos

Interfaces y clases abstractas:

  • Definición y uso de interfaces
  • Definición y uso de clases abstractas
  • Diferencias entre interfaces y clases abstractas
  • Implementación múltiple de interfaces

Data classes y destructuring:

  • Definición y uso de data class
  • Métodos generados automáticamente (toString, equals, hashCode, copy)
  • Uso de destructuring para extraer datos
  • Comparación entre data class y clases regulares

Tipos genéricos y varianza:

  • Definición y uso de tipos genéricos
  • Variancia: in y out
  • Restricciones en tipos genéricos
  • Funciones y clases genéricas

Listas, Conjuntos y Mapas:

  • Definición y uso de listas (List, MutableList)
  • Definición y uso de conjuntos (Set, MutableSet)
  • Definición y uso de mapas (Map, MutableMap)
  • Operaciones comunes sobre colecciones (filtrar, mapear, agrupar)

Introducción a la programación funcional en Kotlin:

  • Qué es la programación funcional
  • Explicación de funciones puras y efectos secundarios
  • Ventajas y limitaciones del paradigma funcional sobre el paradigma imperativo
  • Evaluación perezosa (lazy)

Funciones de primera clase y de orden superior:

  • Funciones de primera clase y de orden superior
  • Expresiones Lambda
  • Lambdas con funciones de orden superior
  • Cláusulas inline y no-inline
  • Uso de funciones anónimas

Inmutabilidad y datos inmutables:

  • Qué es la inmutabilidad
  • Ventajas de usar datos inmutables
  • val y data class en Kotlin
  • Cómo aplicar inmutabilidad en estructuras de datos
  • Colecciones inmutables vs mutables
  • Evitar estados compartidos

Composición de funciones:

  • Qué es la composición de funciones
  • Composición con lambdas
  • Aplicación de funciones como argumentos
  • Creación de pipelines funcionales

Monads y manejo funcional de errores:

  • Introducción a Monads en programación funcional
  • Uso y diferencias de Either y Result para manejo de errores
  • Uso y diferencias de Optional y Option para valores opcionales
  • Manejo de errores con Monads anidados

Operaciones en colecciones:

  • Operaciones map, filter y reduce en colecciones
  • Uso de fold en colecciones
  • Procesamiento perezoso con secuencias en colecciones
  • Ejemplos prácticos de transformaciones en colecciones

Transformaciones en Monads y Functors:

  • Introducción a Monads y Functors
  • Uso de map y flatMap en Monads (Option, Result)
  • Composición de Functors y Monads
  • Ejemplos prácticos de transformaciones en estructuras encapsuladas

Funciones parciales y currificación:

  • Definición de funciones parciales
  • Currificación de funciones
  • Aplicaciones prácticas de funciones parciales
  • Currificación con funciones de orden superior

Introducción a las corutinas:

  • Qué son las corutinas y qué ventajas tienen
  • Creación y uso de corutinas
  • Scopes y contextos de corutinas

Asincronía con suspend, async y await:

  • Funciones suspendidas suspend
  • Uso de async
  • Operador await
  • Composición de funciones suspendidas

Concurrencia funcional:

  • Manejo de concurrencia en corutinas
  • Estructuras de sincronización en corutinas: Uso de Mutex, Channel
  • Paralelismo con corutinas
Aprende Kotlin GRATIS online

Ejercicios de esta lección Evaluación

Evalúa tus conocimientos de esta lección Evaluación con nuestros retos de programación de tipo Test, Puzzle, Código y Proyecto con VSCode, guiados por IA.

Todas las lecciones de Kotlin

Accede a todas las lecciones de Kotlin y aprende con ejemplos prácticos de código y ejercicios de programación con IDE web sin instalar nada.

Introducción A Kotlin

Kotlin

Introducción Y Entorno

Instalación Y Primer Programa De Kotlin

Kotlin

Introducción Y Entorno

Tipos De Datos, Variables Y Constantes

Kotlin

Sintaxis

Operadores Y Expresiones

Kotlin

Sintaxis

Cadenas De Texto Y Manipulación

Kotlin

Sintaxis

Estructuras De Control

Kotlin

Sintaxis

Funciones Y Llamada De Funciones

Kotlin

Sintaxis

Clases Y Objetos

Kotlin

Programación Orientada A Objetos

Herencia Y Polimorfismo

Kotlin

Programación Orientada A Objetos

Interfaces Y Clases Abstractas

Kotlin

Programación Orientada A Objetos

Data Classes Y Destructuring

Kotlin

Programación Orientada A Objetos

Tipos Genéricos Y Varianza

Kotlin

Programación Orientada A Objetos

Listas, Conjuntos Y Mapas

Kotlin

Estructuras De Datos

Introducción A La Programación Funcional

Kotlin

Programación Funcional

Funciones De Primera Clase Y De Orden Superior

Kotlin

Programación Funcional

Inmutabilidad Y Datos Inmutables

Kotlin

Programación Funcional

Composición De Funciones

Kotlin

Programación Funcional

Monads Y Manejo Funcional De Errores

Kotlin

Programación Funcional

Operaciones Funcionales En Colecciones

Kotlin

Programación Funcional

Transformaciones En Monads Y Functors

Kotlin

Programación Funcional

Funciones Parciales Y Currificación

Kotlin

Programación Funcional

Introducción A Las Corutinas

Kotlin

Coroutines Y Asincronía

Asincronía Con Suspend, Async Y Await

Kotlin

Coroutines Y Asincronía

Concurrencia Funcional

Kotlin

Coroutines Y Asincronía

Evaluación

Kotlin

Evaluación

Accede GRATIS a Kotlin y certifícate

Certificados de superación de Kotlin

Supera todos los ejercicios de programación del curso de Kotlin y obtén certificados de superación para mejorar tu currículum y tu empleabilidad.

En esta lección

Objetivos de aprendizaje de esta lección