Ejercicio de programación con CSharp: Proyecto sintaxis en C#
Proyecto
3h 0m
Desarrolla un sistema de gestión de biblioteca en C# con POO, CRUD, manejo de excepciones y persistencia de datos. Aprende a programar un proyecto completo.
- Crea la estructura base del proyecto definiendo las clases principales:
- Crea una clase abstracta
Persona
con propiedades comoId
,Nombre
yEmail
- Implementa la clase
Usuario
que herede dePersona
y añada propiedades comoLibrosPrestados
(List) - Desarrolla la clase
Libro
con propiedades comoISBN
,Titulo
,Autor
,EstaDisponible
- Define una interfaz
IPrestable
con métodosPrestar()
yDevolver()
- Implementa la encapsulación en todas las clases:
- Define campos privados con sus correspondientes propiedades públicas
- Asegúrate de incluir validaciones básicas en los setters (por ejemplo, que el email tenga formato correcto)
- Implementa constructores adecuados para cada clase
- Desarrolla el sistema de colecciones y CRUD:
- Crea una clase
Biblioteca
que contenga las coleccionesList<Libro>
,List<Usuario>
yList<Prestamo>
- Implementa métodos para añadir, buscar, actualizar y eliminar libros y usuarios
- Crea una clase
Prestamo
que relacione unUsuario
con unLibro
y tenga fechas de préstamo y devolución
- Programa la lógica de préstamos y devoluciones:
- Implementa la interfaz
IPrestable
en la claseLibro
- Desarrolla un método para prestar un libro que verifique disponibilidad
- Crea un método para devolver libros que actualice el estado del libro y del usuario
- Asegúrate de que un usuario no pueda tener más de 3 libros prestados simultáneamente
- Implementa el manejo de excepciones:
- Crea una clase
BibliotecaException
que herede deException
- Desarrolla excepciones específicas como
LibroNoDisponibleException
yUsuarioNoRegistradoException
- Implementa bloques try-catch en los métodos apropiados
- Desarrolla el sistema de persistencia:
- Crea métodos para guardar los datos de libros, usuarios y préstamos en archivos JSON o CSV
- Implementa funcionalidad para cargar estos datos al iniciar la aplicación
- Asegúrate de mantener la integridad de las relaciones entre objetos
- Crea un menú interactivo por consola:
- Desarrolla un menú principal con opciones para gestionar libros, usuarios y préstamos
- Implementa submenús para las operaciones CRUD de cada entidad
- Añade opciones para realizar préstamos, devoluciones y consultar el estado actual
- Implementa funcionalidades adicionales:
- Añade un sistema de búsqueda de libros por título o autor
- Implementa un registro de préstamos vencidos
- Crea estadísticas básicas como libros más prestados o usuarios más activos
Más ejercicios de programación con CSharp
Evalúa tus conocimientos en CSharp con más ejercicios de programación de tipo Test, Puzzle, Código y Proyecto con VSCode.
CRUD en C# de modelo Customer sobre una lista
Proyecto
Arrays y listas
Puzzle
Objetos
Puzzle
Excepciones
Test
Eventos
Test
Lambdas
Test
Diccionarios en C#
Código
Variables y constantes
Test
Tipos de datos
Test
Herencia
Puzzle
Operadores
Puzzle
Uso de consultas LINQ
Test
Clases y encapsulación
Puzzle
Uso de consultas LINQ
Puzzle
Excepciones
Puzzle
Control de flujo
Test
Eventos
Puzzle
Diccionarios
Puzzle
Tipos de datos
Puzzle
Conjuntos, colas y pilas
Puzzle
Tecnologías de este ejercicio de programación
Entornos de desarrollo para este ejercicio

Visual Studio Code

GitHub