Training Java

Dezvoltat în 1995 de către Sun Microsystems Java este unul dintre cele mai populare 5 limbaje de programare  (conform indexului  TIOBE), deoarece este un limbaj de nivel înalt, orientat obiect, ce permite dezvoltarea unui spectru larg de aplicații. Pornind de la principiul “Write Once, Run Anywhere”, acestea pot fi rulate pe orice dispozitiv ce suportă o mașină virtuală Java:   

Java este un limbaj de programare ce se învață relativ ușor și care permite programatorilor să înțeleagă și să folosească eficient avantajele programării orientate obiect. Limbajul poate fi folosit atât de echipele de dezvoltare software dar și în zona testării software pentru automatizarea acestor procese.

În funcție de nevoile echipei de dezvoltare sau cerințele proiectului software vă putem ajuta să acoperiți următoarele concepte specifice programării în Java

 

Java
Full Track

To ce trebuie să știi despre Java

Java
Fast Track

Introducere în Java și POO

Java pentru Q/A

Java pentru testare

Java Full Track

Cursul se adresează echipelor care învață Java sau fac tranziția la acest limbaj de programare.

Cursul prezintă conceptele de bază ale Programării Orientate Obiect, sintaxa specifică limbajului de programare și librăriile de bază necesare dezvoltării de aplicații Java. Cursul descrie în detaliu conceptele de bază specifice programării orientate obiect: modul în care este abstractizată și transpusă în cod problema reală, avantajele încapsulării și ale reutilizării codului prin moștenire și derivare.

Cursul acoperă concepte solicitate de certificările Oracle Certified Java Associate și Oracle Certified Java Programmer

  • Înțelegerea și implementarea conceptelor specifice Programării Orientate Obiect prin intermediul limbajului Java.
  • Tranziția eficientă la Java de la un alt limbaj de programare
  • Platforma Java (JRE și JD): dezvoltarea și rularea de aplicații Java
  • Utilizare Eclipse, Visual Code sau IntelliJ pentru a dezvolta aplicații Java cu Open JDK
  • Conceptele de bază ale Programării Orientate Obiect (POO)
  • Clase
  • Principiile abstractizării: stare obiect, comportament, proprietăți, interfață, metode
  • Tipuri de date primitive și referențiale
  • Operatori
  • Structuri de control
  • Vectori și șiruri de caractere
  • Metode și transferul valorilor
  • Expresii lambda (Java 8)
  • Pachete și modificatori de acces
  • Derivare clase
  • Supradefinirea metodelor moștenite din Object (equals, hashCode, toString)
  • Shallow-copy vs. Deep Copy
  • Interfețe și metode default (Java 8)
  • Clase abstracte
  • Polimorfism
  • Enumerări în Java
  • Atribute și metode statice
  • Gestiunea excepțiilor în Java
  • Gestiunea log-urilor prin utilizarea librăriei Logging sau Log4j
  • Generics
  • Colecțiile standard (List, Set și Map)
  • Procesarea textelor/șirurilor de caractere în Java
  • Operații de intrare/ieșire (I/O) pe fișiere text sau binare
  • Serializarea obiectelor
  • Java API: java.lang, java.math, java.time și java.net
  • Concepte de baza pentru multi-threading 
  • Software Developer; System Administrator; Web Developer; Q&A Engineer; Software Tester
  • Programatori cu experiență în alte limbaje de programare ce nu sunt orientate obiect
  • Programatori cu experiență în alte limbaje orientate obiect care fac tranziția la Java
  • Servicii Back-End
  • Servicii REST
  • Platforme și dispozitive embedded
  • Platforme și dispozitive IoT
  • Aplicații cross-platform
  • Aplicații mobile pentru paltforma Android

Începător

On-site sau online, în timpul săptămânii, timp de 5 zile (40 de ore)

Experiență dobândită:

Java Fast Track

Cursul se adresează dezvoltatorilor sau echipelor de testare software fără o experiență bogată în programare și învață Java pentru a dezvolta aplicații sau pentru a automatiza diferite procese.

