Academia de Reconversie Java Developer

Java Developer este un program conceput pentru a oferi angajaților abilitățile și cunoștințele fundamentale necesare pentru a deveni dezvoltatori Java competenți. Adaptat special pentru companiile care doresc să îmbunătățească capacitățile de programare ale forței de muncă, acest program oferă o bază solidă în ceea ce privește conceptele și principiile de programare Java. 

Java este un limbaj de programare care este utilizat pentru producerea și dezvoltarea unui număr mare de aplicații software. 

Platformele Java sunt utilizate pe o scară largă în programare și soluții software aplicate. Nevoia de programatori care cunosc Java a crescut tot mai mult pe piața IT pentru că este un limbaj foarte răspândit și este utilizat pentru crearea de aplicații. Comparativ cu alte limbaje de programare precum C++ sau C, Java este mult mai accesibil prin modul în care asimilează informația întrucât dă foarte puține erori. 

În acest program, participanții vor porni într-o călătorie pentru a stăpâni elementele de bază ale dezvoltării Java, indiferent de experiența lor anterioară în programare. Curriculumul a fost elaborat cu meticulozitate pentru a echilibra învățarea teoretică cu aplicarea practică, asigurându-se că angajații pot trece fără probleme de la învățare la proiecte Java din lumea reală. 

Cui i se adresează?

Programul se adresează tuturor celor ce doresc învețe limbajul de programare Java.

Cum se desfășoară cursul:

Cum se desfășoară cursul:

  • Materiale de studiu în format video înregistrat și activități practice. 
  • Teste intermediare prin care îți vei evalua progresul. 
  • Întâlniri periodice cu trainerii în ședințe tip live-virtual.
  • Examen final, în urma promovării căruia primești o diplomă de finalizare program. 

Ce vei învăța?

Urmând acest program, participanții vor învăța: 

  • Fundamentele Java, inclusiv Mașina Virtuală Java, codul în bytecode și configurarea mediilor de dezvoltare precum IntelliJ și Eclipse. 
  • Gestionarea codului, sistemele de control al versiunilor precum Git și SVN și modul de organizare a codului în pachete. 
  • Conceptele de clase, obiecte și variabile, inclusiv constructorii, metodele și tipurile de date. 
  • Principiile programării orientate pe obiect, cum ar fi moștenirea, polimorfismul, încapsularea și abstractizarea. 
  • Alocarea și dealocarea memoriei, heap-ul și stack-ul, manipularea șirurilor și ștergerea codului care nu mai este necesar sau utilizat.
  • Gestionearea excepțiilor în Java, utilizând blocurile try-catch, blocurile finally și cuvântul cheie throw. 
  • Subiecte avansate ale limbajului Java, cum ar fi clasele înglobate, clasele anonime, enumerările, lucrul cu fișierele și lucrul cu date și orele. 
  • Anotările în Java, inclusiv anotările predefinite, anotările personalizate și utilizarea genericelor. 
  • Expresiile regulate, parametrii cu limită, caracterele genereice și anotările avansate. 
  • Java Collections Framework, inclusiv liste, seturi, hărți și operațiile acestora, precum și modul de utilizare a Lambdas și Streams pentru procesarea datelor. 

Cerințe preliminare:

Angajații pot începe de la zero și nu necesită cunoștințe anterioare nici din domeniul IT, nici de matematică. De asemenea, nu există limită minimă de studii.

Agenda cursului:

Agenda cursului:

Lesson 1 – Introduction – Java Virtual Machine 

– JRE and JDK 

– What is bytecode? 

– .java files and .class files 

– Setting up Intellij and OpenJDK 

– Your first Java application in Eclipse 

– Java Deliverables: how to create a JAR 

– Java Operators 

– Expressions, statements and blocks 

– If-then-else 

– switch 

– while and do-while 

– for 

– break, continue and return 

 

Lesson 2 – Code Management 

– Version Control 

– SVN, Mercurial, Git 

– Git Setup 

– Github, push your first code into Github 

– Comments 

– Write inline comments 

– Write documentation comments 

– Packages 

– How to organize your code in packages 

– special packages inside a java program 

– Run a java program 

– Normal mode 

– Debugging mode 

– Run with special arguments 

– Examples & exercises 

 

Lesson 3 – Classes, objects and variables 

– What is a class and what is an object? 

– The content of a class 

– Class definition and fields definition 

– Constructors definition 

– Methods definition 

– Primitive data types 

– Arrays 

– Variables 

– Java Keywords 

– Constructors 

– this and super keywords 

– Declaring objects 

– Writing function guidelines 

– What is a function and what is its general purpose 

– toString(), hashCode(), equals() 

– Getters and setters 

 

Lesson 4 – Inheritance, polymorphism, encapsulation and abstraction 

– Object oriented programming principles 

– Inheritance 

– Overloading and Overriding methods 

– Polymorphism 

– Encapsulation 

– Java access modifiers 

– Abstraction 

– Why do we need abstract classes and interfaces at the same time? Can’t we just use one of 

– them? 

– Static methods, constants and final classes 

– Static initialization block 

– Non-static initialization block 

 

Lesson 5 – Memory allocation and deallocation for an object 

– Heap and stack not heap vs stack 

– Instance variables and method variables allocation 

– String and String pool 

– Garbage collection in Java 

– Constructors. Calling and overloading 

