Buscar

CRIANDO UMA APLICAÇÃO DE TRANSFERENCIA BANCÁRIA

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

CRIANDO UMA APLICAÇÃO DE TRANSFERENCIA BANCÁRIA
Esse projeto foi criado uma aplicação simples simulando um aplicativo de banco. Onde não utilizamos banco de dados somente dados em memória. Foi feito através do Visual Studio Code.
PASSO A PASSO.
· Abrir o Git Bash e selecionar a pasta desejada com os comandos
-cd Digital Innovation One 
-dotnet new console -n DIO.Bank
- code DIO.Bank
· Criado Classe Conta. Atributos como privado para proteção dos dados.
namespace DIO.Bank
{
    public class Conta
    {
        private TipoConta TipoConta {get; set;} 
        private double Saldo {get; set;}
        private double Credito {get; set;}
        private string Nome {get; set;}
    }
}
· No arquivo Program foi criado uma instancia para o objeto.
Conta minhaConta = new Conta{};
· Criado uma nova pasta Enum onde no arquivo TipoConta que serve como uma seleção de categoria. Neste caso foi usado contas de pessoas físicas ou jurídicas.
namespace DIO.Bank
{
public enum TipoConta
{
PessoaFisica = 1,
PessoaJuridica =2
}
}
· Na Conta foi chamado um método tipo construtor que é chamado no momento que é criado um objeto.
public Conta(TipoConta Tipoconta, double saldo, double credito, string nome)
        {
            this.TipoConta = TipoConta;
            this.Saldo = saldo;
            this.Credito = credito;
            this.Nome = nome;
        }
· Método Sacar, retirar um saldo da conta. O saldo não pode ficar negativo mais que o valor que cada cliente possui de cheque especial.
 public bool Sacar(double valorSaque)
        {
            //Validação de saldo suficiente
            if (this.Saldo - valorSaque < (this.Credito * -1))
           {
                Console.WriteLine("Saldo Insuficiente!");
                return false;
            }
            this.Saldo = valorSaque; // mesma coisa que (this.Saldo = this.Saldo - valorSaque;)
     Console.WriteLine("O saldo atual da conta de {0} é {1}", this.Nome, this.Saldo); 
            return true;
        }
· Nessa classe mostra o valor de depósito que cai na conta.
public void Depositar(double valorDeposito)
        {
            this.Saldo += valorDeposito;
       Console.WriteLine("Saldo atual da conta  de {0} é {1}", this.Nome, this.Saldo);
        }
· Classe com a função Transferir um dinheiro de uma conta para outra.
public void Transferir(double valorTransferencia, Conta contaDestino)
        {
            if (this.Sacar(valorTransferencia)){
                contaDestino.Depositar(valorTransferencia);
            }
        }
· Reescrever o método To String para retornar uma string com os dados, saber o que acontece na aplicação.
public override string ToString()
        {
           string retorno ="";
           retorno += "TipoConta" + this.TipoConta + " | ";
           retorno += "Nome" + this.Nome + " | ";
           retorno += "Saldo" + this.Saldo + " | ";
           retorno += "Crédito" + this.Credito;
           return retorno;
        }
· Ao realizar um run conseguimos visualizar 
· Na Main do programa principal Program mostra a opção para usuário selecionar em qual menu o mesmo deseja entrar.
 private static string ObterOpcaoUsuario()
       {
            Console.WriteLine();
            Console.WriteLine(" DIO Bank  a seu dispor!");
            Console.WriteLine(" Informe a opção desejada:");
            Console.WriteLine("1 -Listar contas");
            Console.WriteLine("2 -Inserir nova conta");
            Console.WriteLine("3 -Transferir");
            Console.WriteLine("4 -Sacar");
            Console.WriteLine("5 -Depositar");
            Console.WriteLine("C -Limpar tela");
            Console.WriteLine("X -Sair");
            Console.WriteLine();
            string OpcaoUsuario = Console.ReadLine().ToUpper();
            Console.WriteLine();
            return OpcaoUsuario;
        }
· Após o usuário selecionar o menu que deseja entrar, foi utilizado um While onde enquanto o usuário não clicar em X (sair) ele utiliza um switch com os cases na qual foi usado cada método privado específico.
static void Main(string[] args)
        {
            string OpcaoUsuario = ObterOpcaoUsuario();
            while (OpcaoUsuario.ToUpper() != "X")
            { //Inicio While
                switch (OpcaoUsuario)
                { //Inicio Switch
                    
                    case "1":
                    ListarContas();
                    break;
                    case "2":
                    InserirConta();
                    break;
                    case "3":
                    TransferirConta();
                    break;
                    case "4":
                    Sacar();
                    break;
                    case "5":
                    Depositar();
                    break;
                    case "C":
                    Console.Clear();
                    break;
                    default:
                    throw new ArgumentOutOfRangeException();
                } // Fim Switch
· Cada método foi detalhado conforme abaixo:
private static void TransferirConta()
        {
             Console.WriteLine("Digite o número da conta de origem: ");
            int indiceContaOrigem = int.Parse(Console.ReadLine());
            Console.Write("Digite o número da conta de destino: ");
             int indiceContaDestino = int.Parse(Console.ReadLine());
             Console.Write("Digite o valor a ser transferido: ");
            double valorTransferencia = double.Parse(Console.ReadLine());
            listContas[indiceContaOrigem].Transferir(valorTransferencia, listContas[indiceContaDestino]);
        }
        private static void Depositar()
        {
            Console.WriteLine("Digite o número da conta: ");
            int indiceConta = int.Parse(Console.ReadLine());
            Console.Write("Digite o valor a ser depositado: ");
             double valorDeposito = double.Parse(Console.ReadLine());
             listContas[indiceConta].Depositar(valorDeposito);
        }
        private static void Sacar()
        {
            Console.WriteLine("Digite o  número da conta: ");
            int indiceConta = int.Parse(Console.ReadLine());
            Console.Write("Digite  o valor a ser sacado: ");
             double valorSaque = double.Parse(Console.ReadLine());
             listContas[indiceConta].Sacar(valorSaque);
        }
        private static void ListarContas()
        {
            Console.WriteLine("Listar contas");
            if (listContas.Count ==0)
            {
                Console.WriteLine("Nenhuma conta cadastrada.");
                return;
            }
            for ( int i = 0; i < listContas.Count; i++)
            {
                Conta conta = listContas[i];
                Console.Write("#{0} - ", i);
                Console.WriteLine(conta); // executa o ToString que vai mostrar os dados da conta.
            }
        }
        private static void InserirConta()
        {
            Console.WriteLine("Inserir nova conta");
            
            Console.Write("Digite 1 para Conta Física ou 2 para Jurídica:");
            int entradaTipoConta = int.Parse(Console.ReadLine());
            Console.Write("Digite o Nome do Cliente:");
            string entradaNome = Console.ReadLine();
            Console.Write("Digite o Saldo Inicial:");
            double entradaSaldo = double.Parse(Console.ReadLine());
            Console.Write("Digite o Crédito:");
            double entradaCredito = double.Parse(Console.ReadLine());
            Conta novaConta = new Conta(tipoConta: (TipoConta) entradaTipoConta,
                                         saldo: entradaSaldo,
                                         credito: entradaCredito,
                                         nome: entradaNome);
             
            listContas.Add(novaConta);
        }

Continue navegando