SlideShare uma empresa Scribd logo
Desenvolvimento Rápido
de Aplicações JEE com
JavaFX no Cliente
Quem é William
Objetivo
Trazer ao desenvolvedor Java uma
alternativa ágil na criação de aplicações
enterprise utilizando JavaFX e JEE,
apresentando ferramentas e informações
relevantes para atingir esse objetivo
Agenda
● Parte I - Introdução as tecnologias usadas
○ JEE (Java Enterprise Edition)
○ JavaFX
● Parte II - Cenário atual e nova alternativa
○ Sistemas WEB atuais e suas características
○ Aplicações JEE com JavaFX no Cliente
○ Desenvolvimento JEE
○ Desenvolvimento JavaFX
● Parte III - Código e discussões
○ Código
○ Conclusão
○ Dúvidas
PARTE I
JEE (Java Enterprise Edition)
Conjunto de especificações para
construção de aplicações enterprise
implementadas por servidores de aplicação
JEE 6 (Atual)
JEE 7 (Em Breve)
JEE:
Especificações utilizadas
JAX-RS
Criação de WEB Services utilizando REST
JPA
Persistência de objetos
CDI
Para injeção de dependência
EJB
Para facilitar o gerenciamento de transações
Lembre-se: JEE engloba outras especificações também
JavaFX
É uma moderna biblioteca Java que
dispõe de vários recursos para
criação de aplicações ricas.
Sua forma de programar facilita
muito a vida do desenvolvedor.
É o novo Swing
JavaFX:
"vários recursos"
Fonte das imagens:: http://docs.oracle.com/javafx/
JavaFX:
"vários recursos"
JavaFX:
"forma de programar"
Java no cliente como você nunca viu
● CSS
● GUI com XML: FXML
● Ferramenta "arrasta-solta"
● API: Binding e Listeners
● Uso de DSL: VisageFX, Scala, Groovy...
JavaFX:
"novo swing"
● Maior performance
● Multiplataforma: distruibuição da aplicação
através de JNLP, Applet, JAR e instalador
nativo: .rpm .exe...
● É parte da plataforma Java
● Open Source: OpenJFX
PARTE II
Sistemas WEB Atuais
Backend
JEE, Spring , RoR, DJango...
Frontend:
Flex, HTML 5 + JS, JSF, JSP, Frameworks JS
Backend + Frontend:
Vaadin, GWT...
Sistemas WEB Atuais:
Possíveis problemas
● Múltiplas linguagens de programação
● Ausência de especificações
● Dificuldade de encontrar especialistas
● Dependência de framework
● Imaturidade das ferramentas
Sistemas WEB Atuais:
Alternativa
Que tal mais uma alternativa?
Frontend+Backend: Java
● Sem Frameworks (exceto se você quiser)
● Especificações
● JVM
● Desenvolvimento rápido
Não é bala de prata!
Aplicações JEE com JavaFX no
Cliente
Servidor
JEE puro e portável
Cliente
JavaFX utilizando FXML, CSS
JEE com JavaFX:
Como fazer a comunicação?
● RMI
○ Realizar Lookup de EJBs para invocação de
métodos de negócio
● HTML + JS
○ Criar páginas HTML + JS e utilizar em uma app
JavaFX, utilizando recursos da plataforma
● WEB Services
○ SOAP
○ REST
JEE com JavaFX:
Arquitetura Geral
Blog: http://www.guigarage.com/2013/05/designing-javafx-business-applications-part-1/
JEE com JavaFX:
Cliente com MVP (Model View Presenter)
FXML
Classe "sabe tudo"
POJO
Desenvolvimento Rápido JEE
+
Desenvolvimento Rápido JavaFX
Scene Builder
+
Desenvolvimento Rápido JavaFX
DATAFX
ScalaFX
FXForm2 afterburner.fx
Desenvolvimento Rápido JavaFX
Muitos outros frameworks e ferramentas
http://bit.ly/W93rko
PARTE III
Código
github.com/jesuino/crud-frameworks
Código:
Outras possibilidades
Blog: http://www.guigarage.com/2013/05/designing-javafx-business-applications-part-1/
Código:
Outras possibilidades
Blog: http://www.guigarage.com/2013/05/designing-javafx-business-applications-part-1/
● Ferramentas de geração de formulários
baseado em POJO: FXForm2;
● Utilizar binding do Modelo para a camada de
visão;
● Usar JAX-RS 2.0 e Bean Validation para
incrementar o cliente;
● Facilitar a criação da visão com uma DSL;
● ...
Código:
Outras possibilidades
Futuro
JEE 7 mês que vem!
Web Sockets, JSON, JAX-RS 2, CD 1.1..
Conclusão
O uso de JEE com JavaFX em aplicações
"enterprise" se torna uma alternativa
atraente devido as ferramentas e
tecnologias envolvidas, pois essas auxiliam
no desenvolvimento rápido de aplicações
escaláveis e padronizadas.
Dúvidas?
Fim
Obrigado!
● http://twitter.com/william_antonio
● http://aprendendo-
○ javafx.blogspot.com
○ javaee.blogspot.com
● http://fxapps.blogspot.com

