gabrielsr / bomberman

Continuado em: https://github.com/ecsb/ecsbomberman
6 stars 24 forks source link

Introdução

image:https://travis-ci.org/gabrielsr/bomberman.svg?branch=master["Build Status", link="https://travis-ci.org/gabrielsr/bomberman"] image:http://img.shields.io/coveralls/gabrielsr/bomberman/master.svg["Coverage Status", link="https://coveralls.io/r/gabrielsr/bomberman?branch=master"]

Projeto em Desenvolvimento de um Bomberman clone utilizando programação modular, desenvolvido como projeto da disciplina:

Programação Sistemática

Universidade de Brasília - UnB

2/2014

= Instruções para Montagem de Ambiente de Desenvolvimento

== JDK8 o compilador e máquina virtual

Instale o JDK8: http://www.oracle.com/technetwork/java/javase/downloads/index.html

== 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:

[[img-eclipse_pacotes]] .Visualização de Pacotes após importação bem sucedida no Eclipse image::/docs/img/eclipse_pacotes.png[]

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 Project -> Build 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

[[img-checkstyle_import]] .Tela de importação das regras customizadas image::/docs/img/checkstyle_import.png[]

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 http://cobertura.github.io/cobertura/[Cobertura] e http://www.eclemma.org/jacoco/[Jacoco]. Para ver os resultados dos últimos testes, entre no link: https://coveralls.io/r/gabrielsr/bomberman

= Referencias == Padrões Utilizados