2. ‣ Builds upon the strengths of Java but has additional power features
inspired by languages like Python, Ruby and Smalltalk
‣ Makes modern programming features available to Java developers with
almost-zero learning curve
‣ Supports Domain-Specific Languages and other compact syntax so your
code becomes easy to read and maintain
‣ Simplifies testing by supporting unit testing and mocking out-of-the-box
‣ Seamlessly integrates with all existing Java objects and libraries
‣ Compiles straight to Java bytecode so you can use it anywhere you can use Java
3.
4.
5. "Groovy is like a super version
of Java. It can leverage Java's
enterprise capabilities but also
has cool productivity features
like closures, builders and
dynamic typing. If you are a
developer, tester or script guru,
you have to love Groovy."
9. Development modes (development, test, production, custom)
• Built-in web server
• Hot deploy / class reloading without restarting the server
• ORM (Object Relational Mapping)
• Lots of plugins, that can be downloaded from the command line / plugin
manager
• Simple routing configuration
• Model, view, controller, and test generators
• Active community
• Easy to learn
• Full stack frameworks
• Console (groovysh / groovyConsole)
• Easy to configure
• Builders
• Very easy to create tags / reusable HTML components
• Convention over Configuration
10. Services
Classes which contain business logic but are not
necessarily tied to a specific domain class (ie. model)
11. Services
Classes which contain business logic but are not
necessarily tied to a specific domain class (ie. model)
No Migrations
SQL generation is done through the domain class. You define how the
domain class should be structured, and the SQL is generated.
12. Services
Classes which contain business logic but are not
necessarily tied to a specific domain class (ie. model)
No Migrations
SQL generation is done through the domain class. You define how the
domain class should be structured, and the SQL is generated.
Plugins
Plugins written for Grails are simply Grails applications that override
existing code. Similar to Rails Engines, but done right.
13. Services
Classes which contain business logic but are not
necessarily tied to a specific domain class (ie. model)
No Migrations
SQL generation is done through the domain class. You define how the
domain class should be structured, and the SQL is generated.
Plugins
Plugins written for Grails are simply Grails applications that override
existing code. Similar to Rails Engines, but done right.
Java Integration
Any Java jars or code libraries can be used within the Grails application
easily.