Zkuste nás kontaktovat

Návrh Školení

Úvod do jazyka Groovy

  • Úvod do Apache Groovy
  • Historie a vývoj jazyka Groovy
  • Groovy a Java Virtual Machine
  • Groovy jako skriptovací a programovací jazyk
  • Běžné aplikace jazyka Groovy
  • Groovy v projektích založených na Java
  • Výhody použití Groovy vedle Java
  • Přehled ukázkové aplikace

Prehled funkcí jazyka Groovy

  • Dynamické typování a volitelné statické typování
  • Schopnosti skriptování v Groovy
  • Koncisná syntaktika a vylepšeni jazyka
  • Klosures a funkcionální programování
  • Kolekce v Groovy a vylepšené API
  • Pretížení operatorů
  • Interpolace řetězců
  • Bezpečná navigace a Elvis operátor
  • Vývoj doménově specifických jazyků (DSL)
  • Possnosti meta-programování
  • Groovy Development Kit (GDK)

Nastavení vývojového prostředí

  • Instalace a konfigurace Groovy
  • Práce s distribucemi Groovy
  • Používání Groovy z příkazového řádku
  • Spuštění skriptů Groovy
  • Nastavení IDE
  • Vytvoření projektu Groovy
  • Správa závislostí
  • Integrace Groovy do projektů Java
  • Konfigurace vývojového prostředí pro kontejnery

Napsání první aplikace v jazyce Groovy

  • Vytvoření základního skriptu Groovy
  • Pochopení struktury skriptů Groovy
  • Spuštění aplikací Groovy
  • Použití výpisu println
  • Práce s proměnnými
  • Definice metod
  • Přidávání komentářů a dokumentace
  • Sestavení jednoduché ukázkové aplikace
  • Kompilace kódu Groovy

Spoznavani syntaktiky jazyka Groovy

  • Prikazy a vyrazy
  • Stredniky a volitelne syntakticke prvky
  • Promenne a konstanty
  • Dynamické a explicitní typování
  • Řetězcové konstanty a interpolace
  • Jednořádkové a víceřádkové řetězce
  • Operátory a výrazy
  • Operátory Groovy a zkratky
  • Práce s hodnotou null
  • Bezpečná navigace
  • Elvis operátor
  • Víceúrovňové přiřazení

Používání datových typů a kolekce v jazyce Groovy

  • Primitivní a objektové typy
  • Čísla a numerické operace
  • Řetězce a znaky
  • Logické hodnoty (Booleans)
  • Daty a casove hodnoty
  • Seznamy (Lists)
  • Mapy (Maps)
  • Množiny (Sets)
  • Rozsahy (Ranges)
  • Iterace přes kolekce
  • Transformace kolekcí
  • Filtrování a vyhledávání v kolekcích
  • Řazení a skupinování dat
  • Metody kolekce v Groovy

Používání klosur v jazyce Groovy

  • Chápání klosur
  • Syntaktika klosur
  • Parametry klosur
  • Implicitní parametry klosur
  • Volání klosur
  • Klosures jako proměnné
  • Předávání klosur metodám
  • Vracení klosur z metod
  • Klosures a kolekce
  • Použití klosur pro filtrování a transformaci
  • Obor platnosti a chytání proměnných
  • Klosures pro funkcionální programování
  • Praktické vzory klosur

Ovládání toku programu pomocí struktur jazyka Groovy

  • Konditionalni vyrazy
  • Vyrazy if a else
  • Zanoreni podmínek
  • Struktury switch
  • Smyčky a iterace
  • Smyčky for, while a do-while
  • Rozsahy ve smyčkách
  • Použití klosur pro iteraci
  • Prikazy break a continue
  • Zachyceni výjimek
  • Konstrukce try, catch a finally
  • Vyslaní vlastnich výjimek
  • Specifické funkce pro ovládání toku v Groovy

Implementace objektově orientovaného programování (OOP) vaší aplikaci

  • Definice tříd Groovy
  • Vlastnosti a polia
  • Konstruktory
  • Metody
  • Inkapsulace
  • Dedíání
  • Rozhraní (Interfaces)
  • Abstraktní třídy
  • Polymorfismus
  • Pretížení metod (Overriding)
  • Prekazeni metod (Overloading)
  • Gettery a settery v Groovy
  • Traits
  • Perčetacove typy (Enums)
  • Vytváření doménových modelů pro ukázkovou aplikaci

