is an agile dynamic language for the Java Platform with many features that inspired languages like Python, Ruby and Smalltalk, making them available to Java developers using a Java-like syntax.
is ideally designed for the following purposes :
- Developing web applications in a quick, concise and fun way. The Grails demonstrates Groovy's capability in this area.
- Bringing the power of a scripting language to the JVM with seamless integration with the Java Platform}
- Writing concise, meaningful, test cases using Groovy's JUnit integration.}
- Prototyping and producing real industrial strength applications}
- Writing shell scripts easily
works cleanly with all existing Java objects and libraries and compiles straight to Java bytecode in either application development or scripting mode.
provides powerful additional :
- language conceptual enhancements
- Support for closures - re-usable blocks of code
- Native syntax for lists and maps
- Support the Gof Builder pattern via the notion of builders
- Syntax level regex operators and escape sequences
- Native JavaBean support
- Operator overloading to simplify working with datatypes Collections and Maps
- Polymorphic iteration and autoboxing
- Extension of Java Standard Library through the GDK
- ...
- useful standard features to enhance developer productivity such as:
- Groovy Markup for XML, DOM, ...
- Groovy Path expression language
- Groovlets for implementing Servlets easily in simple Groovy scripts
- Ant Scripting
- Groovy Categories allow you to add methods to classes with the "use" keyword
- Groovy Template Engines which are pluggable, simple to use, integrate GPath and compile to bytecode
- Groovy SQL for making SQL more Groovy
- great user defined modules
- Grails : Groovy on rails for easy multi-tier application development
- Gram : a simple xdoclet-like tool for processing doclet tags or Java 5 annotations
- COM Scripting
- GroovySWT : wrapper around SWT , the eclipse graphical library
- GSOAP : accessing through groovy web services
- GSP : Groovy server pages
- GSQL : accessing databases through Groovy
- Process : handling external processes
- XMLRPC : the corner stone of Ajax
Labels