VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

27
Um framework WEB MVC para desenvolvimento ágil com JAVA

description

Desenvolver rápido em JAVA só depende de você, conheça o VRaptor.

Transcript of VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

Page 1: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

Um framework WEB MVC para desenvolvimento ágil com JAVA

Page 2: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

Formação acadêmica

Pós-graduado em Segurança de redes e sistemas

Graduado em Sistemas de informação - Faculdade Santa Maria

Graduado em Analise e desenvolvimento de sistemas - UNIBRATEC

Oracle Certified Java Associate 5/6

Oracle Certified Java Programmer 6

Membro do PMI® Management Institute

Sobre o palestranteYelken H. F. Gonzales

Experiência profissional

Analista de sistemas no grupo Ferreira Costa

Atuou como desenvolvedor no portal de dados abertos do governo do estado de PE e na implantação e desenvolvimento de inovações tecnológicas no grupo Ferreira Costa

Atuou em empresas e orgão público como: Safari Studio, BankSystem Software Builder, Prefeitura de Olinda

Campeão no Hackathon Telefonica Vivo / Firefox OS de melhor aplicativo na Campus Party de 2013

Projeto SkyON o qual faço parte da equipe em segundo lugar no Hackathon da NASA em Recife

Page 3: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

Motivação da palestra

Cometi vários erros em um projeto de automação na WEB

Page 4: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

Conceitos básicos

Page 5: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

Frameworks WEB

Page 6: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

O que é Framework?

‘‘Um framework é uma abstração que une códigos comuns entre vários projetos de software provendo uma funcionalidade genérica.

Page 7: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

• Popularidade

• Filosofia

• Sustentabilidade

• Técnica

• Segurança

• Documentação

• Licença

• Tem recurso no mercado?

• Experimente!

Critérios para escolher um framework

Page 8: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

E MVC ?

‘‘MVC é um padrão de arquitetura que descreve como três camadas de desenvolvimento relacionam entre si.

Page 9: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

• Framework MVC para WEB

• Focado no desenvolvimento rápido

• Action based

• Open source

• Iniciativa da comunidade JAVA Brasileira

• Criado na USP em 2003

• Mantido pela CAELUM

Enfim o VRaptor!!

Page 10: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

• 1.0 em 2003

• 2.0 em 2006 baseada no Ruby on Rails

• 3.0 em 2009 com conceito forte de configuração, injeção de dependência, annotations e serviços WEB

• 4.0 em 2014 com uma evolução maior em CDI

Versões do VRaptor

Page 11: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

• Alta produtividade

• Baixa curva de aprendizagem

• Testabilidade

• Economia de tempo no projeto e consequentemente dinheiro

• Flexibilidade

• Documentação em português

Vantagens

Page 12: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

•Não possui componentes próprios como o JSF

•Maior dependência do HTML, CSS e Javascript

Desvantagens

Page 13: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

•Aprenda HTML, CSS e JS.

•Jquery ,Jquery UI, YUI, ExtJS e AngularJS

•Use o VRaptor!

Solução para as desvantagens

Page 14: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

Convention over configuration

Page 15: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

web.xml

Page 16: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

Recursos

Page 17: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

Controllers

@Resource public class ProdutosController { private ProdutoDao dao; !

public List<Produto> lista() { return dao.listaTodos(); } }

Page 18: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

View

<ul> <c:forEach items=“${produtoList}” var=“produto"> <li> ${produto.id} - ${produto.nome} </li> </c:forEach> </ul>

Page 19: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

Injeção de dependência@Component public class ProdutoDao { //... } !

@Resource public class ProdutosController { private ProdutoDao dao; public ProdutosController(ProdutoDao dao) { this.dao = dao; } }

Page 20: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

Redirecionamentos

public void adiciona(Produto produto){ dao.adiciona(produto); result.redirectTo(this).lista(); }

Page 21: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

Validação

public void adiciona(Funcionario funcionario) { if (funcionario.getNome().isEmpty()) { validator.add(new ValidationMessage(“nome.invalido","erro")); } validator.onErrorUsePageOf(this).formulario(); dao.adiciona(funcionario); };

Page 22: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

REST

public class ProdutosController { !@Get(“/produtos") public List<Produto> lista() {…} !@Post(“/produtos") public void adiciona(Produto produto) {…} !@Get(“/produtos/{produto.id}") public void visualiza(Produto produto) {…} !}

Page 23: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

JSON e XML (AJAX)

public void loadJson(Cliente cliente { result.use(json()).from(cliente).serialize(); } !public void loadXml(Cliente cliente) { result.use(xml()).from(cliente).serialize(); }

Page 24: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

Vamos a parte prática

Page 25: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

•github.com/caelum/vraptor

[email protected]

•http://vraptor.caelum.com.br/comunidade.jsp

Comunidade

Page 26: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

Dúvidas

Page 27: VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA

@yelkezin Yelken Heckman ylk.com.br

Obrigado!