Rachel Rachel - 1 month ago 10
Groovy Question

What are "Groovy" and "Grails" and what kinds of applications are built using them?

Nowadays I hear a lot about "Groovy on Grails" and I want to know more about it:


  • What is Groovy?

  • What is Grails?

  • What kind of applications are built using Groovy on Grails?


Answer
  1. What is Groovy on Grails?

    It doesn't exist under this name anymore. It's simply called Grails now.

  2. What is Groovy?

    Originally, a dynamic language for the JVM. However, since Groovy 2.0, both static and dynamic typing are supported.

  3. What is Grails?

    Grails (previously known as "Groovy on Grails") is a programming framework based on Groovy and inspired by Ruby on Rails (there are differences, but there are lots of similarities too). Like RoR, Grails promotes "coding by convention", development best practices, and is meant to be highly productive.

  4. What kind of Applications are built using "Groovy on Grails"?

    Grails is used to build web applications that run on the JVM.

  5. What are the advantages of Groovy on Grails?

    High productivity, focusing on business instead of plumbing. (Note that I wouldn't recommend to use Grails with an existing data model. The reason behind this is that Grails encourages a top-down approach where the databases ER model arises as result of the Domain classes. If you are using a legacy database, you cannot take this approach. You must map the database to the domain classes, and probably the naming convention won't match, making necessary the use of hbm.xml Hibernate configuration files or annotations. IMO, this is not a trivial change in the workflow, it can become really cumbersome and you end up losing most of the advantages of Grails.)

  6. Why would one want to use Groovy on Grails when we have standard programming languages like C/C++, Java/J2EE, and .NET/C#?

    Because of point 5.