{"id":21813336,"url":"https://github.com/FernaandoJr/flit","last_synced_at":"2025-07-20T08:31:05.504Z","repository":{"id":262725464,"uuid":"884505546","full_name":"FernaandoJr/ProjetoEDxENGII","owner":"FernaandoJr","description":null,"archived":false,"fork":false,"pushed_at":"2024-11-25T17:15:43.000Z","size":9,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-11-25T18:25:09.510Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/FernaandoJr.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-06T21:52:35.000Z","updated_at":"2024-11-25T17:15:47.000Z","dependencies_parsed_at":"2024-11-14T00:19:43.593Z","dependency_job_id":"1a6e4643-ab0a-467a-ae34-64a9b9a6bec8","html_url":"https://github.com/FernaandoJr/ProjetoEDxENGII","commit_stats":null,"previous_names":["fernaandojr/projetoedxengii"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FernaandoJr%2FProjetoEDxENGII","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FernaandoJr%2FProjetoEDxENGII/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FernaandoJr%2FProjetoEDxENGII/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FernaandoJr%2FProjetoEDxENGII/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FernaandoJr","download_url":"https://codeload.github.com/FernaandoJr/ProjetoEDxENGII/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":226764042,"owners_count":17678234,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-27T14:28:43.824Z","updated_at":"2025-07-20T08:31:05.497Z","avatar_url":"https://github.com/FernaandoJr.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Projeto: Fast Literary Indexing Tool (FLIT)\n\n![Badge](http://img.shields.io/static/v1?label=STATUS\u0026message=CONCLUIDO\u0026color=GREEN\u0026style=for-the-badge)\n\n## 💼 Informações sobre o Trabalho\n\n**Faculdade de Tecnologia de Mogi Mirim**\n\n**Curso:** Análise e Desenvolvimento de Sistemas (Noturno)\n\n**Matérias:**\n\n-   🧑🏻‍💻 Estrutura de Dados\n-   🖥️ Engenharia de Software II\n\n**Professores:**\n\n-   👨🏻‍🏫 Marcos Roberto Nava (Nava)\n-   👩🏻‍🏫 Ana Celia Ribeiro Bizigato Portes\n\n**Autores:**\n\n-   **Fernando Divino** - [@FernaandoJr](https://github.com/FernaandoJr)\n-   **Ian Camargo** - [@IanCamargo](https://github.com/IanCamargo)\n-   **Luis Piasentini** - [@LuisPiasentini](https://github.com/LuisPiasentini)\n-   **Thaito Batalini** - [@thaitoGB](https://github.com/thaitoGB)\n\n# \u0026#128214; Índice\n\n-   [Como Executar o Código](#Visão-do-Produto)\n-   [Visão do Produto](#Visão-do-Produto)\n-   [Tecnologias Utilizadas](#Tecnologias-Utilizadas)\n-   [Problemas e Soluções](#Problemas-e-Soluções)\n-   [Product Backlog](#Product-Backlog)\n-   [Diagrama de Casos de Uso](#Diagrama-de-Casos-de-Uso)\n-   [Fluxo de Eventos](#Fluxo-de-Eventos)\n    -   [Fluxo Básico](#Fluxo-Básico)\n    -   [Fluxo Alternativo](#Fluxo-Alternativo)\n-   [Diagrama de Atividades](#Diagrama-de-Atividades)\n-   [Guia do Usuário](#Guia-do-Usuário)\n-   [Conclusão](#conclusão)\n-   [Agradecimentos](#agradecimentos)\n\n-   # 🚀 Como Executar o Código\n\n## Pré-requisitos\n\nAntes de começar, certifique-se de ter as seguintes ferramentas instaladas:\n\n-   [GCC](https://gcc.gnu.org/) ou outro compilador C\n\n## Passos para Compilar e Executar\n\n1. Clone o repositório:\n\n    ```sh\n    git clone https://github.com/FernaandoJr/projeto-flit.git\n    cd projeto-flit\n    ```\n\n2. Compile o código:\n\n    ```sh\n    gcc -o flit main.c ./lib/ListaDinamica.c ./lib/Extra.c ./lib/ListaDuplamenteLigada.c ./lib/ArvoreBinaria.c\n    ```\n\n3. Execute o programa:\n\n    ```sh\n    ./flit\n    ```\n\n    Pronto! Agora você deve conseguir compilar e executar o código do FLIT.\n\n# 🌟 Visão do Produto\n\n-   **Propósito:** FLIT é projetado para resolver a necessidade de organização e gerenciamento de acervos literários em bibliotecas de pequeno e médio porte, facilitando o cadastro, busca e listagem de livros.\n-   **Público-Alvo:** Bibliotecas públicas e privadas, escolas e universidades que precisam de uma solução leve e eficiente para gerenciar seus livros.\n-   **Diferenciais:** O uso de estruturas de dados como árvores binárias e listas duplamente ligadas garante uma busca rápida e eficiente, além de uma ordenação simplificada dos livros.\n-   **Objetivo Estratégico:** Tornar-se uma ferramenta de referência para gestão de acervos literários em pequenas instituições, com potencial de expansão para uma solução mais robusta.\n-   **Escopo Geral:** Permitir o cadastro de livros com informações como ISBN, título, autor, e outras características, além de funcionalidades de busca, alteração, exclusão e relatórios.\n\n# 🔗 Tecnologias Utilizadas\n\n-   Linguagem C\n-   CLion\n\n# ❓ Problemas e Soluções\n\n## Problema:\n\n-   Interar entre as posições de memória para armazenar ou encontrar dados previamente armazenados.\n\n## Solução:\n\n-   Implementar uma lógica de loop que percorra os endereços por ponteiro até encontrar um endereço NULL.\n\n# 📋 Product Backlog\n\n| Prioridade |           Título            |                               Descrição                                |                                                                                                         Detalhamento                                                                                                         | Estimimativa |                                                                                                                                                                                              Critério de Aceite                                                                                                                                                                                              |\n| :--------: | :-------------------------: | :--------------------------------------------------------------------: | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |\n|    100     |      Cadastro de Livro      |            Permitir o cadastro de um novo livro no sistema             |      O sistema solicita o ISBN, título, autor quantidade de páginas, país de origem e gênero. Após a verificação da unicidade do ISBN, os dados são salvos na lista dinâminca, árvore binária e lista duplamente ligada      |      5       |                                                           1- Todos os campos obrigatórios devem ser preenchidos. 2- O ISBN deve ser único e validado antes do cadastro. 3- Os dados devem ser salvos nas estruturas (lista dinâmica, árvore binária e lista duplamente ligada). 4- Exibir mensagem de sucesso ou erro apropriada após o processo.                                                            |\n|     95     | Alteração de Dados de Livro |  Permitir a alteração dos dados de um livro existente, exceto o ISBN   |        O sistema solicita ISBN para localizar o livro. Caso encontrado, o usuário pode atualizar os dados do livro, como título, autor, quantidade de páginas, país de origem e gênero. O ISBN não pode ser alterado         |      8       |                              1- O sistema deve permitir a busca do livro pelo ISBN. 2- Apenas livros existentes podem ser alterados. 3- O sistema deve permitir a modificação de qualquer campo, exceto o ISBN. 4- As alterações devem ser refletidas em todas as estruturas de dados. 5- Exibir mensagem de confirmação após a alteração ou mensagem de erro em caso de falha.                              |\n|     90     |      Exclusão de Livro      |               Permitir a exclusão de um livro pelo ISBN                | O sistema solicita o ISBN para localizar o livro. Se o livreo for encontrado, ele será removido da lista dinâmica, árvore binária e lista duplamente ligada. Se o ISBN não for encontrado, uma mensagem de erro será exibida |      5       |                           1- O sistema deve permitir a busca do livro pelo ISBN antes da exclusão. 2- Apenas livros existentes podem ser excluídos. 3- A exclusão deve remover o livro de todas as estruturas de dados (lista dinâmica, árvore binária e lista duplamente ligada). 4- Exibir mensagem de confirmação após a exclusão ou de erro caso o livro não seja encontrado.                            |\n|     85     |       Busca de Livro        |                  Permitir a busca de livros pelo ISBN                  |                       O sistema solicita o ISBN para buscar o livro. Se o livro for encontrado, suas informações detalhadas serão exibidas. Se não encontrado, o sistema exibirá uma mensagem de erro                        |      13      | 1- O sistema deve permitir a busca de um livro pelo ISBN, título ou autor. 2- O resultado deve exibir todos os dados do livro encontrado. 3- Caso nenhum livro seja encontrado, o sistema deve exibir uma mensagem informando que não há resultados para a busca. 4- A busca deve ser eficiente, consultando as estruturas de dados apropriadas (lista dinâmica, árvore binária ou lista duplamente ligada). |\n|     80     |    Geração de Relatório     | Gerar relatório com a listagem de todos os livros, ordenados pelo nome |                        O sistema deve gerar um relatório completo dos livros registrados, ordenados por nome (ou outro critério). O relatório pode ser impresso ou exportado para um arquivo de texto                        |      13      |                                      1- O sistema deve permitir a geração de relatórios com todos os livros cadastrados, exibindo ISBN, título, autor, quantidade de páginas, país de origem e gênero. 2- O relatório deve ser organizado e paginado, se necessário. 3- Em caso de ausência de dados para o relatório, o sistema deve exibir uma mensagem informativa.                                       |\n\n# 📊 Diagrama de Casos de Uso\n\n![image](https://github.com/user-attachments/assets/9ef3624e-0c33-46e2-b118-fbbe1bdf5ade)\n\n# 📊 Descrição do Diagrama de Casos de Uso\n\n## 🔀 Fluxo Básico\n\n### 1. Caso de Uso: Cadastrar Livro\n\n-   Ator: Bibliotecário\n\n1.  O Bibliotecário solicita o cadastro de um novo livro.\n2.  O Sistema solicita os detalhes do livro (ISBN, nome, autor etc.).\n3.  O Bibliotecário insere os detalhes.\n4.  O Sistema verifica se o ISBN já está cadastrado.\n5.  O Sistema informa que o ISBN é único e cadastra o livro.\n6.  O Bibliotecário recebe a confirmação de que o livro foi cadastrado com sucesso.\n\n### 2. Caso de Uso: Alterar Cadastro de Livros\n\n-   Ator: Bibliotecário\n\n1. O Bibliotecário solicita a alteração dos dados de um livro específico.\n2. O sistema solicita o ISBN do livro a ser alterado.\n3. O Bibliotecário insere o ISBN.\n4. O sistema verifica se o ISBN está registrado.\n5. O sistema informa que o livro foi encontrado e exibe os dados atuais.\n6. O Bibliotecário modifica os dados desejados (exceto o ISBN).\n7. O sistema atualiza o cadastro com as novas informações.\n8. O Bibliotecário recebe a confirmação de que as alterações foram realizadas com sucesso.\n\n### 3. Caso de Uso: Excluir Livro\n\n-   Ator: Bibliotecário\n\n1. O Bibliotecário solicita a exclusão de um livro.\n2. O sistema solicita o ISBN do livro a ser excluído.\n3. O Bibliotecário insere o ISBN.\n4. O sistema verifica se o livro está cadastrado.\n5. O sistema informa que o livro foi encontrado.\n6. O Bibliotecário confirma a exclusão do livro.\n7. O sistema remove o livro do cadastro e atualiza as estruturas de indexação.\n8. O Bibliotecário recebe a confirmação de que o livro foi excluído.\n\n### 4. Caso de Uso: Buscar Livro\n\n-   Ator: Bibliotecário\n\n1. O Bibliotecário solicita a busca de um livro pelo ISBN.\n2. O sistema solicita o ISBN do livro.\n3. O Bibliotecário insere o ISBN.\n4. O sistema verifica se o ISBN está cadastrado.\n5. O sistema exibe os dados completos do livro, caso encontrado.\n6. O Bibliotecário visualiza as informações do livro.\n\n### 5. Caso de Uso: Gerar Relatório\n\n-   Ator: Bibliotecário\n\n1. O Bibliotecário solicita a geração de um relatório de todos os livros cadastrados.\n2. O sistema processa os dados e organiza os livros de forma ordenada.\n3. O sistema gera o relatório.\n4. O Bibliotecário visualiza o relatório detalhado dos livros cadastrados.\n\n### 6. Caso de Uso: Checar se já cadastrado (uso incluído em outros casos)\n\n-   Ator: Bibliotecário\n\n1. O sistema automaticamente verifica se o ISBN informado está cadastrado em operações de cadastro e alteração.\n2. O Bibliotecário é informado caso o ISBN já esteja registrado, impedindo a duplicidade.\n3. O Bibliotecário recebe a instrução de corrigir a entrada caso seja necessário.\n\n## ⚠️ Fluxo Alternativo\n\n### 1.1 Fluxo Alternativo: ISBN já cadastrado\n\n5. 1 - O Sistema informa que o ISBN já existe no cadastro.\n6. 2 - O Sistema aborta o cadastro e exibe mensagem de erro.\n\n### 2.1 Fluxo Alternativo: ISBN inexistente\n\n5. 1 - O sistema informa que o ISBN não está cadastrado.\n6. 2 - O Bibliotecário pode tentar novamente com outro ISBN ou cancelar a operação.\n\n### 3.1 Fluxo Alternativo: ISBN inexistente\n\n4. 1 - O sistema informa que o ISBN não está cadastrado.\n5. 2 - O Bibliotecário pode tentar novamente com outro ISBN ou cancelar a operação.\n\n### 4.1 Fluxo Alternativo: ISBN inexistente\n\n5. 1 - O sistema informa que o ISBN não está cadastrado.\n6. 2 - O Bibliotecário pode tentar novamente com outro ISBN ou encerrar a operação.\n\n### 5.1 Fluxo Alternativo: Nenhum livro cadastrado\n\n2. 1 - O sistema tenta acessar os dados de livros cadastrados.\n3. 2 - O sistema informa que não há livros cadastrados.\n4. 3 - O Bibliotecário encerra a operação ou aguarda novos cadastros.\n\n### 6.1 Fluxo Alternativo: Problema de verificação\n\n1. 1 - O sistema encontra um erro de validação ou conexão.\n1. 2 - O sistema informa que a verificação falhou temporariamente.\n1. 1 - O ator pode tentar novamente ou encerrar a operação.\n\n# 🔄 Fluxo de Eventos  \n\n## 🔀 Fluxo Básico  \n1. 🖥️ **O Sistema inicia** e mostra o Menu de Opções.  \n2. 📚 **O Bibliotecário seleciona** o cadastro de um novo livro.  \n3. 📝 **O Sistema solicita** os detalhes do livro (ISBN, nome, autor, etc.).  \n4. 🖊️ **O Bibliotecário insere** os detalhes.  \n5. 🔍 **O Sistema verifica** se o ISBN já está cadastrado.  \n6. ✅ **O Sistema informa** que o ISBN é único e cadastra o livro.  \n7. 🎉 **O Bibliotecário recebe** a confirmação de que o livro foi cadastrado com sucesso.  \n8. 🔄 **O Sistema retorna** para o Menu de Opções.  \n9. 🛠️ **O Bibliotecário seleciona** a alteração dos dados de um livro específico.  \n10. 🏷️ **O Sistema solicita** o ISBN do livro a ser alterado.  \n11. 🖊️ **O Bibliotecário insere** o ISBN.  \n12. 🔍 **O Sistema verifica** se o ISBN está registrado.  \n13. 📑 **O Sistema informa** que o livro foi encontrado e exibe os dados atuais.  \n14. 🖊️ **O Bibliotecário modifica** os dados desejados (exceto o ISBN).  \n15. 🖥️ **O Sistema atualiza** o cadastro com as novas informações.  \n16. 🎉 **O Bibliotecário recebe** a confirmação de que as alterações foram realizadas com sucesso.  \n17. 🔄 **O Sistema retorna** para o Menu de Opções.  \n18. 🗑️ **O Bibliotecário seleciona** a exclusão de um livro.  \n19. 🏷️ **O Sistema solicita** o ISBN do livro a ser excluído.  \n20. 🖊️ **O Bibliotecário insere** o ISBN.  \n21. 🔍 **O Sistema verifica** se o livro está cadastrado.  \n22. ✅ **O Sistema informa** que o livro foi encontrado.  \n23. 🗑️ **O Bibliotecário confirma** a exclusão do livro.  \n24. ❌ **O Sistema remove** o livro do cadastro e atualiza as estruturas de indexação.  \n25. 🎉 **O Bibliotecário recebe** a confirmação de que o livro foi excluído.  \n26. 🔄 **O Sistema retorna** para o Menu de Opções.  \n27. 🔍 **O Bibliotecário solicita** a busca de um livro pelo ISBN.  \n28. 🏷️ **O Sistema solicita** o ISBN do livro.  \n29. 🖊️ **O Bibliotecário insere** o ISBN.  \n30. 🔍 **O Sistema verifica** se o ISBN está cadastrado.  \n31. 📑 **O Sistema exibe** os dados completos do livro, caso encontrado.  \n32. 👓 **O Bibliotecário visualiza** as informações do livro.  \n33. 🔄 **O Sistema retorna** para o Menu de Opções.  \n34. 📄 **O Bibliotecário seleciona** a geração de um relatório de todos os livros cadastrados.  \n35. 🖥️ **O Sistema processa** os dados e organiza os livros de forma ordenada.  \n36. 📄 **O Sistema gera** o relatório.  \n37. 👓 **O Bibliotecário visualiza** o relatório detalhado dos livros cadastrados.  \n\n---\n\n## ⚠️ Fluxo Alternativo  \n\n### Durante o Cadastro de Livro  \n5.1 🚨 **O Sistema informa** que o ISBN já existe no cadastro.  \n5.2 ❌ **O Sistema aborta** o cadastro e exibe mensagem de erro.  \n\n### Durante a Alteração de Livro  \n12.1 🚨 **O Sistema informa** que o ISBN não está cadastrado.  \n12.2 🔄 **O Bibliotecário pode tentar** novamente com outro ISBN ou cancelar a operação.  \n\n### Durante a Exclusão de Livro  \n21.1 🚨 **O Sistema informa** que o ISBN não está cadastrado.  \n21.2 🔄 **O Bibliotecário pode tentar** novamente com outro ISBN ou cancelar a operação.  \n\n### Durante a Busca de Livro  \n30.1 🚨 **O Sistema informa** que o ISBN não está cadastrado.  \n30.2 🔄 **O Bibliotecário pode tentar** novamente com outro ISBN ou encerrar a operação.  \n\n### Durante a Geração de Relatório  \n34.1 📄 **O Sistema tenta acessar** os dados de livros cadastrados.  \n34.2 🚨 **O Sistema informa** que não há livros cadastrados.  \n34.3 🔄 **O Bibliotecário encerra** a operação ou aguarda novos cadastros.  \n\n\n# 🛠️ Diagrama de Atividades\n\n![diagrama de atividade](https://github.com/user-attachments/assets/6ce5282a-e062-492c-8d3d-33318524f6bd)\n\n# Modelagem de Classe\n\n![class3 drawio](https://github.com/user-attachments/assets/f7f192b4-5c67-4868-8f14-88fb42e4f61f)\n\n# 📝 Guia do Usuário  \n\nO **FLIT** foi projetado para ser simples e direto. Ao executar o programa, você terá acesso ao menu principal com as opções:  \n\n**Adicionar**, **Alterar**, **Excluir**, **Buscar**, **Gerar Relatório** e **Sair**.  \n\nCada funcionalidade está detalhada a seguir:  \n\n---\n\n### 🟢 **Adicionar**  \n![ADICIONAR](https://github.com/user-attachments/assets/1101fce8-77e3-4c6d-a765-4e495292141e)  \n1. Selecione **\"Adicionar\"** no menu.  \n2. Preencha os campos obrigatórios: **ISBN**, **Título**, **Autor**, **Ano**, **Editora** e **Gênero**.  \n   - O **ISBN** deve ser único; duplicatas geram uma mensagem de erro:  \n     ![ADICIONAR_ERRO](https://github.com/user-attachments/assets/d3357853-0125-4282-a079-1dfdfe39f273).  \n3. Após o preenchimento, o sistema confirma o cadastro com uma mensagem de sucesso:  \n   ![ADICIONAR_SUCESSO](https://github.com/user-attachments/assets/cbab849e-c89c-459b-88e1-ce54a723445e).  \n\n---\n\n### 🟡 **Alterar**  \n![ALTERAR_SUCESSO](https://github.com/user-attachments/assets/b8d29ade-017e-4b53-ab55-3d3cb00f54ea)  \n1. Selecione **\"Alterar\"** no menu.  \n2. Digite o **ISBN** do livro que deseja modificar.  \n   - Se o ISBN não existir, será exibida uma mensagem de erro.  \n3. Caso o ISBN seja encontrado, os dados atuais serão exibidos para edição.  \n4. Após confirmar as alterações, o sistema salva os novos dados e exibe uma mensagem de sucesso.  \n\n---\n\n### 🔴 **Excluir**  \n![EXCLUIR_SUCESSO](https://github.com/user-attachments/assets/7bf64ddd-7239-4e3c-94e9-7e9c71ccb331)  \n1. Selecione **\"Excluir\"** no menu.  \n2. Digite o **ISBN** do livro que deseja remover.  \n   - Se o ISBN não existir, será exibida uma mensagem de erro:  \n     ![EXCLUIR_ERRO](https://github.com/user-attachments/assets/9c8f04b0-7cca-418b-a419-907eb5ec7b63).  \n3. Caso o ISBN seja encontrado, o sistema confirma a exclusão e exibe uma mensagem de sucesso.  \n\n---\n\n### 🔍 **Buscar**  \n![BUSCAR_SUCESSO](https://github.com/user-attachments/assets/657cb707-fe60-4254-aa16-70efc5d92686)  \n1. Selecione **\"Buscar\"** no menu.  \n2. Digite o **ISBN** do livro que deseja localizar.  \n   - Se o ISBN não existir, será exibida uma mensagem de erro:  \n     ![BUSCAR_ERRO](https://github.com/user-attachments/assets/64625a64-6b39-4f7f-81da-659f1b36f6a6).  \n3. Caso o ISBN seja encontrado, as informações completas do livro serão exibidas.  \n\n---\n\n### 📄 **Gerar Relatório**  \n![RELATORIO](https://github.com/user-attachments/assets/5ff9d259-282a-41f5-9f6a-a98d3bbdd0c5)  \n1. Selecione **\"Gerar Relatório\"** no menu.  \n2. O sistema exibirá uma listagem ordenada alfabeticamente pelos títulos dos livros cadastrados.  \n   - Se não houver livros cadastrados, será exibida uma mensagem indicando o fim do relatório.  \n\n---\n\n### 🚪 **Sair**  \n![SAIR](https://github.com/user-attachments/assets/d83bda03-1453-4116-bbdf-ccc43efa6fe4)  \n1. Selecione **\"Sair\"** no menu.  \n2. O sistema encerrará a execução, retornando ao ambiente de linha de comando.\n\n\n# ✅ Conclusão\n\nO projeto desenvolvido representa uma solução eficiente e organizada para a gestão de livros em bibliotecas, atendendo às principais demandas de controle e automação de processos. Por meio de suas funcionalidades bem definidas, o sistema permite a realização de tarefas como cadastro, busca, alteração, exclusão de registros e geração de relatórios de forma prática e intuitiva, otimizando o trabalho do bibliotecário.\nOs diagramas criados, como os casos de uso e o diagrama de atividades, foram fundamentais para mapear e estruturar as interações entre o ator principal e o sistema, garantindo clareza no fluxo das operações. Essas representações visuais destacam a lógica e os passos necessários para cada funcionalidade, promovendo uma melhor compreensão do funcionamento do sistema. Com isso, o projeto se destaca por sua organização, clareza e capacidade de atender às necessidades de gerenciamento de forma simples e eficiente, representando um modelo robusto para aplicações semelhantes.\n\n# 🙏 Agradecimentos\n\n❤️ Obrigado por visitar meu repositório! Esperamos que você ache nosso projeto útil e interessante.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FFernaandoJr%2Fflit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FFernaandoJr%2Fflit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FFernaandoJr%2Fflit/lists"}