Meu sistema Bancario
Project description
Sistema Bancário em Python - Atualizado com PrincÃpios SOLID
Este projeto oferece uma versão atualizada e simplificada de um sistema bancário em Python, incorporando os princÃpios do SOLID e seguindo as melhores práticas de design orientado a objetos. A aplicação proporciona funcionalidades básicas para gerenciamento de contas bancárias, incluindo depósitos, saques e a visualização de extratos, tudo isso através de uma interface de texto amigável.
Principais CaracterÃsticas e PrincÃpios
- Organização Modular: O projeto foi dividido em diferentes arquivos, cada um com um propósito especÃfico e seguindo o princÃpio da Responsabilidade Única (SRP).
- Classes e Herança: O uso de herança foi aplicado para criar uma estrutura mais coesa e reutilizável. As classes foram organizadas para facilitar a extensão de funcionalidades.
- Interfaces Claras: As interfaces foram definidas de forma clara para cada classe, seguindo o princÃpio da Segregação de Interfaces (ISP), permitindo que cada classe implemente somente o que é relevante.
- Validações Refinadas: As operações, como saques, foram implementadas com validações que respeitam as regras de negócio e mantêm o código coeso e seguro.
- Menu Intuitivo: O arquivo "main.py" apresenta um menu de interação intuitivo, possibilitando login, acesso ao menu administrativo e realização de operações bancárias.
- PrincÃpio do Open/Closed: A estrutura do projeto foi planejada de modo a ser facilmente estendida sem a necessidade de modificar as classes existentes.
Instruções
- Execute o arquivo "main.py" para iniciar a aplicação.
- Utilize o menu para fazer login, realizar operações bancárias e explorar as funcionalidades disponÃveis.
- Aproveite para analisar o código-fonte, entender a implementação dos princÃpios SOLID e fazer ajustes de acordo com suas necessidades.
Este projeto exemplifica o uso dos princÃpios SOLID para criar um código mais robusto, extensÃvel e de fácil manutenção. Ao explorar o código, você terá a oportunidade de aprender não apenas as funcionalidades bancárias, mas também as boas práticas de programação orientada a objetos.
Observação: Este projeto foi desenvolvido como um exercÃcio didático e não é adequado para uso em ambientes de produção ou para tratamento de informações financeiras reais.
Desfrute da jornada de aprendizado e aproveite as vantagens de desenvolver com os princÃpios SOLID!
Estrutura do Projeto
O projeto segue uma estrutura baseada na Clean Architecture, onde a organização em camadas facilita a separação de responsabilidades e a escalabilidade do sistema. Abaixo está a descrição das principais pastas e arquivos do projeto:
- app/domain/models: Contém as classes de modelos de domÃnio, como
Cliente
,ContaBancaria
eTransacao
. - app/domain/repositories: Responsável por interagir com o banco de dados e realizar operações CRUD nas entidades.
- app/domain/use_cases: Contém os casos de uso da aplicação, que encapsulam a lógica de negócios.
- app/interfaces: Contém as interfaces de interação com o usuário, como o menu do cliente e do administrador.
- app/persistence/database.py: Responsável pela configuração do banco de dados e pela inicialização da sessão.
O arquivo principal main.py é o ponto de entrada da aplicação, onde o banco de dados é inicializado e os casos de uso são instanciados para possibilitar a interação do usuário com o sistema.
Lembre-se de explorar cada arquivo e entender como eles se relacionam para formar a estrutura geral do projeto.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file sistema_bancario-0.0.1.tar.gz
.
File metadata
- Download URL: sistema_bancario-0.0.1.tar.gz
- Upload date:
- Size: 2.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
c95806a480d0347a8d7e15daeeb6986940d9de5ce910c957458aa41848e7933b
|
|
MD5 |
34c19011ea7154cfd6122898f3d7f5ec
|
|
BLAKE2b-256 |
a271fcb5808bc9be909168c2b1a5fe2d51b9af6d29d70a14b524c0a83ec739f3
|
File details
Details for the file sistema_bancario-0.0.1-py3-none-any.whl
.
File metadata
- Download URL: sistema_bancario-0.0.1-py3-none-any.whl
- Upload date:
- Size: 3.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
54d1c82335bc6b5c1d2046d14a5674ea13352b29266e6205428827b1a78c8017
|
|
MD5 |
d01ff7311c7a61493e1978dd7c36a896
|
|
BLAKE2b-256 |
21a2634625e352a79bbfc00198654d7c07788eb54071fa72e6ba9ab4cd7ea128
|