Saltar al contenido
Logotipo de Trainontech Trainontech

Lenguajes y Fundamentos de Programación · LNG-131

TypeScript: tipos para proyectos que crecen

Interfaces, genéricos, uniones discriminadas y compilador en modo estricto para proyectos que crecen.

Bajo demanda Intermedio 6 módulos · 30 clases

Formato asíncrono Desarrollo TypeScript, Deno

Lo que aprenderás

  • Anotar tipos primitivos, uniones, literales y alias y aprovechar la inferencia del compilador.
  • Modelar datos con interfaces y tipos, distinguiendo cuándo conviene cada uno.
  • Escribir funciones y estructuras genéricas con restricciones sobre los parámetros de tipo.
  • Diseñar uniones discriminadas y comprobar la exhaustividad de los casos en tiempo de compilación.
  • Estrechar tipos con guardas, predicados de tipo y aserciones controladas.
  • Configurar tsconfig en modo estricto y resolver los errores que aparecen al activarlo.

Contenido del curso

6 módulos · 30 clases en vídeo · práctica guiada en cada módulo

Módulo 1 · Puesta en marcha 5 clases
  • Qué aporta TypeScript sobre JavaScript
  • Ejecutar TypeScript con Deno sin configuración
  • Primeras anotaciones e inferencia automática
  • Leer un error del compilador de arriba abajo
  • tsconfig: las opciones que importan desde el primer día
Módulo 2 · El sistema de tipos 5 clases
  • Primitivos, arrays y tuplas
  • Uniones e intersecciones
  • Tipos literales y alias
  • any, unknown y never: para qué sirve cada uno
  • null, undefined y comprobaciones estrictas
Módulo 3 · Modelar datos 5 clases
  • Interfaces y tipos: diferencias prácticas
  • Propiedades opcionales, de solo lectura e índices
  • Extensión y composición de interfaces
  • Clases con modificadores de acceso e implements
  • Tipar la respuesta de una API real
Módulo 4 · Genéricos 5 clases
  • Funciones genéricas y parámetros de tipo
  • Restricciones con extends
  • Interfaces y clases genéricas
  • Tipos de utilidad: Partial, Pick, Omit y Record
  • Tipos condicionales y mapeados con ejemplos concretos
Módulo 5 · Estrechamiento y exhaustividad 5 clases
  • Guardas con typeof e instanceof
  • Uniones discriminadas por un campo de tipo
  • Comprobación exhaustiva con never
  • Predicados de tipo definidos por el usuario
  • Aserciones de tipo: cuándo son legítimas
Módulo 6 · Proyectos reales 5 clases
  • Activar el modo estricto en un proyecto existente
  • Migrar JavaScript a TypeScript por fases
  • Declaraciones de tipos para dependencias sin tipar
  • Organización de módulos y exportación de tipos públicos
  • Proyecto de cierre: refactorizar un cliente de API con tipos estrictos

Requisitos

  • Programar en JavaScript moderno: funciones, objetos, módulos y asincronía.
  • Haber trabajado en algún proyecto con más de un fichero.
  • Deno instalado o el entorno del curso, que ya ejecuta TypeScript sin configuración adicional.

Descripción

En un proyecto pequeño el tipado parece burocracia. En cuanto entran varias personas, aparecen refactorizaciones y las respuestas de una API cambian de forma, los errores se trasladan al tiempo de ejecución y se descubren en producción: un campo que llega indefinido, un caso de un switch que nadie contempló, una función a la que se le pasa el argumento en el orden equivocado.

El curso aborda TypeScript como herramienta de diseño, no como decoración. Se recorren la inferencia y las anotaciones, las interfaces y los tipos, los genéricos con restricciones, las uniones discriminadas con comprobación exhaustiva, el estrechamiento de tipos y los tipos de utilidad. Se trabaja con el compilador en modo estricto desde el principio y se practica tipando respuestas de API y refactorizando código JavaScript existente.

El resultado es código donde el compilador impide clases enteras de errores y donde la firma de una función documenta su contrato. Es la base para trabajar en proyectos con framework, para desarrollar extensiones y bibliotecas y para mantener bases de código compartidas por varios equipos.

¿Para quién es este curso?

  • Desarrolladores de JavaScript que mantienen un proyecto que ha crecido y acumula errores en tiempo de ejecución.
  • Equipos de desarrollo que comparten código y necesitan contratos explícitos entre módulos.
  • Programadores que van a construir extensiones o bibliotecas donde la API pública debe estar bien tipada.
Bajo demanda

Curso diseñado con la ficha cerrada. Se produce al confirmarse un grupo o un contrato.

Código
LNG-131
Nivel
Intermedio
Público
Desarrollo
Entorno
TypeScript, Deno

Este curso incluye

  • 30 clases en vídeo bajo demanda
  • Práctica en entornos web y simuladores, sin instalar nada
  • Tutorización en el campus
  • Acceso desde móvil, tableta y ordenador
  • Actualizaciones cuando cambia la versión de la herramienta
  • Certificado de finalización

Sigue aprendiendo

Cursos relacionados

PY-104Lenguajes y Fundamentos de Programación

Ficheros, excepciones y módulos

Lectura y escritura robusta, gestión de errores e importaciones para código que otros mantendrán.

Python

Intermedio 32 clases