Have you ever wondered as to what these terms are – Ruby, Groovy, Rail and got confused as to what all this is about? Which one to choose? Which one is better and which is not? Well then here is a blog which I write with the intention of making things clear between Ruby on Rails and Groovy on Rails.
Rails was founded by David Hansson and is an open source web application development framework which can produce powerful web applications at a fast pace. It was first released in July 2004. Applications built using Rails automatically inherit the best practices concerning security, performance and stability . It uses a programming pattern called MVC (Model View Controller) that differentiates the business logic (Server) and presentation (Client), adding to the ease of development and maintenance of codes. Even top companies like Twitter, GitHub, Basecamp, YellowPages and Shopify are using Rails.
Grails is one of the most popular open source Java Web Development framework built on Java EE, Spring, Hibernate & Quartz. It was released in 2008 & is now owned by Mware.
Normally when you build any application, you need Database Management, User Interface, Service Layer and Configuration.
Both Rails & Grails framework provides you all these. That’s why it is called full stack. Grails uses Groovy which is an agile, object-oriented & dynamic programming language for JVM(Java Virtual Machine).
If we compare the similarities between Rails & Grails, then both are used for rapid application development which is easy to configure and produce. Both work on principles of convention over configuration, scaffolding and don’t repeat yourself (DRY).
Now comes the tough part of deciding which one to choose. Before we can conclude as to which one to choose let’s first check out the differences between both the frameworks so that we can compare & select the best one out of it based on your preferences:
Rails or Rails
Rails or Grails
|Ruby is a scripting language that is based on C and requires a Ruby interpreter, usually written in C.||Groovy is a scripting language that is based on Java and requires JVM to run it.|
|Rails framework is used for developing Web applications for Ruby.||Grails framework is used for developing web applications for Groovy.|
|Rails can be deployed on servers like FastCGI, Jboss Portal, Mongrel &
|Grails can be deployed on many popular J2EE servers like Tomcat, Jboss, Weblogic, IntelliJ Ultimate, Jetty & GlassFish.|
|It follows database oriented approach.||It follows a domain oriented approach.|
|It supports only dynamic typing.||It supports dynamic as well as static typing.|
|Rails setup is a bit painful, especially on Windows.||Grails is easy to setup.|
|Rails framework is lightweight and requires mediocre memory & CPU.||Grails framework is heavy and requires more memory & strong CPU.|
|Rails ORM is based on ActiveRecord which is limited but is an evolving framework.||Grails ORM is based on Hibernate which is an industrial strength ORM framework.|
|The learning curve is longer than Grails since Rails operate on Database model.||The learning curve is fast for Java developers.|
|It has many successful user stories, including twitter.com, groupon.com etc. It also has lot of job opportunities. It has the highest popularity in StackOverFlow. Most of the questions were already asked and solved.||Grails is quite young as compared to Rails. The community and documentation is not as good as Rails. There are very less job opportunities.
Other factors which will influence your choice are the available career opportunities, community, documentation support, development & deployment time for either one of them.