Este é um sistema que implementa três jogos de tabuleiro clássicos usando o paradigma de orientação a objetos em C++:
- Jogo da Velha: Um tabuleiro 3x3 onde dois jogadores tentam alinhar três peças consecutivas (horizontal, vertical ou diagonalmente).
- Lig4: Um tabuleiro 6x7 onde dois jogadores alternam turnos para tentar alinhar quatro peças consecutivas (horizontal, vertical ou diagonalmente).
- Reversi: Um tabuleiro 8x8 onde os jogadores colocam peças para capturar as do oponente, cercando-as em linhas, colunas ou diagonais.
-
Hierarquia de Classes:
- Uma classe base abstrata
Tabuleiroe classes derivadas para cada jogo. - Uso de herança, polimorfismo e encapsulamento para organização do código.
- Uma classe base abstrata
-
Cadastro de Jogadores:
- Registra jogadores com nome e apelido único em um arquivo CSV.
- Mantém estatísticas de vitórias e derrotas para cada jogo.
-
Execução de Partidas:
- Permite jogar partidas entre dois jogadores com validações de jogadas e atualização do tabuleiro.
-
Documentação (Doxygen):
- Gera uma documentação das classes e funções do projeto.
O projeto segue a seguinte organização:
ProjetoFinal/
|-- bin/ # Executáveis gerados pela compilação
|-- doc/ # Arquivos de documentação gerados pelo Doxygen
|-- include/ # Arquivos de cabeçalho (.hpp)
|-- src/ # Arquivos de código-fonte e de dados (.cpp/.csv)
|-- obj/ # Arquivos objeto gerados na compilação
|-- Doxyfile # Configuração para geração da documentação Doxygen
|-- Makefile # Arquivo de automação de compilação
|-- README.md # Informações gerais sobre o projeto
Este projeto utiliza um Makefile para facilitar a compilação. Certifique-se de ter o compilador g++ instalado no sistema.
-
Clone o repositório do projeto:
git clone <URL_DO_REPOSITORIO> cd ProjetoFinal
-
Execute o comando
makepara compilar o projeto:make
Os executáveis serão gerados na pasta
bin/. -
Para limpar os arquivos gerados (objetos e executáveis):
make clean
Os executáveis estão localizados na pasta bin/. A execução do sistema segue o seguinte formato:
cd binEntão, de dentro da pasta bin/ execute o programa sistema
./sistema-
Cadastrar Jogador:
CJ <Apelido> <Nome>Exemplo:
CJ joaozinho João -
Remover Jogador:
RJ <Apelido>Exemplo:
RJ joaozinho -
Listar Jogadores:
LJ [A|N]Exemplo:
LJ A(ordena por apelido). -
Executar Partida:
EP <Jogo: (V|L|R)> <Apelido Jogador1> <Apelido Jogador2>Exemplo:
EP L joaozinho gabriel(inicia uma partida de Lig4). -
Calcular e mostrar as estatísticas de um Jogador:
EST <Apelido>Exemplo:
EST joaozinho -
Finalizar Sistema:
FS
Este projeto utiliza o Doxygen para documentar o código.
-
Certifique-se de que o Doxygen está instalado no sistema:
doxygen -v
Se não estiver instalado, use:
- Ubuntu/Debian:
sudo apt install doxygen - Windows: Baixe em doxygen.nl
- Ubuntu/Debian:
-
No diretório raiz do projeto, execute:
doxygen Doxyfile
-
A documentação será gerada na pasta
doc/. -
Abra o arquivo
./doc/html/index.htmlpara visualizar a documentação no navegador.
Outra maneira de documentar nosso projeto foi a adição dos cartões CRC. Os quais se encontram na imagem abaixo e no pdf intitulado "CRC_Projeto.pdf".
