Projeto Final da disciplina de Programação Aplicada C++
- Adicionar novo livro:
- Descrição: Um recurso para adicionar um novo livro à biblioteca. O usuário pode fornecer os detalhes do livro, como ID, título, ano, autor e gênero. O livro é então armazenado no banco de dados da biblioteca.
- Uso: O método
adicionarLivrona classeBibliotecaé responsável por essa funcionalidade.
- Listar todos os livros:
- Descrição: Um recurso para exibir uma lista de todos os livros atualmente na biblioteca. Os detalhes de cada livro são exibidos, incluindo seu ID, título, ano, autor e gênero.
- Uso: O método
listarLivrosna classeBibliotecaé responsável por essa funcionalidade.
- Adicionar novo usuário:
- Descrição: Um recurso para adicionar um novo usuário à biblioteca. O usuário pode fornecer os detalhes do usuário, como ID, nome e tipo (aluno ou professor). O usuário é então armazenado no banco de dados da biblioteca.
- Uso: O método
adicionarUsuariona classeBibliotecaé responsável por essa funcionalidade.
- Listar todos os usuários:
- Descrição: Um recurso para exibir uma lista de todos os usuários na biblioteca. Os detalhes de cada usuário são mostrados, incluindo seu ID, nome e tipo (aluno ou professor).
- Uso: O método
listarUsuariosna classeBibliotecaé responsável por essa funcionalidade.
- Emprestar um livro:
- Descrição: Um recurso para permitir que um usuário pegue um livro emprestado da biblioteca. O usuário deve ser elegível para pegar emprestado (ou seja, ter vagas de empréstimo disponíveis). O livro é marcado como emprestado e a contagem atual de empréstimos do usuário é incrementada.
- Uso: O método
emprestarLivrona classeBibliotecaé responsável por essa funcionalidade.
- Devolver um livro:
- Descrição: Um recurso para permitir que um usuário devolva um livro à biblioteca. O livro é marcado como disponível e a contagem atual de empréstimos do usuário é decrementada.
- Uso: O método
devolverLivrona classeBibliotecaé responsável por essa funcionalidade.
- Exibir detalhes do usuário:
- Descrição: Um recurso para exibir informações detalhadas sobre um usuário específico, incluindo seu ID, nome e status atual de empréstimo.
- Uso: O método
exibirUsuariona classeUsuarioé responsável por essa funcionalidade.
- Exibir detalhes do livro:
- Descrição: Um recurso para exibir informações detalhadas sobre um livro específico, incluindo seu ID, título, ano, autor, gênero e status de empréstimo.
- Uso: O método
exibirDetalhesna classeLivroé responsável por essa funcionalidade.
-
Plataforma/Tecnologias:
-
Linguagem de programação: C++
-
IDE/Editor: Qualquer IDE ou editor de texto compatível com C++ (por exemplo, Visual Studio Code, CLion, Eclipse)
-
Sistema de compilação: Nenhum especificado, mas um simples comando de compilação
g++pode ser usado para compilar o projeto. -
Bibliotecas padrão: O projeto usa bibliotecas C++ padrão, como
<iostream>e<vector>. -
Descrições de classe e método:
-
ItemBiblioteca:
-
Atributos:
-
int id: Identificador exclusivo para o item. -
int ano: Ano de publicação. -
string titulo: Título do item. -
bool emprestado: Status emprestado (true se emprestado, false caso contrário). -
Métodos:
-
ItemBiblioteca(int id, string titulo, int ano): Construtor para inicializar o item. -
virtual void exibirDetalhes(): Método virtual para exibir detalhes do item. -
int getId(): Método para obter o ID do item. -
bool isEmprestado(): Método para verificar se o item é emprestado. -
void venderr(): Método para marcar o item como emprestado. -
void devolver(): Método para marcar o item como disponível. -
Livro:
-
Atributos:
-
string autor: Autor do livro. -
string genero: Gênero do livro. -
Métodos:
-
Livro(int id, string titulo, int ano, string autor, string genero): Construtor para inicializar o livro. -
void exibirDetalhes(): Método de substituição para exibir detalhes específicos do livro. -
Usuário:
-
Atributos:
-
int id: Identificador único do usuário. -
int limiteEmprestimos: Número máximo de livros que o usuário pode pegar emprestado. -
int emprestimosAtuais: Número atual de livros emprestados pelo usuário. -
string nome: Nome do usuário. -
Métodos:
-
Usuário(int id, string nome, int limiteEmprestimos): Construtor para inicializar o usuário. -
virtual void exibirUsuário(): Método virtual para exibir detalhes do usuário. -
bool podeEmprestar(): Método para verificar se o usuário pode pegar mais livros emprestados. -
void realizarEmprestimo(): Método para realizar um empréstimo de livros. -
void realizarDevolucao(): Método para realizar uma devolução de livros. -
int getId(): Método para obter o ID do usuário. -
Aluno:
-
Métodos:
-
Aluno(int id, string nome): Construtor para inicializar um usuário aluno. -
Professor:
-
Métodos:
-
Professor(int id, string nome): Construtor para inicializar um profess