am 17. November 2013
This book says that it it is "community experience destilled" - and that pretty much nails it. It shows how to create some basic grammars (and some more advanced) in Xtext and also says a couple of things about Xtend. After reading this book and doing the tutorials, you will have a solid understanding on how to craft a grammar and provide some tools that come with it (custom outline, code completion, validation etc.), and the book does a really good job about it. It is well written in fluent, easy english, and provides a lot of screenshots and diagrams, which is unusual for this kind of book, but a very welcome addition. It also has an alphabetic index at the end, helping you to look up special terms quickly, which is always handy.
However, the book has also some drawbacks. The author uses Xtend extensively, and codes (at least for my taste) in a very *short* but almost *unreadable* way with many (Xtend specific) shortcuts instead of spelling it out and spending two or three lines more. And while he always explains what he is doing, this should be reserved to the Xtend feature pages and does - in my opinion - not belong in a book such as this. Another thing that's sad is that the book is over when it finally really gets interesting. On the roughly 300 pages you will learn the basics. If you hope that this book will be a "bible" for Xtext (as Ed Merk's book about EMF for example) where you can look up every tiny implementation detail, then you'll be disappointed. This has been written by a community member, not a developer, and while the author does a good job at explaining the concepts, I would have been interested in a little more implementation detail, because these things get important when you start to modify the non-standard components of Xtext and then the documentation on the web becomes rather thin very quickly the more specialized your desired feature is. Sadly, also the MWE workflow (which is tied very closely to Xtext) is hardly touched at all.
This all sounds now as if the book is terrible, it is not - in fact I like it a lot (thus, 5 stars, that's no accident!). Just know that what you will get is a tutorial book for beginners to intermediates - the book had the potential to be more than that, but this opportunity has slipped away. I wish I had this book half a year ago when I started working with Xtext, it would have saved me a lot of pain.
am 24. Februar 2014
I have been struggeling quite a lot with Xtext as it is a huge framework and I was neither familiar with Xtext, the Eclipse plugin framework and all their naming conventions.
Additionally I am currently developing my first textual DSL.
This book has helped me a lot!
Not only did it give a good introduction into the field of textual DSLs with all the things that belong there, they also do it with simple and well explained examples. I learned how to introduce type systems, do code generation and even write an interpreter.
Additionally it gives a lot of insights into the internals of Xtext like how linking works, etc. which also saved me tons of hours as I finally understood the errors and warnings in the Eclipse console that came from Xtext.
I can only recommend this book to every interested reader.