Skip to content

Campo Minado implementado em Java para rodar no console, com suporte a cores ANSI para melhorar a experiência no terminal. ENG: Minesweeper implemented in Java to run in the console, with ANSI color support to improve the terminal experience.

Notifications You must be signed in to change notification settings

pitercoding/campo-minado-console

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

💣 Campo Minado Console

Um jogo clássico de Campo Minado implementado em Java para rodar no console, com suporte a cores ANSI para melhorar a experiência no terminal.

Projeto desenvolvido como exercício prático durante o curso de Java da Cod3r.


🎯 Por que esse projeto?

  • Praticar os fundamentos da Programação Orientada a Objetos (POO) em Java
  • Trabalhar com tratamento de exceções, listas, streams e recursão
  • Criar uma aplicação interativa no terminal
  • Revisar conceitos de organização de pacotes em um projeto Java realista

📂 Organização do Projeto

A estrutura de diretórios segue uma separação clara entre modelo, visão e exceções:

campo-minado-java/
├── src/br/com/campominado/
│ ├── excecao/
│ │ ├── ExplosaoException.java
│ │ └── SairException.java
│ │
│ ├── modelo/
│ │ ├── Campo.java
│ │ └── Tabuleiro.java
│ │
│ └── visao/
│ ├── TabuleiroConsole.java
│ └── Aplicacao.java
│
├── test/br/com/campominado/modelo/
│ └── CampoTeste.java
│
├── .gitignore
├── README.md
  • modelo/ → Lógica do jogo (campo, tabuleiro, regras)
  • visao/ → Interface de interação no console
  • excecao/ → Exceções personalizadas usadas no fluxo do jogo
  • test/ → Testes unitários (JUnit)

🕹️ Como rodar o projeto no terminal

1. Clonar o repositório

git clone https://github.com/pitercoding/campo-minado-console.git
cd campo-minado-console

2. Compilar os arquivos .java

javac br/com/campominado/**/*.java

3. Executar o jogo

java br.com.campominado.visao.Aplicacao

🎨 Recursos do jogo

  • Campo minado funcional rodando no console
  • Cores ANSI para melhorar a visualização:
    • 🚩 Bandeiras em amarelo
    • 💣 Minas em vermelho
    • 🔢 Números com cores diferentes:
      • 1 → azul
      • 2 → verde
      • 3 → vermelho
      • ... e assim por diante
  • Possibilidade de abrir campos, marcar/desmarcar bandeiras e reiniciar a partida
  • Tratamento de explosão com ExplosaoException
  • Digite sair a qualquer momento para encerrar o jogo (SairException)

🧪 Testes

O projeto contém testes unitários com JUnit em CampoTeste.java.

Para rodar os testes:

cd test
# Exemplo com JUnit 5:
java -jar junit-platform-console-standalone.jar -cp . --scan-classpath

📜 Licença

Este projeto é licenciado sob a licença MIT.

✨ Créditos

Projeto desenvolvido como prática durante o Curso de Java da Cod3r. Adaptado e expandido para incluir cores no console e organização completa do projeto.

About

Campo Minado implementado em Java para rodar no console, com suporte a cores ANSI para melhorar a experiência no terminal. ENG: Minesweeper implemented in Java to run in the console, with ANSI color support to improve the terminal experience.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages