introduction to vaadin 7
DESCRIPTION
Vaadin 7 presentation at Codemotion in Rome 22.03.2013TRANSCRIPT
Leif ÅstrandVaadin Expert
vaadin.com/leif
Vaadin 7
torsdag 21 mars 13
slideshare.com/lastrand
torsdag 21 mars 13
WhyVaadin? How Vaadin
works
torsdag 21 mars 13
new Label(“Hello world”)
torsdag 21 mars 13
Gettingstarted
QA
torsdag 21 mars 13
torsdag 21 mars 13
User interface framework for rich
web applications
torsdag 21 mars 13
torsdag 21 mars 13
htmljava
torsdag 21 mars 13
Apache 2.0 license
torsdag 21 mars 13
Why on earth?
torsdag 21 mars 13
torsdag 21 mars 13
expectations
torsdag 21 mars 13
reality
torsdag 21 mars 13
businessconsumer
“million” users10 views1!/user
“500” users50 views500!/user
>>100,000! / view 5,000! / view
torsdag 21 mars 13
ProblemHow to build consumer
grade UX with business system budget
torsdag 21 mars 13
How?
torsdag 21 mars 13
123Key Ideas
torsdag 21 mars 13
1RichComponents
torsdag 21 mars 13
User IntefaceData Source
Theme
torsdag 21 mars 13
torsdag 21 mars 13
torsdag 21 mars 13
torsdag 21 mars 13
torsdag 21 mars 13
torsdag 21 mars 13
torsdag 21 mars 13
User IntefaceData Source
Theme
torsdag 21 mars 13
torsdag 21 mars 13
Sass
torsdag 21 mars 13
Sass variables & functions
torsdag 21 mars 13
Sass mixins
torsdag 21 mars 13
User IntefaceData Source
Theme
torsdag 21 mars 13
torsdag 21 mars 13
InMemory, Bean, Method, Collection, JDBC, JPA, Hibernate, TextFile, FileSystem, Properties, EclipseLink, Lucene, Mockups, GAE, ...
torsdag 21 mars 13
2Server + Client
torsdag 21 mars 13
Web application layers
JavaScriptJava toJavaScript
required optional optionalrequired optional
Vaa
din
GW
T
requiredrequiredJS
required optionalrequired requiredrequired
required required
Web layerBusinesslayer JSON, XML, ...
torsdag 21 mars 13
Server-
Client-
side
Optim
ized for
Productivity
Opt
imiz
ed fo
r
Cont
rol
torsdag 21 mars 13
server
client
Component
Widget
Connector
RPC
State
torsdag 21 mars 13
How does it work, really?
torsdag 21 mars 13
name = new TextField("Name");greetButton = new Button("Greet");
greetButton.addClickListener(new ClickListener() { public void buttonClick(ClickEvent event) { Notification.show("Ciao " + name.getValue()); }});
torsdag 21 mars 13
• Initial HTML• CSS (theme)• Images• JavaScript
1200k total
300k
compress
135k
reducedwidget setand theme
torsdag 21 mars 13
• name=”Leif”• Button clicked
332 bytes
torsdag 21 mars 13
name = new TextField("Name");greetButton = new Button("Greet");
greetButton.addClickListener(new ClickListener() { public void buttonClick(ClickEvent event) { Notification.show("Ciao " + name.getValue()); }});
torsdag 21 mars 13
• name=”Leif”• Button clicked
332 bytes
• Show notification
462 bytes
torsdag 21 mars 13
Trying it out
torsdag 21 mars 13
https://github.com/vaadin/documentmanager
torsdag 21 mars 13
3EmbracingJava
torsdag 21 mars 13
Any JVMLanguage
torsdag 21 mars 13
Internet ExplorerChromeFirefoxSafariOpera
iOSAndroid
torsdag 21 mars 13
Nobrowserplugins
Nothing toinstall
torsdag 21 mars 13
Servlet Portlet
(most) clouds
torsdag 21 mars 13
EclipseIntelliJ IDEA
NetbeansMaven
AntGradle
∙ ∙ ∙
torsdag 21 mars 13
torsdag 21 mars 13
Vaadin += GWT
torsdag 21 mars 13
torsdag 21 mars 13
torsdag 21 mars 13
torsdag 21 mars 13
GWTCompatible
torsdag 21 mars 13
vaadin.com/vaadin7
torsdag 21 mars 13
torsdag 21 mars 13
torsdag 21 mars 13
torsdag 21 mars 13
torsdag 21 mars 13
torsdag 21 mars 13
torsdag 21 mars 13
torsdag 21 mars 13
torsdag 21 mars 13
torsdag 21 mars 13
gettingstarted
torsdag 21 mars 13
torsdag 21 mars 13
Eclipse
torsdag 21 mars 13
mvn archetype:generate-DarchetypeGroupId=com.vaadin -DarchetypeArtifactId= vaadin-archetype-application-DarchetypeVersion=7.0.3
Maven
torsdag 21 mars 13
Download for Freevaadin.com/book
~700 pages
Vaadin 7 Draft Edition
US $29.95
Vaadin is an open source Java framework for building modern web applications that look great, perform well and make you and
your users happy. http://vaadin.com/
2675387895299
ISBN 978-952-92-6753-890000
torsdag 21 mars 13