Mulțumim pentru trimiterea solicitării! Un membru al echipei noastre vă va contacta în curând.
Mulțumim pentru trimiterea rezervării! Un membru al echipei noastre vă va contacta în curând.
Schița de curs
Introducere în Groovy
- Introducere în Apache Groovy
- Istoria și evoluția Groovy
- Groovy și Java Virtual Machine
- Groovy ca limbaj de scripting și programare
- Cazuri de utilizare frecvente pentru Groovy
- Groovy în proiecte bazate pe Java
- Avantajele utilizării Groovy alături de Java
- Prezentarea aplicației de exemplu
Prezentare caracteristicilor Groovy
- Tipare dinamică și tipare statică opțională
- Capacități de scripting în Groovy
- Sintaxă concisă și îmbunătățiri ale limbajului
- Closures și programare funcțională
- Colectii Groovy și API-uri îmbunătățite
- Suprascrierea operatorilor
- Interpolarea șirurilor de caractere
- Navigație sigură și operatorul Elvis
- Dezvoltare de limbaje specifice domeniului (DSL)
- Capacități de metaprogramare
- Groovy Development Kit (GDK)
Setarea mediului de dezvoltare
- Instalarea și configurarea Groovy
- Lucrul cu distribuțiile Groovy
- Utilizarea Groovy din linia de comenzi
- Rularea scripturilor Groovy
- Setarea unui IDE
- Crearea unui proiect Groovy
- Gestionarea dependențelor
- Integrarea Groovy în proiecte Java
- Configurarea mediului de dezvoltare pentru containere
Scrierea primei aplicații Groovy
- Crearea unui script Groovy de bază
- Înțelegerea structurii unui script Groovy
- Rularea aplicațiilor Groovy
- Utilizarea enunțului
println - Lucrul cu variabile
- Definirea metodelor
- Adăugarea comentariilor și documentației
- Construirea unei aplicații simple de exemplu
- Compilarea codului Groovy
Familiarizare cu sintaxa Groovy
- Enunțuri și expresii în Groovy
- Puncte și virgule și elemente de sintaxă opționale
- Variabile și constante
- Tipare dinamică și explicită
- Literaluri și interpolare a șirurilor
- Șiruri într-o linie și multi-linie
- Operatori și expresii
- Operatori și scurtături în Groovy
- Tratarea valorilor Null
- Navigație sigură
- Operatorul Elvis
- Alocare multiplă
Utilizarea tipurilor de date și colecțiilor în Groovy
- Tipuri primitive și de obiecte
- Numere și operații numerice
- Șiruri și caractere
- Booleane
- Date și valori legate de timp
- Liste
- Hărți (Maps)
- Seturi (Sets)
- Intervale (Ranges)
- Iterarea peste colecții
- Transformări ale colecțiilor
- Filtrarea și căutarea în colecții
- Sortarea și gruparea datelor
- Metode pentru colecții în Groovy
Utilizarea closures în Groovy
- Înțelegerea closures
- Sintaxa closures
- Parametrii closures
- Parametrii impliciti ai closures
- Apelarea closures
- Closures ca variabile
- Transmiterea closures către metode
- Retornarea closures din metode
- Closures și colecții
- Folosirea closures pentru filtrare și transformare
- Scop și capturarea variabilelor
- Closures pentru programare funcțională
- Modele practice de closures
Controlul fluxului programului cu structuri de control în Groovy
- Enunțuri condiționale
ifșielse- Condiții imbricate
- Enunțuri
switch - Bucle și iterație
for,whileșido-while- Intervale în bucle
- Utilizarea closures pentru iterație
breakșicontinue- Tratarea excepțiilor
try,catchșifinally- Aruncarea excepțiilor personalizate
- Caracteristici specifice Groovy pentru controlul fluxului
Implementarea Programării Orientate pe Obiecte (OOP) în aplicația ta
- Definirea claselor Groovy
- Proprietăți și câmpuri
- Constructori
- Metode
- Incapsulare
- Moștenire
- Interfețe
- Clase abstracte
- Polimorfism
- Suprascrierea metodelor
- Suprascrierea metodelor (overloading)
- Getters și setters în Groovy
- Traits
- Enumerații (Enums)
- Crearea modelelor de domeniu pentru aplicația de exemplu
Metaprogramare la runtime și Metaprogramare la momentul compilării
- Introducere în metaprogramarea Groovy
- Invocarea dinamică a metodelor
- Obiecte Expando
- Manipularea metodelor și proprietăților la runtime
- Categorii și extensii
- MetaClass
- Adăugarea metodelor dinamic
- Interceptarea apelurilor de metodă
- Transformări la momentul compilării
- Transformări AST comune
- Utilizarea responsabilă a metaprogramării
- Exemple practice de metaprogramare
Lucrarea cu Builderi
- Introducere în modelul de construcție (builder pattern)
- Builderi în Groovy și scopul lor
- Crearea structurilor ierarhice
- Builderi XML
- Builderi JSON
- Generarea HTML și markup
- Configurarea ieșirii builderului
- Utilizarea closures cu builderi
- Crearea de builderi personalizate
- Aplicarea builderilor în limbaje specifice domeniului (DSL)
Accesarea unei baze de date cu Groovy
- Concepte de conectivitate la baza de date
- Conectarea aplicațiilor Groovy la baze de date
- JDBC și API-uri de bază de date în Groovy
- Configurarea conexiunilor la baza de date
- Executarea interogărilor SQL
- Citirea rezultatelor interogărilor
- Insertarea, actualizarea și ștergerea datelor
- Interogări parametrizate
- Tranzacții
- Tratarea excepțiilor de bază de date
- Lucrarea cu Groovy SQL
- Construirea funcționalității de bază de date pentru aplicația de exemplu
Apelarea Java din Groovy
- Interoperabilitate între Groovy și Java
- Utilizarea claselor Java din Groovy
- Apelarea metodelor Java
- Lucrarea cu biblioteci Java
- Utilizarea colecțiilor Java
- Tratarea excepțiilor Java
- Sintaxa Groovy comparativă cu sintaxa Java
- Apelarea codului Groovy din Java
- Mixarea fișierelor sursă Groovy și Java
- Integrarea Groovy în aplicații Java existente
- Bune practici pentru interoperabilitate
Conectarea la servicii și aplicații REST
- Introducere în API-uri REST
- Concepte HTTP pentru aplicații Groovy
- Trimiterea cerințelor HTTP
- Tratarea operațiunilor GET, POST, PUT și DELETE
- Lucrarea cu parametrii și anteturile cerințelor
- Procesarea răspunsurilor JSON
- Construirea corpului cerințelor JSON
- Tratarea autentificării
- Gestionarea erorilor HTTP
- Consumarea de servicii REST externe
- Integrarea funcționalității REST în aplicația de exemplu
Lucrarea cu GDK
- Introducere în Groovy Development Kit
- API-uri Java îmbunătățite
- Lucrarea cu șiruri de caractere
- Colecții îmbunătățite
- Operațiuni de fișier și director
- Citirea și scrierea fișierelor
- Lucrarea cu fluxuri (streams)
- Procesarea XML
- Procesarea JSON
- Lucrarea cu date și timp
- Metode de utilitate și API-uri de conveniență
- Seleționarea funcționalității adecvate din GDK
Testarea unitară a unei aplicații Groovy
- Introducere în testarea aplicațiilor Groovy
- Concepte de dezvoltare condusă de teste (TDD)
- Scrierea testelor unitare
- Utilizarea framework-urilor de testare
- Structurarea claselor de test
- Aserțiuni
- Testarea claselor și metodelor
- Testarea closures
- Testarea excepțiilor
- Mocking-ul dependențelor
- Testare bazată pe date
- Testarea funcționalității legate de baza de date
- Testarea integrărilor REST
- Rularea și analiza rezultatelor testelor
Troubleshooting
- Diagnostecarea erorilor de sintaxă Groovy
- Dezbugarea erorilor de runtime
- Rezolvarea problemelor de compilare
- Troubleshooting al problemelor de interoperabilitate cu Java
- Dezbugarea closures și operațiilor de colecție
- Investigarea problemelor de conectivitate la baza de date
- Troubleshooting al integrărilor REST API
- Dezbugarea comportamentului metaprogramării
- Utilizarea logării și a instrumentelor de diagnosticare
- Exerciții practice de troubleshooting
Rezumat și concluzii
- Recapitularea fundamentelor limbajului Groovy
- Recapitularea sintaxei, tipurilor și colecțiilor
- Recapitularea closures și a programării funcționale
- Recapitularea programării orientate pe obiecte
- Recapitularea metaprogramării și a builderilor
- Recapitularea integrării cu baza de date și REST
- Recapitularea interoperabilității Groovy și Java
- Recapitularea capabilităților GDK
- Recapitularea practicilor de testare
- Bune practici pentru dezvoltarea aplicațiilor Groovy
- Exercițiu hands-on final
- Întrebări și discuții
Cerințe
- Experiență de programare într-o limbaj de programare
21 Ore
Mărturii (1)
Informația suplimentară partajată a fost că instruirea nu a fost un groovy simplu și direct, ceea ce a fost plăcut.
Covenant - Vodacom
Curs - Groovy Programming
Tradus de catre o masina