Prezi

Share this prezi

Who can edit:

Present Online

Send the link below via email or IM to invite your audience

Copy

Start the presentation

Start presenting

  • Invited audience will follow you as you navigate and present
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can view together your prezi
  • Learn more about this feature in the manual

Download prezi for:

Present offline on a PC or Mac.

  • Embedded YouTube videos need an active Internet connection to play.
  • Portable prezis are not editable.

Edit and present offline with Prezi Desktop

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

Acceleo at the Eclipse-OMG Workshop

Acceleo presentation for the Eclipse-OMG Workshop 2012 in Reston, Virginia
by Obeo Network on 20 May 2013

Comments (0)

Please log in to add your comment.

Report abuse

Prezi Transcript

ECLIPSE OMG 2012 W R K H O P ACCELE and you thought you knew template based code generators... ? B O U T istory t s d s r a f e t u r e a Reston, Virginia Me Acceleo MOFM2T Stéphane Bégaudeau Software engineer at Obeo Leader of Acceleo Open Source Code Generator Generate any kind of text From any kind of models Built with the tools of your choice OMG's standard for model to text transformation MOFM2T EMF MTL OCL UML Acceleo Contacts: @sbegaudeau +stephane.begaudeau www.eclipse.org/acceleo 2006 Birth of Acceleo 2008 MOFM2T v1.0 2009 Eclipse Foundation 2012 Acceleo 3.3 Model to Text transformation language... parameterized by some metamodels... manipulated with a superset of OCL Templates Queries Modules Eclipse MDT OCL Tooling Incremental Dynamic Override Traceability Stand alone Maven Input models deployed as plugins or not Compatible with MDT UML models Models built with the tools of your choice... Non standard library Standard library Strict compilation mode Python Javascript Profiling Traceability Compilation OCL and MTL EMF operations ->filter(OclType) ->reverse() .trim() OCL based expressions Dynamic Static Extending modules Overriding templates Importing modules Object Constraint Language implementation for EMF-based models Eclipse 3.4 -> 4.2 EMF-based implementation of the UML metamodel For us, it's just models... Interpreter Wizards Perspective Editor Views Refactoring Completion Error detection Debug User Interface generation, profiling... Generation Change the behavior of an existing generator without changing it... Use your generator out of Eclipse Prototype-based approach Generation Patterns Before After Create a new generator Override another module Use the dynamic template extension point Deploy Find out where each model elements and each pieces of your generator are involved in the generation Thank you for your Attention! Acceleo tutorial tomorrow Creating tools to simplify your application development: The Chrome App example For more information on Acceleo www.eclipse.org/acceleo wiki.eclipse.org/Acceleo github.com/eclipse/acceleo n d invoke(...) Blocks for, if, let... Templates conditional execution variable initialization post condition ? (not var.oclIsUndefined()) {str: String= var.name;} post(trim()) Templates Quick replacement Syntax highlighting 3.1 - Based on Tycho to build Eclipse plugins. 3.3 - Eclipse independant implemented in Acceleo
See the full transcript