Kurs om

Grundkurs i Groovy

Kurs om hur du programmerar i Groovy

Groovy är en naturlig vidare-utveckling av Java. Man skulle kunna säga att Groovy är "Java++". Det är väldigt enkelt att från ett Java program börja med Groovy och steg-för-steg göra det mysigare (eng. groovy = mysig).

Det intressanta med en sådan övning är att se hur mycket onödig kod det finns i ett Java program. Det är också mycket enkelt att bädda in Groovy i en befintlig Java applikation.

Snabbfakta

Namn
Grundkurs i Groovy
Ämne
Java & JVM språk
URI
jvm/groovy-basics
Längd
3 dagar
Nivå
Beginner
Målgrupp
Java programmerare
Förkunskaper
Rutinerad i Java programmering
Programvara & Verktyg
  • Java JDK, version 11 eller senare
  • SDKMAN
  • Groovy
  • MS Visual Code || JetBrains IntelliJ IDEA

Kursdatum

Här ser du vilka kursdatum som är tillgängliga. Klicka på en av datumknapparna för att anmäla dig till ett kurstillfälle. På kursen pratar läraren svenska, medan vårt kursmaterial alltid är författat på engelska.

Fjärrkurs

Du sitter bekvämt framför datorn och deltar i kursen via internet. Vi använder programvaran Zoom för alla våra fjärrkurser.

I priset ingår kursmaterial som PDF.

Pris: 15 000 kr + moms

Klassrumskurs

Du sitter bekvämt i ett av våra klassrum, vilka finns centralt placerade i Stockholms innerstad (Östermalmstorg).

I priset ingår tryckt kursmaterial (och som PDF), samt kaffe/te med smörgås på förmiddagen och kaffe/te med bulle på eftermiddagen.

Pris: 20 000 kr + moms

Just nu finns det inga datum tillgängligt. Titta förbi om några dagar eller kontakta oss.

Företagsanpassad Kurs

Om ni är tre eller fler personer från samma företags, kan ni beställa en företagsanpassad kurs. Då håller vi kursen på ett datum som passar er. Antingen på plats i era lokaler eller som en fjärrkurs. Vi kan också hålla den muntliga framställningen på engelska. Klicka på knappen nedan för att be om en offert.

Detta får du lära dig

Här är ett sammandrag i punktform av vad du får lära dig på kursen. Eftersom kursmaterialet är författat på engelska, så återger vi sammandraget också på engelska.

  • Use Groovy's data types and operators
  • Use Groovy closures
  • Apply meta-programming
  • Use and create Groovy builders
  • Process XML and JSON

Kursinnehåll

Eftersom kursmaterialet är författat på engelska, så återger vi innehållet också på engelska.

Background & Overview

  • What is a JVM language
  • Why is Groovy so much better than Java
  • Installation of Groovy

Basic Syntax

  • Skip semicolons and stuff
  • Duck typing
  • Groovy strings
  • Groovy beans

Groovy Data-Types

  • Lists
  • Maps
  • Ranges
  • Regexes

Groovy Operators

  • Null-catch operator
  • Elvis operator
  • Spread operator
  • Spaceship operator
  • The as operator
  • Operator overloading
  • The versatile switch statement

Closures

  • What is a closure
  • Syntax
  • How to deal with free variables
  • Higher order functions
  • Currying

Meta-Programming

  • Inspection
  • Groovy meta-class
  • How to add new functions to old classes
  • How to implement dynamic methods
  • Use of expandos
  • Use of GPath

Java API made Groovier

  • Overview
  • Iteration methods
  • Text manipulation
  • Dates and times
  • Easy file handling
  • Threads and processes

Groovy Annotations

  • Overview of AST processing
  • ToString
  • EqualsAndHashCode
  • TupleConstructor
  • Canonical
  • Immutable
  • Singleton
  • Sortable

Grape

  • How to download and cache 3:rd party libraries
  • Grape annotations
  • Configuration
  • Using the system class-loader
  • The grape command-line tool

Groovy Shell Scripts

  • What is groovy script
  • Making it into a shell script
  • Getting command-line arguments

Embedded Groovy

  • Invoking Groovy from a Java program
  • Java 8 syntax not supported
  • Mixing Java and Groovy in the same call hierarchy
  • Evaluating dynamic Groovy expressions
  • Using the GroovyShell class

Groovy Builders

  • What is a builder and why should I bother
  • ObjectGraph Builder
  • FileTree Builder
  • Swing Builder
  • Ant Builder
  • How to implement your own builder

Processing XML

  • Generating XML
  • Reading/parsing XML

Processing JSON

  • Generating JSON
  • Reading/parsing JSON

Working with Databases

  • Fetching the JDBC driver using Grape
  • Creating a Sql object
  • CRUD DB operations
  • Using an in-memory database

Processing MS Excel

  • Apache POI
  • Generating YaML from Excel

Short about GPars

  • What is GPars
  • Concurrency for a modern world

Short about Gradle

  • What is Gradle
  • Smart build-tool for JVM languages and C/C++

Short about Spock and Geb

  • What is Spock
  • Unit testing done right
  • Short about Grails
  • What is Grails
  • Build modern web-apps in a jiffy

Groovy Frameworks

  • Griffon
  • Ratpack
  • Jenkins
  • SdkMan
  • GrooScript