Kurs i Groovy

Kurs i Groovy programmering

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
Detta får du lära dig
  • Använda Groovy's datatyper och operatorer
  • Använda Groovy closures
  • Tillämpa meta-programmering
  • Använda och skapa Groovy builders
  • Processa XML och JSON
Kursinnehåll

Background and 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
  • 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
SnabbFakta
NamnGroovy
Längd3 Dagar
NivåBeginner
MålgruppJava programmerare
FörkunskaperPraktiska kunskaper i Java programmering
Verktyg
  • Groovy
  • JetBrains Intellij IDEA
  • Java JDK, version 8+
KursDatum
DatumPlats Pris
2020-01-27Stockholm 19 000 kr
2020-02-17Stockholm 19 000 kr
2020-03-09Stockholm 19 000 kr
2020-03-30Stockholm 19 000 kr
2020-04-14Stockholm 19 000 kr
2020-05-25Stockholm 19 000 kr
2020-06-15Stockholm 19 000 kr

Samma-Företags Rabatt

Vi ger 20% rabatt för tillkommande deltagare från samma företag vid samma kurs-tillfälle. Läs mer här.

Undervisningsspråk

Vårt tryckta kursmaterial är alltid författat på engelska. Den muntliga presentationen i våra klassrum är som regel på svenska, såvida inte samtliga deltagare samtycker till att vi genomför kursen på engelska.

Företagsintern Kurs

Om du beställer en företagsintern kurs kommer vi till er och håller kursen i era lokaler. Priset bestäms av vår prismodell och baseras på antalet kursdagar, antalet deltagare, samt i förekommande fall resa och logi.

Läs mer om vår prismodell och beställningsvillkor här.

Relaterade Kurser
KursDagarNivå
Spock Testning1IntermediateVisa
Grails Webbapplikationer5BeginnerVisa