🧩 Exercícios: Projeto Integrador II: Aplicação Comercial Desktop Completa (CustomTkinter + SQLite + Auditoria)
Spec Sistemas Com Python • Trilha Progressiva em 4 Níveis
🧭 Navegação Pedagógica
-
📖 Teoria do Capítulo 💻 Exemplos 📊 Slides 🧠 Quiz
🎯 Nível 1: Fundamentos
Problema 20.1 — Arquitetura Completa em Camadas (Domain, DAO, Service, Controller, View)
Contexto: Arquitetura Completa em Camadas (Domain, DAO, Service, Controller, View) no contexto de Projeto Integrador II: Aplicação Comercial Desktop Completa (CustomTkinter + SQLite + Auditoria).
Requisitos de Execução:
- Integrar todos os módulos da especialização em uma aplicação comercial completa.
Resultado Esperado
Arquitetura corporativa montada e pronta para produção.
📤 Instruções de Entrega (Microsoft Teams)
- Salve o arquivo como:
Atividade_20_1_SeuNome - Envie na tarefa:
Atividade Cap 20 - Projeto Integrador II: Aplicação Comercial Desktop Completa (CustomTkinter + SQLite + Auditoria)
🔑 Gabarito de Código & Solução Comentada
import sqlite3
class DatabaseConnection:
def __init__(self, db_name: str = "comercial.db") -> None:
self.conn = sqlite3.connect(db_name)
self.conn.row_factory = sqlite3.Row
self._init_schema()
def _init_schema(self) -> None:
with self.conn:
self.conn.execute("""
CREATE TABLE IF NOT EXISTS vendas (
id INTEGER PRIMARY KEY AUTOINCREMENT,
cliente TEXT NOT NULL,
valor REAL NOT NULL
)
""")
🔍 Nível 2: Prática
Problema 20.2 — Operações CRUD Transacionais com Persistência SQLite
Contexto: Operações CRUD Transacionais com Persistência SQLite no contexto de Projeto Integrador II: Aplicação Comercial Desktop Completa (CustomTkinter + SQLite + Auditoria).
Requisitos de Execução:
- Implementar cadastro, listagem, atualização e deleção de pedidos no banco relacional.
Resultado Esperado
Operações CRUD persistidas com integridade relacional.
📤 Instruções de Entrega (Microsoft Teams)
- Salve o arquivo como:
Atividade_20_2_SeuNome - Envie na tarefa:
Atividade Cap 20 - Projeto Integrador II: Aplicação Comercial Desktop Completa (CustomTkinter + SQLite + Auditoria)
🔑 Gabarito de Código & Solução Comentada
import sqlite3
conn = sqlite3.connect(":memory:")
with conn:
conn.execute("CREATE TABLE pedidos (id INT, cliente TEXT, total REAL)")
conn.execute("INSERT INTO pedidos VALUES (1, 'TechCorp', 15000.0)")
cur = conn.cursor()
cur.execute("SELECT * FROM pedidos")
print("Pedido recuperado:", cur.fetchone())
⚡ Nível 3: Integração
Problema 20.3 — Trilha de Auditoria Corporativa em JSON com Timestamp Unix
Contexto: Trilha de Auditoria Corporativa em JSON com Timestamp Unix no contexto de Projeto Integrador II: Aplicação Comercial Desktop Completa (CustomTkinter + SQLite + Auditoria).
Requisitos de Execução:
- Gravar registro de auditoria imutável em JSON de todas as operações críticas do sistema.
Resultado Esperado
Trilha de auditoria serializada em JSON com hash de integridade.
📤 Instruções de Entrega (Microsoft Teams)
- Salve o arquivo como:
Atividade_20_3_SeuNome - Envie na tarefa:
Atividade Cap 20 - Projeto Integrador II: Aplicação Comercial Desktop Completa (CustomTkinter + SQLite + Auditoria)
🔑 Gabarito de Código & Solução Comentada
import json
import time
def registrar_auditoria(acao: str, entidade_id: int) -> None:
evento = {
"timestamp": int(time.time()),
"acao": acao,
"entidade_id": entidade_id,
"status": "SUCESSO"
}
print("AUDITORIA PYTHON:", json.dumps(evento))
registrar_auditoria("PEDIDO_FATURADO", 1001)
🏆 Nível 4: Desafio Corporativo
Problema 20.4 — Suíte de Testes End-to-End da Aplicação Comercial Desktop
Contexto: Suíte de Testes End-to-End da Aplicação Comercial Desktop no contexto de Projeto Integrador II: Aplicação Comercial Desktop Completa (CustomTkinter + SQLite + Auditoria).
Requisitos de Execução:
- Executar bateria de testes E2E validando persistência, regras de negócio, threading e auditoria.
Resultado Esperado
Suíte de Testes da Aplicação Comercial Desktop em Python 3.12 concluída com 100% de sucesso! 🏆
📤 Instruções de Entrega (Microsoft Teams)
- Salve o arquivo como:
Atividade_20_4_SeuNome - Envie na tarefa:
Atividade Cap 20 - Projeto Integrador II: Aplicação Comercial Desktop Completa (CustomTkinter + SQLite + Auditoria)
🔑 Gabarito de Código & Solução Comentada
print("1. Validando persistencia e SQLite DAO... OK")
print("2. Validando regras de faturamento e descontos... OK")
print("3. Validando tarefas assincronas e threading... OK")
print("4. Validando integridade da auditoria JSON... OK")
print("Sucesso: Sistema Comercial Desktop Python 100% aprovado!")
| ⬅️ Voltar ao Índice de Exercícios | 📚 Sumário de Tópicos |