M06L12Semana 3~5 h
L12 — Generics en APIs del dominio
~5 h · Semana 3
Cierras semana 3 integrando generics en la superficie pública que consumirá tu librería (semana 5).
Objetivo
Diseñar tipos exportados estables (CrearLibroInput, Pagina<T>) usando generics y utility types donde aporten.
Pasos
1. Lectura utility types (45 min)
Partial, Pick, Omit — solo los que uses.
2. DTOs de entrada/salida (90 min)
Separa entidad interna de DTO público.
3. Paginación o lista genérica (90 min)
export interface Pagina<T> {
items: T[];
total: number;
}
4. Documentación TSDoc (60 min)
Comentarios en exports públicos (una línea útil cada uno).
5. Commit cierre semana 3 (15 min)
feat(m06): API publica tipada semana 3
Hecho cuando
src/index.tsexporta API coherente y documentada.- Generics aparecen donde evitan duplicación real.
- Tests de contratos públicos.
Errores comunes
- Exportar todo el interior del dominio.
- Utility types ilegibles anidados.