using vaadin to create html5-enabled web apps in pure scala

22
Henri Muurimaa Vaadin Ltd [email protected] Using Vaadin to create HTML5-enabled web apps in pure Scala twitter: #vaadin @henrimuurimaa 14. marraskuuta 11

Upload: hezamu

Post on 07-May-2015

3.312 views

Category:

Technology


0 download

DESCRIPTION

Slides from my Devoxx 2011 presentation

TRANSCRIPT

Page 1: Using Vaadin to create HTML5-enabled web apps in pure Scala

Henri MuurimaaVaadin Ltd

[email protected]

Using Vaadin to create HTML5-enabled web apps in pure Scala

twitte

r: #va

adin

@henrim

uurim

aa

14. marraskuuta 11

Page 2: Using Vaadin to create HTML5-enabled web apps in pure Scala

Scala in2 slides

14. marraskuuta 11

Page 3: Using Vaadin to create HTML5-enabled web apps in pure Scala

Scala is ...

Java compatible: Runs on the JVM and integrates with Java tools and technologies

Object-oriented: every value is an object Functional: every function is a value

A multiparadigm language created by Martin Odersky from Typesafe

14. marraskuuta 11

Page 4: Using Vaadin to create HTML5-enabled web apps in pure Scala

Canvas

Drag-and-drop

Microdata

Cross-documentmessaging

Historymanagement

Document editing

Multimedia

Offline storage

Markup improvements

Forms

File APIGeolocation

14. marraskuuta 11

Page 5: Using Vaadin to create HTML5-enabled web apps in pure Scala

Canvas

Multimedia

Drag-and-drop

Offline storageMicrodata

Cross-documentmessaging Document

editing

Historymanagement

Markup improvements

Forms

File APIGeolocation

14. marraskuuta 11

Page 6: Using Vaadin to create HTML5-enabled web apps in pure Scala

Canvas

14. marraskuuta 11

Page 7: Using Vaadin to create HTML5-enabled web apps in pure Scala

14. marraskuuta 11

Page 8: Using Vaadin to create HTML5-enabled web apps in pure Scala

14. marraskuuta 11

Page 9: Using Vaadin to create HTML5-enabled web apps in pure Scala

Vaadin is a UI framework

for desktop-like web apps

14. marraskuuta 11

Page 10: Using Vaadin to create HTML5-enabled web apps in pure Scala

New configs, taglibs and syntax!?!

JavaScript,DOM, Applet,plugins?

This is Nothing else.

{No! ScalaJava

14. marraskuuta 11

Page 11: Using Vaadin to create HTML5-enabled web apps in pure Scala

14. marraskuuta 11

Page 12: Using Vaadin to create HTML5-enabled web apps in pure Scala

Vaadin UI component architecture

Java

• Google Web Toolkit

“UI Component”• Button, Table, Tree, ...• Server-side data• Full Java API

“Widget”• Client-side peer for

the component• Runs on JavaScript

HTTP(S)

Java, Scala, ...

• Compiled with JDK

14. marraskuuta 11

Page 13: Using Vaadin to create HTML5-enabled web apps in pure Scala

14. marraskuuta 11

Page 14: Using Vaadin to create HTML5-enabled web apps in pure Scala

14. marraskuuta 11

Page 15: Using Vaadin to create HTML5-enabled web apps in pure Scala

14. marraskuuta 11

Page 16: Using Vaadin to create HTML5-enabled web apps in pure Scala

What can we do in 20 minutes?

14. marraskuuta 11

Page 17: Using Vaadin to create HTML5-enabled web apps in pure Scala

Conway’s Game of Life

14. marraskuuta 11

Page 18: Using Vaadin to create HTML5-enabled web apps in pure Scala

The universe of the Game of Life is an infinite two-dimensional orthogonal grid of square cells, each of which is in one of two possible states, alive or dead. Every cell interacts with its eight neighbors.

-- Wikipedia

14. marraskuuta 11

Page 19: Using Vaadin to create HTML5-enabled web apps in pure Scala

Evolution

A dead cell with exactly 3 living neighbors becomes alive

A living cell with 2 or 3 living neighbors stays alive

A living cell with less than 2 or more than 3 live neighbors dies

14. marraskuuta 11

Page 20: Using Vaadin to create HTML5-enabled web apps in pure Scala

Sources

http://github.com/hezamu/Devoxx2011

14. marraskuuta 11

Page 21: Using Vaadin to create HTML5-enabled web apps in pure Scala

GET A

FreeCopy

Vaadin BOF todayat 19.00 in room BOF 2!

14. marraskuuta 11