📊 Sistema de Gerenciamento de Clientes (SGC)
Seja bem-vindo(a) ao SGC, um sistema em Python integrado ao banco de dados SQLite para cadastro e gerenciamento de clientes. Ele conta com uma interface gráfica feita em Tkinter, estilizada com a biblioteca ttkthemes, permitindo realizar operações de forma prática e visual.
⸻
💡 Sobre o Projeto
Este é um projeto de estudo e prática que desenvolvi para reforçar meus conhecimentos em:
• Programação Orientada a Objetos (P.O.O.)
• Manipulação de banco de dados com SQLite
• Criação de interfaces gráficas com Tkinter
• Organização de código em múltiplos arquivos
Inicialmente, a ideia era criar apenas um CRUD simples no terminal, mas acabei expandindo para incluir uma interface gráfica interativa, filtros de busca e visualização personalizada.
⸻
🎯 Objetivos do Projeto
• Praticar conceitos de P.O.O. com herança, encapsulamento e polimorfismo.
• Consolidar comandos básicos de SQL (SELECT, INSERT, UPDATE, DELETE).
• Criar uma interface gráfica para tornar o uso mais intuitivo.
• Estruturar o código de forma modular, separando responsabilidades.
⸻
⚙ Funcionalidades
• Cadastro de novos clientes com validações.
• Edição de dados existentes, incluindo atualização de benefícios e valores.
• Exclusão de clientes.
• Busca por nome.
• Filtros por plano e localidade.
• Ordenação por nome, idade e localidade.
• Exibição clara de valores e benefícios por tipo de plano.
⸻
🧩 O que foi aplicado de P.O.O.
• ✅ Criação de classes separadas para banco, clientes, comandos e interface.
• ✅ Herança para especialização de tipos de clientes (básico, premium, etc.).
• ✅ Polimorfismo para adaptar métodos em diferentes tipos de clientes.
• ✅ Métodos específicos para operações no banco de dados.
• ✅ Encapsulamento e boas práticas de organização.
⸻
🗂 Estrutura de Arquivos e Pastas
📁 SRC(
•📁 classes/ → Contém todas as classes do projeto:
• BancoDeDados.py → Criação e gerenciamento do banco SQLite.
• ClientClass.py → Classes Cliente, Básico e Premium.
• ComandosSQL.py → Comandos SQL e integração com interface.
• Interface.py → Interface gráfica com Tkinter e ttkthemes.
•📄 DataClient.db → Banco de dados SQLite.
•▶ main.py → Arquivo principal que executa o sistema.
)
•📄 requirements.txt → Arquivo requirements.txt com dependências, incluindo ttkthemes 3.2.2.
•📄 README.md
•🚫 .gitignore
⸻
🚀 Como Executar
1. Certifique-se de ter o Python 3 instalado.
2. Baixe ou clone este repositório.
3. No terminal, acesse a pasta do projeto.
4. Instale as dependências usando:
pip install -r requerimentos/requirements.txt
5. Execute o sistema com:
python main.py
⸻
🔧 Tecnologias Utilizadas • Python 3 🐍 • SQLite 🗄 • Tkinter 🎨 • ttkthemes 3.2.2 🖌
⸻
💌 Considerações Finais Esse projeto foi pensado para consolidar aprendizados e também como um exemplo de aplicação real de P.O.O. e integração com banco de dados. Apesar de simples, ele já conta com funcionalidades robustas e é totalmente expansível. Sou iniciante na área e fiz este projeto com muito esforço e dedicação — então, se encontrar algo que possa ser melhorado, lembre-se de que cada detalhe foi parte do meu aprendizado. Sugestões de melhorias e críticas construtivas são muito bem-vindas!
— Fatima Fortunato