Construindo um Sistema de Estacionamento em C#: Consolidação dos Fundamentos .NET
Como parte da jornada de aprendizado dos conceitos fundamentais da plataforma .NET e da linguagem C#, desenvolvi o desafio prático de um Sistema de Estacionamento. O objetivo principal desta aplicação de console foi consolidar, em um cenário real do dia a dia, os conceitos teóricos estudados, como tipos de dados, estruturas condicionais, laços de repetição e manipulação de coleções dinâmicas.
A aplicação foi estruturada em C# e é gerenciada por meio de um menu interativo executado em um laço while com a estrutura condicional switch, permitindo ao usuário realizar quatro operações essenciais:
- Cadastrar Veículo: Recebe a placa informada pelo usuário e a armazena em uma coleção dinâmica utilizando `List<string>.
- Listar Veículos: Percorre a lista de veículos cadastrados utilizando um laço de repetição e exibe as placas no console.
- Remover Veículo e Calcular Cobrança: Valida se a placa informada está presente na lista, solicita a quantidade de horas em que o veículo permaneceu estacionado e calcula o valor final a ser pago utilizando a fórmula: precoInicial + (precoPorHora \* horas). Em seguida, remove a placa da coleção.
- Encerrar: Finaliza a execução do programa de forma organizada.
Durante a construção do projeto, pratiquei a conversão segura de tipos de dados (`Convert` / `Parse`), a estruturação orientada a objetos na classe `Estacionamento`, além do uso do VS Code e da CLI do .NET (`dotnet run`). O desenvolvimento deste desafio foi fundamental para transformar os conceitos teóricos do Módulo 1 em uma aplicação prática e funcional!


