Neem contact met ons op

Cursusaanbod

Inleiding tot Groovy

  • Inleiding tot Apache Groovy
  • Geschiedenis en evolutie van Groovy
  • Groovy en de Java Virtual Machine
  • Groovy als scripting- en programmeertaal
  • Veelvoorkomende toepassingsscenario's van Groovy
  • Groovy in Java-gebaseerde projecten
  • Voordeelen van het combineren van Groovy met Java
  • Overzicht van de voorbeeldapplicatie

Overzicht van Groovy-functies

  • Dynamische typebepaling en optionele statische typebepaling
  • Scripting-capaciteiten van Groovy
  • Compacte syntaxis en taalverbeteringen
  • Closures en functionele programmering
  • Groovy-collecties en uitgebreide APIs
  • Bewerkingen overladen (operator overloading)
  • String-interpolatie
  • Veilige navigatie en de Elvis-operator
  • Ontwikkeling van domeinspecifieke talen
  • Meta-programmeringsmogelijkheden
  • Groovy Development Kit (GDK)

De ontwikkelomgeving instellen

  • Installatie en configuratie van Groovy
  • Werkzaamheden met Groovy-distributies
  • Groovy gebruiken via de command line
  • Groovy-scripts uitvoeren
  • Een IDE instellen
  • Een Groovy-project aanmaken
  • Afhankelijkheden beheren
  • Groovy integreren met Java-projecten
  • De ontwikkelomgeving configureren voor containers

Je eerste Groovy-toepassing schrijven

  • Een basis-Groovy-script aanmaken
  • De structuur van Groovy-scripts begrijpen
  • Groovy-toepassingen uitvoeren
  • Gebruik van de println-statement
  • Werk met variabelen
  • Methodes definiëren
  • Commentaar en documentatie toevoegen
  • Een eenvoudige voorbeeldapplicatie bouwen
  • Groovy-code compileren

Vertraagd raken met de Groovy-syntaxis

  • Groovy-statements en expressies
  • Puntkomma's en optionele syntaxis-elementen
  • Variabelen en constanten
  • Dynamische en expliciete typebepaling
  • String-literals en interpolatie
  • Enkele en meervoudige regels strings
  • Operatoren en expressies
  • Groovy-operatoren en sneltoetsen
  • Null-verwerking
  • Veilige navigatie
  • Elvis-operator
  • Meervoudige toewijzing

Gebruik van Groovy-datatypen en collecties

  • Primitieve en objecttypen
  • Getallen en numerieke bewerkingen
  • Strings en tekens
  • Booleaanse waarden
  • Datums en tijdgerelateerde waarden
  • Lists
  • Maps
  • Sets
  • Ranges
  • Itereren over collecties
  • Transformaties van collecties
  • Filteren en zoeken in collecties
  • Sorteren en groeperen van data
  • Groovy-collectiemethoden

Gebruik van Groovy-closures

  • Closures begrijpen
  • Syntaxis van closures
  • Parameters van closures
  • Impliciete parameters van closures
  • Closures aanroepen
  • Closures als variabelen
  • Closures doorgeven aan methoden
  • Closures teruggeven vanuit methoden
  • Closures en collecties
  • Closures gebruiken voor filtering en transformatie
  • Bereik (scope) en variabelen vangen
  • Closures voor functionele programmering
  • Praktische closure-patronen

Beheersing van de programmaflow met Groovy-besturingsstructuren

  • Conditionele statements
  • if en else
  • Negestelde condities
  • switch-statements
  • Loops en iteratie
  • for, while en do-while
  • Ranges in loops
  • Closures gebruiken voor iteratie
  • break en continue
  • Uitzonderingsverwerking
  • try, catch en finally
  • Eigen uitzonderingen gooien
  • Groovy-specifieke besturingsfuncties

Implementeren van Object-Georiënteerde Programmering (OOP) in je applicatie

  • Groovy-classes definiëren
  • Eigenschappen en velden
  • Constructors
  • Methoden
  • Encapsulatie
  • Erfenis (inheritance)
  • Interfaces
  • Abstracte classes
  • Polymorfisme
  • Methoden overschrijven (overriding)
  • Methoden overladen (overloading)
  • Groovy-getters en setters
  • Traits
  • Enums
  • Domeinmodellen creëren voor de voorbeeldapplicatie

Runtime- en Compile-time Meta-programmering

  • Inleiding tot Groovy-meta-programmering
  • Dynamische methodaanroep
  • Expando-objects
  • Manipulatie van methoden en eigenschappen op runtime
  • Categories en extensies
  • MetaClass
  • Methoden dynamisch toevoegen
  • Intercepteren van methodaanroepen
  • Compile-time-transformaties
  • Veelvoorkomende AST-transformaties
  • Verantwoord omgaan met meta-programmering
  • Praktische voorbeelden van meta-programmering

