A powerful Groovy-based web application framework for the JVM
A powerful Groovy-based web application framework for the JVM
Customer Reviews
Kazik P.
Advanced user of GrailsGrails was designed to give the power of Ruby on Rails programming style to Java developers. This model means extremely fast prototyping of web user interfaces based on domain model. It was not possible to achieve it in pure Java though, therefore Grails is based on Groovy, which added lots of cool features at the time: dynamic invocations, closures, more functional programming style. While staying on JVM, Groovy can still benefit from all the Java libraries already available on the market.
The competitive advantages of Grails seem to fade over time. Ruby on Rails is not that popular anymore, since dynamic web applications are rather executing their logic browser side (react), than server side. Also features of Groovy, like closures, are effectively replaced by lambdas in Java 8, syntactic sugar of Doman Specific Languages in Kotin, and evolution of spring framework components like spring-boot.
Grails was used as a base technology in the startup I was working on. It allowed us to easily translate business requirements into domain model, with minimal verbosity. Such a model was shared between several teams as a common vocabulary. It would be hard to achieve it without Grails. But it also resulted in terribly monolit software architecture over time, which was very difficult to untangle. Therefore we started to slowly phase out our Gradle monolit with small microservices. I would still consider using Gradle for a very small project, like a custom database with interface. It can be prototyped in Gradle in minutes.