Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bd8a6631a712ac68ac7d0a4fe2e9e451 #47

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

joaovitorvneves
Copy link

Dividi o programa em arquivos header (.hpp) e de implementação (.cpp) para facilitar a manutenção, tornando o código mais claro e independente. Organizei os arquivos em pastas separadas: "include" para headers e "src" para implementações.

Removi o "using namespace" para evitar confusões de nomes, mantendo as coisas mais limpas. Isso auxilia na prevenção de problemas no código e facilita a compreensão da origem das funções e classes.

Adotei os modificadores de acesso "public" e "private" para os membros das classes, estabelecendo encapsulamento. Essa prática restringe o acesso direto a certos atributos e métodos, prevenindo manipulações externas à classe e garantindo a integridade e segurança dos dados internos.

Algumas funções agora são declaradas como "const", indicando que não alteram o estado interno do objeto. Além de expressar a intenção do desenvolvedor, essa abordagem oferece garantias adicionais de segurança no código.

Substituí "\n" por "std::endl" para assegurar a manipulação correta de novas linhas em diferentes sistemas operacionais e manter uma formatação consistente.

Padronizei os nomes das funções para snake_case, seguindo uma convenção comum que torna o código mais legível.

Adicionei underscores (_) na frente dos atributos privados para distingui-los claramente dos públicos, melhorando a clareza do código.

Removi includes desnecessários e duplicados, otimizando a compilação e evitando conflitos entre headers.

Corrigi a indentação para tornar o código mais legível, seguindo padrões comuns.

Eliminei quebras de linha desnecessárias para manter uma estética mais limpa e adicionei algumas estrategicamente para facilitar a visualização do código.

Introduzi "getters" e "setters" para fornecer controle mais granular sobre o acesso e modificação dos atributos da classe, seguindo o princípio de encapsulamento.

Criei a função "alterar_saldo" para encapsular a lógica específica de alteração do saldo em um método dedicado. Vale ressaltar que essa função difere de um setter convencional, pois incrementa o saldo atual com um valor fornecido, enquanto "set_saldo" atribui um novo valor absoluto ao saldo da conta.

Mudei o nome das classes para PascalCase, seguindo uma convenção comum em muitas linguagens de programação e tornando o código mais consistente.

Implementei construtores e destrutores para todas as classes. A introdução desses elementos garante uma inicialização consistente de objetos e uma liberação apropriada de recursos, promovendo uma gestão eficaz da memória no sistema.

Realizei algumas alterações em main.cpp para garantir que o programa funcione corretamente na nova estrutura com as novas funções, mantendo a coesão global do projeto.

Criei um "Makefile" para facilitar o processo de compilação e vinculação dos arquivos.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant