Trilha: MDD, DSLs e Editores
Última atualização: Março 2019.
Se o seu trabalho no NEMO (ou, mais precisamente, comigo) envolve a criação de meta-modelos, linguagens específicas de domínio (DSLs), editores para estas linguagens, etc., seguem abaixo algumas sugestões de leitura.
Desenvolvimento Orientado a Modelos
Algumas sugestões de leitura foram retiradas da página da disciplina Desenvolvimento Orientado a Modelos do prof. João Paulo A. Almeida.
- Pastor, Óscar; Molina, Juan Carlos “Model-Driven Architecture in Practice: A Software Production Environment Based on Conceptual Modeling”. Springer, 2007.
→ O prof. João Paulo inicia o curso de MDD com uma discussão dos capítulos How this book is organized e The purpose of this work, na qual propõe que os alunos busquem entender as críticas que o texto faz às práticas atuais de desenvolvimento e a visão dos autores sobre o que é MDD, bem como façam uma leitura crítica dos textos, quesionando: O que os autores não mencionam mais deveriam mencionar? O que eles prometem? Simplificam demais as coisas? - Harel, David; Rumpe, Bernhard “Modeling Languages: Syntax, Semantics and All That Stuff – Part I: The Basic Stuff”. Technical Report. UMI Order Number: MCS00-16, Weizmann Science Press of Israel, 2000;
- Almeida, João Paulo A. “Model-driven design of distributed applications”. PhD Thesis, University of Twente, The Netherlands, 2006.
→ Sugerida a leitura das páginas 9 a 18 (Seção 2.1 – Basic Concepts, no Capítulo 2 – Model-driven design process); - Atkinson, Colin; Kuhne, Thomas “Model-driven development: a metamodeling foundation”. IEEE Software, vol. 20, issue 5, 2003;
- Selic, Bran “The pragmatics of model-driven development”. IEEE Software, vol. 20, issue 5, 2003;
- Hailpern, Brent; Tarr, Peri “Model-driven development: The good, the bad, and the ugly”. IBM Systems Journal, vol. 45, issue 3, 2006;
Implementação de meta-modelos baseados na plataforma Eclipse
- Vogel, Lars “Eclipse Modeling Framework (EMF) Tutorial”. Disponível em: http://www.vogella.com/tutorials/EclipseEMF/article.html
→ Este autor tem vários outros tutoriais sobre Eclipse, RCP, Plugin and OSGi Development, que podem ser interessantes neste contexto; - Budinsky, Frank; Merks, Ed; Paternostro, Marcelo; Steinberg, Dave “EMF: Eclipse Modeling Framework Second Edition”. Addison-Wesley Professional, 2009;
- McNeill, Ken “Metamodeling with EMF: Generating concrete, reusable Java snippets”, 2008. Disponível em: https://www.ibm.com/developerworks/library/os-eclipse-emfmetamodel/index.html;
- EclipseSource “EMF Tutorial”. Disponível em: https://eclipsesource.com/blogs/tutorials/emf-tutorial/;
- Eclipse Foundation “EMF Documentation”. Disponível em: https://www.eclipse.org/modeling/emf/docs/;
Construção de editores gráficos baseados na plataforma Eclipse
- Bernabé, César H. “Tutorial Sirius”. Relatório Técnico, 2016.
→ Ensina o básico da ferramenta Sirius, uma ferramenta que facilita a criação de editores gráficos baseados em meta-modelos na plataforma Eclipse. O tutorial guia o desenvolvedor em um exercício de criação de um editor de árvore genealógica. Caso deseje, pode-se seguir também os tutoriais oficiais do Sirius, o manual de desenvolvimento do Sirius e outros recursos no site do Obeo Designer. Ao trabalhar com editores, também é interessante ler sobre como adicionar menus e botões de toolbar no Eclipse; - McAffer, Jeff; Lemieux, Jean-Michel; Aniszczyk, Chris “Eclipse Rich Client Platform, 2nd Edition”. Addison-Wesley Professional, 2010;
- Bettini, Lorenzo “Implementing Domain Specific Languages with Xtext and Xtend – Second Edition”. Packt Publishing, 2016;