Eclipse Modeling Framework

This book is a comprehensive introduction to and developer's quick reference for the Eclipse Modeling Framework (EMF). EMF is a powerful framework and code-generation facility for building Java applications based on simple model definitions. Designed to make modeling practical and useful to the mainstream Java programmer, EMF unifies three important technologies: Java, XML, and UML. Models can be defined using a UML modeling tool, an XML Schema, or by specifying simple annotations on Java interfaces, whereby programmers write the abstract interfaces (a small subset of what they would normally need to write), and the rest is generated automatically and merged back into their existing code.

By relating modeling concepts to the simple Java representations of those concepts, EMF has successfully bridged the gap between modelers and Java programmers. It serves as a gentle introduction to modeling for Java programmers and at the same time as a reinforcement of the modeler's theory that plenty of Java coding can be automated, given an appropriate tool. This book shows how EMF is such a tool. At the same time, it also shows how using EMF gives you much more than just automatic code generation.

While Eclipse provides a powerful platform for integration at the UI and file level, EMF builds on this capability to enable applications to integrate at a much finer granularity than would otherwise be possible. EMF-based modeling is the foundation for fine-grained interoperability and data sharing among tools and applications in Eclipse. All of the features provided by the EMF framework, combined with an intrinsic property of modeling--that it provides a higher-level description that can more easily be shared--provide the needed ingredients to foster such data integration. A number of companies are already using both Eclipse and the EMF modeling technology as the foundation for commercial products. IBM's WebSphere Studio, for example, is completely based on Eclipse, and most of its tools use EMF to model their data.

No comments: