Groovy and Grails Application
Development (with
Passion!)
Groovy
is the leading open source dynamic language for the Java Virtual
Machine that offers a flexible Java-like syntax that most Java
developers can learn in matter of hours. Groovy
provides features seen in other dynamic languages like Ruby, Python or
Smalltalk. Groovy really shines in its ability to easily define
internal Domain Specific Languages (DSLs) that can be used as an
abstraction layer that enables non-technical subject matter experts to
codify business rules.
Grails is an advanced and
innovative open source
web application platform that delivers new levels of developer
productivity by applying principles like Convention over Configuration.
Grails helps development
teams
embrace agile methodologies, deliver quality applications in reduced
amounts of time, and focus on what really matters: creating high
quality, easy to use applications that delight users. Grails naturally
complements Java application development since it is built on Spring
and based on Groovy, the leading dynamic language for the Java platform.
The combination of Groovy and Grails offers productivity benefits
rivaling Ruby on Rails, but on the proven, scalable, and seamlessly
integrated Java platform.
Message to potential
attendees
Announcement
from Sang Shin
(Feb. 1st, 2010): In the near future, the
courses in javapassion.com will be available as a subscription-based
service. (Yes, it is a painful decision on my part.) If you want
to
receive course announcement in the future, please send an blank email
to javapassion-announcement+subscribe@googlegroups.com.
If you have any further questions, please see http://www.javapassion.com/coursefaq.html#conversion.
How to register for
this course
In order to register for this course, all you have to do is sending
a blank email to the following email address.
Basically, when you send a blank email to the above, you are
subscribing our
class
forum. This forum can be used for posting
questions/answers. Please use this forum for all class related
communication (technical or non-technical).
If you have any further questions on this course, please see the course
FAQ below . Please read thie FAQ first
before you post a question to the course email alias.
Topics
and Schedule
Note
that only the topics
with the
dates assigned will be covered in this
course. (You need to submit homeworks only on the topics that have
dates.)
Given that this is the
first time this course is being offered, the topics and dates are
subject to change as we move along!
- Groovy Basics -
- Groovy Blocks and
Closures -
- Groovy Builders -
- Groovy
Meta-programming
-
- Scaffolding -
- Grails Basics -
- GORM (Application Domain) Basics -
- GORM Associations
Basics
-
- Grails Controller Basics
-
- Groovy Server Pages Basics -
- RESTful Grails -
- Testing -
- Ajax
support -
- Deployment
-
- Security -
- Reporting -
- Spring integration -
- Griffon -
Groovy Basics
- Presentation
- PDF:
1 slide per page
- OpenOffice
file
- Lab and homework
- 5610_Groovy_basics.zip
(Unzip it in a directory of your
choice
and read lab document from
<unzip-directory>/Groovy_basics/index.html to proceed)
- Online
lab document (This is the same document you will find in
the hands-on lab zip file)
- Homework
- Change
Log
- Resources
- Web sites
- Tutorials
- Tutorials using NetBeans
- "Groovy and Grails"
combined Presentations
- "Groovy" only presentations
- Groovy
presentation by Jussi Riihela (April 2006)
return
to topics
Groovy
Blocks and Closures
- Presentation
- PDF:
1 slide per page
- OpenOffice
file
- Lab and homework
- 5612_Groovy_blocks.zip
(Unzip it in a directory of your
choice
and read lab document from
<unzip-directory>/Groovy_blocks/index.html to proceed)
- Online
lab document (This is the same document you will find in
the hands-on lab zip file)
- Homework
- Change
Log
- Resources
return
to topics
Groovy Meta
Programming
- Presentation
- Lab and homework
- 5611_Groovy_meta.zip
(Unzip it in a directory of your
choice
and read lab document from
<unzip-directory>/Groovy_meta/index.html to proceed)
- Online
lab document (This is the same document you will find in
the hands-on lab zip file)
- Homework
- Change
Log
- Resources
return
to topics
Groovy Builders
- Presentation
- PDF:
1 slide per page
- OpenOffice
file
- Lab and homework
- 5611_Groovy_meta.zip
(Unzip it in a directory of your
choice
and read lab document from
<unzip-directory>/Groovy_meta/index.html to proceed)
- Online
lab document (This is the same document you will find in
the hands-on lab zip file)
- Homework
- Change
Log
- Resources
return
to topics
Scaffolding
- Presentation
- PDF:
1 slide per page
- OpenOffice
file
- Lab and homework
- 5623_Grails_scaffold.zip
(Unzip it in a directory of your
choice
and read lab document from
<unzip-directory>/Grails_scaffold/index.html to proceed)
- Online
lab document (This is the same document you will find in
the hands-on lab zip file)
- Homework
- Change
Log
- Resources
return
to topics
Grails Basics
- Presentation
- PDF:
1 slide per page
- OpenOffice
file
- Lab and homework
- 5621_Grails_basics.zip
(Unzip it in a directory of your
choice
and read lab document from
<unzip-directory>/Grails_basics/index.html to proceed)
- Online
lab document (This is the same document you will find in
the hands-on lab zip file)
- Homework
- Change
Log
- Resources
- Screencasts
- "Groovy and Grails" combined presentations
- "Grails" onlly Presentations
- Grails
presentation by Sven Haiges (Nov. 2008)
- Grails
presentation by Adam Evans
- Tutorials
- Grails and NetBeans tutorials
- Documentations
- Tool support
- Mailing list
return
to topics
GORM Basics
- Presentation
- PDF:
1 slide per page
- OpenOffice
file
- Lab and homework
- 5622_Grails_activerecord.zip
(Unzip it in a directory of your
choice
and read lab document from
<unzip-directory>/jgroovyandgrails_basics/index.html to proceed)
- Online
lab document (This is the same document you will find in
the hands-on lab zip file)
- Homework
- Change
Log
- Resources
return
to topics
GORM Associations
Basics
- Presentation
- PDF:
1 slide per page
- OpenOffice
file
- Lab and homework
- 5625_Grails_associations.zip
(Unzip it in a directory of your
choice
and read lab document from
<unzip-directory>/Grails_associations/index.html to proceed)
- Online
lab document (This is the same document you will find in
the hands-on lab zip file)
- Homework
- Change
Log
- Resources
return
to topics
Grails Controller Basics
- Presentation
- PDF:
1 slide per page
- OpenOffice
file
- Lab and homework
- 5626_Grails_controller.zip
(Unzip it in a directory of your
choice
and read lab document from
<unzip-directory>/Grails_controller/index.html to proceed)
- Online
lab document (This is the same document you will find in
the hands-on lab zip file)
- Homework
- Change
Log
- Resources
return
to topics
Groovy Server Pages Basics
- Pre-class reading material
- Presentation
- Lab and homework
return
to topics
REST Support
- Presentation
- PDF:
1 slide per page
- OpenOffice
file
- Lab and homework
- 5634_Grails_rest.zip
(Unzip it in a directory of your
choice
and read lab document from
<unzip-directory>/Grails_rest/index.html to proceed)
- Online
lab document (This is the same document you will find in
the hands-on lab zip file)
- Homework
- Change
Log
- Resources
return
to topics
Ajax
Topics covered: Ajax/JavaScript
libraries in Grails, PrototypeHelper, ScriptaculousHelper,
JavaScriptMacrosHelper, JavaScript related utility methods, Groovy
JavaScript template
- Presentation
- PDF:
1 slide per page
- OpenOffice
file
- Lab and homework
- 5632_Grails_ajax.zip
(Unzip it in a directory of your
choice
and read lab document from
<unzip-directory>/Grails_ajax/index.html to proceed)
- Online
lab document (This is the same document you will find in
the hands-on lab zip file)
- Homework
- Change
Log
- Resources
return
to topics
Testing
Topics to be covered: Overview of
Grails
testing, Unit testing, Functional testing, Integration testing
- Presentation
- PDF:
1 slide per page
- OpenOffice
file
- Lab and homework
- 5635_Grails_testing.zip
(Unzip it in a directory of your
choice
and read lab document from
<unzip-directory>/Grails_testing/index.html to proceed)
- Online
lab document (This is the same document you will find in
the hands-on lab zip file)
- Homework
- Change
Log
- Resources
return
to topics
Deployment
Topics covered:
- Presentation
- PDF:
1 slide per page
- OpenOffice
file
- Lab and homework
- 5638_Grails_deploy.zip
(Unzip it in a directory of your
choice
and read lab document from
<unzip-directory>/Grails_deploy/index.html to proceed)
- Online
lab document (This is the same document you will find in
the hands-on lab zip file)
- Homework
- Change
Log
- Resources
return
to topics
Security
- Presentation
- PDF:
1 slide per page
- OpenOffice file
- Lab and homework
- 5638_Grailsdeploy.zip
(Unzip it in a directory of your
choice
and read lab document from
<unzip-directory>/Grailsdeploy/index.html to proceed)
- Online
lab document (This is the same document you will find in
the hands-on lab zip file)
- Homework
- Change
Log
- Resources
return
to topics
Reporting
- Presentation
- PDF:
1 slide per page
- OpenOffice file
- Lab and homework
- 5620_jgroovyandgrails_basics.zip
(Unzip it in a directory of your
choice
and read lab document from
<unzip-directory>/jgroovyandgrails_basics/index.html to proceed)
- Online
lab document (This is the same document you will find in
the hands-on lab zip file)
- Homework
- Change
Log
- Resources
return
to topics
Spring Integration
- Presentation
- PDF:
1 slide per page
- OpenOffice file
- Lab and homework
- 5620_jgroovyandgrails_basics.zip
(Unzip it in a directory of your
choice
and read lab document from
<unzip-directory>/jgroovyandgrails_basics/index.html to proceed)
- Online
lab document (This is the same document you will find in
the hands-on lab zip file)
- Homework
- Change
Log
- Resources
return
to topics
Griffon
- Presentation
- PDF:
1 slide per page
- OpenOffice file
- Lab and homework
- 5620_jgroovyandgrails_basics.zip
(Unzip it in a directory of your
choice
and read lab document from
<unzip-directory>/jgroovyandgrails_basics/index.html to proceed)
- Online
lab document (This is the same document you will find in
the hands-on lab zip file)
- Homework
- Change
Log
- Resources
return
to topics