Mais conteúdo relacionado

Mais procurados

Introdução ao java fx e visage
Introdução ao java fx e visageIntrodução ao java fx e visage
Introdução ao java fx e visage
jesuinoPower
 
Rest web services com Java
Rest web services com JavaRest web services com Java
Rest web services com Java
jesuinoPower
 
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
Raphael Marques
 

Mais procurados (20)

JavaFX - Uma visão Geral
JavaFX - Uma visão GeralJavaFX - Uma visão Geral
JavaFX - Uma visão Geral
 
Aplicações ricas com JavaFX 2
Aplicações ricas com JavaFX 2Aplicações ricas com JavaFX 2
Aplicações ricas com JavaFX 2
 
Introdução ao java fx e visage
Introdução ao java fx e visageIntrodução ao java fx e visage
Introdução ao java fx e visage
 
Ria e Java FX
Ria e Java FXRia e Java FX
Ria e Java FX
 
Javafx
JavafxJavafx
Javafx
 
Introdução ao LiveOak
Introdução ao LiveOakIntrodução ao LiveOak
Introdução ao LiveOak
 
Chega de lendas! JavaFX em Android
Chega de lendas! JavaFX em AndroidChega de lendas! JavaFX em Android
Chega de lendas! JavaFX em Android
 
Rest web services com Java
Rest web services com JavaRest web services com Java
Rest web services com Java
 
Conectando jBPM com o mundo - TDC 2014 SP
Conectando jBPM com o mundo - TDC 2014 SPConectando jBPM com o mundo - TDC 2014 SP
Conectando jBPM com o mundo - TDC 2014 SP
 
Jclouds jug vale
Jclouds jug valeJclouds jug vale
Jclouds jug vale
 
Desafios de um desenvolvedor JSF
Desafios de um desenvolvedor JSFDesafios de um desenvolvedor JSF
Desafios de um desenvolvedor JSF
 
Jugvale
JugvaleJugvale
Jugvale
 
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
 
JEE nas nuvens: uma introdução ao openshift
JEE nas nuvens:  uma introdução ao openshiftJEE nas nuvens:  uma introdução ao openshift
JEE nas nuvens: uma introdução ao openshift
 
ASP .NET MVC - Você esta pronto para a pílula vermelha?
ASP .NET MVC - Você esta pronto para a pílula vermelha?ASP .NET MVC - Você esta pronto para a pílula vermelha?
ASP .NET MVC - Você esta pronto para a pílula vermelha?
 
Desenvolvimento baseado em componentes com JSF
Desenvolvimento baseado em componentes com JSFDesenvolvimento baseado em componentes com JSF
Desenvolvimento baseado em componentes com JSF
 
Desenvolviemento web com ASP.Net e MVC
Desenvolviemento web com ASP.Net e MVCDesenvolviemento web com ASP.Net e MVC
Desenvolviemento web com ASP.Net e MVC
 
Java Web Fácil com VRaptor
Java Web Fácil com VRaptorJava Web Fácil com VRaptor
Java Web Fácil com VRaptor
 
Blazor #SnetTalks3
Blazor  #SnetTalks3Blazor  #SnetTalks3
Blazor #SnetTalks3
 
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...
 

Destaque

Usando JavaFx No Desenvolvimento De Jogos
Usando JavaFx No Desenvolvimento De JogosUsando JavaFx No Desenvolvimento De Jogos
Usando JavaFx No Desenvolvimento De Jogos
Hamilton Lima
 
