O objetivo na criação deste projeto é estudar e pôr em prática as técnicas de gerenciamento de projetos estudadas nas aulas de Engenharia de Software 2, aplicando-as no desenvolvimento de um projeto de software concreto com propósito definido.
Será criada uma implementação do jogo de Damas, em que um jogador poderá jogar contra o computador. Ele poderá escolher diferentes níveis de dificuldade para o oponente controlado pela inteligência artificial. O jogo terá uma interface gráfica que poderá ser interagida utilizando o mouse, e possivelmente o teclado.
- Linguagem de Programação: Python 3.6
- Framework a ser utilizado: Pygame 1.9.3
- Será utilizado o módulo de ambientes virtuais
virtualenv
, para garantir uma melhor organização das dependências do código e um melhor funcionamento do programa.
- Indentação será feita com quatro espaços por marca de indentação.
- Nomes de variáveis e funções serão grafados em
camelCase
. - Nomes de variáveis/funções/whatever serão todos em INGLÊS. A única exceção será para textos a serem impressos na tela, obviamente.
- Deve-se evitar deixar as linhas de código muito grandes sempre que possível. Principalmente quando se tratar de programação funcional.
- É uma boa ideia evitar comentários em português sempre que possível.
- É realizado o caching de variáveis utilizadas recorrentemente, tais como:
- Peça selecionada
- Turno atual
- Último click do mouse realizado
- API/Framework básica; game loop
- Regras do jogo de damas
- Inteligência artificial
- Interface gráfica