Tema
TypeScript
TypeScript es JavaScript con tipos. Escribes el mismo JavaScript que ya conoces, pero le agregas anotaciones que describen qué forma tienen tus datos: este parámetro es un número, esta función devuelve un usuario, esta propiedad puede faltar. Un compilador revisa tu código antes de ejecutarlo y te avisa de errores que en JavaScript solo descubrirías cuando tu cliente abre la página y algo truena.
Hoy TypeScript es el estándar de la industria para proyectos serios. React, Vue, Angular, Next.js, NestJS, Astro y casi todas las librerías modernas están escritas en TypeScript o lo soportan de primera mano. Las ofertas de trabajo de frontend y backend lo piden cada vez más, y en equipos grandes es prácticamente obligatorio.
En proyectos reales lo usarás para tipar las respuestas de tus APIs, los props de tus componentes, los formularios, la configuración y los modelos de tu base de datos. El resultado: autocompletado preciso en tu editor, refactors sin miedo y muchos menos errores en producción.
Qué vas a poder hacer al terminar
- Configurar un proyecto TypeScript desde cero (
tsconfig.json,tsc,tsx, Vite). - Tipar variables, funciones, objetos y respuestas de APIs con confianza.
- Crear código reutilizable con genéricos y transformar tipos con utility types.
- Manejar datos inciertos con narrowing, type guards y uniones discriminadas.
- Usar TypeScript con el DOM, con React y con Node/Express.
- Migrar un proyecto JavaScript a TypeScript poco a poco y aplicar buenas prácticas profesionales.
Requisitos previos
- Dominar los fundamentos de JavaScript: variables, funciones, arrays, objetos, módulos,
async/awaityfetch. - Tener Node.js instalado (ver Instalación de Node).
- Saber usar la terminal y npm a nivel básico.
Temario
- ¿Qué es TypeScript? — Superset de JS, tipado estático y qué errores evita.
- Instalación y tsconfig —
tsc,tsx, Vite y cada opción importante deltsconfig.json. - Tipos básicos — Primitivos, arrays, tuplas,
anyvsunknown, uniones, literales yas const. - Interfaces y types — Describir objetos, propiedades opcionales,
extends, intersecciones yRecord. - Funciones tipadas — Parámetros, retornos, callbacks, sobrecargas y funciones
async. - Genéricos — Código reutilizable y seguro:
fetchJsongenérico yApiResponse. - Utility types —
Partial,Pick,Omit,ReturnTypey tipos mapeados para tus DTOs. - Narrowing — Reducir tipos con
typeof,in, uniones discriminadas y type guards. - Módulos y DOM —
import type, archivos.d.ts,@typesy el DOM tipado. - TS con React y Node — Props, estado y eventos en React; Express tipado en Node.
- Buenas prácticas —
strict,satisfies, migración gradual y proyecto final: cliente tipado de API.