Rover em Marte

Este projeto implementa um programa em Go para controlar rovers em Marte. Os rovers são implantados em um planalto retangular e devem ser movidos de acordo com uma série de instruções, mantendo sua posição e orientação.

Exemplo de uso:

mars-rover

🚀 Começando

Siga estas instruções para configurar o projeto na sua máquina local para desenvolvimento e teste.

📋 Pré-requisitos

Ferramentas necessárias:

📦 Desenvolvimento

Comandos importantes para rodar o projeto e validar:

  • make run: Compila e executa o código principal.
  • make test: Executa os testes do projeto e mostra a cobertura.
  • make test-cover: O mesmo do make test, porém abre o brawser para mais detalhes.
  • make help

🗂 Estrutura do Projeto

Descrição dos Pacotes e Arquivos Principais:

  • ./cmd/main.go: O código que inicia a aplicação.
  • ./internal/domain: Lógica de negócios relacionada ao controle dos rovers.
  • ./internal/domain/model: Definições de structs relacionadas aos rovers.
  • ./internal/domain/usecase: Casos de uso para controle dos rovers.
  • ./pkg/scanner: Pacote para ler e interpretar instruções do usuário.
  • ./makefile: Arquivo de make para automatizar tarefas comuns.

🛠️ Construído com

  • Golang - Linguagem de Programação
  • Asdf - usado para versionamento do Golang