HTML5 Die Zukunft von OpenROAD Roy Deal Simon Consolidate Systems, LLC
[email protected]
1
Consolidate Systems • Neuunternehmen • Mission: Code Modernizierung • Partner mit Ingres: Transforge v2.0 2
eClients: Problemen • Globales Windows Register • Erfordert Vervaltungsprivilegien • Kein Citrix, Terminal Services • CAB Dateien • Zertifikaten laufen jährlich aus • Benutzer können Upgrades ablehnen 3
LoadnRun • Keine Verwaltungsprivilegien notwendig • Citrix, Terminal Services • Updates sind transparent • Mehrere Versionen gleichzeitig installieren
• Von Ingres OpenROAD Core team adoptiert 4
Das Web • Bereitsstellung ohne Mühe • Business-to-Business • Handys & Tabletten • Mac OSX 5
Der Plan • In OpenROAD entwickeln... • Workbench 5.1 gibt XML aus • XML => Web Anwendung • Klientseiter Code => JavaScript • Klientseite Frames => HTML & CSS • Web Anwendung => Web Server • Geschäftslogik kann im OpenROAD Server bleiben
6
HTML5: Web Platform
• Virtuelle Machinen: JVM, CLR, V8 • V8: Browsers, Handys, Node.js... • Systemsprache: Java, C#, JavaScript • API: Java, .NET, HTML5 • Sondersprachen für jeden Zweck: • F#, Scala, Clojure, JRuby, IronPython... 7
JavaScript als “ByteCode” • HotRuby, Pyjama, Script#, ClojureScript • CoffeeScript • Einfache Erneuerung • Von Ruby on Rails adoptiert • Java: Google Web Toolkit • Funktioniert, aber ach du lieber! 8
Web Architektur
LOGIK DATEN
9
JS Web Architektur
DATEN
LOGIK
10
Desktop Architektur
DATEN
LOGIK
11
Backbone.js OpenROAD
• • •
HTML5
JavaScript Web Framework 700 LoC Benutzt von LinkedIn, 37Signals, GroupOn u.a 12
OpenROAD: UserClass
13
Backbone: Model
14
OpenROAD: Frames OpenROAD
Tabelle: CurObject.Loans DataType = Loan
15
Backbone: Views Backbone.js
16
Ereignisse & Validierung OpenROAD:
HTML5:
17
Qualen • Bias • Focus Behavior • Tasten Ereignisse • Objekt Orientiering 18
HTML5: Direkt Text Editiern
19
HTML5: Direkt Text Editiern
OOPS!
Mann kann Text eintragen ohne Web Formulare 20
HTML5: Offline Mode • Manifest automatisch generiert • 5mb Speichern pro Frame • Automatische Synkronisierung • Klientseite Geschäftlogik 21
Vermutungen • Workbench 5.1 • 3 Tier Architektur • Kein Ingres/NET in den Klienten • Kein 1:1 Übersetzung 22
Status: September 2011 • OpenROAD Parser (ANTLR) • Generator: JavaScript (ECMAScript 3) • Generator: HTML/CSS • OpenROAD Anwendungsserver 23
Als Nächstes • OpenROAD Systemklassen • Ungebrauchtes Code löschen • Internet Explorer 6, 7, 8, 9 • Vielleicht Kommentare bewahren? • Beta: Weinacht 2011 24
Zusammenfassung • Kein Ruby on Rails Killer... • Bereitsstellung ohne Mühe • Im Workbench entwickeln, zum Web verteilen
• Geschäftslogik kann auf Server bleiben • Ich mogel wo ich kann... 25
Die Einfachheit von OpenROAD Die Reichweite von JavaScript Roy Deal Simon Consolidate Systems, LLC
[email protected] 26