Why is Groovy gaining popularity among Java developers?

Why is Groovy gaining popularity among Java developers?

Groovy is a pretty interesting programming language for Java developers, as it has become a perfect complement for this general purpose syntax. As a matter of fact, Groovy introduces interesting features to get where Java cannot. 

30 May. 2018

Today there are developers with knowledge of programming languages that were not a first choice over a decade ago. Two interesting examples of this situation are Python and Ruby, which are two syntaxes that have attracted a lot of attention from the programming community in recent years. While these languages are beginning to become more popular, there are other general purpose languages that largely continue to be the basis for many development projects. One is Java. Other languages have emerged around these syntaxes that aim to help programmers in adding new features to products (apps). An example for Java is Groovy.

If we do a quick search on Google Trends, which is a service that measures the level of real-time searches for certain keywords, the upward trend in Python and Ruby is obvious as well as the downward trend for Java. 

The TIOBE ranking is one of the most consulted when assessing the impact of different programming languages within the developer community. In addition, this index has been evaluating these factors for quite some time and the track record provides a great deal of reference value and context. Java, C and C++ have been the most widely-used programming languages for a long time. In the case of Java, the complementary value of a syntax like Groovy aid them to maintain their dominance. 

Apache Groovy is an object-oriented dynamic programming language for Java virtual machine (JVM). What is it usually used for? Groovy is a Java enhancer because it provides greater flexibility and even introduces special features to applications (those that have already been developed can be improved or they can be made from scratch). Groovy is a Java-like syntax, but with the ease of more moldable languages like Python and Ruby. Groovy has several interesting features:

● Support for static and dynamic typing: statically typed languages are those in which type checking is done at the compiling stage and not during execution. Java is a general purpose statically typed language. Dynamic typing syntaxes such as Groovy are those in which the check is performed during execution. Python is another example. Groovy allows developers to introduce this typing within Java.

● Concise, brief, direct syntax: this allows developers that use Groovy to develop projects faster and easier.   

● Relatively short learning curve: this is a relatively simple language like Python or Ruby. It is easy for developers to learn. 

● Support for unit testing: Groovy is a testing-oriented development language. In fact, it is a syntax that provides support for running tests in integrated development environments (IDEs), Ant or Maven, which are all application programming tools in Java.

● Native support for regular expressions: the Groovy syntax for creating regular expressions is really simple. This programming language has three operators for regular expressions:

-       The operator regex =~.

-       The operator match ==~.

-       The pattern operator ~String.

● Native syntax for lists and associative arrays: in programming, arrays are usually assigned to variables. These variables are often associated to data. Developers sometimes associate that information through various elements of the array through a common thread called index. That way of structuring information with programming is called associative array.

● Native support for markup languages like XML and HTML.

● Support for domain specific languages: a domain specific language is a programming language or a specification dedicated to solving specific problems, through a specific technique. A general purpose syntax such as Java, C or C++ is the opposite. Somehow it provides general structure to solve global situations. 

How to download and install Groovy

Any developer who wants to start tinkering with Groovy needs to download the development environment in this syntax. This programming language is now in release 2.4 and has been available to the programming community since mid-June 2016. The first thing to do is to download the distribution, which is accompanied by all the documentation on Groovy. All the code and reference material is ready to be downloaded in the Bintray repository. Here is the distribution with the installer for Windows, Microsoft's operating system. 

If you do not have a Windows computer, it is possible to use SDKMAN, the Administrator of the Software Development Kit for Mac OS X or Linux operating systems. Installation is done through curl, the library of functions to connect servers and facilitate working with them. To install the SDK, here are some simple instructions to do this seamlessly. Once downloaded, the entire project construction process (from compilation or testing) to managing the actual dependencies can be done with Gradle, which is based on the Groovy programming language itself.

Are you interested in financial APIs? Discover all the APIs we can offer you at BBVA


Sign up!

Sign up to the BBVAOPEN4U newsletter and receive tips, tools and the most innovative events directly in your inbox.