- Implementar clase concreta
TDALista<T> - Definir estructura interna (lista enlazada simple)
- Implementar nodo
- Inserción (inicio / final / posición)
- Eliminación
- Búsqueda por criterio
- Recorrido (iteración)
- Definir criterio de comparación
- Permitir búsqueda por clave (código de libro)
- Crear clase
Libro - Atributos: codigo, titulo, precioReposicion, stock
- Constructor
- Getters / Setters
- Método aumentar stock
- Método disminuir stock (con validación)
- Implementar
toString() - Comparación por título (para ordenamiento)
- Crear clase
Biblioteca - Atributo:
TDALista<Libro> catalogo
- Alta de libro
- Buscar libro por código
- Agregar ejemplares
- Registrar préstamo
- Registrar devolución
- Eliminar libro
- Consultar stock
- Listar libros ordenados por título
-
Implementar ordenamiento por título
-
Definir estrategia:
- Ordenamiento interno de la lista
- Estructura auxiliar + sort
- Leer archivo
- Parsear líneas
- Validar datos
- Alta o actualización de libros
- Calcular valor total agregado
- Leer archivo
- Parsear líneas
- Diferenciar PRESTAMO / DEVOLUCION
- Ajustar stock
- Manejar stock insuficiente
- Calcular variación total
- Crear clase
Main - Inicializar biblioteca
- Procesar adquisiciones
- Procesar préstamos
- Mostrar resultados
- Manejar libro inexistente
- Evitar stock negativo
- Limitar préstamos al stock disponible
- Evitar duplicados en alta
- Alta de libro
- Préstamo parcial
- Devolución
- Eliminación
- Ordenamiento
- Implementación completa de
TDALista - Nodo interno
- Inserción
- Eliminación
- Búsqueda
- Testing unitario
- Clase
Libro - Lógica de stock (aumentar/disminuir)
- Validaciones
- Comparadores (título / código)
- Alta de libro
- Buscar por código
- Eliminar libro
- Consultar stock
- Agregar ejemplares
- Registrar préstamo
- Registrar devolución
- Manejo de edge cases (stock insuficiente)
- Leer
adquisiciones.txt - Parseo
- Integración con Biblioteca
- Cálculo de valor total
- Leer
prestamos.txt - Parseo
- Aplicar operaciones
- Calcular variación de stock
- Implementar
Main - Integración final
- Proyecto inicializado
- Todas las partes integradas
- Pruebas completas
- Listo para entrega