Are you still manually coding UIs? - EclipseCon Europe 2013

502 views

Published on

Published in: Travel, Technology
  • Be the first to comment

  • Be the first to like this

Are you still manually coding UIs? - EclipseCon Europe 2013

  1. 1. Are you still manually coding UIs? Maximilian Koegel mkoegel@eclipsesource.com © 2013 EclipseSource | http://eclipsesource.com/munich | Dr. Maximilian Koegel | Are you still manually coding UIs? 1
  2. 2. Data conforms to a domain-specific data model © 2013 EclipseSource | http://eclipsesource.com/munich | Dr. Maximilian Koegel | Are you still manually coding UIs? 2
  3. 3. Data is often viewed/edited in a form-based UI © 2013 EclipseSource | http://eclipsesource.com/munich | Dr. Maximilian Koegel | Are you still manually coding UIs? 3
  4. 4. Data model needs to be mapped to UI © 2013 EclipseSource | http://eclipsesource.com/munich | Dr. Maximilian Koegel | Are you still manually coding UIs? 4
  5. 5. Modeling the UI Domain Model View Model UI 1. Data Binding with Controls 2. Modeling Structure with Layouts © 2013 EclipseSource | http://eclipsesource.com/munich | Dr. Maximilian Koegel | Are you still manually coding UIs? 5
  6. 6. Modeling UI Data Binding with Controls Domain Model View Model UI Reference Domain Model References © 2013 EclipseSource | http://eclipsesource.com/munich | Dr. Maximilian Koegel | Are you still manually coding UIs? 6
  7. 7. Modeling UI Structure with Layouts View Model UI © 2013 EclipseSource | http://eclipsesource.com/munich | Dr. Maximilian Koegel | Are you still manually coding UIs? 7
  8. 8. Extensibility and Adaptability • Custom Controls • e.g. Email-Control • Custom View Model Elements and Renderers • e.g. Group © 2013 EclipseSource | http://eclipsesource.com/munich | Dr. Maximilian Koegel | Are you still manually coding UIs? 8
  9. 9. Custom Control: Email © 2013 EclipseSource | http://eclipsesource.com/munich | Dr. Maximilian Koegel | Are you still manually coding UIs? 9
  10. 10. Custom View Model Element • Define new view model element in Ecore • Generate model and edit plugins • Create a Renderer View Model Element Renderer © 2013 EclipseSource | http://eclipsesource.com/munich | Dr. Maximilian Koegel | Are you still manually coding UIs? 10
  11. 11. Exchangeable UI Technology • • • • • UI Model is independent of Renderers Only renderers are UI technology dependent Renderers can be replaced Allows for parallel use of different UI technologies Existing renderers: • RCP/SWT • Web based on RAP • JavaFX (demo only) © 2013 EclipseSource | http://eclipsesource.com/munich | Dr. Maximilian Koegel | Are you still manually coding UIs? 11
  12. 12. Web-Renderer based on RAP © 2013 EclipseSource | http://eclipsesource.com/munich | Dr. Maximilian Koegel | Are you still manually coding UIs? 12
  13. 13. When to use/not use of UI Modeling • • • • • • Large Domain Model Many different Views Frequent Domain Model changes Homogenous UI UI Technology Independence Improved Customer Involvement • Fast Turnaround + Rapid Prototyping • Easy-to-grasp UI concepts © 2013 EclipseSource | http://eclipsesource.com/munich | Dr. Maximilian Koegel | Are you still manually coding UIs? 13
  14. 14. More Information • Current Release 1.1: Minimal public view model API • Roadmap: • • • Expose more view model API JavaFX Renderer Tooling • EMF Client Platform: http://eclipse.org/emfclient • Twitter: #emfcp https://twitter.com/EMFCP © 2013 EclipseSource | http://eclipsesource.com/munich | Dr. Maximilian Koegel | Are you still manually coding UIs? 14
  15. 15. Backup Slides © 2013 EclipseSource | http://eclipsesource.com/munich | Dr. Maximilian Koegel | Are you still manually coding UIs? 15
  16. 16. JavaFX Renderer © 2013 EclipseSource | http://eclipsesource.com/munich | Dr. Maximilian Koegel | Are you still manually coding UIs? 16
  17. 17. Embedding the editor © 2013 EclipseSource | http://eclipsesource.com/munich | Dr. Maximilian Koegel | Are you still manually coding UIs? 17
  18. 18. What is EMF? “The EMF project is a modeling framework and code generation facility for building tools and other applications based on a structured data model. From a model specification described in XMI, EMF provides tools and runtime support to produce a set of Java classes for the model, along with a set of adapter classes that enable viewing and command-based editing […].” Source: http://www.eclipse.org/emf © 2013 EclipseSource | http://eclipsesource.com/munich | Dr. Maximilian Koegel | Are you still manually coding UIs? 18
  19. 19. What is EMF Client Platform? Editor Dialogs Navigator Validation View Model Workspace © 2013 EclipseSource | http://eclipsesource.com/munich | Dr. Maximilian Koegel | Are you still manually coding UIs? 19

×