Advanced Search
Start Your Free Trial

Overview

Other Readers Also Read...
EMF: Eclipse Modeling Framework, Second Edition

EMF: Eclipse Modeling Framework, Second Edition
by Dave Steinberg; Frank Budinsky; Marcelo Paternostro; Ed Merks

Eclipse Plug-ins, Third Edition

Eclipse Plug-ins, Third Edition
by Eric Clayberg; Dan Rubel

OSGi and Equinox: Creating Highly Modular Java™ Systems

OSGi and Equinox: Creating Highly Modular Java™ Systems
by Jeff McAffer; Paul VanderLei; Simon Archer

Top Sellers in this Category

EMF: Eclipse Modeling Framework, Second Edition

EMF: Eclipse Modeling Framework, Second Edition
by Dave Steinberg; Frank Budinsky; Marcelo Paternostro; Ed Merks

Eclipse Plug-ins, Third Edition

Eclipse Plug-ins, Third Edition
by Eric Clayberg; Dan Rubel

Eclipse Cookbook

Eclipse Cookbook
by Steve Holzner

SWT/JFace in Action

SWT/JFace in Action
by Matthew Scarpino; Stephen Holder; Stanford Ng; Laurent Mihalkovic

This is the Safari online edition of the printed book.

Achieve Breakthrough Productivity and Quality with MDD and Eclipse-based DSLs

Domain-Specific Languages (DSLs) and model-driven development (MDD) offer software engineers powerful new ways to improve productivity, enhance quality, and insulate systems from rapid technological change. Now, there’s a pragmatic, start-to-finish guide to creating DSLs and using MDD techniques with the powerful open source Eclipse platform. In Eclipse Modeling Project, Richard C. Gronback illuminates both the principles and techniques software professionals need to master, offering insights that will be invaluable to developers working with any tool or platform.

As co-leader of the Eclipse Modeling Project, Gronback is singularly well-positioned to demonstrate DSLs and MDD at work in Eclipse. Gronback systematically introduces each of the Eclipse technologies that can be used in DSL and MDD development. Throughout, he introduces key concepts and technologies in the context of a start-to-finish worked example and presents new best practices and never-before published techniques. He also covers Eclipse projects discussed in no other book, including Query/View/Transformation (QVT) and the Graphical Modeling Framework (GMF)–a project the author personally leads.

Eclipse Modeling Project gives software practitioners all the knowledge they need to explore the remarkable potential of DSLs and MDD–and to start using them in real-world projects.

  • Why a model-based approach enables the rapid customization of high-quality solutions within the product line paradigm

  • How the Eclipse Modeling Project’s capabilities can be used to efficiently create new DSLs

  • Powerful techniques for developing DSL abstract syntax, graphical notation, and textual syntax

  • How to build Model-to-Model (M2M) and Model-to-Text (M2T) transformations–including a powerful new M2M solution based on Eclipse QVT

  • Efficiently packaging and deploying DSLs with Eclipse

  • Complete reference sections for the Graphical Editing Framework (GEF); GMF runtime and tooling; QVT Operational Mapping Language (OML); Xpand, and more

Foreword

Preface

Part I: Introduction

Chapter 1: Introduction

Chapter 2: Modeling Project as a DSL Toolkit

Part II: Developing Domain-Specific Languages

Chapter 3: Developing a DSL Abstract Syntax

Chapter 4: Developing a DSL Graphical Notation

Chapter 5: Developing a DSL Textual Syntax

Chapter 6: Developing Model-to-Model Transformations

Chapter 7: Developing Model-to-Text Transformations

Chapter 8: DSL Packaging and Deployment

Part III: Reference

Chapter 9: Graphical Editing Framework (GEF)

Chapter 10: GMF Runtime

Chapter 11: GMF Tooling

Chapter 12: GMF FAQs

Chapter 13: QVT Operational Mapping Language

Chapter 14: Xpand Language

Part IV: Appendices

Appendix A: GMF Key Bindings

Appendix B: Model-Driven Architecture at Eclipse

References

Amazon.com® Reader Reviews (Ranked by Helpfulness)

Average Amazon.com® Rating: 4.0 out of 5 rating Based on 3 Ratings

from a diagram of a domain model to autogenerated code - 2009-03-29
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
If you use Eclipse, you probably know it as a neat Integrated Development Environment for java, where perhaps you manually write all the java code. This book shows a different take on Eclipse; a much higher level of sophistication. Basically, it shows how to go from a diagram of a set of related classes to autogenerated java code. Developers have put a massive amount of effort into fleshing out this ability; something well documented by the book.

