Proyecto gestor de tareas CRUD

Proyecto de programación
Intermedio
Python
Curso de Python
90 min
200 XP
Actualizado: 06/05/2025

¡Programa y certifícate!

Asistente de IA
Solución de código
Certificado
Empezar ejercicio

Descripción

Desarrollo de un sistema de gestión de tareas con operaciones CRUD utilizando Python, implementando un modelo de datos con clases y repositorios.

  1. Crear la estructura del proyecto: Organiza tu proyecto con los siguientes archivos: models.py para las clases de entidades, repositories.py para los repositorios, y app.py como script principal.

  2. Implementar las entidades: En models.py, define la clase Proyecto con atributos como id, nombre, descripción y fecha de creación. Luego, define la clase Tarea con atributos como id, título, descripción, estado (pendiente, en progreso, completada), fecha límite y un identificador del proyecto al que pertenece.

  3. Crear los repositorios: En repositories.py, implementa las clases ProyectoRepositorio y TareaRepositorio que utilicen diccionarios como almacenamiento. Cada repositorio debe implementar métodos para crear, obtener, listar, actualizar y eliminar elementos.

  4. Implementar relaciones entre entidades: Añade métodos en TareaRepositorio para filtrar tareas por proyecto y por estado. Asegúrate de que al eliminar un proyecto, se eliminen también todas sus tareas asociadas.

  5. Añadir validaciones: Implementa validaciones básicas, como comprobar que los campos obligatorios no estén vacíos, que los IDs sean únicos y que las fechas tengan formato correcto.

    Guarda tu progreso

    Inicia sesión para no perder tu progreso y accede a miles de tutoriales, ejercicios prácticos y nuestro asistente de IA.

    Progreso guardado
    Asistente IA
    Ejercicios
    Iniciar sesión gratis

    Más de 25.000 desarrolladores ya confían en CertiDevs

  6. Desarrollar el script principal: En app.py, crea instancias de los repositorios y realiza operaciones CRUD para demostrar todas las funcionalidades. Crea al menos dos proyectos y varias tareas para cada uno, mostrando por consola los resultados de cada operación.

  7. Probar las operaciones CRUD: Demuestra la creación, lectura, actualización y eliminación tanto de proyectos como de tareas. Muestra también cómo filtrar tareas por proyecto y por estado.

  8. Implementar manejo de errores: Añade manejo de excepciones para casos como intentar acceder a un elemento que no existe o actualizar con datos inválidos.

Solución al ejercicio de programación en Python

Contenido bloqueado

¡Desbloquea la solución completa!

Completa el ejercicio de programación en Python para acceder a la solución paso a paso, explicaciones detalladas y mejores prácticas.

solution.js
JavaScript
1 function solveChallenge ( input ) {
2 // Algoritmo optimizado O(n log n)
3 const data = parseInput ( input );
4 const sorted = data . sort (( a , b ) => a - b );
5
6 // Aplicar técnica de dos punteros
7 let left = 0 , right = sorted . length - 1 ;
8 const result = [];
9
10 while ( left < right ) {
11 const sum = sorted [ left ] + sorted [ right ];
12 if ( sum === target ) {
13 result . push ([ sorted [ left ], sorted [ right ]]);
14 left ++; right --;
15 } else if ( sum < target ) {
16 left ++;
17 } else {
18 right --;
19 }
20 }
21
22 return result ;
23 }
Código completo
Explicaciones
Mejores prácticas
+1.200 developers han resuelto este ejercicio de programación

Practica con ejercicios de programación en Python

Mejora tus habilidades con cientos de ejercicios de práctica, recibe retroalimentación instantánea y obtén tu certificación cuando estés listo.

Asistente de IA

Aprende de tus errores

Progreso

Mide tu avance

Certificación

Valida tus habilidades

Únete a miles de desarrolladores mejorando sus habilidades en Python

⭐⭐⭐⭐⭐
4.9/5 valoración