tdcfloripa-williamsiqueira-javaeejavafx
DESCRIPTION
Palestra sobre Java EE e Java FXTRANSCRIPT
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
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-RSCriação de WEB Services utilizando RESTJPAPersistência de objetos CDIPara injeção de dependênciaEJBPara 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:"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
Sistemas WEB Atuais
BackendJEE, 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
ServidorJEE 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/
Desenvolvimento Rápido JavaFX
DATAFX
ScalaFX
FXForm2 afterburner.fx
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
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.