The starting diagram is a domain model. It models a scenario that you are interested in. You might think that an alternative approach is to use Backus Naur Formalism to define the same information. But the book deprecates BNF. Decades-long experience with BNF suggests that it lacks expressive power, and that perhaps the pure text nature of a BNF instantiation is too hard to grasp relationships between objects. Instead, the expression of a domain model in terms of what is roughly [or exactly] a UML diagram gives visuals that people can far more easily absorb.

What the book has is a set of very detailed tutorials. Each walks through a given example model. Fleshing out how to use Eclipse to make the model. Initially, the book's narrative is at a very abstract level, which may hard for some to follow. But the tutorials help give this substance. Each tutorial is non-trivial, and shows how Eclipse has extensive abilities to help you.

In terms of autogeneration, it's not just java code. The book gives examples of autogenerated XML, and in general we see the use of Model to Text transformation templates that spit out text files. One common feature of all of these is the sheer verbosity of the the textual output. Autogeneration saves you labour and reduces the occurrence of simple bugs. Thus Eclipse lets you work as much as possible at a diagrammatic level, which can be more productive.

This book may not deliver what you want, but its out there - 2009-10-11
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
I need to give a bit of balance to the previous reviews. I basically like the book, but it is a mixed bag and could be a lot better in certain areas. If you expect a start to finish tutorial, you will be disappointed because some background material is presented out of order and you really should read some of his cited references beforehand. For example he discusses the dynamic instance capability in EMF using a mindmap DSL, but doesn't introduce the mindmap DSL itself, until a little later. Also, it will help to have some familiarity with EMF as the coverage in chapter 3 can be followed but is a bit thin and EMF and ecore are purposefully not intended to duplicate the EMF book. The book's usefulness to you will depend upon where you are in MDD and how you want to use MDD and DSLs. The eclipse modeling project is and will undergo rapid change and this book appears somewhat rushed and rough in spots. His second edition when it comes out should be really better organizationally as the Eclipse Modeling projects mature. For example,Chapter 5 on Xtext and TCS is basically a mild description with no example content because that area was not mature at publication. The examples in Chapter 14 on the Xpand template language are in my view a bit skimpy and simplistic for folks wanting to do serious scripting. Similarly if you want to learn QVT, section 13.6 on library operations provides syntax but little to no examples, but the discussion in section 13.5.3 on the shorthand notation used in imperative iterate expressions is really helpful in understanding QVT syntax in the examples presented elsewhere in the book--like chapter 6. Therefore to get the most out of this book, you will be hopping around and be doing multiple reads and passes until it makes sense to you. Don't give up. Do buy the book if you're interested in MDD and DSLs. Gronback has done a nice job developing a mindmap and requirements DSLs that he uses in chapter 6 on model to model transformations. Although you'll need to get comfortable with the QVT and OCL, try running the examples yourself--typing them in to get used to the syntax. His view of MDA at Eclipse in Appendix B is spot on accurate, and I hope OMG takes his advice. If you are interested in graphical model development for your DSL, then Gronback offers strong support for that in Chapter 4 and Chapters 9 through 12. This is no surprise as Gronback is the project lead for GMF. However if you are interested in model to model transformations, QVT, and model to text, and OCL you will be disappointed if you are a beginner requiring step-by-step explanations of the QVT code. Also, don't give up when you reach section 3.2.4 on applying OCL. If you're new to OCL and ecore Eannotations, this will be a rough spot. Finally if you're put off by the price, I'd recommend taking a look at downloading all the OpenArchitectureware tutorials. They are a little stale wrt the later Eclipse Modeling releases, but still helpful and free!

A technical title recommended for any advanced computer collection - 2009-07-17
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
ECLIPSE MODELING PROJECT: ACHIEVE BREAKTHROUGH PRODUCTIVITY AND QUALITY WITH MDD AND ECLIPSE-BASED DSLS is for any Java programming library strong in domain-specific languages and software engineering guides. It covers the benefits of a model-based approach and surveys the Eclipse Modeling Project's ability to create new DSLs. An outstanding survey evolves in a technical title recommended for any advanced computer collection.

Browse Similar Topics

Top Level Categories:
Programming

Sub-Categories:
Programming > Java
Java > Eclipse

Some information on this page was provided using data from Amazon.com®. View at Amazon >


About Safari Books Online • Terms of Service • Privacy Policy • Contact Us • Corporate Licenses • Help • Accessibility | See us on FacebookSee us on Linked InSee us on TwitterRSS

Copyright 2010 Safari Books Online. All rights reserved.