Loading AI tools
Java-Bibliothek Aus Wikipedia, der freien Enzyklopädie
Das Eclipse Modeling Framework (EMF) ist ein quelloffenes Java-Framework für Modellierung. Es ermöglicht unter anderem die automatisierte Erzeugung von Quelltext aus Modellen. EMF ist ein Projekt der Eclipse-Open-Source-Gemeinschaft.
Im Zentrum der Softwareentwicklung mit EMF steht ein Domänenmodell, das einen abzubildenden Problembereich in Form eines Klassendiagramms beschreibt. Dieses Domänenmodell wird in EMF als Ecore-Modell bezeichnet. EMF bietet zwei Editoren, mit denen sich Ecore-Modelle erstellen und editieren lassen: Einen diagrammatischen sowie einen baumbasierten Editor. Daneben ist es möglich, andere, Klassendiagramm-ähnliche Formate automatisiert in Ecore-Modelle zu konvertieren. Unterstützte Eingabeformate sind XSD-Schemen (wie etwa bei JAXB), annotierte Java-Interfaces und UML-Diagramme (Rose, TOPCASED, MagicDraw und Omondo).
Für ein gegebenes Ecore-Modell generiert EMF einen Editor, mit dem sich Instanzen dieses Modells erstellen, abfragen, manipulieren, im XMI-Format serialisieren, validieren und im Stil des MVC-Entwurfsmusters auf Änderungen überwachen lassen. Darüber hinaus wird JUnit-Code erzeugt, der den generierten Code testet.
Der Generierungsvorgang sowie der generierte Code können angepasst werden. Insbesondere müssen Rümpfe von modellierten Methodensignaturen durch die Entwickler implementiert werden. Implementierte Funktionalität und neu generierter Code werden automatisch gemerged. Für weitergehende Ansprüche bietet EMF etwa die Möglichkeit, Modelle dynamisch zur Laufzeit zu erstellen (etwa, wenn erst dann das Modell bekannt ist). Durch Verwendung von Plugins ist es möglich, vollständige datenorientierte RCP-Anwendungen generieren zu lassen und Modellinstanzen in beliebigen Datenbanken zu persistieren.
Einer der größten Vorteile ist die Integration in die Eclipse-Werkzeugplattform. Dies ermöglicht die Generierung von UI-Komponenten sowie die Zusammenarbeit mit anderen Eclipse-Projekten, etwa im Eclipse Graphical Modeling Framework (GMF). Serialisierung und Validierung steigern die Produktivität beim Entwickeln. Außerdem ist die Einarbeitungszeit gering aufgrund vieler Möglichkeiten der Modellierung (XSD, UML, Java-Interfaces). Der Einsatz von Code-Generatoren und MDD (Model Driven Development) steigert ebenfalls die Produktivität, reduziert Wiederholungen und damit mögliche Fehlerquellen.
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.