Refatoração do sistema bancário para POO#440
Conversation
wandersonws77
commented
Apr 13, 2026
- Refatoração do sistema bancário utilizando Programação Orientada a Objetos
- Criação das classes: Usuario, Conta e ContaCorrente
- Aplicação de herança e encapsulamento
- Implementação de validação de entrada com try/except
- Melhor organização e estrutura do código
There was a problem hiding this comment.
Pull request overview
Refatora o script do “sistema bancário” para um modelo orientado a objetos, movendo regras de negócio para classes (usuário/conta) e reorganizando o fluxo do menu para operar sobre instâncias de conta.
Changes:
- Introduz classes
Usuario,ContaeContaCorrente, com herança para regras de saque/limites. - Atualiza o fluxo do menu para criar usuários/contas e executar depósito/saque/extrato a partir de uma conta selecionada.
- Ajusta um exemplo de listas apenas para padronização/formatação do arquivo.
Reviewed changes
Copilot reviewed 1 out of 4 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
01 - Estrutura de dados/desafio.py |
Refatoração principal para POO (modelos + fluxo do menu + validações de entrada pontuais). |
01 - Estrutura de dados/01 - Listas/00_declarando_listas.py |
Alteração semântica nula (formatação/padronização do conteúdo). |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| def criar_conta(agencia, numero_conta, usuarios): | ||
| cpf = input("Informe o CPF do usuário: ") | ||
| usuario = filtrar_usuario(cpf, usuarios) | ||
|
|
||
| if usuario: | ||
| conta = ContaCorrente(agencia, numero_conta, usuario) | ||
| usuario.adicionar_conta(conta) | ||
| print("\n=== Conta criada com sucesso! ===") | ||
| return conta | ||
|
|
||
| print("\n@@@ Usuário não encontrado! @@@") | ||
| return None |
There was a problem hiding this comment.
criar_conta() não aplica a mesma validação/sanitização de CPF usada em criar_usuario() (por exemplo, isdigit() e/ou strip()), o que torna comum o fluxo falhar em encontrar um usuário existente se o CPF for digitado com formatação ou espaços. Centralize essa validação (ex.: função para normalizar CPF) e reutilize aqui e em selecionar_conta().
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>