SlideShare uma empresa Scribd logo
Aplicações desktop
nativas com
HTML5, CSS3 e JS
com backend usando
Servlets 3
Loiane Gronerhttp://loiane.com
Java JUG Leader
Sencha Community
Leader 7+ XP Java
4+ XP Sencha
Software Developer
Manager @ Citibank
http://loiane.com
@loiane
Loiane Groner
Autora Técnica
Internacional
Pq Desktop?
PQ?
Windows: Win 32 API, MFC, AFC, .NET
Mac OS: Cocoa, Carbon
Linux: GTK+
Cross-Platform toolkits:
Java Swing, Eclipse SWT, Mono, GTK+
Adobe AIR
Java FX
Pelo mesmo motivo que você desenvolve
uma app mobile nativa ao invés de uma
aplicação web que será executada no
browser do seu device
Experiência
Experiência do Usuário
Experiência é mais rica
Drag and Drop
Offline de verdade
Notificações
Sistema de Arquivos
E pq tecnologias web?
•Velocidade e custo de desenvolvimento
•Reuso de skills
•ótimas ferramentas no mercado
•HTML/CSS/JS são MARA!
•E vc pode ter o que vc quiser no
backend (Java!)
E ainda...
Cross-Browser
Como?
http://www.chromium.org/developers/content-module
Chrome Content API
Chrome Content API
Como
funciona?
HTML, CSS, JS
Packager - webkit + recursos nativos
SO - Windows / Mac / Linux
Show me
the
code!
Ferramentas
Titanium Desktop
http://www.tidesdk.org/
https://github.com/rogerwang/node-webkit
http://appjs.org/
Sencha Desktop Packager
http://www.sencha.com/products/desktop-packager/
Apache Cordova
aka PhoneGap
http://cordova.apache.org/
Chrome Packaged Apps
http://developer.chrome.com/apps/about_apps.html
Show me
the
code!
Problemas
Segurança
Debug
is on the table
Show me
the
code!
Mas e o Java?
App Desktop
(Empacotada)
App Server
(Java)
Local
Máquina Ususário
Server
requests
responses
Show me
the
code!
CORS
http://enable-cors.org/
enable cross-origin resource sharing
Servlet Filter
Manual
http://software.dzhuvinov.com/cors-filter.html
Lib/JAR
<filter>
! <filter-name>CORS</filter-name>
! <filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class>
</filter>
WEB-INF/web.xml
<filter-mapping>
<filter-name>CORS</filter-name>
<servlet-name>MyServlet</servlet-name>
</filter-mapping>
<filter-mapping>
<filter-name>CORS</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
https://github.com/loiane/desktop-app-servlets3
http://www.slideshare.net/loianeg
Obrigada!
Loiane Groner
@loiane
http://loiane.com

Mais conteúdo relacionado

Mais procurados

Javafx
JavafxJavafx
Introdução ao .NET
Introdução ao .NETIntrodução ao .NET
Introdução ao .NET
Pedro Alves Jr.
 
Blazor #SnetTalks3
Blazor  #SnetTalks3Blazor  #SnetTalks3
Blazor #SnetTalks3
André Agostinho
 
Linguagens de Programação para Ficar de Olho em 2019 - DevRocks
Linguagens de Programação para Ficar de Olho em 2019 - DevRocksLinguagens de Programação para Ficar de Olho em 2019 - DevRocks
Linguagens de Programação para Ficar de Olho em 2019 - DevRocks
Rodrigo Wanderley de Melo Cardoso
 
Js everywhere
Js everywhereJs everywhere
Js everywhere
Lucas Brigida
 
Aplicações ricas com JavaFX 2
Aplicações ricas com JavaFX 2Aplicações ricas com JavaFX 2
Aplicações ricas com JavaFX 2
Claudiney Marques
 
Introdução ao React
Introdução ao ReactIntrodução ao React
Introdução ao React
Luiz Paulo dos Prazeres Júnior
 
Desenvolvimento HTML5 para Smartphones e Tablets BlackBerry
Desenvolvimento HTML5 para Smartphones e Tablets BlackBerryDesenvolvimento HTML5 para Smartphones e Tablets BlackBerry
Desenvolvimento HTML5 para Smartphones e Tablets BlackBerry
felipebzr
 
Adobe Phonegap
Adobe PhonegapAdobe Phonegap
Adobe Phonegap
wlsilva
 
The Next Big Language
The Next Big LanguageThe Next Big Language
The Next Big Language
Dirceu Pereira Tiegs
 
A Evolução do Front end
A Evolução do Front endA Evolução do Front end
A Evolução do Front end
Douglas Matoso
 
Firefox OS
Firefox OSFirefox OS
Firefox OS
Rafael Sakurai
 
Cartola Fc 2010 - Uma Arquitetura escalável e performática
Cartola Fc 2010 - Uma Arquitetura escalável e performáticaCartola Fc 2010 - Uma Arquitetura escalável e performática
Cartola Fc 2010 - Uma Arquitetura escalável e performática
Marcel Nicolay
 
Progressive Web Apps e o futuro do desenvolvimento Web na Plataforma .NET
Progressive Web Apps e o futuro do desenvolvimento Web na Plataforma .NETProgressive Web Apps e o futuro do desenvolvimento Web na Plataforma .NET
Progressive Web Apps e o futuro do desenvolvimento Web na Plataforma .NET
Andre Baltieri
 
Criando aplicações java fx em minutos
Criando aplicações java fx em minutosCriando aplicações java fx em minutos
Criando aplicações java fx em minutosBruno Oliveira
 
Interop itcare: Interoperabilidade Java e .NET
Interop itcare: Interoperabilidade Java e .NETInterop itcare: Interoperabilidade Java e .NET
Interop itcare: Interoperabilidade Java e .NET
Alessandro Binhara
 
Campus Party - Desenvolvendo aplicações .Net com software gratuito
Campus Party  - Desenvolvendo aplicações .Net com software gratuitoCampus Party  - Desenvolvendo aplicações .Net com software gratuito
Campus Party - Desenvolvendo aplicações .Net com software gratuito
Alexandre Tarifa
 
Front-end o que é preciso saber?
Front-end o que é preciso saber?Front-end o que é preciso saber?
Front-end o que é preciso saber?
João Praia
 
Javascript para adultos
Javascript para adultosJavascript para adultos
Javascript para adultos
Guilherme Blanco
 
Apresentando meteor! Join Community - Goiânia
Apresentando meteor! Join Community - GoiâniaApresentando meteor! Join Community - Goiânia
Apresentando meteor! Join Community - Goiânia
Frederico Maia Arantes
 

Mais procurados (20)

Javafx
JavafxJavafx
Javafx
 
Introdução ao .NET
Introdução ao .NETIntrodução ao .NET
Introdução ao .NET
 
Blazor #SnetTalks3
Blazor  #SnetTalks3Blazor  #SnetTalks3
Blazor #SnetTalks3
 
Linguagens de Programação para Ficar de Olho em 2019 - DevRocks
Linguagens de Programação para Ficar de Olho em 2019 - DevRocksLinguagens de Programação para Ficar de Olho em 2019 - DevRocks
Linguagens de Programação para Ficar de Olho em 2019 - DevRocks
 
Js everywhere
Js everywhereJs everywhere
Js everywhere
 
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 React
Introdução ao ReactIntrodução ao React
Introdução ao React
 
Desenvolvimento HTML5 para Smartphones e Tablets BlackBerry
Desenvolvimento HTML5 para Smartphones e Tablets BlackBerryDesenvolvimento HTML5 para Smartphones e Tablets BlackBerry
Desenvolvimento HTML5 para Smartphones e Tablets BlackBerry
 
Adobe Phonegap
Adobe PhonegapAdobe Phonegap
Adobe Phonegap
 
The Next Big Language
The Next Big LanguageThe Next Big Language
The Next Big Language
 
A Evolução do Front end
A Evolução do Front endA Evolução do Front end
A Evolução do Front end
 
Firefox OS
Firefox OSFirefox OS
Firefox OS
 
Cartola Fc 2010 - Uma Arquitetura escalável e performática
Cartola Fc 2010 - Uma Arquitetura escalável e performáticaCartola Fc 2010 - Uma Arquitetura escalável e performática
Cartola Fc 2010 - Uma Arquitetura escalável e performática
 
Progressive Web Apps e o futuro do desenvolvimento Web na Plataforma .NET
Progressive Web Apps e o futuro do desenvolvimento Web na Plataforma .NETProgressive Web Apps e o futuro do desenvolvimento Web na Plataforma .NET
Progressive Web Apps e o futuro do desenvolvimento Web na Plataforma .NET
 
Criando aplicações java fx em minutos
Criando aplicações java fx em minutosCriando aplicações java fx em minutos
Criando aplicações java fx em minutos
 
Interop itcare: Interoperabilidade Java e .NET
Interop itcare: Interoperabilidade Java e .NETInterop itcare: Interoperabilidade Java e .NET
Interop itcare: Interoperabilidade Java e .NET
 
Campus Party - Desenvolvendo aplicações .Net com software gratuito
Campus Party  - Desenvolvendo aplicações .Net com software gratuitoCampus Party  - Desenvolvendo aplicações .Net com software gratuito
Campus Party - Desenvolvendo aplicações .Net com software gratuito
 
Front-end o que é preciso saber?
Front-end o que é preciso saber?Front-end o que é preciso saber?
Front-end o que é preciso saber?
 
Javascript para adultos
Javascript para adultosJavascript para adultos
Javascript para adultos
 
Apresentando meteor! Join Community - Goiânia
Apresentando meteor! Join Community - GoiâniaApresentando meteor! Join Community - Goiânia
Apresentando meteor! Join Community - Goiânia
 

Semelhante a JustJava 2013: Aplicações Desktop HTML5, CSS3, Javascript com Servlets 3

Abordagens modernas no desenvolvimento web
Abordagens modernas no desenvolvimento webAbordagens modernas no desenvolvimento web
Abordagens modernas no desenvolvimento web
Wemerson Januario
 
Iniciando com desenvolvimento híbrido de aplicações mobile com HTML5
Iniciando com desenvolvimento híbrido de aplicações mobile com HTML5Iniciando com desenvolvimento híbrido de aplicações mobile com HTML5
Iniciando com desenvolvimento híbrido de aplicações mobile com HTML5
Loiane Groner
 
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.
Valmir Justo
 
Conhecendo a Plataforma .NET
Conhecendo a Plataforma .NETConhecendo a Plataforma .NET
Conhecendo a Plataforma .NET
Pedro Alves Jr.
 
Desenvolvimento de Aplicativos Móveis Multiplataforma
Desenvolvimento de Aplicativos Móveis MultiplataformaDesenvolvimento de Aplicativos Móveis Multiplataforma
Desenvolvimento de Aplicativos Móveis Multiplataforma
Jose Augusto Cintra
 
Web Offline
Web OfflineWeb Offline
Web Offline
Bruno Catão
 
Mobile Apps Cross-Platform
Mobile Apps Cross-PlatformMobile Apps Cross-Platform
Mobile Apps Cross-Platform
Adriel Café
 
Construindo aplicações ricas com Silverlight
Construindo aplicações ricas com SilverlightConstruindo aplicações ricas com Silverlight
Construindo aplicações ricas com SilverlightFelipe Pocchini
 
Javascript levado a sério
Javascript levado a sérioJavascript levado a sério
Javascript levado a sério
saspi2
 
Surpreenda-se com o Silverlight 3
Surpreenda-se com o Silverlight 3Surpreenda-se com o Silverlight 3
Surpreenda-se com o Silverlight 3Rodrigo Kono
 
Seminário de Desenvolvimento Mobile - Etec Cafelândia
Seminário de Desenvolvimento Mobile - Etec CafelândiaSeminário de Desenvolvimento Mobile - Etec Cafelândia
Seminário de Desenvolvimento Mobile - Etec Cafelândia
Diego Cavalca
 
Write once, run "everywhere"
Write once, run "everywhere"Write once, run "everywhere"
Write once, run "everywhere"
Stefan Horochovec
 
Plataforma Android
Plataforma AndroidPlataforma Android
Plataforma Android
Stefan Horochovec
 
Windows Phone 7 Camp MICBH + MSPs
Windows Phone 7 Camp MICBH + MSPsWindows Phone 7 Camp MICBH + MSPs
Windows Phone 7 Camp MICBH + MSPsMicrosoft
 
Introdução ao desenvolvimento Web
Introdução ao desenvolvimento WebIntrodução ao desenvolvimento Web
Introdução ao desenvolvimento WebSérgio Souza Costa
 
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Fabrício Lopes Sanchez
 
Novidades do .NET 3.5
Novidades do .NET 3.5Novidades do .NET 3.5
Novidades do .NET 3.5
Pedro Alves Jr.
 
Microsoft Edge (Teched 2015)
Microsoft Edge (Teched 2015)Microsoft Edge (Teched 2015)
Microsoft Edge (Teched 2015)
Fabrício Catae
 
Construindo Aplicativos móveis conectados com Xamarin e Azure Mobile Services
Construindo Aplicativos móveis conectados com Xamarin e Azure Mobile ServicesConstruindo Aplicativos móveis conectados com Xamarin e Azure Mobile Services
Construindo Aplicativos móveis conectados com Xamarin e Azure Mobile Services
William S. Rodriguez
 
Apresentação Minas - Desenvolvendo Sites
Apresentação Minas - Desenvolvendo SitesApresentação Minas - Desenvolvendo Sites
Apresentação Minas - Desenvolvendo Sitesthiagolima
 

Semelhante a JustJava 2013: Aplicações Desktop HTML5, CSS3, Javascript com Servlets 3 (20)

Abordagens modernas no desenvolvimento web
Abordagens modernas no desenvolvimento webAbordagens modernas no desenvolvimento web
Abordagens modernas no desenvolvimento web
 
Iniciando com desenvolvimento híbrido de aplicações mobile com HTML5
Iniciando com desenvolvimento híbrido de aplicações mobile com HTML5Iniciando com desenvolvimento híbrido de aplicações mobile com HTML5
Iniciando com desenvolvimento híbrido de aplicações mobile com HTML5
 
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.
 
Conhecendo a Plataforma .NET
Conhecendo a Plataforma .NETConhecendo a Plataforma .NET
Conhecendo a Plataforma .NET
 
Desenvolvimento de Aplicativos Móveis Multiplataforma
Desenvolvimento de Aplicativos Móveis MultiplataformaDesenvolvimento de Aplicativos Móveis Multiplataforma
Desenvolvimento de Aplicativos Móveis Multiplataforma
 
Web Offline
Web OfflineWeb Offline
Web Offline
 
Mobile Apps Cross-Platform
Mobile Apps Cross-PlatformMobile Apps Cross-Platform
Mobile Apps Cross-Platform
 
Construindo aplicações ricas com Silverlight
Construindo aplicações ricas com SilverlightConstruindo aplicações ricas com Silverlight
Construindo aplicações ricas com Silverlight
 
Javascript levado a sério
Javascript levado a sérioJavascript levado a sério
Javascript levado a sério
 
Surpreenda-se com o Silverlight 3
Surpreenda-se com o Silverlight 3Surpreenda-se com o Silverlight 3
Surpreenda-se com o Silverlight 3
 
Seminário de Desenvolvimento Mobile - Etec Cafelândia
Seminário de Desenvolvimento Mobile - Etec CafelândiaSeminário de Desenvolvimento Mobile - Etec Cafelândia
Seminário de Desenvolvimento Mobile - Etec Cafelândia
 
Write once, run "everywhere"
Write once, run "everywhere"Write once, run "everywhere"
Write once, run "everywhere"
 
Plataforma Android
Plataforma AndroidPlataforma Android
Plataforma Android
 
Windows Phone 7 Camp MICBH + MSPs
Windows Phone 7 Camp MICBH + MSPsWindows Phone 7 Camp MICBH + MSPs
Windows Phone 7 Camp MICBH + MSPs
 
Introdução ao desenvolvimento Web
Introdução ao desenvolvimento WebIntrodução ao desenvolvimento Web
Introdução ao desenvolvimento Web
 
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
 
Novidades do .NET 3.5
Novidades do .NET 3.5Novidades do .NET 3.5
Novidades do .NET 3.5
 
Microsoft Edge (Teched 2015)
Microsoft Edge (Teched 2015)Microsoft Edge (Teched 2015)
Microsoft Edge (Teched 2015)
 
Construindo Aplicativos móveis conectados com Xamarin e Azure Mobile Services
Construindo Aplicativos móveis conectados com Xamarin e Azure Mobile ServicesConstruindo Aplicativos móveis conectados com Xamarin e Azure Mobile Services
Construindo Aplicativos móveis conectados com Xamarin e Azure Mobile Services
 
Apresentação Minas - Desenvolvendo Sites
Apresentação Minas - Desenvolvendo SitesApresentação Minas - Desenvolvendo Sites
Apresentação Minas - Desenvolvendo Sites
 

JustJava 2013: Aplicações Desktop HTML5, CSS3, Javascript com Servlets 3