2. Über mich
• Java seit ~1997
• Im Laufe der Zeit verschiedenste Rollen: Consultant, Architekt, IT
Projektleiter, IT Manager, Scrum Master.
• Meine “Entdeckung” von Scala (ca. 2011) hat mich wieder zum
Programmieren gebracht
• Seit 2012 Entwicklung mit Scala (vor allem REST-Services für mobile
Anwendungen)
• Seit April 2014 Trainer und Consultant bei Typesafe
scala.js code.talks 2014 2
3. Front-End / JavaScript Erfahrungen
scala.js code.talks 2014 3
• Backoffice für Reise-Website mit GWT
• Migration umfangreicher Set-Top-Box / TV Applikation von Flash nach
“HTML5” (JavaScript/jQuery)
• PhoneGap-Applikation mit jqMobi, require.js, underscore.js, backbone.js
5. JavaScript ist so eine Sache..
scala.js code.talks 2014 5
• Eine moderne Web-Anwendung ist im wesentlichen eine JavaScript-
Anwendung
• JavaScript ist plattformübergreifend verfügbar, erfordert keinerlei
Installation, ist von Nutzern akzeptiert
• Aber…
6. JavaScript ist so eine Sache..
scala.js code.talks 2014 6
• Andererseits betreiben viele Leute einigen Aufwand, um nicht in JavaScript
programmieren zu müssen
• CoffeeScript, TypeScript, Dart, ClojureScript, Haste, Ceylon, emscripten…
• Platform ja, Sprache nein?
7. Und jetzt auch noch Scala..
scala.js code.talks 2014 7
Wenn man Scala mag, warum es nicht auch für das Front-End verwenden?
Scala.js ermöglicht dies.
15. Java-VM vs. JS-Runtime
• Ziel: Bekannte Abstraktionen aus Scala auch auf JS-Runtime
verwenden.
• Vieles (HOF, Patter matching etc.) lässt sich übersetzen, vergl.
Code, den wir gerade gesehen haben.
• Aber nicht alles..
scala.js code.talks 2014 15
18. Was ist ein Aktor?
• Hat eine Mailbox (Queue)
• Empfängt Nachrichten
• Nachrichten werden sequentiell abgearbeiten
• Aktoren-Framework für die JVM: Akka
scala.js code.talks 2014 18
19. Akka.js
• Akka-Implementierung in Scala.js
• Läuft leider noch nicht, kann nichts zeigen
• Aber ist in Arbeit (Kooperation EPFL/Typesafe)!
• Prototyp (veraltet):
https://github.com/sjrd/scala-js-actors
scala.js code.talks 2014 19