Modelar una biblioteca digital con tipos de datos abstractos
Visión general
De qué trata este proyecto.
Diseña 4 TDA para una biblioteca digital, impleméntalos en JSON con tests y CLI. Obtén un certificado verificable.
El escenario
La red (financiada por el ayuntamiento, presupuesto modesto de TI) no puede pagar un sistema integral comercial pero necesita salir del Excel — el equipo bibliotecario es no técnico y maneja la consola con coaching.
El Briefing
Lo que harás y lo que demostrarás.
Modelar una pequeña aplicación de biblioteca usando TDA bien diseñados que separe interfaz de implementación y permita cambiar la persistencia sin reescribir lógica de dominio.
Earning criteria — what you'll demonstrate
- Diseñar TDA separando interfaz e implementación
- Aplicar modularidad para que el código sea extensible
- Escribir tests unitarios significativos sobre TDA
- Razonar sobre cómo una buena abstracción permite cambiar implementación
Encaje académico
Dónde encaja esto en tus estudios.
Afina las mismas habilidades que tu titulación espera de ti.
Programming Abstractions
Bachelor · Programming Languages
Strong alignment
This challenge maps to Programming Abstractions at the Bachelor level. It sharpens the same practical skills your coursework expects — but in a real industry context with actual constraints and deliverables.
Habilidades
Habilidades que demostrarás.
Cada una aparece en tu credencial verificada.
- Abstraction
Apply abstraction to solve real industry problems and demonstrate production-level capability.
- Data Abstraction
Apply data abstraction to solve real industry problems and demonstrate production-level capability.
- Modular Programs
Apply modular programs to solve real industry problems and demonstrate production-level capability.
- Python
Write clean, efficient Python for data processing, automation, and backend services.
- Testing
Apply testing to solve real industry problems and demonstrate production-level capability.
- Software Design
Apply software design to solve real industry problems and demonstrate production-level capability.
Carreras
Roles para los que esto te prepara.
Títulos reales. Puentes de habilidades reales. Elige el que más se acerque a tu trayectoria.
Ingeniero de Software
Diseñar TDA limpios y demostrar extensibilidad con análisis explícito es exactamente el rigor que distingue a una persona junior bien formada en cualquier entrevista técnica.
Este proyecto afina
- abstraction
- data-abstraction
- software-design
Ingeniero de Backend
Quien diseña dominios con TDA construye APIs y servicios que el resto del equipo entiende sin necesitar 2 semanas de onboarding.
Este proyecto afina
- abstraction
- modular-programs
- python