OpenDolphin: Enterprise Apps for collaboration on Desktop, Web, and Mobile
Upcoming SlideShare
Loading in...5
×
 

OpenDolphin: Enterprise Apps for collaboration on Desktop, Web, and Mobile

on

  • 448 views

see http://open-dolphin.org

see http://open-dolphin.org

Statistics

Views

Total Views
448
Views on SlideShare
442
Embed Views
6

Actions

Likes
0
Downloads
2
Comments
0

4 Embeds 6

https://twitter.com 3
http://eventifier.com 1
http://eventifier.co 1
http://ec2-54-243-189-159.compute-1.amazonaws.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

OpenDolphin: Enterprise Apps for collaboration on Desktop, Web, and Mobile OpenDolphin: Enterprise Apps for collaboration on Desktop, Web, and Mobile Presentation Transcript

  • OpenDolphin Enterprise Apps for Desktop, Web & Mobile Donnerstag, 7. November 13
  • OpenDolphin Enterprise Apps for Desktop, Web & Mobile Donnerstag, 7. November 13
  • Collaborative Enterprise Desktop Android iPad Embedded Donnerstag, 7. November 13 for for for for the office the field meetings displays
  • Tour Guide Single client Multiple clients Multiple channels Donnerstag, 7. November 13
  • Single client Enterprise == Server-side application Clean separation Least possible coupling Donnerstag, 7. November 13
  • View Model Controller Model Shared Presentation Model Donnerstag, 7. November 13
  • View Model What Controller Model Shared Presentation Model Donnerstag, 7. November 13
  • View How Model What Controller Model Shared Presentation Model Donnerstag, 7. November 13
  • Client View How Model What Controller Model Shared Presentation Model Donnerstag, 7. November 13
  • Client View Server How Model What Controller Model Shared Presentation Model Donnerstag, 7. November 13
  • How it works Asynchronous commands “@KentBeck: If MVC is so damn clear, in strictdo I see classes like sequence why XViewController & YViewModel? Rich, generic models in Something's wrong with this picture.” managed environment 20. April 2013 Donnerstag, 7. November 13
  • How it works Asynchronous commands in strict sequence Rich, generic models in managed environment Donnerstag, 7. November 13
  • Independent Views Donnerstag, 7. November 13
  • View Controller Shared Presentation Model Donnerstag, 7. November 13 abc
  • LoginAction View Controller Shared Presentation Model Donnerstag, 7. November 13 abc
  • LoginAction View Controller id: currentUser name passw loggedIn Shared Presentation Model Donnerstag, 7. November 13 abc
  • LoginAction View Controller id: currentUser name passw loggedIn id: currentUser name passw loggedIn Shared Presentation Model Donnerstag, 7. November 13 abc
  • LoginAction Name Passw Login View Controller id: currentUser name passw loggedIn id: currentUser name passw loggedIn Shared Presentation Model Donnerstag, 7. November 13 abc
  • LoginAction Name Passw Login binding View Controller id: currentUser name passw loggedIn id: currentUser name passw loggedIn Shared Presentation Model Donnerstag, 7. November 13 abc
  • LoginAction Name Passw Login View Controller id: currentUser name passw loggedIn id: currentUser name passw loggedIn Shared Presentation Model Donnerstag, 7. November 13 abc
  • Name LoginAction abc Passw Login View Controller id: currentUser abc name passw loggedIn id: currentUser abc name passw loggedIn Shared Presentation Model Donnerstag, 7. November 13 abc
  • Name Passw LoginAction abc *** Login View Controller id: currentUser abc name abc passw loggedIn id: currentUser abc name abc passw loggedIn Shared Presentation Model Donnerstag, 7. November 13 abc
  • Name Passw LoginAction abc *** Login View Controller id: currentUser abc name abc passw loggedIn id: currentUser abc name abc passw loggedIn Shared Presentation Model Donnerstag, 7. November 13 abc
  • Name Passw Login LoginAction abc *** Login View Controller id: currentUser abc name abc passw loggedIn id: currentUser abc name abc passw loggedIn Shared Presentation Model Donnerstag, 7. November 13 abc
  • Name Passw LoginAction abc *** read Login View Controller id: currentUser abc name abc passw loggedIn id: currentUser abc name abc passw loggedIn Shared Presentation Model Donnerstag, 7. November 13 abc
  • Name Passw LoginAction abc *** Login write View Controller id: currentUser abc name abc passw loggedIn id: currentUser abc name abc passw loggedIn Shared Presentation Model Donnerstag, 7. November 13 abc
  • Name Passw LoginAction abc *** Login View Controller id: currentUser abc name abc passw loggedIn TRUE id: currentUser abc name abc passw loggedIn TRUE Shared Presentation Model Donnerstag, 7. November 13 abc
  • LoginAction View Controller id: currentUser abc name abc passw loggedIn TRUE id: currentUser abc name abc passw loggedIn TRUE Shared Presentation Model Donnerstag, 7. November 13 abc
  • Create PM ClientPresentationModel user = clientDolphin.presentationModel( CURRENT_USER, USER, new ClientAttribute(NAME), new ClientAttribute(PASSW), new ClientAttribute(LOGGED_IN) ); Donnerstag, 7. November 13
  • Bind to view bind(NAME).of(user) .to(TEXT).of(nameTextField); Donnerstag, 7. November 13
  • Send command clientDolphin.send(LOGIN); Donnerstag, 7. November 13
  • Read from store ServerPresentationModel user = serverDolphin.getAt(CURRENT_USER); String name = user.getAt(NAME).getValue(); Donnerstag, 7. November 13
  • Change value changeValue( user.getAt(LOGGED_IN), true ); Donnerstag, 7. November 13
  • Multiple clients Presence Notification Instant update Shared information Donnerstag, 7. November 13
  • Multiple clients in collaboration Donnerstag, 7. November 13
  • Client Server View Controller Model Model Shared Presentation Model Donnerstag, 7. November 13
  • Server View 1 Controller Model View 2 Model Donnerstag, 7. November 13 Model Controller Model Event Bus Client
  • Multiple channels Same application logic Different UI technologies Least common denominator Donnerstag, 7. November 13
  • Multiple channels Same application logic Different UI technologies Least common denominator Full channel fidelity! Donnerstag, 7. November 13
  • Server View 1 Controller Model View 2 Model Donnerstag, 7. November 13 Model Controller Model Event Bus Client
  • Server Desktop Controller Model Mobile Web Model Donnerstag, 7. November 13 Model Controller Model Event Bus Client
  • Swing iPhone JavaFX Hybrid Web Android Nexus Donnerstag, 7. November 13
  • Embedded device Donnerstag, 7. November 13
  • JavaFX + PI Donnerstag, 7. November 13
  • OpenDolphin What it is Why we care How it works Donnerstag, 7. November 13
  • OpenDolphin is a small, generic library for communication between view and controller in an async [remote] fashion with presentation models. Donnerstag, 7. November 13
  • Why we care Save money Protect investment Outperform competition Donnerstag, 7. November 13
  • Save money Implement cleanly Less maintenance costs Easy to test Donnerstag, 7. November 13
  • Protect investment UI channels come and go, application logic lives on. You can bet who will win or bet that things change. Donnerstag, 7. November 13
  • Lead the pack Multi-user, multi-channel, collaboration, instant updates, 3D, undo/redo, validation, lazy loading, local devices, ... Donnerstag, 7. November 13
  • Channel fidelity Donnerstag, 7. November 13
  • Use when Clean is better low coupling, build, test, maintain, extend, safe threading The future is open Donnerstag, 7. November 13
  • Donnerstag, 7. November 13
  • dierk.koenig@canoo.com @mittie @OpenDolphin open-dolphin.org github.com/canoo/open-dolphin available from MavenCental Donnerstag, 7. November 13
  • canoo UI Engineering Donnerstag, 7. November 13
  • canoo UI Engineering We enable you to write great applications. Donnerstag, 7. November 13