Apariencia
🎤 Preguntas de entrevista — TypeScript
Preguntas típicas de entrevista sobre este tema.
¿Qué aporta TypeScript sobre JavaScript?
Respuesta: Los tipos: detecta errores en tiempo de desarrollo (antes de correr), da autocompletado y documenta el código. Al compilar, los tipos desaparecen y queda JS normal. → Clase 1
¿Cuál es la diferencia entre extends en interfaces/clases y T extends Forma en un genérico?
Respuesta: extends en clases/interfaces es herencia: la hija hereda todo de la base. T extends Forma en un genérico NO es herencia: es una restricción — "T puede ser cualquier tipo, siempre que cumpla al menos esa forma". No hereda nada, solo limita qué tipos son válidos. → Clase 9
¿Qué diferencia hay entre any y un tipo genérico <T>?
Respuesta: any acepta cualquier valor y apaga el chequeo de tipos: TypeScript deja de avisarte si te equivocas. Un genérico también acepta cualquier tipo, pero mantiene la relación entre lo que entra y lo que sale — sigue avisando si rompes esa relación. → Clase 9
¿Qué significa la T en un genérico? ¿Es obligatorio usar esa letra?
Respuesta: T es una convención para "Type", no una palabra reservada. Se puede usar cualquier nombre (U, K, Cualquiera...), pero T es el estándar más reconocido — convierte el código en algo que cualquier otro dev de TS lee sin explicación. → Clase 9
¿Para qué sirve una interfaz genérica si ya existe una clase genérica?
Respuesta: Para desacoplar. Una interfaz genérica (interface Contenedor<T>) describe un contrato sin fijar la implementación. Una función que recibe Contenedor<T> funciona con cualquier clase que cumpla esa forma, no solo con una clase concreta. → Clase 9
¿Por qué Node/el navegador no entienden TypeScript directamente?
Respuesta: Porque TS es solo para el desarrollo: añade tipos que ayudan a detectar errores, pero al final se compila a JavaScript, que es lo único que Node y los navegadores ejecutan. → Comandos