Werk met Builders

  • Inleiding tot het builder-patroon
  • Groovy-builders en hun doel
  • Hierarchische structuren creëren
  • XML-builders
  • JSON-builders
  • HTML- en markupgeneratie
  • De output van builders configureren
  • Closures gebruiken met builders
  • Eigen builders creëren
  • Builders toepassen in domeinspecifieke talen

Een database benaderen met Groovy

  • Begrippen rond databankconnectiviteit
  • Verbinden van Groovy-toepassingen met databases
  • JDBC en Groovy-database-API's
  • Databaseverbindingen configureren
  • SQL-query's uitvoeren
  • Lezen van queryresultaten
  • Inserties, updates en verwijderingen van data
  • Parameterized queries
  • Transacties
  • Verwerken van database-uitzonderingen
  • Werkzaamheden met Groovy SQL
  • Databankfuncties bouwen voor de voorbeeldapplicatie

Java aanroepen vanuit Groovy

  • Interoperabiliteit tussen Groovy en Java
  • Java-classes gebruiken in Groovy
  • Java-methoden aanroepen
  • Werk met Java-bibliotheken
  • Java-collecties gebruiken
  • Java-uitzonderingen verwerken
  • Groovy-syntaxis vergeleken met Java-syntaxis
  • Groovy-code aanroepen vanuit Java
  • Groovy- en Java-bronbestanden mengen
  • Groovy integreren in bestaande Java-toepassingen
  • Best practices voor interoperabiliteit

Verbinden met REST-services en toepassingen

  • Inleiding tot REST-API's
  • HTTP-begrippen voor Groovy-toepassingen
  • HTTP-verzoeken verzenden
  • Verwerken van GET-, POST-, PUT- en DELETE-operaties
  • Werk met verzoekparameters en headers
  • Verwerken van JSON-responses
  • JSON-verzoeklichamen opbouwen
  • Authenticatie verwerken
  • HTTP-fouten beheren
  • Externe REST-services gebruiken
  • REST-functies integreren in de voorbeeldapplicatie

Werk met de GDK

  • Inleiding tot de Groovy Development Kit
  • Uitgebreide Java-API's
  • Werk met strings
  • Uitgebreide collecties
  • Bestands- en mapperoperaties
  • Bestanden lezen en schrijven
  • Werk met streams
  • Verwerken van XML
  • Verwerken van JSON
  • Werk met data en tijd
  • Hulpmethoden en handige APIs
  • Kies de juiste GDK-functionaliteit

Unit testen van een Groovy-toepassing

  • Inleiding tot het testen van Groovy-toepassingen
  • Begrippen rond testgedreven ontwikkeling
  • Unit tests schrijven
  • Testing frameworks gebruiken
  • Testclasses structureren
  • Assertions
  • Classes en methoden testen
  • Closures testen
  • Uitzonderingen testen
  • Dependencies mocken
  • Data-gedreven testing
  • Databankgerelateerde functionaliteit testen
  • REST-integraties testen
  • Testresultaten uitvoeren en analyseren

Problemen opsporen en oplossen (Troubleshooting)

  • Groovy-syntaxisfouten diagnostiseren
  • Runtime-fouten debuggen
  • Compilatieproblemen verwerken
  • Problemen met Java-interoperabiliteit oplossen
  • Closures en collectieoperaties debuggen
  • Databankconnectiviteitsproblemen onderzoeken
  • Problemen met REST-API-integraties oplossen
  • Meta-programmeergedrag debuggen
  • Logging en diagnostische tools gebruiken
  • Praktische troubleshooting-oefeningen

Samenvatting en afsluiting

  • Herziening van de fundamenten van de Groovy-taal
  • Herziening van syntaxis, typen en collecties
  • Herziening van closures en functionele programmering
  • Herziening van object-georiënteerde programmering
  • Herziening van meta-programmering en builders
  • Herziening van databank- en REST-integratie
  • Herziening van Groovy- en Java-interoperabiliteit
  • Herziening van GDK-capaciteiten
  • Herziening van testpraktijken
  • Best practices voor het ontwikkelen van Groovy-toepassingen
  • Eind-oefening met hands-on component
  • Vragen en discussie

Vereisten

  • Programmeerervaring in een willekeurige programmeertaal
 21 Uren

Aantal deelnemers


Prijs per deelnemer

Getuigenissen (1)

Voorlopige Aankomende Cursussen

Gerelateerde categorieën