– Autoboxing and unboxing 

 

Lesson 6 – Treating exceptions in Java 

– Exceptions and errors 

– Catch or specify requirement 

– How are exceptions treated in Java 

– try-catch block 

– finally block 

– Catching multiple exceptions 

– throw and throws 

– Try with resources 

 

Lesson 7 – Java Specials 

– Inner classes, anonymous classes and local classes 

– Inner Class 

– Local class 

– Anonymous classes 

– Enums 

– Working with files 

– java.io classees 

– Scanning input from files 

– java.nio classes 

– Working with dates 

– Calendar implementation 

– Date time API implementation 

 

Lesson 8 – Annotations and Generics 

– What is an annotation? 

– Predefined annotations in Java 

– @Override 

– @Deprecated 

– @SuppressWarnings 

– Annotations that apply to other annotations 

– Defining an annotation 

– Places you can use annotations 

– Generics 

– Raw types and parameterized types 

 

Lesson 9 – Advanced generics and annotations – Regular expressions 

– Advanced Annotations 

– Java 8 annotations. Functional Interface 

– Using our own annotations. Annotation processor 

– Advanced Generics 

– Bounded type parameters 

– Wildcards 

– Regular Expressions 

 

Lesson 10 – Java Collections Framework 

– Java Collections Framework – an introduction 

– List interface 

– List operations 

– Set interface 

– Set operations 

– SortedSet 

– Implementation of the Comparable interface 

– Comparator anonymous class at SortedSet creation time 

– Queue interface 

– Queue operations 

– Deque interface 

– Map interface 

– Map operations 

 

Lesson 11 – Java Collections traversing – Lambdas – Streams 

– Java Collections traversing 

– for-each construct 

– Iterator 

– Aggregate operations 

– Java Collections ordering 

– Lambda expressions 

– Streams 

– Pipelines 

– Aggregate operations 

– Reduction 

 

Lesson 12 – Multithreading and parallelism 

– Threads and Runnable 

– Controlling the execution flow – sleep and yield 

– Executors 

– Shutting Down Executors 

– Callable – Tasks that return a result 

– Shared resources 

– Tasks Cooperation 

– wait() and notifyAll() 

 

Lesson 13 – Threads, Sockets 

– Atomic Variables 

– Volatile keyword 

– Immutable objects 

– Parallel programming pitfalls 

– Deadlock 

– Starvation 

– Race condition iv. Livelock 

– Client Socket 

– Server Socket 

– Examples & Exercises 

 

Lesson 14 – JDBC 

– Maven 

– JDBC Architecture 

– Important classes for JDBC 

– Start a Derby Server 

– Create a Derby Database 

– Create Person table 

– Connect to a Database in Java 

– Table column names 

 

Lesson 15 – Designing and implementing a calculator in Java FX and Scene Builder – part 1 

– Introducing JavaFX and SceneBuilder 

– History of JavaFX 

– FXML 

– JavaFX application structure 

– Creating a simple JavaFX application with coding 

– Creating 3D objects in JavaFX 

– Scene Builder 

– Designing your first window in Scene Builder 

– Handling events with Java code 

– Requirements for the calculator 

– Building the layout 

– Try it out 

 

Lesson 16 – Designing and implementing a calculator in Java FX and Scene Builder – part 2 

– Prepare for the logic implementation 

– Implementing a calculator in Scene Builder 

– Adding the onAction methods in the controller 

– Adding and linking the TextArea field 

– Implement logic to show numbers in the TextArea 

– Implement logic for clear, comma and math operations 

– Implementing logic for evaluation 

– Deciding which operation to perform 

– Finding the operands 

– Writing the result to TextArea 

– Finishing touches 

– Rejecting all other characters besides the ones on the buttons 

– Clearing the TextArea after a successful operation 

– Evaluate the operation when pressing Enter or = 

 

Lesson 17 – Hibernate & Spring – MVC, Web API & Code Generation 

– What is Hibernate? 

– DIfferent ORMs 

– POJO 

– LOMBOK 

– Mapping tables to POJO 

– Hibernate Code First vs Database First 

– MVC (Model View Controller pattern) 

– What is a Web API 

– HTTP Verbs 

– JSON / XML 

– Thymeleaf 

– Spring and Spring Boot 

– Application Context 

– Dependency injection 

– Aspect-Oriented Programming 

– MVC in Spring 

– Mapping Requests to POJO 

 

Lesson 18 – Unit testing & Clean Code 

– Clean Code 

– Why is Clean Code Important 

– General code writing guidelines 

– DRY Principle 

– Kiss principle 

– Yagni Principle 

– Unit Testing 

– JUnit Framkework 

– Unit tests vs Integration Tests 

– JUnit API 

– Mockito Framework 

– Decoupled Code And Unit Tests 

 

Lesson 19 – Spring & Hibernate project 

– Setting up Spring and Hibernate 

 

Lesson 20 – Spring & Hibernate project 

– Adding interface and API to our project 

Recomandăm să continui cu:

Programe de certificare

Participanții vor primi diplomă de absolvire după completarea cursului și susținerea examenului de evaluare .

Academia de Reconversie Java Developer

Durată

80
ore

Număr de lecții

20

Preț:

350 EUR

Tip curs

online, în ritm propriu

Nivel de specializare

Entry

Roluri:

Developer

Oferte personalizate pentru grupuri de minim 2 persoane