An agile dynamic language for the Java Platform with many features that are inspired by languages like Python, Ruby and Smalltalk, making them available to Java developers using a Java-like syntax. Developing web applications , writing shell scripts easily, writing concise, meaningful, test cases using Groovy's JUnit integration, or prototyping and producing real industrial strength applications have never been so concise and groovy. Groovy works cleanly with all existing Java objects and libraries and compiles straight to Java bytecode in either application development or scripting mode. A simple hello world script: | Code Block |
|---|
def name='World'; println "Hello ${name}!"
|
A more sophisticated version using Object Orientation: | Code Block |
|---|
class Greeter {
def name
Greeter(who) {
name = who[0].toUpperCase() + who[1..-1]
}
def salute() { println "Hello ${name}!" }
}
g = new Greeter('world') // create object
g.salute() // Output "Hello World!"
|
Leveraging existing Java libraries: | Code Block |
|---|
import org.apache.commons.lang.WordUtils
class Greeter {
def name
Greeter(who) { name = WordUtils.capitalize(who) }
def salute() { println "Hello ${name}!" }
}
g = new Greeter('world') // create object
g.salute() // Output "Hello World!"
|
|