javaserver faces - desenvolvendo aplicações web com produtividade

36
JavaServer Faces Desenvolvendo aplicações web com produtividade Rafael Ponte http://www.rponte.com.br [email protected]

Upload: rafael-ponte

Post on 04-Dec-2014

10.594 views

Category:

Technology


2 download

DESCRIPTION

 

TRANSCRIPT

Page 1: JavaServer Faces - Desenvolvendo aplicações web com produtividade

JavaServer FacesDesenvolvendo aplicações web com produtividade

Rafael Pontehttp://[email protected]

Page 2: JavaServer Faces - Desenvolvendo aplicações web com produtividade

Quem?

● Desenvolvedor● Atualmente trabalha na IVIA● Sócio fundador da Triadworks● Entusiasta Java, JSF e DDD● Coordenador do grupo JSF

“Rafael Ponte”

Page 3: JavaServer Faces - Desenvolvendo aplicações web com produtividade

Agenda

● O que é JavaServer Faces?● Por que usar JSF?● Desenvolvendo aplicações ricas● Conclusão

Page 4: JavaServer Faces - Desenvolvendo aplicações web com produtividade

O que éJavaServer Faces?

Page 5: JavaServer Faces - Desenvolvendo aplicações web com produtividade

JavaServer Faces é..

● ...uma especificação● ...framework MVC basedo em

componentes e dirigido a eventos● ...padrão de mercado● ...RAD

Page 6: JavaServer Faces - Desenvolvendo aplicações web com produtividade

JavaServer Faces é..

● ...uma especificação– JSR 127 (JSF 1.0 e JSF 1.1) – 2004

● JSF 1.0 – não alcançou o sucesso esperado● JSF 1.1 – corrigiu os erros da versão anterior

– JSF 252 (JSF 1.2) – 2006 (JavaEE 5.0)

– JSR 314 (JSF 2.0)● Arquitetura, produtividade, AJAX, ferramentas

RAD, melhores componentes UI..● A pergunta é.. Quando? JavaEE 6.0?

Page 7: JavaServer Faces - Desenvolvendo aplicações web com produtividade

JavaServer Faces é..

● ...padrão de mercado– JavaEE 5.0

– Suporte de Big Players● Sun, Apache, IBM, BEA Systems, Borland..● IDEs (NetBeans, Eclipse, IntelliJ, JDeveloper, ...)● Implementações (Sun, Apache, IBM, ...)● Conjunto de componentes (ADF Faces, Myfaces,

WoodStock, Richfaces, ...)

Page 8: JavaServer Faces - Desenvolvendo aplicações web com produtividade

JavaServer Faces é..

● ...framework MVC basedo em componentes e dirigido a eventos– Um conjunto de APIs para:

● Representar componentes UI e gerenciar o estado destes componentes

● Manipular eventos e validação de entrada do usuário● Definir e controlar a navegação entre páginas● Dar suporte a internacionalização e acessibilidade

– Um conjunto de tags JSP para representar os componentes JSF numa página JSP

Page 9: JavaServer Faces - Desenvolvendo aplicações web com produtividade

Por que usar JSF?

Page 10: JavaServer Faces - Desenvolvendo aplicações web com produtividade

Eu uso JSF porque..

● É um padrão de mercado● Presente na especificação JEE5.0 e em

breve na JEE6.0● Suporte de Big Players● Fácil de usar.. e produtivo também!

– Alta abstração no desenvolvimento de aplicações web

– Baixa curva de aprendizagem

Page 11: JavaServer Faces - Desenvolvendo aplicações web com produtividade

Eu uso JSF porque..

● Reusabilidade e estrutura de componentes extensível

● Acessibilidade● Suporte Cross-Browser● Grande atividade da comunidade em fóruns,

listas de discussão, blogs, revitas etc● Integração com diversos frameworks

Page 12: JavaServer Faces - Desenvolvendo aplicações web com produtividade

Eu uso JSF porque..

● Reusabilidade e estrutura de componentes extensível

