SlideShare une entreprise Scribd logo
1  sur  34
presents SOA made Open
Modeling with Eclipse Mickael Istria @  {{   soft shake  }} 2011 - CC BY 2.0
Some theory
What is a model ? ,[object Object]
You  describe and manipulate  your model with a  meta model or a metalanguage.
What does a metalanguage look like ? Here are some representation of the JBI « Component » class. If we have the model of a Component : ,[object Object]
These representation are its meta-meta-model UML Java Ecore XSD
What can you do with your models ? ...To be continued... CRUD ! Store ! Version ! Transform/Convert ! Visualize. Use them to generate stuff.
M odel- D riven... A rchitecture E ngineering D evelopment S oftware  D evelopm t
« As a software developer/architect, I understand the issues. But what about concrete solutions ? Methodologies ? Technologies ? »
72  projects at Eclipse.org « The Eclipse Modeling Project focuses on the evolution and promotion of model-based development technologies within the Eclipse community by providing a unified set of modeling frameworks, tooling, and standards implementations. »
[object Object]
Provides powerful  introspection and code genericity  thanks to its meta-comprehension and its « EObject ».
Provides (de)serialization of your models to files, transactional edition, notification support...
At runtime, your EMF models  do not require Eclipse .
Generates and provides Eclipse-based editors for your models.
Generates and provides GWT-based editors for your models.
EMF Facts EMF can run on : EMF is lightweight EObjectImpl is just  12 bytes bigger than java.lang.Object
Demo 1 : EMF ,[object Object]
Demo 1 : EMF ,[object Object]
EMF can be a piece of solution for various use-cases
Editors ,[object Object]
Transactions/Commands
Databinding myObject.eGet(field) / myObject.eSet(field, value) ;
Demo 2 : Editors ,[object Object],Available for
Demo 2 : Editors ,[object Object]
Graphical Editing – Runtime APIs ,[object Object],« Runtime » MyDomainObject (extends EObject) Draw2d Figure GMF IGraphicalEditPart
Demo 3 : GMF Editor
Graphical Editing - Generators « Tooling » Semantic Model (ecore) GMF Diagram Model GMF codegen Diagram code Mapping
Demo 4 : GMF Tooling
Textual editing - DSL Semantic Model (ecore) Xtext grammar Xtext codegen (MWE) DSL parser DSL text editor (Implicit) Mapping
Demo 5 : XText
All this uses EMF ! ,[object Object],Then...
Screencast : synchro GMF-Xtext http://koehnlein.blogspot.com/2009/06/synchronized-editors-with-tmfxtext-and.html

Contenu connexe

Tendances

Eclipse Modeling Framework
Eclipse Modeling FrameworkEclipse Modeling Framework
Eclipse Modeling Framework
Ajay K
 
What every Eclipse developer should know about EMF - Tutorial at EclipseCon
What every Eclipse developer should know about EMF - Tutorial at EclipseConWhat every Eclipse developer should know about EMF - Tutorial at EclipseCon
What every Eclipse developer should know about EMF - Tutorial at EclipseCon
JonasHelming
 

Tendances (10)

EclipseCon 2006: Introduction to the Eclipse Modeling Framework
EclipseCon 2006: Introduction to the Eclipse Modeling FrameworkEclipseCon 2006: Introduction to the Eclipse Modeling Framework
EclipseCon 2006: Introduction to the Eclipse Modeling Framework
 
Adapter pattern
Adapter patternAdapter pattern
Adapter pattern
 
Eclipse Modeling Framework
Eclipse Modeling FrameworkEclipse Modeling Framework
Eclipse Modeling Framework
 
Object-oriented Modeling with OptimJ
Object-oriented Modeling with OptimJObject-oriented Modeling with OptimJ
Object-oriented Modeling with OptimJ
 
What every Eclipse developer should know about EMF - Tutorial at EclipseCon
What every Eclipse developer should know about EMF - Tutorial at EclipseConWhat every Eclipse developer should know about EMF - Tutorial at EclipseCon
What every Eclipse developer should know about EMF - Tutorial at EclipseCon
 
DotNet Conf Madrid 2019 - Whats New in ML.NET
DotNet Conf Madrid 2019 - Whats New in ML.NETDotNet Conf Madrid 2019 - Whats New in ML.NET
DotNet Conf Madrid 2019 - Whats New in ML.NET
 
Bridge Design Pattern
Bridge Design PatternBridge Design Pattern
Bridge Design Pattern
 
Adapter Design Pattern
Adapter Design PatternAdapter Design Pattern
Adapter Design Pattern
 
Representing Design Patterns In Uml Andy Bulka Oct2006
Representing Design Patterns In Uml Andy Bulka Oct2006Representing Design Patterns In Uml Andy Bulka Oct2006
Representing Design Patterns In Uml Andy Bulka Oct2006
 
Intro to programing with java-lecture 1
Intro to programing with java-lecture 1Intro to programing with java-lecture 1
Intro to programing with java-lecture 1
 

Similaire à Modeling With Eclipse @SoftShake 2011

Markus Voelter Textual DSLs
Markus Voelter Textual DSLsMarkus Voelter Textual DSLs
Markus Voelter Textual DSLs
deimos
 
Eclipse Labs for Improving DSL Development - Eclipse DemoCamp Juno 2012 in Na...
Eclipse Labs for Improving DSL Development - Eclipse DemoCamp Juno 2012 in Na...Eclipse Labs for Improving DSL Development - Eclipse DemoCamp Juno 2012 in Na...
Eclipse Labs for Improving DSL Development - Eclipse DemoCamp Juno 2012 in Na...
Hugo Bruneliere
 
MoDisco Poster EclipseCon 2009
MoDisco Poster EclipseCon 2009MoDisco Poster EclipseCon 2009
MoDisco Poster EclipseCon 2009
fmadiot
 
Discover models out of existing applications with Eclipse/MoDisco
Discover models out of existing applications with Eclipse/MoDiscoDiscover models out of existing applications with Eclipse/MoDisco
Discover models out of existing applications with Eclipse/MoDisco
fmadiot
 
Spy On Your Models, Standard talk at EclipseCon 2011
Spy On Your Models, Standard talk at EclipseCon 2011Spy On Your Models, Standard talk at EclipseCon 2011
Spy On Your Models, Standard talk at EclipseCon 2011
Hugo Bruneliere
 

Similaire à Modeling With Eclipse @SoftShake 2011 (20)

EclipseCon 2007: Effective Use of the Eclipse Modeling Framework
EclipseCon 2007: Effective Use of the Eclipse Modeling FrameworkEclipseCon 2007: Effective Use of the Eclipse Modeling Framework
EclipseCon 2007: Effective Use of the Eclipse Modeling Framework
 
Pragmatic Model Driven Development using openArchitectureWare
Pragmatic Model Driven Development using openArchitectureWarePragmatic Model Driven Development using openArchitectureWare
Pragmatic Model Driven Development using openArchitectureWare
 
ALT
ALTALT
ALT
 
Modeling with eclipse
Modeling with eclipseModeling with eclipse
Modeling with eclipse
 
Model Driven Development With Emf And Eclipse Link
Model Driven Development With Emf And Eclipse LinkModel Driven Development With Emf And Eclipse Link
Model Driven Development With Emf And Eclipse Link
 
Markus Voelter Textual DSLs
Markus Voelter Textual DSLsMarkus Voelter Textual DSLs
Markus Voelter Textual DSLs
 
Eclipse DemoCamp Toulouse 2017 - Mr. Robot : The modeling Society
Eclipse DemoCamp Toulouse 2017 - Mr. Robot : The modeling SocietyEclipse DemoCamp Toulouse 2017 - Mr. Robot : The modeling Society
Eclipse DemoCamp Toulouse 2017 - Mr. Robot : The modeling Society
 
MDD and modeling tools research
MDD and modeling tools researchMDD and modeling tools research
MDD and modeling tools research
 
EMF - The off beat path
EMF - The off beat pathEMF - The off beat path
EMF - The off beat path
 
Whats new in Eclipse Indigo ? (@DemoCamp Grenoble 2011)
Whats new in Eclipse Indigo ? (@DemoCamp Grenoble 2011)Whats new in Eclipse Indigo ? (@DemoCamp Grenoble 2011)
Whats new in Eclipse Indigo ? (@DemoCamp Grenoble 2011)
 
Eclipse World 2007: Fundamentals of the Eclipse Modeling Framework
Eclipse World 2007: Fundamentals of the Eclipse Modeling FrameworkEclipse World 2007: Fundamentals of the Eclipse Modeling Framework
Eclipse World 2007: Fundamentals of the Eclipse Modeling Framework
 
Acceleo Code Generation
Acceleo Code GenerationAcceleo Code Generation
Acceleo Code Generation
 
MDE=Model Driven Everything (Spanish Eclipse Day 2009)
MDE=Model Driven Everything (Spanish Eclipse Day 2009)MDE=Model Driven Everything (Spanish Eclipse Day 2009)
MDE=Model Driven Everything (Spanish Eclipse Day 2009)
 
MoDisco Eclipse-OMG Symp 2010
MoDisco Eclipse-OMG Symp 2010MoDisco Eclipse-OMG Symp 2010
MoDisco Eclipse-OMG Symp 2010
 
Eclipse Labs for Improving DSL Development - Eclipse DemoCamp Juno 2012 in Na...
Eclipse Labs for Improving DSL Development - Eclipse DemoCamp Juno 2012 in Na...Eclipse Labs for Improving DSL Development - Eclipse DemoCamp Juno 2012 in Na...
Eclipse Labs for Improving DSL Development - Eclipse DemoCamp Juno 2012 in Na...
 
MoDisco Poster EclipseCon 2009
MoDisco Poster EclipseCon 2009MoDisco Poster EclipseCon 2009
MoDisco Poster EclipseCon 2009
 
Discover models out of existing applications with Eclipse/MoDisco
Discover models out of existing applications with Eclipse/MoDiscoDiscover models out of existing applications with Eclipse/MoDisco
Discover models out of existing applications with Eclipse/MoDisco
 
What the heck is Eclipse Modeling and why should you care !
What the heck is Eclipse Modeling and why should you care !What the heck is Eclipse Modeling and why should you care !
What the heck is Eclipse Modeling and why should you care !
 
Spy On Your Models, Standard talk at EclipseCon 2011
Spy On Your Models, Standard talk at EclipseCon 2011Spy On Your Models, Standard talk at EclipseCon 2011
Spy On Your Models, Standard talk at EclipseCon 2011
 
Agile and Modeling / MDE : friends or foes? (Agile Tour Nantes 2010)
Agile and Modeling / MDE : friends or foes? (Agile Tour  Nantes 2010)Agile and Modeling / MDE : friends or foes? (Agile Tour  Nantes 2010)
Agile and Modeling / MDE : friends or foes? (Agile Tour Nantes 2010)
 

Plus de Mickael Istria

Adopting Debug Adapter Protocol in Eclipse IDE: netcoredbg (.NET debugger) ca...
Adopting Debug Adapter Protocol in Eclipse IDE: netcoredbg (.NET debugger) ca...Adopting Debug Adapter Protocol in Eclipse IDE: netcoredbg (.NET debugger) ca...
Adopting Debug Adapter Protocol in Eclipse IDE: netcoredbg (.NET debugger) ca...
Mickael Istria
 
