Over the years I have worked with many programming languages.
For me, it is important that the language be ‘simple’ enough for me to
keep thinking about the problem that I am trying to solve.
Note that I did not say solution! If one has to think too much on
the mechanics of trying to get the proposed solution to work, we often
lose sight of identifying what the real problem is.
However, the language also has to be able to be handle the difficult
tasks. To quote Larry Wall, Tom Christiansen and Randal L. Schwartz about
Perl:
Perl is designed to make the easy jobs easy, without making the hard jobs
impossible.
This is where Groovy is for me. It can be used
to do one off scripts and basic data munging to coding in full stack
frameworks such as Grails or to an Enterprise build
automation system like Gradle.
When trying to solve a problem, I want to be thinking close to the
problem domain.
For example, reading a file in groovy is as simple as the following:
def fileText = new File('path_to_file').text
Variable fileText now has the content that I am interested
in.
Another example if we want to find all the h4 headings on web page, one
quick texty way could be to use
new URL('http://www.radionz.co.nz/about').text.eachLine {
if (it.contains('h4')) {
println it
}
}
The following provide useful information on learning about the
Groovy Language: