Preparación por nivel
Intermedio en TypeScript
Bloque intermedio de TypeScript: diseño práctico, depuración y capacidad de llevar una funcionalidad a producción.
¿Cuándo prefieres `interface` y cuándo `type` por motivos de diseño y mantenimiento?¿Qué señales te dicen que un tipo es demasiado complejo para seguir siendo mantenible?¿Cómo diseñarías utility types propios sin crear magia opaca para el equipo?¿Qué problemas reales resuelve el tipado exhaustivo en reducers, eventos o comandos?¿Qué pruebas o validaciones mantendrías aunque TypeScript ya compile en verde?¿Qué smells ves en una code review TypeScript antes de que exploten en runtime?¿Cómo equilibras productividad y rigor tipando código de UI frente a fronteras de dominio?¿Cuándo tiene sentido generar tipos desde schema y cuándo modelarlos manualmente?¿Qué respuesta senior darías si te preguntan “TypeScript evita fallos”?¿Cómo tiparías eventos, callbacks y handlers para conservar seguridad sin llenar el código de genéricos ruidosos?¿Cuándo usarías `satisfies` y qué ventaja tiene frente a `as` o anotaciones explícitas?¿Qué harías con enums, literals y const assertions en un proyecto que busca APIs estables?