Parallel builds in Eclipse IDE workspace - EclispeCon Europe 2018
Parallel builds in Eclipse IDE workspace - EclispeCon Europe 2018Parallel builds in Eclipse IDE workspace - EclispeCon Europe 2018
Parallel builds in Eclipse IDE workspace - EclispeCon Europe 2018
Mickael Istria
 
Iterative and-agile-codegen
Iterative and-agile-codegenIterative and-agile-codegen
Iterative and-agile-codegen
Mickael Istria
 

Plus de Mickael Istria (16)

Adopting Debug Adapter Protocol in Eclipse IDE: netcoredbg (.NET debugger) ca...
Adopting Debug Adapter Protocol in Eclipse IDE: netcoredbg (.NET debugger) ca...Adopting Debug Adapter Protocol in Eclipse IDE: netcoredbg (.NET debugger) ca...
Adopting Debug Adapter Protocol in Eclipse IDE: netcoredbg (.NET debugger) ca...
 
Parallel builds in Eclipse IDE workspace - EclispeCon Europe 2018
Parallel builds in Eclipse IDE workspace - EclispeCon Europe 2018Parallel builds in Eclipse IDE workspace - EclispeCon Europe 2018
Parallel builds in Eclipse IDE workspace - EclispeCon Europe 2018
 
IDE as a Front-end and Fast time-to-market language support in Eclipse IDE re...
IDE as a Front-end and Fast time-to-market language support in Eclipse IDE re...IDE as a Front-end and Fast time-to-market language support in Eclipse IDE re...
IDE as a Front-end and Fast time-to-market language support in Eclipse IDE re...
 
Parallel builds in Eclipse IDE workspace
Parallel builds in Eclipse IDE workspaceParallel builds in Eclipse IDE workspace
Parallel builds in Eclipse IDE workspace
 
[EclipseCon France 2017] Language Server Protocol in action
[EclipseCon France 2017] Language Server Protocol in action[EclipseCon France 2017] Language Server Protocol in action
[EclipseCon France 2017] Language Server Protocol in action
 
[EclipseCon France 2017] Eclipse Platform Generic Editor
[EclipseCon France 2017] Eclipse Platform Generic Editor[EclipseCon France 2017] Eclipse Platform Generic Editor
[EclipseCon France 2017] Eclipse Platform Generic Editor
 
EclipseCon Europe 2016, S. Cela, M.Istria: Eclipse Generic and Extensible Edi...
EclipseCon Europe 2016, S. Cela, M.Istria: Eclipse Generic and Extensible Edi...EclipseCon Europe 2016, S. Cela, M.Istria: Eclipse Generic and Extensible Edi...
EclipseCon Europe 2016, S. Cela, M.Istria: Eclipse Generic and Extensible Edi...
 
Making Eclipse IDE better at handling real-life projects @EclipseCon NA 2015
Making Eclipse IDE better at handling real-life projects @EclipseCon NA 2015Making Eclipse IDE better at handling real-life projects @EclipseCon NA 2015
Making Eclipse IDE better at handling real-life projects @EclipseCon NA 2015
 
[EclipseCon NA 2014] Integration tests for RCP made easy with SWTBot and Tycho
[EclipseCon NA 2014] Integration tests for RCP made easy with SWTBot and Tycho[EclipseCon NA 2014] Integration tests for RCP made easy with SWTBot and Tycho
[EclipseCon NA 2014] Integration tests for RCP made easy with SWTBot and Tycho
 
Contribute to Eclipse projects
Contribute to Eclipse projectsContribute to Eclipse projects
Contribute to Eclipse projects
 
A journey with Target Platforms
A journey with Target PlatformsA journey with Target Platforms
A journey with Target Platforms
 
Cool stuff in E4 for developers
Cool stuff in E4 for developersCool stuff in E4 for developers
Cool stuff in E4 for developers
 
Fight your technical debt with Jenkins, Jacoco and Sonar
Fight your technical debt with Jenkins, Jacoco and SonarFight your technical debt with Jenkins, Jacoco and Sonar
Fight your technical debt with Jenkins, Jacoco and Sonar
 
