Schița de curs

Introducere în Java

  • Istoria și evoluția Java
  • Prezentare generală a versiunilor Java și a actualizărilor
  • Ce este nou în Java 17
  • Configurarea kitului de dezvoltare Java (JDK 17) și a IDE-ului

Java Structura programului

  • Scrierea unui program Java simplu
  • Java Prezentare generală a sintaxei
  • Compilarea și rularea aplicațiilor Java

Tipuri de date și variabile

  • Tipuri de date primitive și clase wrapper
  • Declararea variabilelor și a constantelor
  • Conversia tipurilor și castingul

Operatori în Java

  • Operatori aritmetici, relaționali, logici și bitwise
  • Precedența și asociativitatea operatorilor

Declarații privind fluxul de control

  • Instrucțiuni condiționale (if-else, switch)
  • Construcții în buclă (for, while, do-while)
  • Expresii switch îmbunătățite (Java 17 feature)

Introducere în conceptele OOP

  • Clase și obiecte
  • Încapsulare, moștenire, polimorfism și abstractizare

Crearea claselor și obiectelor

  • Declararea și inițializarea obiectelor
  • Cuvântul-cheie this
  • Constructori (implicit și parametrizat)

Moștenirea

  • Extinderea claselor (cuvântul-cheie extends)
  • Metoda overriding și cuvântul-cheie super
  • Clase și metode abstracte

Polimorfismul

  • Polimorfismul în timp de compilare vs. polimorfismul în timp de execuție
  • Supraîncărcarea și supraordonarea metodelor

Interfețe

  • Definirea și implementarea interfețelor
  • Interfețe funcționale și metode implicite

Clase de înregistrări (Java 17 feature)

  • Înțelegerea înregistrărilor în Java 17
  • Modul în care înregistrările simplifică încapsularea datelor

Generice în Java

  • Înțelegerea parametrilor de tip
  • Clase, metode și interfețe generice
  • Tipuri delimitate și caractere sălbatice

Gestionarea excepțiilor

  • Tipuri de excepții (verificate și neverificate)
  • Blocuri Try-catch-finally
  • Aruncarea și capturarea excepțiilor
  • Crearea de excepții personalizate

Java Cadrul colecțiilor

  • Interfețele List, Set, Map și Queue
  • Implementări populare: ArrayList, HashMap, HashSet
  • Iteratori și bucle for îmbunătățite

Expresii lambda Express și funcționale Programming

  • Introducere în expresiile lambda
  • Sintaxă și utilizare
  • Interfețe funcționale

API pentru fluxuri

  • Prezentare generală a Java fluxurilor
  • Operațiuni de flux (filtrare, mapare, reducere)
  • Fluxuri paralele și considerații privind performanța

Clase sigilate

  • Definirea și utilizarea claselor sigilate
  • Subclase permise și restricții

Potrivirea tiparelor pentru instanceof (Java 17 feature)

  • Simplificarea verificărilor de tip cu potrivirea modelelor

Blocuri de text

  • Lucrul cu blocuri de text cu mai multe linii în Java
  • Comparație cu manipularea tradițională a șirurilor de caractere

Îmbunătățiri aduse înregistrărilor și serializării

  • Serializarea și compatibilitatea retroactivă
  • Cum îmbunătățesc înregistrările lizibilitatea și întreținerea codului

Deprecierea și eliminarea caracteristicilor

  • API depreciate în Java 17
  • Eliminarea caracteristicilor învechite

Îmbunătățiri ale comutatorului Expression

  • Potrivirea tiparelor în switch
  • Utilizarea expresiilor switch pentru un cod mai curat

Funcție străină și memorie API (Incubator)

  • Prezentare generală a modulului incubator
  • Lucrul cu cod nativ în Java

Java Sistemul de module (Proiectul Jigsaw)

  • Introducere în module în Java
  • Crearea și utilizarea modulelor
  • Descriptori de module și module-info.java
  • Avantajele modularizării

Concurrență și multithreading

  • Introducere în fire și multithreading
  • Interfața Runnable și interfața Callable
  • Sincronizarea, blocajele și siguranța firelor

Asincron Programming cu CompetableFuture

  • Scrierea codului asincron
  • Utilizarea CompetableFuture pentru operații neblocante

Implementarea aplicațiilor Java

  • Crearea și execuția fișierelor JAR
  • Ambalarea și distribuirea aplicațiilor Java
  • Introducere în GraalVM (opțional)

Cele mai bune practici și optimizarea codului

  • Scrierea unui cod Java eficient și ușor de întreținut
  • Capcane comune de performanță și cum să le evitați
  • Tehnici de refactorizare a codului

Rezumat și pași următori

Cerințe

  • Cunoștințe de bază în programare

Audiență

  • Dezvoltatori de software
  • Programatori
 35 ore

Numărul de participanți


Pret per participant

Upcoming Courses

Categorii înrudite