Skip to content

Latest commit

 

History

History
146 lines (83 loc) · 4.9 KB

README.adoc

File metadata and controls

146 lines (83 loc) · 4.9 KB

Build Status

Coverage Status

download

Intro

Bomberman clone using Entity-Component-System architecture, Artemis Framework (odb fork) and artemis-odb:contrib-eventbus. We intend to develop a hight quality and feature complete bomberman clone for the final user and a good example of modular programming for developers as well a base core for others bomberman-alike games.

It’s a fork of gabrielsr/bomberman project developed at University of Brasília as part of the Sistematic Program course.

It’s the implementation of bomberman system. We also develop ecsbomberman-libgdx to graphically render the game. To play the game you need the two parts.

Contributors are wellcome.

Instruções para Montagem de Ambiente de Desenvolvimento

JDK8 o compilador e máquina virtual

Eclipse (Luna) a IDE

http://eclipse.org/downloads/packages/eclipse-standard-44/lunar

Gradle a Ferramenta de Gerencia de Dependências e Build

Gradle é um sitema de gerencia de dependência. Iremos utiliza-lo para obter a o JUnit inicialmente depois iremos incrementar com outras bibliotecas.

Gradle Eclipse plugin

O plugin gradle do eclipse facilitar a montarmos o projeto, pois inclui as dependencias configurados no gradle diretamente na interface

No Eclipse vá em > Help>Marketplace

Digite no campo search: Gradle Integration

Escolha Gradle Integration for Eclipse (4.4) 3.6.0.RELEASE

Confirme. Ao final da instalação reinicie o Eclipse.

Importanto o projeto no Eclipse

Go to File → Import → Gradle → Gradle Project, navega até a pasta root deste projeto. Selecione [Build Model]

OBS: a importação pode demorar vários minutos na primeira vez que for realiza pois será realizado download das dependências do Gradle.

Após a conclusão da importação você deverá visualizar o projeto assim:

eclipse pacotes
Figure 1. Visualização de Pacotes após importação bem sucedida no Eclipse
Tip
Caso o eclipse esteja exibindo o projeto diferente disso provavelmente aconteceu um erro na importação. Tente novamente.

Compilando no Eclipse

O mais comum é trabalhar no Eclipse com compilação automática de código, o que quer dizer que a medida que você digita novas linhas em classes já existentes ou cria novas classes o Eclipse automaticamente compila para você exibe os erros próximos as linhas em que ocorreram como sinais vermelhos. Ao posicionar o cursor próximo aos erros é exibido um detalhamento do problema.

Para verificar se o Eclipse está configurado para realizar build automático vá ao menu ProjectBuild Automatically.

Outros plugins

Checkstyle Eclipse plugin

No Eclipse vá em > Help>Marketplace

Digite no campo search: Checkstyle

Escolha Checkstyle Plug-in 5.7.0 Confirme. Ao final da instalação reinicie o Eclipse.

Foi criado um uma regra customizada para atender nossas demandas atuais de limpeza de código, custom_checks_bomberman.xml, que se encontra no diretório raiz do projeto.

Para usá-la no Eclipse, deve-se baixar o plugin do checkstyle (disponível na marketplace), ir em Eclipse >> Preferências >> Checkstyle >> New

Na Tela que vai aparecer, dê um nome qualquer para esse conjunto de regras (sugiro o nome abaixo), clique em import e selecione o arquivo custom_checks_bomberman.xml

checkstyle import
Figure 2. Tela de importação das regras customizadas

Ao voltar para a página de configuração do checkstyle, clique na regra customiada e em seguida em "Set as Default"

Findbugs plugin

No Eclipse vá em > Help>Marketplace

Digite no campo search: Findbugs

Escolha Findbugs Eclipse Plugin 3.0.0 Confirme. Ao final da instalação reinicie o Eclipse.

Integração Contínua & Cobertura dos testes

A cada push para o repositório, é feito um build completo do projeto, executando os testes e verificando se as modificações inseriram alguma falta ou quebraram algum teste.

Para verificar o status das últimas construções, entre no link: https://travis-ci.org/gabrielsr/bomberman/builds

Além disso, após o build é feita uma análise da cobertura dos testes, usando as ferramentas Cobertura e Jacoco. Para ver os resultados dos últimos testes, entre no link: https://coveralls.io/r/gabrielsr/bomberman

Referencias

Padrões Utilizados

  • Padrão Arquitetural: Entity Component System