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
730
7
Share
How to create JavaScript apps for Java portals
JAX Conference - Mainz, 2013
Zeno Rocha
April 25, 2013
More Decks by Zeno Rocha
See All by Zeno Rocha
The Next Generation of Developer-First Products
zenorocha
1
710
7 Habits of Highly Productive Developers
zenorocha
1
440
7 Hábitos de Desenvolvedores Altamente Produtivos
zenorocha
1
570
What's new in the Liferay Community
zenorocha
0
730
Launching Liferay Projects Faster with WeDeploy
zenorocha
1
610
How Liferay fits into the real of latest technologies
zenorocha
0
680
Estoicismo e JavaScript
zenorocha
3
1.2k
Por que ninguém se importa com seu novo projeto open source?
zenorocha
2
1.2k
Como investir em... você!
zenorocha
1
620
Other Decks in Programming
See All in Programming
ふつうのFeature Flag実践入門
irof
7
3.4k
Make SRE Operations Easier with Azure SRE Agent
kkamegawa
0
2.3k
AI駆動開発で崩れていくコードベースを立て直す
kyoko_nr_nr
1
400
プロパティの順序で型推論が壊れる!? TypeScript6.0の修正からContext-Sensitivityの仕組みを追う
bicstone
2
1.3k
柔軟なPDFレイアウトエディタを支える型システム設計 — Discriminated UnionとConditional Typeの実践
minako__ph
4
1.2k
Java × distroless で 軽量なコンテナイメージを / Java on Distroless
contour_gara
0
430
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
420
自動レビューエンジンの実装と運用 ~レビューのない世界へ~
kurukuru1999
2
300
「エンジニアインターン、どうやって取った?」準備のリアルを語るLT会 Progate BAR
akiomatic
0
100
さぁV100、メモリをお食べ・・・
nilpe
0
120
Transactional Change Stream Processing With Debezium and Apache Flink
gunnarmorling
1
140
メソッドのジェネリクスでGoの夢は広がるか? / Kyoto.go #65
utgwkk
0
230
Featured
See All Featured
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.7k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
240
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
How GitHub (no longer) Works
holman
316
150k
Test your architecture with Archunit
thirion
1
2.3k
Thoughts on Productivity
jonyablonski
76
5.2k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
310
Utilizing Notion as your number one productivity tool
mfonobong
4
310
Ethics towards AI in product and experience design
skipperchong
2
290
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
エンジニアに許された特別な時間の終わり
watany
107
240k
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 :)