Start building powerful apps that take advantage of the dynamic scripting capabilities of the Groovy language, including what's new in Groovy version 3.0. This book covers Groovy fundamentals, such as installing Groovy, using Groovy tools, and working with the Groovy Development Kit (GDK). You'll also learn more advanced aspects of Groovy, such as using Groovy design patterns, writing DSLs in Groovy, and taking advantage of Groovy's functional programming features.
Also, Learning Groovy 3 has been updated to Groovy 3.0 to include the new Parrot parser which was extended to support additional syntax options and language features. It also includes coverage of Groovydoc, which allows you to embed Groovydoc comments in various ways. And, this book covers how Groovy supports Java type annotations and more.
There is more to Groovy than the core language, so Learning Groovy 3, Second Edition covers the extended Groovy ecosystem. You'll see how to harness Gradle (Groovy's build system), Grails (Groovy's web application framework), Spock (Groovy's testing framework), and Ratpack (Groovy's reactive web library).
What You Will Learn
- Grasp Groovy fundamentals, including the GDK
- Master advanced Groovy, such as writing Groovy DSLs
- Discover functional programming in Groovy
- Work with GPars, the built-in concurrency library
- Use Gradle, the build system
- Master Grails, the web application framework
- Work with Spock, the testing framework
- Harness Ratpack, the reactive web library
Who This Book Is For
Those with a Java background, though anyone with basic programming skills can benefit from it. This book is a data-filled, yet easy-to-digest tour of the Groovy language and ecosystem.
Adam L. Davis makes software. He's spent many years developing in Java (since Java 1.2) and has enjoyed using Spring and Hibernate. Since 2006 he's been using Groovy and Grails in addition to Java to create SaaS web applications that help track finances for large institutions (among other things). Adam has a masters and a bachelors degree in computer science from Georgia Tech.