“See the
light - agile, industrial strength, rapid web application development made easy”
– This is Spring Source’s marketing line for Grails.
For last five
years I am using Groovy / Grails and with each day I am falling more in love
with it. These are the few reasons Groovy / Grails is considered best for agile
web application development:
Rapid development
Grails weaves so much magic around the development that development looks like a fairy tale. “Go fast” is the mantra for agile and with rapid development functionality is quickly available for testing and feedback from the users.
a. Focus on functionality rather than low level stuff – grails framework encapsulate many
low level details from the developers so that they can focus on building
functionality. E.g. with a scaffolding
creating a CRUD pages with pagination, sorting etc. with all the bells
& whistles is 2 minutes job .
b. Plug-in based architecture - open source plug-ins for virtually doing everything. Grails
uses a plug-in based architecture and there is a vast community of plug-in
developers and they are plug-ins available for most common cookie cutter functionality.
c. Conventions over configurations – with grails using conventions over configuration,
the developers have to worry less about configuration files and this makes
applications simpler and maintainable.
d. Legacy code reuse – Groovy is the language on the java platform, this make it simple to
reuse legacy java codes in the grails application.
e. Dependency Resolution – Grails dependency resolution DSL helps to maintain the jars
and plug-in dependencies with in Grails project. With this DSL all the
dependencies can be maintained inside the grails project itself with simplicity.
Grails can use either of Apache Ivy or Aether (Maven) as dependency management
engine.
Quality development
a. TDD – Grails advocates
and support Test Driven Development. Its inbuilt support for the unit tests and
integrations test makes test the application more often.
b. Geb and Spock -Support
of Geb and Spock tests makes testing in grails more robust , easier and faster.
c. Running and Testing application – With embedded web container (Tomcat or Jetty),running and
testing the grails application locally is a extremely easy and with hot
deployments of the code changes the development time is quite reduced.
d. Less code to write so less code to
Review .
Robust- Build on de facto industry standards
(Spring + Hibernate + Java)
a. Groovy is a
dynamic language for the Java Virtual Machine and it is builds upon the
strengths of Java but has additional power. Groovy makes modern programming
features available to Java developers with almost-zero learning curve
b. Grails framework is build on the top of Spring and Hibernate so it provides the features
of these frameworks readily available without any extra effort.
Syntax:
ReplyDeletegrails application development
Marvelous Blog,This Blog Admin Ravi Posting Very Valuable Posting, on Computing, Java, Agile, Big Data, Enterprise Development,From I read A posting about Grails – Tool for Agile development.