Many of its features are inspired by languages like Python, Smalltalk and Ruby, making them available to developers using a Java-like syntax.
Groovy can be used for developing web applications , writing shell scripts, writing concise, meaningful, test cases using Groovy's JUnit integration, or prototyping and producing real industrial strength applications.
Groovy works cleanly with all existing Java objects and libraries and compiles straight to Java bytecode in either application development or scripting mode.
Here are some key features of "Groovy":
· Builds upon the strengths of Java but has additional power features inspired by languages like Python, Ruby and Smalltalk
· Adds modern programming features to Java
· Supports Domain Specific Languages
· Increases developer productivity
· Simplifies testing
· Compiles straight to Java bytecode
What's New in This Release: [ read full changelog ]
· @DelegatesTo annotation: to help IDEs and the static type checker and compiler to know that method calls in a method parameter closure are delegated to another parameter of the method -- nice for DSLs like in Gradle build files.
· Custom type checking extensions: so you can type check your DSLs at compile-time with your own logic.
· A meta-annotation system: which allows you to define a new annotation actually combining several others -- which also means being able to apply several AST transformations with a single custom annotation.
· Custom base script class flag for the groovyc compiler: to set a base script class when compiling Groovy scripts.
· Compiler configuration script: to let you define various configuration options for the Groovy compiler, like specifying custom file extensions, various compilation customizers to apply, etc..