Rodrigo Branas é um especialista em Java com mais de 10 anos de experiência. Ele possui diversas certificações como SCJA, SCJP, PMP e é instrutor na Academia Java e Agile da Globalcode, onde ministra treinamentos sobre Clean Code, Selenium e Maven. Branas também trabalhou como líder de desenvolvimento na Gennera e já palestrou em diversos eventos sobre temas relacionados a desenvolvimento Java.
3. @rodrigobranas
rodrigo.branas@gmail.com
http://www.agilecode.com.br
Formação Acadêmica
Ciências da Computação – UFSC
Gerenciamento de Projetos - FGV
Certificações
SCJA, SCJP, SCJD, SCWCD, SCBCD, PMP, MCP e CSM
4. Rodrigo Branas – rodrigo.branas@gmail.com
10 anos de experiência na plataforma Java
1000 horas em sala de aula
Mais de 50 palestras em eventos
Líder da área de desenvolvimento na Gennera
Autor da revista Java Magazine
Palestrante
Instrutor da Academia Java e Agile da Globalcode
Criador dos treinamentos de Clean Code, Selenium e
Maven da Agile Code
Trabalhou com as empresas: EDS, HP, GM, Citibank,
OnCast, Globalcode, V.Office, Dígitro, Softplan, Unimed,
Suntech, Vale do Rio Doce, Senai, NET.
9. Desperdícios puros
Atividades que poderiam ser reduzidas ou eliminadas
• Configurar o projeto em uma maquina nova, em
quanto tempo estamos prontos para desenvolver?
10. Desperdícios puros
Atividades que poderiam ser reduzidas ou eliminadas
• Configurar o projeto em uma maquina nova, em
quanto tempo estamos prontos para desenvolver?
• Modificar a versão de uma biblioteca
11. Desperdícios puros
Atividades que poderiam ser reduzidas ou eliminadas
• Configurar o projeto em uma maquina nova, em
quanto tempo estamos prontos para desenvolver?
• Modificar a versão de uma biblioteca
• Gerar uma versão da aplicação para ser colocada
em produção
12. Desperdícios puros
Atividades que poderiam ser reduzidas ou eliminadas
• Configurar o projeto em uma maquina nova, em
quanto tempo estamos prontos para desenvolver?
• Modificar a versão de uma biblioteca
• Gerar uma versão da aplicação para ser colocada
em produção
• Transferência de conhecimento
13. Desperdícios puros
Atividades que poderiam ser reduzidas ou eliminadas
• Configurar o projeto em uma maquina nova, em
quanto tempo estamos prontos para desenvolver?
• Modificar a versão de uma biblioteca
• Gerar uma versão da aplicação para ser colocada
em produção
• Transferência de conhecimento
• Deu problema! É fácil voltar a versão?
14. Desperdícios puros
Atividades que poderiam ser reduzidas ou eliminadas
• Configurar o projeto em uma maquina nova, em
quanto tempo estamos prontos para desenvolver?
• Modificar a versão de uma biblioteca
• Gerar uma versão da aplicação para ser colocada
em produção
• Transferência de conhecimento
• Deu problema! É fácil voltar a versão?
• Entender código ruim
15. Desperdícios puros
Atividades que poderiam ser reduzidas ou eliminadas
• Configurar o projeto em uma maquina nova, em
quanto tempo estamos prontos para desenvolver?
• Modificar a versão de uma biblioteca
• Gerar uma versão da aplicação para ser colocada
em produção
• Transferência de conhecimento
• Deu problema! É fácil voltar a versão?
• Entender código ruim
• Corrigir bugs
20. Maven
Gerenciamento de configuração do seu projeto
Compilação o código fonte
Compilar e executar os códigos de testes
Empacotar o projeto para distribuição
21. Maven
Gerenciamento de configuração do seu projeto
Compilação o código fonte
Compilar e executar os códigos de testes
Empacotar o projeto para distribuição
Realizar a gestão de dependências
22. Maven
Gerenciamento de configuração do seu projeto
Compilação o código fonte
Compilar e executar os códigos de testes
Empacotar o projeto para distribuição
Realizar a gestão de dependências
Versionamento em diferentes SCM’s
23. Maven
Gerenciamento de configuração do seu projeto
Compilação o código fonte
Compilar e executar os códigos de testes
Empacotar o projeto para distribuição
Realizar a gestão de dependências
Versionamento em diferentes SCM’s
Deployment em diversos servidores de aplicação
24. Maven
Gerenciamento de configuração do seu projeto
Compilação o código fonte
Compilar e executar os códigos de testes
Empacotar o projeto para distribuição
Realizar a gestão de dependências
Versionamento em diferentes SCM’s
Deployment em diversos servidores de aplicação
Geração de documentação (parecido com uma wiki)
25. Maven
Gerenciamento de configuração do seu projeto
Compilação o código fonte
Compilar e executar os códigos de testes
Empacotar o projeto para distribuição
Realizar a gestão de dependências
Versionamento em diferentes SCM’s
Deployment em diversos servidores de aplicação
Geração de documentação (parecido com uma wiki)
Verificar a qualidade do seu código
29. Maven
Processo de Instalação
Download em http://maven.apache.org
30. Maven
Processo de Instalação
Download em http://maven.apache.org
Descompactar a ferramenta
31. Maven
Processo de Instalação
Download em http://maven.apache.org
Descompactar a ferramenta
Definir a variável de ambiente M2_HOME apontando
para o diretório de instalação
32. Maven
Processo de Instalação
Download em http://maven.apache.org
Descompactar a ferramenta
Definir a variável de ambiente M2_HOME apontando
para o diretório de instalação
Atualizar a variável de ambiente PATH apontando
para o diretório M2_HOME/bin
41. Maven
Criando seu primeiro projeto
mvn archetype:generate
Escolhar um tipo de projeto
Definir as 3 informações fundamentais que identificam
um artefato no Maven, como se fosse uma certidão
de nascimento
44. Maven
3 informações fundamentais
groupId: identificação relacionada a empresa ou
organização desenvolvedora do artefato. Essa
informação vai gerar a estrutura de pacote.
45. Maven
3 informações fundamentais
groupId: identificação relacionada a empresa ou
organização desenvolvedora do artefato. Essa
informação vai gerar a estrutura de pacote.
artifactId: identificação do artefato
46. Maven
3 informações fundamentais
groupId: identificação relacionada a empresa ou
organização desenvolvedora do artefato. Essa
informação vai gerar a estrutura de pacote.
artifactId: identificação do artefato
version: versão do artefato
51. Maven
Estrutura de diretórios
src/main/java: Onde fica todo o código fonte
52. Maven
Estrutura de diretórios
src/main/java: Onde fica todo o código fonte
src/main/resources: Arquivos de configuração
53. Maven
Estrutura de diretórios
src/main/java: Onde fica todo o código fonte
src/main/resources: Arquivos de configuração
src/main/webapp: Estrutura Web
54. Maven
Estrutura de diretórios
src/main/java: Onde fica todo o código fonte
src/main/resources: Arquivos de configuração
src/main/webapp: Estrutura Web
src/test/java: Onde fica todo o código de teste
55. Maven
Estrutura de diretórios
src/main/java: Onde fica todo o código fonte
src/main/resources: Arquivos de configuração
src/main/webapp: Estrutura Web
src/test/java: Onde fica todo o código de teste
src/test/resources: Arquivos de configuração
56. Maven
Estrutura de diretórios
src/main/java: Onde fica todo o código fonte
src/main/resources: Arquivos de configuração
src/main/webapp: Estrutura Web
src/test/java: Onde fica todo o código de teste
src/test/resources: Arquivos de configuração
src/site: Arquivos de documentação
57. Maven
Estrutura de diretórios
src/main/java: Onde fica todo o código fonte
src/main/resources: Arquivos de configuração
src/main/webapp: Estrutura Web
src/test/java: Onde fica todo o código de teste
src/test/resources: Arquivos de configuração
src/site: Arquivos de documentação
target: Pacotes gerados e fontes compilados
72. Maven
Ciclo de Vida
compile: Compila o código fonte.
73. Maven
Ciclo de Vida
compile: Compila o código fonte.
test: Compila e executa os testes.
74. Maven
Ciclo de Vida
compile: Compila o código fonte.
test: Compila e executa os testes.
package: Empacota o código fonte compilado no
formato especificado.
75. Maven
Ciclo de Vida
compile: Compila o código fonte.
test: Compila e executa os testes.
package: Empacota o código fonte compilado no
formato especificado.
install: Instala o projeto no repositório local
76. Maven
Ciclo de Vida
compile: Compila o código fonte.
test: Compila e executa os testes.
package: Empacota o código fonte compilado no
formato especificado.
install: Instala o projeto no repositório local.
deploy: Instala o projeto no repositório remoto.
77. Maven
Ciclo de Vida
compile: Compila o código fonte.
test: Compila e executa os testes.
package: Empacota o código fonte compilado no
formato especificado.
install: Instala o projeto no repositório local.
deploy: Instala o projeto no repositório remoto.
clean: Apaga o diretório target
78. Maven
Ciclo de Vida
compile: Compila o código fonte.
test: Compila e executa os testes.
package: Empacota o código fonte compilado no
formato especificado.
install: Instala o projeto no repositório local.
deploy: Instala o projeto no repositório remoto.
clean: Apaga o diretório target
site: Gera a documentação do projeto