Refatoração: Como deixar seu código livre de maus Cheiros
Refatoração: Como deixar seu código livre de maus CheirosRefatoração: Como deixar seu código livre de maus Cheiros
Refatoração: Como deixar seu código livre de maus Cheiros
Pedro Hos
 
Palestra Sepai Alfredofurtado Introducao Ao Javafx
Palestra Sepai Alfredofurtado Introducao Ao JavafxPalestra Sepai Alfredofurtado Introducao Ao Javafx
Palestra Sepai Alfredofurtado Introducao Ao Javafx
alfredofurtado
 

Destaque (20)

JavaFX fundamentals
JavaFX fundamentalsJavaFX fundamentals
JavaFX fundamentals
 
Introduction to JavaFX
Introduction to JavaFXIntroduction to JavaFX
Introduction to JavaFX
 
Mini-curso JavaFX Aula1
Mini-curso JavaFX Aula1Mini-curso JavaFX Aula1
Mini-curso JavaFX Aula1
 
Curso de Java #05 - Swing e JavaFX
Curso de Java #05 - Swing e JavaFXCurso de Java #05 - Swing e JavaFX
Curso de Java #05 - Swing e JavaFX
 
Usando JavaFx No Desenvolvimento De Jogos
Usando JavaFx No Desenvolvimento De JogosUsando JavaFx No Desenvolvimento De Jogos
Usando JavaFx No Desenvolvimento De Jogos
 
Como criar o jogo 2048 em Java 8 e JavaFX
Como criar o jogo 2048 em Java 8 e JavaFXComo criar o jogo 2048 em Java 8 e JavaFX
Como criar o jogo 2048 em Java 8 e JavaFX
 
Refatoração: Como deixar seu código livre de maus Cheiros
Refatoração: Como deixar seu código livre de maus CheirosRefatoração: Como deixar seu código livre de maus Cheiros
Refatoração: Como deixar seu código livre de maus Cheiros
 
Mini-curso JavaFX Aula2
Mini-curso JavaFX Aula2Mini-curso JavaFX Aula2
Mini-curso JavaFX Aula2
 
Javafx Introdução
Javafx IntroduçãoJavafx Introdução
Javafx Introdução
 
Palestra Sepai Alfredofurtado Introducao Ao Javafx
Palestra Sepai Alfredofurtado Introducao Ao JavafxPalestra Sepai Alfredofurtado Introducao Ao Javafx
Palestra Sepai Alfredofurtado Introducao Ao Javafx
 
Enterprise JavaBeans simples e descomplicado, na prática
Enterprise JavaBeans simples e descomplicado, na práticaEnterprise JavaBeans simples e descomplicado, na prática
Enterprise JavaBeans simples e descomplicado, na prática
 
Internet das Coisas com Java e Things API
Internet das Coisas com Java e Things APIInternet das Coisas com Java e Things API
Internet das Coisas com Java e Things API
 
Java persintence api
Java persintence apiJava persintence api
Java persintence api
 
Conhecendo Java
Conhecendo JavaConhecendo Java
Conhecendo Java
 
Campus Party 2014 - Internet das Coisas com coisas reais
Campus Party 2014 - Internet das Coisas com coisas reaisCampus Party 2014 - Internet das Coisas com coisas reais
Campus Party 2014 - Internet das Coisas com coisas reais
 
JavaFX: Abordagem Prática
JavaFX: Abordagem PráticaJavaFX: Abordagem Prática
JavaFX: Abordagem Prática
 
JavaFx - Guia Prático
JavaFx - Guia PráticoJavaFx - Guia Prático
JavaFx - Guia Prático
 
Internet das Coisas com Coisas Reais: Java , Things API, Raspberry PI e Toys!
Internet das Coisas com Coisas Reais:  Java , Things API, Raspberry PI e Toys!Internet das Coisas com Coisas Reais:  Java , Things API, Raspberry PI e Toys!
Internet das Coisas com Coisas Reais: Java , Things API, Raspberry PI e Toys!
 
Palestra sobre Carreira Java / JavaEE - TDC2012 - Trlha Java
Palestra sobre Carreira Java / JavaEE - TDC2012 - Trlha JavaPalestra sobre Carreira Java / JavaEE - TDC2012 - Trlha Java
Palestra sobre Carreira Java / JavaEE - TDC2012 - Trlha Java
 
