Groovy/Grails for Programmers

Course:  GRAIL
Duration:  5 Days
Level:  II
Course Summary

This course teaches the student Object Oriented Development, the Groovy language, and the Grails Web Development Framework. Through lecture with Q&A, the student will learn how to create applications for current technology. The workshops will reinforce what they have learned and let them practice and apply the technology. Techniques will be used to bridge Cobol, C, Java, and PL/SQL experience to the Groovy/Grails development tasks and syntax. Incremental and Iterative programming practices will be included to insure successful application of the topics after course completion.

« Hide The Details
Topics Covered In This Course

Technology Overview

  • Software History and Trends
  • Migrating from linear code to object code
  • UML for the Big Picture
  • Motivating factors

Groovy Overview

  • The Groovy story
  • Running Groovy
  • Compiling and running Groovy
  • Groovy IDE and editor support

Groovy Basics

  • General code appearance
  • Probing the language with assertions
  • Groovy?s place in the Java environment

Simple Datatypes

  • Objects, objects everywhere
  • The concept of optional typing
  • Overriding operators
  • Strings
  • Regular expressions
  • Numbers

Collective Datatypes

  • Ranges
  • Lists
  • Maps
  • Collections

Working with Closures

  • Introduction to closures
  • The case for closures
  • Declaring closures
  • Using closures
  • Understanding scoping
  • Returning from closures
  • Support for design patterns

Control Structures

  • Conditional execution structures
  • Looping
  • Exiting blocks and methods

Database Programming

  • Basic database operations
  • DataSets for SQL without SQL
  • Organizing database work
  • Groovy and Object Relational Mapping

Unit Testing

  • Getting started
  • Unit-testing Groovy code
  • Organizing tests
  • IDE integration

Grails Overview

  • The Big Picture
  • Laying out the domain model
  • Implementing the domain model
  • Customizing the views
  • Working with controllers and finder methods
  • Elaborating the model
  • Working with the session

Modeling the Grails Domain

  • First domain class object
  • Validation
  • Defining the data model?1:1, 1:m, m:n

Putting the Grails Model to Work

  • Creating instant UIs with scaffolding
  • Groovy querying with dynamic finders and Query by Example
  • Bootstrapping reference data

Controlling the Grails Application Flow

  • Controller essentials
  • Services: making things robust and maintainable
  • Data binding
  • Command objects
  • Working with images
  • Intercepting requests with filters
  • Creating custom URL mappings

Developing Professional Views, Forms, and Layouts

  • Understanding the core form tags
  • Extending views with custom tags
  • Adding delicious layouts
  • Applying Ajax tags

Testing Grails Applications

  • Unit testing
  • Integration testing
  • Functional testing
What You Can Expect

At the end of this course, students will be able to:

  • Understand Object Orientation
  • Use Groovy data types
  • Work with Closures
  • Use Control Structures
  • Use Groovy to access Databases
  • Understand Unit Testing and Build Support
  • Create a Grails Model
  • Understand Grails Controllers
  • Create Views, Forms, and Layouts
  • Test Grails Applications
  • Build web applications using Grails.
  • Understand Convention over Configuration
Who Should Take This Course

Programmers who do not have Groovy/Grails experience.

Recommended Prerequisites

Programming experience.

Training Style

Instructor led with 50% lecture and 50% lab.

« Hide The Details

Every student attending a Verhoef Training class will receive a certificate good for $100 toward their next public class taken within a year.

You can also buy "Verhoef Vouchers" to get a discounted rate for a single student in any of our public or web-based classes. Contact your account manager or our sales office for details.

Schedule For This Course
There are currently no public sessions scheduled for this course. We can schedule a private class for your organization just a couple of weeks from now. Or we can let you know the next time we do schedule a public session.
Notify me the next time this course is confirmed!
Can't find the course you want?
Call us at 800.533.3893, or
email us at [email protected]