Não consigo realizar ele, alguem poderia me ajudar/auxiliar, vou enviar o git com o meu codigo atual: https://github.com/Duduenri/POObiblioteca
Desenvolver um sistema de gerenciamento de uma biblioteca utilizando os conceitos de Programação Orientada a Objetos (POO). Este projeto servirá para revisar e aplicar os principais conceitos abordados ao longo da unidade curricular, como classes, objetos, herança, polimorfismo, encapsulamento, e manipulação de arquivos.
Descrição do Projeto:
Os alunos deverão criar um sistema que permita o gerenciamento de livros, membros da biblioteca e empréstimos de livros. Os grupos poderão ser de até 3 integrantes. O sistema deve ser capaz de realizar as seguintes operações:
- Cadastro de Livros
- Adicionar novo livro (com atributos como título, autor, ISBN, ano de publicação).
- Listar todos os livros cadastrados.
- Atualizar informações de um livro.
- Remover um livro do cadastro.
- Cadastro de Membros
- Adicionar novo membro (com atributos como nome, número de matrícula, endereço, telefone).
- Listar todos os membros cadastrados.
- Atualizar informações de um membro.
- Remover um membro do cadastro.
- Gerenciamento de Empréstimos
- Realizar empréstimo de um livro para um membro (registrar data de empréstimo e data de devolução).
- Listar todos os empréstimos ativos.
- Registrar devolução de um livro.
- Listar histórico de empréstimos.
Requisitos Técnicos:
- Classes e Objetos:
- Criar classes para Livro, Membro e Empréstimo.
- Utilizar encapsulamento para proteger os atributos das classes.
- Implementar métodos para adicionar, atualizar, remover e listar objetos.
- Herança e Polimorfismo:
- Implementar uma classe base "Pessoa" e derivar a classe "Membro" dela.
- Demonstrar o uso de polimorfismo através de métodos que podem ser sobrepostos.
- Manipulação de Arquivos:
- Salvar e carregar os dados dos livros, membros e empréstimos de/para arquivos para garantir a persistência dos dados.
- Utilizar arquivos de texto ou CSV para armazenamento.
- Interface:
- Desenvolver uma interface de linha de comando (CLI) para interação com o usuário.
- Oferecer um menu para navegar entre as diferentes funcionalidades do sistema.
Passo a Passo para a Execução:
- Planejamento:
- Dividir o projeto em módulos: Cadastro de Livros, Cadastro de Membros, Gerenciamento de Empréstimos, e Interface CLI.
- Definir as classes e seus atributos.
- Especificar os métodos necessários para cada funcionalidade.
- Implementação:
- Implementar as classes Livro, Membro (herdando de Pessoa) e Empréstimo.
- Desenvolver métodos de manipulação de dados (CRUD) para livros e membros.
- Implementar funções para realizar e registrar empréstimos, além de devolver livros.
- Persistência de Dados:
- Criar métodos para salvar e carregar dados de arquivos.
- Garantir que todas as alterações (adicionar, atualizar, remover) sejam refletidas nos arquivos correspondentes.
- Interface de Usuário:
- Desenvolver uma interface de linha de comando para facilitar a interação com o sistema.
- Implementar um menu principal que permita ao usuário escolher entre as funcionalidades disponíveis (Cadastro de Livros, Cadastro de Membros, Empréstimos).