Benutzer:Strittm/RefactoringHiwi/EclipseSirius
Eclipse Sirius
Hintergrund
Eclipse Sirius stellt ein Framework zur Verfügung, das es (nach eigener Aussage) in kurzer Zeit ermöglicht sowohl grafische wie auch Baum-Editoren zu entwickeln. Die grafischen Komponenten müssen hierzu nicht händisch programmiert werden. Die Erstellung wird mithilfe eines Baum-Editors vorgenommen.
Download
- http://www.eclipse.org/sirius/download.html
- Ehemaliges kommerzielles Projekt von http://www.obeodesigner.com
- Bisher nur Integration Build verfügbar
- erste offizielle Version 1.0 ab Eclipse 4.4 (Luna)
- Persönliches Testprojekt zu finden unter ...
Aufbau
Es müssen zwei Projekte angelegt werden:
- Ein Modelling Projekt
- Projekt des Nutzers, ähnlich zu Create new Graphiti Projekt
- wird verwendet, um den Editor zu testen
- Gleiche Sicht, wie der Enduser aus deployten Editor hat
- hierfür muss Instanz angelegt werden
- Ein ViewPoint Projekt, welches die grafischen Oberflächen erzeugt.
- Projekt des Entwicklers, in welchem er den Editor erzeugt
Erstellung der Editoren
Die Erstellung der Editoren wird über ViewPoints realisiert. Für jeden ViewPoin kann ausgwählt werden, was für ein Editor generiert werden soll (z.B. Diagram Editor).
- Innerhalb des Diagram Editors können die zu verwendenen Metamodelle definiert werden
- Erstellung von DefaultLayer
- entspricht Diagram in Graphiti
- Hinzufügen von Nodemappings zu Defaultlayer
- entspricht Mapping von Business Objekt auf PictogramElement in Graphiti
- auswählen des DomainObjects
- definieren der grafischen Repräsentation
- Hinzufügen von Assoziationen
Test unserer Anforderungen
- Plugin-Fähigkeit
- fraglich
- Erweiterbarkeit
- fraglich
- Definition eigener Elemente
- möglich laut mithilfe einer API
Umsetzung schwierig, da in diesem Fall wieder Kombination (generierter Editor & manuelle Anpassungen) wie bei Spray
Dokumentation
- http://wiki.eclipse.org/Sirius/Tutorials/4MinTutorial
- http://www.youtube.com/watch?v=fi4SVKlLs5E
- kaum Dokumentation, Dokumentation des offiziellen Projekts nicht zugänglich
- soll zur neuen Version erscheinen