● Acessibilidade● Suporte Cross-Browser● Grande atividade da comunidade em fóruns,

listas de discussão, blogs, revitas etc● Integração com diversos frameworks

JavaServer Faces JavaServer Faces International GroupInternational Grouphttp://groups.google.com/group/javasfhttp://groups.google.com/group/javasf

CejugCejughttp://www.cejug.org/http://www.cejug.org/

Page 13: JavaServer Faces - Desenvolvendo aplicações web com produtividade

Eu uso JSF porque..

● Diversas IDEs● Grande variedade de componentes comerciais

e open source disponíveis

Page 14: JavaServer Faces - Desenvolvendo aplicações web com produtividade

Desenvolvendo aplicações

ricas

Page 15: JavaServer Faces - Desenvolvendo aplicações web com produtividade

Para desenvolver interfaces ricas muitas vezes precisamos entender sobre...

Page 16: JavaServer Faces - Desenvolvendo aplicações web com produtividade

CSS

JavaScript

AJAX

JSON

HTMLXHTML

XML

Cross Browser

frameworks

APIs

Page 17: JavaServer Faces - Desenvolvendo aplicações web com produtividade

Por que perder a

cabeça com tantos

artefatos?

Page 18: JavaServer Faces - Desenvolvendo aplicações web com produtividade

...quando JSF te fornece uma gama

enorme de componentes para facilitar a tua vida!

Page 19: JavaServer Faces - Desenvolvendo aplicações web com produtividade

● MyFaces Tomahawk● Myfaces Sandbox● Myfaces Tobago● Myfaces Trinidad● ADF Faces● IceFaces● WoodStock● Net Advantage● WebGalileoFaces● Backbase

● JBoss Richfaces● JBoss Ajax4jsf● Quiputkit● Blueprints● RCFaces● Jenia4Faces● ZK● YUI4JSF (Yahoo API)● Ext4JSF (ExtJs API)● Dynamic Faces

* Mais componentes? http://ww.jsfmatrix.net/

Page 20: JavaServer Faces - Desenvolvendo aplicações web com produtividade
Page 21: JavaServer Faces - Desenvolvendo aplicações web com produtividade
Page 22: JavaServer Faces - Desenvolvendo aplicações web com produtividade
Page 23: JavaServer Faces - Desenvolvendo aplicações web com produtividade
Page 24: JavaServer Faces - Desenvolvendo aplicações web com produtividade
Page 25: JavaServer Faces - Desenvolvendo aplicações web com produtividade
Page 26: JavaServer Faces - Desenvolvendo aplicações web com produtividade
Page 27: JavaServer Faces - Desenvolvendo aplicações web com produtividade

E também temos diversas IDEs para desenvolver com uma maior produtividade :)

Page 28: JavaServer Faces - Desenvolvendo aplicações web com produtividade

● Eclipse Europa● MyEclipse● NetBeans (Visual

WebPack)● Sun Studio Creator● Oracle JDeveloper● JSFToolBox

(Dreamweaver)

● IntelliJ IDEA● JBuilder● IBM Rational

App/Web Developer● Red Hat Developer

Studio● JBoss JSF Tools

Page 29: JavaServer Faces - Desenvolvendo aplicações web com produtividade

WYSIWYGWhat you see is what

you get

Page 30: JavaServer Faces - Desenvolvendo aplicações web com produtividade

MyEclipse

Page 31: JavaServer Faces - Desenvolvendo aplicações web com produtividade

MyEclipse

Page 32: JavaServer Faces - Desenvolvendo aplicações web com produtividade

NetBeans

Page 33: JavaServer Faces - Desenvolvendo aplicações web com produtividade

NetBeans

Page 34: JavaServer Faces - Desenvolvendo aplicações web com produtividade

Concluindo..

● JSF não é a “bala de prata”● Vale a pena investir na tecnologia?● E o mercado?

Page 35: JavaServer Faces - Desenvolvendo aplicações web com produtividade

Perguntas?