Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/vitoriabarbosa/dev-deck

O Dev Deck é um jogo de cartas, e o objetivo é organizá-las representando diferentes linguagens de programação como Java, Python, C e C++, aplicando conceitos matemáticos e lógicos.
https://github.com/vitoriabarbosa/dev-deck

game-development git java mathematics swing

Last synced: 11 days ago
JSON representation

O Dev Deck é um jogo de cartas, e o objetivo é organizá-las representando diferentes linguagens de programação como Java, Python, C e C++, aplicando conceitos matemáticos e lógicos.

Awesome Lists containing this project

README

        

# 🎮 DEV DECK ️🃏
![GitHub repo size](https://img.shields.io/github/repo-size/vitoriabarbosa/dev-deck?style=for-the-badge)
![GitHub language count](https://img.shields.io/github/languages/count/vitoriabarbosa/dev-deck?style=for-the-badge)
![GitHub forks](https://img.shields.io/github/forks/vitoriabarbosa/dev-deck?style=for-the-badge)
![Bitbucket open issues](https://img.shields.io/bitbucket/issues/vitoriabarbosa/dev-deck?style=for-the-badge)
![Bitbucket open pull requests](https://img.shields.io/github/issues-pr-closed/vitoriabarbosa/dev-deck?style=for-the-badge)

## 🕹 Seja bem-vindo(a) ao game! 🥳
**Dev Deck**, um jogo de dev pra dev! 🧑‍💻

## 💡 Como Jogar
### 📍 Objetivo:
O objetivo do jogo é organizar todas as cartas de cada naipe (Java, Python, C, C++) em ordem crescente, começando do Ás até o 7, dentro de seus respectivos conjuntos (sem alternar cores).

### ️👾 Naipes e Cores:
* Java (cor da carta: Vermelha)
* Python (cor da carta: Amarela)
* C (cor da carta: Cinza)
* C++ (cor da carta: Azul)

### 📜 Regras:
1. **Montagem**: As cartas devem ser organizadas em sequência crescente dentro do mesmo naipe. Exemplo: Ás de Java, seguido do 2 de Java, e assim por diante até o 7 de Java. O mesmo vale para os outros naipes.


2. **Movimentação**: Somente a última carta de uma sequência pode ser movida para uma nova pilha, contanto que a carta no topo da nova pilha seja a próxima em ordem dentro do mesmo naipe.


3. **Distribuição Inicial**: As cartas são distribuídas em pilhas aleatórias no início do jogo, e o jogador deve reorganizá-las de acordo com as regras mencionadas.


4. **Condições de Vitória**: O jogo é vencido quando todas as cartas forem organizadas em pilhas de seus respectivos naipes, com a sequência completa de Ás a 7.

## 🔢 Assuntos Envolvidos (Matemática)
### 📚 Matemática Discreta
* `Teoria dos Conjuntos`: Organização das cartas por naipe.
* `Permutação` e `Combinação`: Movimentos e redistribuição.
* `Lógica Booleana`: Regras de movimentação.
* `Teoria dos Grafos`: Representação de conexões possíveis.

### 📚 Cálculo 1
* `Funções`: Regras e mecânicas.
* `Desigualdades`: Validação de movimentos.
* `Limites`, `Derivadas` e `Integrais`: Estatísticas do jogador.

## ✨ Novidades e Melhorias
* **Efeitos Visuais**: Novas animações para maior imersão.
* **Tela de Estatísticas**: Sistema de pontuação e gráficos detalhados do desempenho do jogador.
* **Gráficos Dinâmicos**: Representação visual usando JFreeChart.

## 🛠️ Implementação
- **Linguagem de Programação:** Java
- **Interface Gráfica:** Swing
- **Biblioteca:** JFreeChart
- **Gerente de Dependência:** Maven
- **Controle de Versão:** Git
- **Protótipo do Design:** Figma e Canva

## 🚀 Começando
### Pré-requisitos
Antes de começar, você vai precisar ter instalado em sua máquina as seguintes ferramentas:
- [JDK 17 ou superior (Oracle JDK)](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html)
- [Maven](https://maven.apache.org/)
- [Git](https://git-scm.com/)

Software util:
- [IntelliJ IDEA](https://www.jetbrains.com/idea/download/) ou uma IDE de sua preferência

### Instalação
1. #### Clone o repositório
```bash
git clone https://github.com/vitoriabarbosa/dev-deck.git

2. #### Navegar até o Diretório do Projeto:
```bash
cd ~/dev-deck

3. #### Instalar o JDK 17 ou Superior.
- Verifique se você tem o JDK 17 ou superior instalado.

4. #### Instalar o Maven:
- Instale o Maven a partir do site oficial.
- Adicione o Maven ao seu PATH conforme as instruções de instalação do site.

5. #### Compilar e Executar a Aplicação Principal:
- Compilar e executar a aplicação principal.
- Certifique-se de que todas as dependências estão no classpath.

No terminal, execute:
```bash
mvn compile exec:java -Dexec.mainClass="devdeck.TelaInicial"
```


## 🤝 Equipe




foto


Vitória Barbosa





foto


Gabriel Neves





foto


Ycaru Nunes





foto


Carlos Candido





foto


Carlos Eduardo





## 📝 Licença
Este projeto é licenciado sob a Licença MIT - veja o arquivo [LICENSE](LICENSE) para mais detalhes.