Introduction
  • Introduction and Goals for this course
  • What is Groovy?
  • Source Code
  • The Groovy Website & Documentation
  • Groovy Books & Additional Resources
  • How to get the most out of this course
  • Join my community
Getting Started
  • Intro
  • Installing the Java JDK on Windows
  • Installing the Java JDK on Mac OSX
  • Installing Groovy on Windows
  • SDKMAN
  • groovysh
  • groovyc
  • Groovy Console
  • Hello, IntelliJ
  • [Exercise] 3 ways to Hello Groovy
  • [Exercise Review] 3 ways to Hello, Groovy
  • From Java to Groovy
  • Getting Started With Groovy
Groovy Basics
  • Intro
  • Imports
  • Keywords
  • Comments
  • Assertions
  • Scripts
  • Classes
  • [Exercise] Create Your own Class
  • [Exercise Review] Create your own Class
  • Numbers
  • Groovy Control Structure
  • Annotations & AST Transformations
  • [Exercise] Using AST Transformations
  • [Exercise Review] Using AST Transformations
  • Operators
  • Grapes
  • Learning Groovy Basics
Simple Data Types
  • Data Types Intro
  • Java Data Types
  • Groovy Data Types & Optional Typing
  • Data Types
  • Working with numbers
  • Operator Overloading
  • [Exercise] Operator Overloading
  • [Exercise Review] Operator Overloading
  • Strings
  • Regular Expressions
Collections
  • Collections Intro
  • Ranges
  • Lists
  • Maps
  • [Exercise] Using Collections
  • [Exercise Review] Using Collections
Closures
  • Intro
  • What are Closures?
  • Creating Closures
  • Closure Parameters
  • Closure Quiz
  • Collections Methods
  • Curry Methods
  • Closure Scope & Delegates
  • [Exercise] Using Closures
  • [Exercise Review] Using Closures
Control Structures
  • Intro
  • The Groovy Truth
  • The Groovy Truth
  • Conditional Structures
  • Looping
  • Exception Handling
  • [Exercise] Control Structures
  • [Exercise Review] Control Structures
Object Oriented Programming (OOP)
  • Intro
  • Classes / Fields / Local Variables
  • Constructors & Methods
  • Organizing Classes into Packages
  • Classes Quiz
  • Inheritance
  • Interfaces
  • Traits
  • Groovy Beans
  • [Exercise] What makes up a class
  • [Exercise Review] What makes a class
Runtime MetaProgramming
  • Intro to Runtime Metaprogramming
  • Meta Object Protocol (MOP)
  • Customizing the MOP
  • MetaClass
  • Runtime Metaprogramming
  • Category Classes
  • Intercept / Cache / Invoke Pattern
  • [Exercise] Runtime Metaprogramming
  • [Exercise Review] Runtime Metaprogramming