JavaFX no Falando em Java 2007 - Sergio Lopes
JavaFX no Falando em Java 2007 - Sergio LopesJavaFX no Falando em Java 2007 - Sergio Lopes
JavaFX no Falando em Java 2007 - Sergio Lopes
 

Semelhante a Desenvolvimento rápido de aplicações com JEE e JavaFX

GlassFish, Maven, Cloud e Java EE
GlassFish, Maven, Cloud e Java EEGlassFish, Maven, Cloud e Java EE
GlassFish, Maven, Cloud e Java EE
Bruno Borges
 
Netbeans Slides Fy2009 Portugues
Netbeans Slides Fy2009 PortuguesNetbeans Slides Fy2009 Portugues
Netbeans Slides Fy2009 Portugues
Rodrigo Peleias
 
Jsf com hibernate, spring security e maven
Jsf com hibernate, spring security e mavenJsf com hibernate, spring security e maven
Jsf com hibernate, spring security e maven
Leandro Costa
 

Semelhante a Desenvolvimento rápido de aplicações com JEE e JavaFX (20)

Introdução ao JEE
Introdução ao JEEIntrodução ao JEE
Introdução ao JEE
 
Java OO Middleware - JEE / EJB / RMI
Java OO Middleware - JEE / EJB / RMIJava OO Middleware - JEE / EJB / RMI
Java OO Middleware - JEE / EJB / RMI
 
Curso jsf
Curso jsfCurso jsf
Curso jsf
 
GlassFish, Maven, Cloud e Java EE
GlassFish, Maven, Cloud e Java EEGlassFish, Maven, Cloud e Java EE
GlassFish, Maven, Cloud e Java EE
 
Anatomia do JSF – JavaServer Faces
Anatomia do JSF – JavaServer FacesAnatomia do JSF – JavaServer Faces
Anatomia do JSF – JavaServer Faces
 
GlassFish, Maven, Cloud e o futuro do Java EE
GlassFish, Maven, Cloud e o futuro do Java EEGlassFish, Maven, Cloud e o futuro do Java EE
GlassFish, Maven, Cloud e o futuro do Java EE
 
Introdução a jsf
Introdução a jsfIntrodução a jsf
Introdução a jsf
 
Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.
 
Navegando em um mar de siglas do mundo java
Navegando em um mar de siglas do mundo javaNavegando em um mar de siglas do mundo java
Navegando em um mar de siglas do mundo java
 
JEE6 - Introdução
JEE6 - IntroduçãoJEE6 - Introdução
JEE6 - Introdução
 
Java v1.1
Java v1.1Java v1.1
Java v1.1
 
Aula parte 1 de JSF 2.2
Aula parte 1 de JSF 2.2Aula parte 1 de JSF 2.2
Aula parte 1 de JSF 2.2
 
Netbeans Slides Fy2009 Portugues
Netbeans Slides Fy2009 PortuguesNetbeans Slides Fy2009 Portugues
Netbeans Slides Fy2009 Portugues
 
Jsf com hibernate, spring security e maven
Jsf com hibernate, spring security e mavenJsf com hibernate, spring security e maven
Jsf com hibernate, spring security e maven
 
Anatomia do JSF, JavaServer Faces
Anatomia do JSF, JavaServer FacesAnatomia do JSF, JavaServer Faces
Anatomia do JSF, JavaServer Faces
 
Serra StarTec 2013 - Java EE
Serra StarTec 2013 - Java EESerra StarTec 2013 - Java EE
Serra StarTec 2013 - Java EE
 
Como Sobreviver Com Java2
Como Sobreviver Com Java2Como Sobreviver Com Java2
Como Sobreviver Com Java2
 
Mod06 licao01-apostila
Mod06 licao01-apostilaMod06 licao01-apostila
Mod06 licao01-apostila
 
GWT - de iniciante a especialista
GWT - de iniciante a especialistaGWT - de iniciante a especialista
GWT - de iniciante a especialista
 
Acelerando o desenvolvimento java com rad 7.5
Acelerando o desenvolvimento java com rad 7.5Acelerando o desenvolvimento java com rad 7.5
Acelerando o desenvolvimento java com rad 7.5
 

Desenvolvimento rápido de aplicações com JEE e JavaFX