Cursul prezintă conceptele de bază ale procesului de programare și ale limbajelor de programare, folosind sintaxa specifică Java.  Pornind de la acest nivel sunt prezentate principiile Programării Orientate Obiect, sintaxa specifică limbajului de programare și librăriile de bază necesare dezvoltării de aplicații Java. 

  • Dobândirea cunoștințelor de bază necesare dezvoltării de programe software utilizând limbajul Java
  • Înțelegerea conceptelor de bază specifice Programării Orientate Obiect prin intermediul limbajului Java.
  • Platforma Java (JRE și JDK): dezvoltarea și rularea de aplicații Java
  • Utilizare unui IDE (Eclipse, Visual Code sau IntelliJ) pentru a dezvolta aplicații Java cu Open JDK
  • Conceptele de bază ale Programării Orientate Obiect (POO)
  • Principiile abstractizării: stare obiect, comportament, proprietăți, interfață, metode
  • Clase
  • Tipuri de date primitive și referențiale
  • Operatori
  • Structuri de control (if-then-else, for, enhanced for, do-while, while-do, switch)
  • Vectori și șiruri de caractere
  • Metode și transferul valorilor
  • Pachete și modificatori de acces
  • Derivare clase
  • Supradefinirea metodelor moștenite din Object (equals, hashCode, toString)
  • Shallow-copy vs. Deep Copy
  • Interfețe
  • Clase abstracte
  • Polimorfism
  • Enumerări în Java
  • Atribute și metode statice
  • Gestiunea excepțiilor în Java
  • Colecțiile standard (List, Set și Map)
  • Procesarea textelor/șirurilor de caractere în Java
  • Introducere în Java API: java.lang, java.math, java.time și java.io
  • Software Developer; System Administrator; Web Developer; Q&A Engineer; Software Tester
  • Programatori sau testeri fără o experiență bogată în programare
  • Aplicații software Java cu nivel de complexitate scăzut
  • Automatizare testare software

Începător

On-site sau online, în timpul săptămânii, timp de 3 zile (24 de ore)

Experiență dobândită:

Java pentru Q/A

Cursul se adresează echipelor de testare software sau Q/A (Quality Assurance) care doresc să înțeleagă conceptele fundamentale ale limbajului de programare Java pentru a scrie teste automate, pentru a depana codul sursă Java și pentru a gestiona testele automate existente.

Cursul combină elementele specifice programării în limbajul Java și a celor specifice Test-Driven Development (TDD). Prezentarea limbajului Java se face gradual, pornind de la tipurile de date și a structurilor de control de bază și continuând cu elementele specifice Programării Orientate Obiect. 

Din perspectiva testării, cursul face o prezentare generală a conceptelor de testare, a instrumentelor de testare automate și a modului în care sunt definite cazurile de testare. Testele automate sunt definite în Java, folosind framework-ul JUnit sau TestNG. Sunt acoperite și scenariile în care este nevoie de includerea obiectelor de tip Mock.

  • Testarea claselor și metodelor dezvoltate în Java
  • Dezvoltarea de teste automate folosind Java și JUnit sau TestNG
  • Înțelegerea, rularea și modificarea testelor automate scrise în Java
  • Platforma Java (JRE și JDK): dezvoltarea și rularea de aplicații Java
  • Utilizare unui IDE (Eclipse, Visual Code sau IntelliJ) pentru a dezvolta aplicații Java cu Open JDK
  • Conceptele de bază ale Programării Orientate Obiect (POO)
  • Principiile abstractizării: stare obiect, comportament, proprietăți, interfață, metode
  • Clase
  • Tipuri de date primitive și referențiale
  • Structuri de control (if-then-else, for, enhanced for, do-while, while-do, switch)
  • Vectori și șiruri de caractere
  • Metode
  • Supradefinirea metodelor moștenite din Object (equals, hashCode, toString)
  • Shallow-copy vs. Deep Copy
  • Enumerări în Java
  • Gestiunea excepțiilor în Java (try-catch, definirea de excepții)
  • Colecțiile standard (List, Set și Map)
  • Gestiunea log-urilor prin utilizarea librăriei Logging sau Log4j
  • Tipuri de testare: Integration, Continuous, Robustness și Acceptance testing
  • Concepte specifice testării unitare: planuri de testare, cazuri de testare, colecții, teste unitare
  • Caracteristicile testelor unitare
  • Testare automată din IDE. Configurarea mediului de lucru
  • Testare automată cu Maven
  • Testare continuă cu Jenkins
  • Definirea de teste unitare folosind JUnit (3, 4 sau 5)
  • Interpretarea rapoartelor de testare
  • Code coverage
  • Obiecte Mock și librăria Mockito
  • Software Developer; Q/A Engineer, Software Tester 
  • Ingineri Q/A sau testeri cu experiență minimă (sau fără) în programare
  • Testare automată cod sursă dezvoltat în Java
  • Dezvoltare de aplicații software folosind Java

Începător

On-site sau online, în timpul săptămânii, timp de 2-3 zile (20 de ore)

Experiență dobândită: