Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
How to create JavaScript apps for Java portals
Search
Zeno Rocha
April 25, 2013
Programming
7
590
How to create JavaScript apps for Java portals
JAX Conference - Mainz, 2013
Zeno Rocha
April 25, 2013
Tweet
Share
More Decks by Zeno Rocha
See All by Zeno Rocha
The Next Generation of Developer-First Products
zenorocha
1
450
7 Habits of Highly Productive Developers
zenorocha
1
300
7 Hábitos de Desenvolvedores Altamente Produtivos
zenorocha
1
340
What's new in the Liferay Community
zenorocha
0
580
Launching Liferay Projects Faster with WeDeploy
zenorocha
1
470
How Liferay fits into the real of latest technologies
zenorocha
0
450
Estoicismo e JavaScript
zenorocha
3
920
Por que ninguém se importa com seu novo projeto open source?
zenorocha
2
800
Como investir em... você!
zenorocha
1
490
Other Decks in Programming
See All in Programming
유연한 Composable 설계
l2hyunwoo
0
380
CSC307 Lecture 10
javiergs
PRO
0
310
Cloudflare Workers x AWS Lambdaの組み合わせユースケース / Cloudflare Workers x AWS Lambda Combination Use Case
seike460
PRO
2
310
Temporalを取り巻く仕様を整理する
sajikix
0
110
Architectures with Lightweight Stores: New Rules and Options
manfredsteyer
PRO
0
100
Play Billing Library 7.0.0 変更点まとめ@potatotips#88
kako351
0
160
なぜ宣言的 UI は壊れにくいのか / Why declarative UI is less fragile
uenitty
29
13k
20240706_CDKConf
takuyay0ne
0
1.2k
Async Await: Mastering Python's Time-Bending Tricks - EuroPython2024
yanbo
1
290
APIのない大学ログインWebサービスをWKWebViewとJavaScriptでアプリ化した話
akidon0000
1
330
継続的な活動で築く地方エンジニアの道
myamashii
2
360
ピグパーティにおけるMongoDB CommunityバージョンからAtlasへの移行事例
10969hotaka
0
130
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
PRO
20
7.2k
Building Applications with DynamoDB
mza
89
5.8k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.3k
Testing 201, or: Great Expectations
jmmastey
33
6.9k
Statistics for Hackers
jakevdp
792
220k
Building an army of robots
kneath
301
42k
Building Better People: How to give real-time feedback that sticks.
wjessup
357
18k
Being A Developer After 40
akosma
72
580k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
18
1.2k
Imperfection Machines: The Place of Print at Facebook
scottboms
262
13k
10 Git Anti Patterns You Should be Aware of
lemiorhan
652
58k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
121
18k
Transcript
how to create high scalable javascript apps for java portals
Mainz, 2013.
None
I’m from brazil
None
None
I ♥ opensource
I ♥ jQuery
jqueryboilerplate.com
I ♥ HTML5
html5-pro.com/wormz
today we’re going to talk about javascript...
None
just a toy language?
triggerrally.com/x/Preview/Arbusu/drive
None
what about jQuery?
None
goo.gl/rfaLs
why should I care?
because your UI suck
let’s create a high scalable javascript application
None
option #1 write everything from scratch
option #2 use existing open source solutions
Events, Selection, DOM Manipulation, Animation, Ajax requests jquery.com
mootools.net
UI components twitter.github.io/bootstrap
jqueryui.com
Templates mustache.github.io
handlebarsjs.com
Module loader requirejs.org
headjs.com
MV* backbonejs.org
knockoutjs.com
angularjs.org
emberjs.com
Tests BDD TDD pivotal.github.io/jasmine
qunitjs.com
None
None
we build java portals
our solution has more than 4,000,000 downloads
and over 500,000 deployments worldwide
so how can we create an easy-to-maintain UI architeture?
None
yuilibrary.com
and we created our own superset of components
AlloyUI
alloyui.com
YUI = effects DOM ajax events ... MVC
YUI = effects DOM ajax events ... MVC
YUI = effects DOM ajax events ... MVC
YUI = effects DOM ajax events ... MVC
YUI = effects DOM ajax events ... MVC
YUI = effects DOM ajax events ... MVC
YUI = effects DOM ajax events ... MVC
AlloyUI = calendar tabs buttons carousel ... audio
AlloyUI = calendar tabs buttons carousel ... audio
AlloyUI = calendar tabs buttons carousel ... audio
AlloyUI = calendar tabs buttons carousel ... audio
AlloyUI = calendar tabs buttons carousel ... audio
AlloyUI = calendar tabs buttons carousel ... audio
AlloyUI = calendar tabs buttons carousel ... audio
None
JavaScript
None
YUI
None
AlloyUI
alloyui.com/examples/carousel
alloyui.com/examples/diagram-builder
alloyui.com/examples/image-cropper
alloyui.com/examples/viewport
but I’m a java guy!
<taglibs> \o/
everything you need
everything you need + single api
everything you need + single api + good performance
who uses it?
developer.cisco.com
lufthansa-flight-training.com
bosch-sicherheitssysteme.de
more than 300,000 downloads
wanna know more?
find me on room Watfordsaal B at 2pm
None
“HTML5 is the future”
wanna see the future?
None
None
HTML5 is today!
Content Consumer Devices
Content Consumer Devices
old browsers are like B&W TVs
new browsers are like HD TVs
TV already solved that problem
so why developers keep doing this?
it’s up to you!
dank :)