Skip to content

Latest commit

 

History

History
67 lines (40 loc) · 3.41 KB

report.md

File metadata and controls

67 lines (40 loc) · 3.41 KB

Relatório - Grupo 4

Título: Pandora vs UFPE.

Membros:

Ana Carla Guerra, Davi Monteiro Paiva, Eric Lima, Maria Carolina Berrafato, Michel Leonidas e Talita Giovanna Xavier de Oliveira.

Link (Repositório):

https://github.com/ericxlima/Pandora_vs_UFPE

Organização do código:

Foi desenvolvido utilizando módulos, de forma a melhorar sua organização. Além disso, os passos que acontecem no módulo principal do código foram comentados (em inglês, por padrão) e as variáveis definidas com nomes auto-descritivos, para melhorar a leitura. Outro ponto importante foi a padronização dos commits, realizados em inglês e com termos específicos de acordo com a mudança feita. Por exemplo, quando realiza-se uma correção em bug, a sintaxe da mensagem do commit deve ser "fix: descrição das alterações". A lista completa com esses termos está no arquivo contributing.md, que também possui um passo a passo sobre como usar o comando corretamente.

Ferramentas, bibliotecas e frameworks:

O grupo utilizou o VSCode como editor de textos, bem como Git e GitHub para trabalhar de forma colaborativa. Além disso, o programa foi desenvolvido em Python, com o auxílio da biblioteca PyGame.

Divisão do trabalho:

Código

  • Movimentação da personagem: Davi, Eric e Michel
  • Colisões e saltos da personagem: Davi
  • Contador: Michel, Davi e Carol
  • Scrolling: Davi
  • Menu: Ana Carla, Talita, Eric e Davi
  • Icon do jogo: Talita

Design/Art:

  • Personagem e Sprites: Talita
  • Ambientação do jogo: Michel
  • Objetos: Michel

Efeitos sonoros:

  • Música: Michel
  • Efeitos sonoros (Weee): Michel

Integração/compartilhamento:

  • Notion/documentação: Carol
  • Planejamento e ideias: Todos ❤️
  • Líder: Eric
  • Ensino de ferramentas: Eric e Davi

Relatório e slides:

  • Relatório: Ana Carla, Carol, Eric e Talita
  • Slides: Carol

Conceitos utilizados:

Os principais conceitos utilizados na programação foram OOP (Programação Orientada a Objetos), modularidade e estruturas de dados. A OOP foi utilizada para manipular soluções do Pygame além de representar outros objetos, como por exemplo, a personagem e moedas. A Modularidade foi utilizada para organizar os arquivos do projeto. E as estruturas de dados foram utilizadas na representação de cores com tuplas e utilizamos listas para a contagem da coleta de moedas.

Para o design, inicialmente foi usado o conceito de pixel art no Photoshop, mas para ter uma melhor harmonia com o design escolhido para a personagem, foi posteriormente, usado o conceito de flat design, através do uso de vetores no Illustrator.

Organizacionalmente, utilizamos o conceito de pair programming para aperfeiçoar o desenvolvimento do código e reduzir o risco de falhas. Foram realizadas reuniões duas vezes por semana, para avaliar o progresso do projeto e discutir os próximos passos. Além disso, foi utilizado a Metodologia Ágil Kanban para controlar e direcionar o escopo do projeto.

Desafios e lições:

O maior desafio foi encontrar a disponibilidade para as reuniões do grupo. Aprender a utilizar a biblioteca Pygame e as ferramentas de versionamento Git e GitHub. Compreender o conceito de Programação Orientada a Objetos.

As principais lições aprendidas foram, aprender a trabalhar em grupo, utilizar bibliotecas python e sistema de versionamento para compartilhamento de código remotamente.