Intrati in legatura

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 frecvente de utilizare a Groovy
  • Groovy în proiecte bazate pe Java
  • Avantajele utilizării Groovy alături de Java
  • Prezentarea generală a aplicației demonstrative

Prezentarea caracteristicilor Groovy

  • Tipizare dinamică și tipizare statică opțională
  • Capabilitățile de scripting ale Groovy
  • Sintaxă concisă și îmbunătățiri ale limbajului
  • Closures și programare funcțională
  • Colecții Groovy și API-uri îmbunătățite
  • Supraîncărcarea operatorilor
  • Interpolarea string-urilor
  • Navigare sigură și operatorul Elvis
  • Dezvoltarea de limbaje specifice domeniului
  • Capabilități de meta-programare
  • Groovy Development Kit (GDK)

Configurarea mediului de dezvoltare

  • Instalarea și configurarea Groovy
  • Lucrul cu distribuțiile Groovy
  • Utilizarea Groovy din linia de comandă
  • Rularea scripturilor Groovy
  • Configurarea unui IDE
  • Crearea unui proiect Groovy
  • Gestionarea dependențelor
  • Integrarea Groovy cu proiecte Java
  • Configurarea mediului de dezvoltare pentru containere

Scrierea primei tale aplicații Groovy

  • Crearea unui script Groovy de bază
  • Înțelegerea structurii unui script Groovy
  • Rularea aplicațiilor Groovy
  • Utilizarea instrucțiunii println
  • Lucrul cu variabile
  • Definirea metodelor
  • Adăugarea de comentarii și documentație
  • Construirea unei aplicații demonstrative simple
  • Compilarea codului Groovy

Familiarizarea cu sintaxa Groovy

  • Instrucțiuni și expresii Groovy
  • Punct și virgulă și elemente de sintaxă opționale
  • Variabile și constante
  • Tipizare dinamică și explicită
  • Literali de tip string și interpolare
  • String-uri pe un singur rând și pe mai multe rânduri
  • Operatori și expresii
  • Operatori Groovy și scurtături
  • Gestionarea valorilor null
  • Navigare sigură
  • Operatorul Elvis
  • Atribuire multiplă

Utilizarea tipurilor de date și a colecțiilor în Groovy

  • Tipuri primitive și tipuri obiect
  • Numere și operații numerice
  • String-uri și caractere
  • Valori booleene
  • Date și valori legate de timp
  • Liste
  • Mape
  • Seturi
  • Intervale
  • 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 closure-urilor în Groovy

  • Înțelegerea closure-urilor
  • Sintaxa closure-urilor
  • Parametrii closure-urilor
  • Parametrii impliciți ai closure-urilor
  • Apelarea closure-urilor
  • Closure-uri ca variabile
  • Transmiterea closure-urilor către metode
  • Returnarea closure-urilor din metode
  • Closure-uri și colecții
  • Utilizarea closure-urilor pentru filtrare și transformare
  • Scope și capturarea variabilelor
  • Closure-uri pentru programare funcțională
  • Tipare practice de utilizare a closure-urilor

Controlul fluxului programului cu structurile de control Groovy

  • Instrucțiuni condiționale
  • if și else
  • Condiții imbricate
  • Instrucțiuni switch
  • Bucle și iterație
  • for, while și do-while
  • Intervale în bucle
  • Utilizarea closure-urilor pentru iterație
  • break și continue
  • Gestionarea excepțiilor
  • try, catch și finally
  • Aruncarea de excepții personalizate
  • Caracteristici de control al fluxului specifice Groovy

Implementarea programării orientate pe obiecte (OOP) în aplicația ta

  • Definirea claselor Groovy
  • Proprietăți și câmpuri
  • Constructori
  • Metode
  • Încapsulare
  • Moștenire
  • Interfețe
  • Clase abstracte
  • Polimorfism
  • Suprascrierea metodelor
  • Supraîncărcarea metodelor
  • Getteri și setteri în Groovy
  • Trăsături
  • Enumerări
  • Crearea modelelor de domeniu pentru aplicația demonstrativă

Meta-programare la runtime și meta-programare la compilare

  • Introducere în meta-programarea Groovy
  • Invocarea dinamică a metodelor
  • Obiecte Expando
  • Manipularea metodelor și proprietăților la runtime
  • Categorii și extensii
  • MetaClass
  • Adăugarea dinamică a metodelor
  • Interceptarea apelurilor de metode
  • Transformări la compilare
  • Transformări AST comune
  • Utilizarea responsabilă a meta-programării
  • Exemple practice de meta-programare

Lucrul cu buildere

  • Introducere în builder pattern
  • Builderele Groovy și scopul lor
  • Crearea structurilor ierarhice
  • Buildere XML
  • Buildere JSON
  • Generarea de HTML și markup
  • Configurarea output-ului builderelor
  • Utilizarea closure-urilor cu builderele
  • Crearea de buildere personalizate
  • Aplicarea builderelor în limbaje specifice domeniului

Accesarea unei baze de date cu Groovy

  • Concepte de conectivitate la baze de date
  • Conectarea aplicațiilor Groovy la baze de date
  • JDBC și API-urile de baze de date Groovy
  • Configurarea conexiunilor la baza de date
  • Executarea interogărilor SQL
  • Citirea rezultatelor interogărilor
  • Inserarea, actualizarea și ștergerea datelor
  • Interogări parametrizate
  • Tranzacții
  • Gestionarea excepțiilor de baze de date
  • Lucrul cu Groovy SQL
  • Construirea funcționalității de baze de date pentru aplicația demonstrativă

Apelarea codului Java din Groovy

  • Interoperabilitatea dintre Groovy și Java
  • Utilizarea claselor Java din Groovy
  • Apelarea metodelor Java
  • Lucrul cu bibliotecile Java
  • Utilizarea colecțiilor Java
  • Gestionarea excepțiilor Java
  • Compararea sintaxei Groovy cu sintaxa Java
  • Apelarea codului Groovy din Java
  • Combinarea fișierelor sursă Groovy și Java
  • Integrarea Groovy în aplicații Java existente
  • Bune practici de interoperabilitate

Conectarea la servicii și aplicații REST

  • Introducere în API-urile REST
  • Concepte HTTP pentru aplicațiile Groovy
  • Trimiterea cererilor HTTP
  • Gestionarea operațiunilor GET, POST, PUT și DELETE
  • Lucrul cu parametrii și headerele cererilor
  • Procesarea răspunsurilor JSON
  • Construirea corpurilor de cerere JSON
  • Gestionarea autentificării
  • Gestionarea erorilor HTTP
  • Consumarea serviciilor REST externe
  • Integrarea funcționalității REST în aplicația demonstrativă

Lucrul cu GDK

  • Introducere în Groovy Development Kit
  • API-uri Java îmbunătățite
  • Lucrul cu string-uri
  • Colecții îmbunătățite
  • Operații cu fișiere și directoare
  • Citirea și scrierea fișierelor
  • Lucrul cu stream-uri
  • Procesarea XML
  • Procesarea JSON
  • Lucrul cu date și ore
  • Metode utilitare și API-uri convenabile
  • Selectarea funcționalității GDK potrivite

Testarea unitară a unei aplicații Groovy

  • Introducere în testarea aplicațiilor Groovy
  • Concepte de dezvoltare bazată pe teste
  • Scrierea testelor unitare
  • Utilizarea framework-urilor de testare
  • Structurarea claselor de test
  • Aserțiuni
  • Testarea claselor și metodelor
  • Testarea closure-urilor
  • 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

Depanare

  • Diagnosticarea erorilor de sintaxă Groovy
  • Depanarea erorilor de runtime
  • Gestionarea problemelor de compilare
  • Depanarea problemelor de interoperabilitate cu Java
  • Depanarea closure-urilor și a operațiilor pe colecții
  • Investigarea problemelor de conectivitate la baza de date
  • Depanarea integrărilor cu API-uri REST
  • Depanarea comportamentului de meta-programare
  • Utilizarea instrumentelor de logging și diagnosticare
  • Exerciții practice de depanare

Rezumat și concluzie

  • Recapitularea fundamentelor limbajului Groovy
  • Recapitularea sintaxei, tipurilor și colecțiilor
  • Recapitularea closure-urilor și a programării funcționale
  • Recapitularea programării orientate pe obiecte
  • Recapitularea meta-programării și a builderelor
  • Recapitularea integrării cu baze de date și REST
  • Recapitularea interoperabilității dintre Groovy și Java
  • Recapitularea capabilităților GDK
  • Recapitularea practicilor de testare
  • Bune practici pentru dezvoltarea aplicațiilor Groovy
  • Exercițiu practic final
  • Întrebări și discuții

Cerințe

  • Experiență de programare în orice limbaj de programare
 21 Ore

Numărul de participanți


Pret per participant

Mărturii (1)

Cursuri viitoare

Categorii înrudite