Vaadin NYC Meetup

54
NY I

Transcript of Vaadin NYC Meetup

Page 1: Vaadin NYC Meetup

NYI

Page 2: Vaadin NYC Meetup

Meetup Agenda• Quick intro to Vaadin

• What's new in Vaadin 7.4?

• Designer and Declarative layouts

• Web components

• Community member demos, questions, discussion

Page 3: Vaadin NYC Meetup

Quick intro to Vaadin

Page 4: Vaadin NYC Meetup
Page 5: Vaadin NYC Meetup

Java API for HTML5 apps

Page 6: Vaadin NYC Meetup
Page 7: Vaadin NYC Meetup
Page 8: Vaadin NYC Meetup

Good looking apps, fast

Page 9: Vaadin NYC Meetup

User Interface Components

Page 10: Vaadin NYC Meetup

Server side

Page 11: Vaadin NYC Meetup

Backend server

Web server com Browser

50% less code

Handled by Vaadin

Page 12: Vaadin NYC Meetup

Powerful theme builder

Page 13: Vaadin NYC Meetup
Page 14: Vaadin NYC Meetup
Page 15: Vaadin NYC Meetup

Apache 2.0

Page 16: Vaadin NYC Meetup

40% of Fortune 100 companies use Vaadin

#2 Java Web Framework

130k+ active developers

according to Open HUB stats

Page 17: Vaadin NYC Meetup

Show me the code

Page 18: Vaadin NYC Meetup
Page 19: Vaadin NYC Meetup

★ Initial HTML ★ CSS (theme) ★ JavaScript

1M total

307k

compress

135k

reduced widgetset

Page 20: Vaadin NYC Meetup
Page 21: Vaadin NYC Meetup

• name=”Marcus” • button clicked

261 bytes

Page 22: Vaadin NYC Meetup
Page 23: Vaadin NYC Meetup

• name=”Marcus• button clicked

261 bytes

• Add notification

267 bytes

Page 24: Vaadin NYC Meetup

Browser

Server

Button setCaption("Click me")

caption = "Click me" dirty = true

onStateChanged(evt)

<button clicked>

click()

ButtonState

VButton

RPC

ButtonConnectorrpc.click()

Page 25: Vaadin NYC Meetup

But wait, there's more!

Page 26: Vaadin NYC Meetup

Server push

Page 27: Vaadin NYC Meetup

public class VaadinUI extends UI { ...

}

@Push

Page 28: Vaadin NYC Meetup

ui.access(() -> Notification.show("Alert!"));

Page 29: Vaadin NYC Meetup

Responsive layouts

Page 30: Vaadin NYC Meetup
Page 31: Vaadin NYC Meetup

OR

Page 32: Vaadin NYC Meetup

Works in all browsers(no plugins required)

Page 33: Vaadin NYC Meetup

Stable API

Page 34: Vaadin NYC Meetup

public Button(java.lang.String caption, Button.ClickListener listener)

Creates a new push button with click listener.

Parameters: caption - Button caption listener - Button click listener

public Button(java.lang.String caption, Button.ClickListener listener)

Creates a new push button with click listener.

Parameters: caption - Button caption listener - Button click listener

Millstone 3, 2002

Vaadin 7, 2015

Page 35: Vaadin NYC Meetup

Built in security

Page 36: Vaadin NYC Meetup

Take full advantage of Java

Page 37: Vaadin NYC Meetup

Extendable

Page 38: Vaadin NYC Meetup
Page 39: Vaadin NYC Meetup

GWT and JS components

Page 40: Vaadin NYC Meetup

What's new?

Page 41: Vaadin NYC Meetup

Grid

Page 42: Vaadin NYC Meetup

Spring and CDI

Page 43: Vaadin NYC Meetup

Designer

Page 44: Vaadin NYC Meetup
Page 45: Vaadin NYC Meetup

What's next?

Page 46: Vaadin NYC Meetup

Vaadin 7.5

Page 47: Vaadin NYC Meetup

Web components

Page 48: Vaadin NYC Meetup
Page 49: Vaadin NYC Meetup

</v-­‐grid></v-­‐slider> </v-­‐progress-­‐bar>

Vaadin Components 0.1

<v-­‐grid><v-­‐slider> <v-­‐progress-­‐bar>

Page 50: Vaadin NYC Meetup
Page 51: Vaadin NYC Meetup

Elements

Page 52: Vaadin NYC Meetup

Vaadin Labs

vaadin.com/labs

Page 53: Vaadin NYC Meetup

Next meetup?

Page 54: Vaadin NYC Meetup

Je zult maar letter wezen. Goed, ik ben niet ontevredet. Maar het valt niet mee in deze zeventiger jaren tot het vaderlandse alfabet te behoren. Foto-zetterijen wringen je steeds in steeds ingevikkelder. Je zult maar letter wezen. Goed, ik ben

Marcus Hellberg – Sr. Vaadin Expert – [email protected] – 650-924-5122