What's up GMF Tooling?
What's up GMF Tooling?What's up GMF Tooling?
What's up GMF Tooling?
 
Iterative and-agile-codegen
Iterative and-agile-codegenIterative and-agile-codegen
Iterative and-agile-codegen
 
Sur la route de l'agilité @Mix-it Lyon 2011
Sur la route de l'agilité @Mix-it Lyon 2011Sur la route de l'agilité @Mix-it Lyon 2011
Sur la route de l'agilité @Mix-it Lyon 2011
 

Dernier

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Dernier (20)

A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 

Modeling With Eclipse @SoftShake 2011

  • 2. Modeling with Eclipse Mickael Istria @ {{ soft shake }} 2011 - CC BY 2.0
  • 4.
  • 5. You describe and manipulate your model with a meta model or a metalanguage.
  • 6.
  • 7. These representation are its meta-meta-model UML Java Ecore XSD
  • 8. What can you do with your models ? ...To be continued... CRUD ! Store ! Version ! Transform/Convert ! Visualize. Use them to generate stuff.
  • 9. M odel- D riven... A rchitecture E ngineering D evelopment S oftware D evelopm t
  • 10. « As a software developer/architect, I understand the issues. But what about concrete solutions ? Methodologies ? Technologies ? »
  • 11. 72 projects at Eclipse.org « The Eclipse Modeling Project focuses on the evolution and promotion of model-based development technologies within the Eclipse community by providing a unified set of modeling frameworks, tooling, and standards implementations. »
  • 12.
  • 13. Provides powerful introspection and code genericity thanks to its meta-comprehension and its « EObject ».
  • 14. Provides (de)serialization of your models to files, transactional edition, notification support...
  • 15. At runtime, your EMF models do not require Eclipse .
  • 16. Generates and provides Eclipse-based editors for your models.
  • 17. Generates and provides GWT-based editors for your models.
  • 18. EMF Facts EMF can run on : EMF is lightweight EObjectImpl is just 12 bytes bigger than java.lang.Object
  • 19.
  • 20.
  • 21. EMF can be a piece of solution for various use-cases
  • 22.
  • 24. Databinding myObject.eGet(field) / myObject.eSet(field, value) ;
  • 25.
  • 26.
  • 27.
  • 28. Demo 3 : GMF Editor
  • 29. Graphical Editing - Generators « Tooling » Semantic Model (ecore) GMF Diagram Model GMF codegen Diagram code Mapping
  • 30. Demo 4 : GMF Tooling
  • 31. Textual editing - DSL Semantic Model (ecore) Xtext grammar Xtext codegen (MWE) DSL parser DSL text editor (Implicit) Mapping
  • 33.
  • 34. Screencast : synchro GMF-Xtext http://koehnlein.blogspot.com/2009/06/synchronized-editors-with-tmfxtext-and.html
  • 35.
  • 36. Generate any kind of text Xpand JET A2 A1 Meta A M2T Just apply Blah-blah <%model.name%> Blah-blah A1 Blah-blah A2
  • 38. M2M : Model to Model A2 B2 A1 B1 Meta A Meta B Tools to convert and transform models between different metamodels. QVT, M2M Just apply
  • 39.
  • 41. Teneo EMF Search EMF Compare XSD ...
  • 42.
  • 43. EMF is a very powerful library to create your (meta)models
  • 44. For all Modeling issues, « There is an Eclipse project for that ».
  • 45.  
  • 46. Credits Produced by : Directed by : Mickael Istria Presented by : Mickael Istria Reviewed and improved by : Ed Merks (content), Mathieu Lebreton (design) Licensed under : CC BY 2.0 Inspired from a presentation of Aurelien Pupier & Mickael Istria @Eclipse DemoCamp Grenoble 2011 (CC BY 2.0) - http://www.slideshare.net/BonitaSoft/modeling-with-eclipse Pics : Student Answering Question (Bernie Noble) See also Twitter : http://twitter.com/mickaelistria Blog : http://mickaelistria.wordpress.com Linkedin : http://fr.linkedin.com/in/mickaelistria

