Extend and enhance your Java applications with domain-specific scripting in Groovy
About This Book
Build domain-specific mini languages in Groovy that integrate seamlessly with your Java apps with this hands-on guide
Increase stakeholder participation in the development process with domain-specific scripting in Groovy
Get up to speed with the newest features in Groovy using this second edition and integrate Groovy-based DSLs into your existing Java applications.
Who This Book Is For
This book is for Java software developers who have an interest in building domain scripting into their Java applications. No knowledge of Groovy is required, although it will be helpful. This book does not teach Groovy, but quickly introduces the basic ideas of Groovy. An experienced Java developer should have no problems with these and move quickly on to the more involved aspects of creating DSLs with Groovy. No experience of creating a DSL is required.
What You Will Learn
Familiarize yourself with Groovy scripting and work with Groovy closures
Use the meta-programming features in Groovy to build mini languages
Employ Groovy mark-up and builders to simplify application development
Familiarize yourself with Groovy mark-up and build your own Groovy builders
Build effective DSLs with operator overloading, command chains, builders, and a host of other Groovy language features
Integrate Groovy with your Java and JVM based applications
The times when developing on the JVM meant you were a Java programmer have long passed. The JVM is now firmly established as a polyglot development environment with many projects opting for alternative development languages to Java such as Groovy, Scala, Clojure, and JRuby. In this pantheon of development languages, Groovy stands out for its excellent DSL enabling features which allows it to be manipulated to produce mini languages that are tailored to a projects needs.
A comprehensive tutorial on designing and developing mini Groovy based Domain Specific Languages, this book will guide you through the development of several mini DSLs that will help you gain all the skills needed to develop your own Groovy based DSLs with confidence and ease.
Starting with the bare basics, this book will focus on how Groovy can be used to construct domain specific mini languages, and will go through the more complex meta-programming features of Groovy, including using the Abstract Syntax Tree (AST). Practical examples are used throughout this book to de-mystify these seemingly complex language features and to show how they can be used to create simple and elegant DSLs. Packed with examples, including several fully worked DSLs, this book will serve as a springboard for developing your own DSLs.
Style and approach
This book is a hands-on guide that will walk you through examples for building DSLs with Groovy rather than just talking about "metaprogramming with Groovy". The examples in this book have been designed to help you gain a good working knowledge of the techniques involved and apply these to producing your own Groovy based DSLs.
Downloading the example code for this book You can download the example code files for all Packt books you have purchased from your account at http://www.PacktPub.com. If you purchased this book elsewhere, you can visit http://www.PacktPub.com/support and register to have the files e-mailed directly to you.