Meta-programování za běhu a v čase kompilace

  • Úvod do meta-programování v Groovy
  • Dynamické volání metod
  • Objekty Expando
  • Manipulace s metodami a vlastnostmi za běhu
  • Kategorie a rozšíření
  • MetaClass
  • Dynamické přidávání metod
  • Interceptování volání metod
  • Transformace v čase kompilace
  • Obecné AST transformace
  • Odpůdné používání meta-programování
  • Praktické příklady meta-programování

Práce s tvůrci (Builders)

  • Úvod do vzoru tvůrce (Builder pattern)
  • Buildery v Groovy a jejich účel
  • Vytváření hierarchických struktur
  • XML buildery
  • JSON buildery
  • Generování HTML a značek
  • Konfigurace výstupu buildera
  • Používání klosur s buildery
  • Vytváření vlastních builderů
  • Použití builderů v doménově specifických jazycích

Přístup k databázi v jazyce Groovy

  • Koncepce propojení s databází
  • Připojení aplikací Groovy k databázím
  • JDBC a databázová API v Groovy
  • Konfigurace databázových připojení
  • Provedení SQL dotazů
  • Čtení výsledků dotazů
  • Vkládání, aktualizace a mazání dat
  • Parametrizované dotazy
  • Transakce
  • Zachycení databázových výjimek
  • Práce s Groovy SQL
  • Postavení databázových funkcí pro ukázkovou aplikaci

Volání Java kódu z jazyka Groovy

  • Interoperabilita mezi Groovy a Java
  • Použití tříd Java v Groovy
  • Volání metod Java
  • Práce s knihovnami Java
  • Používání kolekcí Java
  • Zachycení výjimek Java
  • Srovnání syntaktiky Groovy a Java
  • Volání kódu Groovy z Java
  • Míchání zdrojových souborů Groovy a Java
  • Integrace Groovy do stávajících aplikací Java
  • Nejlepší postupy interoperability

Připojení k REST službám a aplikacím

  • Úvod do REST API
  • HTTP pojmy pro aplikace Groovy
  • Odesílání HTTP požadavků
  • Zpracování operací GET, POST, PUT a DELETE
  • Práce s parametry požadavků a hlavičkami
  • Zpracování JSON odpovědí
  • Sestavení těl požadavků JSON
  • Zpracování autentizace
  • Zachycení HTTP chyb
  • Konzumace externích REST služeb
  • Integrace REST funkcí do ukázkové aplikace

Práce s GDK

  • Úvod do Groovy Development Kit
  • Vylepšená API Java
  • Práce s řetězci
  • Vylepšené kolekce
  • Operace se soubory a adresáři
  • Čtení a zápis souborů
  • Práce s proudy (streams)
  • Zpracování XML
  • Zpracování JSON
  • Práce s daty a časem
  • Užitné metody a komfortní API
  • Výběr vhodné funkčnosti GDK

Testování aplikace v jazyce Groovy

  • Úvod do testování aplikací Groovy
  • Koncepce vývoje řízeného testováním
  • Zápis jednotkových testů
  • Používání testovacích rámců
  • Struktura testovacích tříd
  • Assertce
  • Testování tříd a metod
  • Testování klosur
  • Testování výjimek
  • Napodobování závislostí (Mocking)
  • Testování řízené daty
  • Testování funkcí spojených s databází
  • Testování REST integrací
  • Spuštění a analýza výsledků testů

Odstraňování chyb (Troubleshooting)

  • Diagnostika chybné syntaktiky Groovy
  • Ladění chyb za běhu
  • Zachycení problémů při kompilaci
  • Odstraňování problémů s interoperabilitou Java
  • Ladění klosur a operací s kolekcemi
  • Průzkum problémů s připojením k databázi
  • Odstraňování problémů s integracemi REST API
  • Ladění chování meta-programování
  • Používání logování a diagnostických nástrojů
  • Praktická cvičení na odstraňování chyb

Shrnutí a závěr

  • Přezkum základů jazyka Groovy
  • Přezkum syntaktiky, typů a kolekcí
  • Přezkum klosur a funkcionálního programování
  • Přezkum objektově orientovaného programování
  • Přezkum meta-programování a builderů
  • Přezkum integrace databáze a REST
  • Přezkum interoperability Groovy a Java
  • Přezkum možností GDK
  • Přezkum testovacích postupů
  • Nejlepší postupy pro vývoj aplikací Groovy
  • Závěrečné praktické cvičení
  • Dotazy a diskuse

Požadavky

  • Zkušenosti s programováním v jakémkoli programovacím jazyce
 21 Hodiny

Počet účastníků


Cena za účastníka

Reference (1)

Nadcházející kurzy

Související kategorie