Notes de l'éditeur

  1. Hello, Thank you Mickael Istria, Eclipse RCP/Plugin Developer at PetalsLink. 3 years commitment on Eclipse committer on GMF-Tooling User and contributor to lots of Eclipse project(modeling et al)
  2. * On choisit son « meta » en fonction du use-case * On est toujours le meta d&apos;un autre * « meta » est un mot relatif a la ou on observe.
  3. * Validate, serialize, compare...
  4. * Show model * Show ecore_diag * Generate .model * Show generated classes
  5. * Show client * Show code * Run -&gt; Does not depend on Eclipse, pure POJO * show generated file
  6. * EEF : project dedicated to create model editors efficiently – just in a declarative way.
  7. * Eclipse RCP, RAP, GWT * Generate .edit * Generate .editor * Open new Eclipse * Create a project, a file, edit Zoo * Import previous file, show zoo
  8. * Open Editor + XML editor * Edit « endpoint », Save, Show XML * Ctrl-Z, Ctrl-Y * Show Eclipse « Demo » task with the databinding line * EEF : a new Eclipse project dedicated to this use case
  9. * GMF customization thanks to high level APIs * Best modeling product
  10. * Writing a whole editor can be long and difficult * Use generators to generate a first version, and customize after
  11. * Show GMFMap * Add Top Node Water/child Fish * Show GMFGraph -&gt; Figures desc * Show GMFTool -&gt; Palette desc * Generate GMFGen (add org.eclipse.gmf.runtime.lite.svg) * Generate Code * Show
  12. * Generates a (de)serializer for your DSL * Can be embedded in any Java App where EMF runs * Think about a language grammar : Model is AST, Xtext offers parsing, only execution need to be implemented
  13. 5min30. * File &gt; New &gt; Xtext Project from Ecore Model -&gt; org.eclipse.modeling.demo.zoo.dsl -&gt; org.eclipse.modeling.demo.zoo.ZooDSL -&gt; zoodsl * Show default grammar ~ Json * Replace with my Grammar -&gt; Show mapping : implicit based on name and {...} * generate editor for « zoodsl » : May ask for ANTLR * Create file « myzoo.zoodsl » - Show completion, validation * Think about a java grammar
  14. * Diagram already exists * Synchronization on « save » * Still work in progress * UML dream become true. * Think about Java grammar + UML class diagram
  15. * Use case : generate web page * « One-way » Xtext * Batch * 2 different styles : Template ( ~jsp/php ) ; Rules
  16. * Go to plugins view * Import as source « org.eclipse.gmf.codegen » * Show Editor.xpt -&gt; Show how easy it is to navigate in EMF objects with « :: » Xpand is not the best ! Acceleo is better but I don&apos;t know it enough to demo it ; and you understood the point;)
  17. * Use cases : -&gt; Assuse Meta1 is zoo, and Meta2 is XHTML =&gt; generate XHTML page -&gt; Assume Meta1 is Zoo from Berlin and Meta2 represents Zoo from Lyon. A european law says « everyone must work like Lyon&apos; s zoo ». Then just transform/convert
  18. * Show metamodel * Highlight difference -&gt; Containement is not the same -&gt; Class name are different -&gt; No more name -&gt; Containement of plots using a specific type * Show transfo : Rules -&gt; For each element, apply a rule * Execute transfo, show results * Say that this transfo applies on models, not on files ! Then you can transform Xtext-based models as well.
  19. * Only a few use-cases were presented
  20. * CDO-Dawn -&gt; Collaborative * Teneo -&gt; JPA, Hibernate pour les modeles (Eobject)