Kurs Java Developer (przyspieszony I + II)

K-JAVA-FAST-1-2

Skondensowany kurs dla programistów innych języków

  • Java SE / EE
  • wątki
  • lambdy
  • JPA
  • Spring
  • REST

Obecnie brak terminów otwartych. Dostępne na zamówienie dla grup.

Zaproponuj własny termin kursu

Tryb zdalny: online na żywo z trenerem i grupą (→ więcej o kursach zdalnych). Można: zrezygnować do 15 dni przed startem; w każdej chwili przejść na tryb zdalny; w razie potrzeby skorzystać z nagrań. Kursy dostępne na zamówienie, w terminie i lokalizacji do uzgodnienia , dla grup od 5 osób .

4,7/5 (335)
Stars
dla firm - netto
dla osób prywatnych - brutto (pokrywamy VAT)
dla podmiotów publicznych - zwolnione z VAT

Cena kursu: 4990 PLN

lub 998 PLN miesięcznie (5 rat)


percent icon first minute (30+ dni do startu) - 3%

percent icon dostęp do nagrań w razie potrzeby

shake hand icon dla chętnych bezpłatnie warsztaty HR

percent icon praktyczne ćwiczenia i miniprojekty

coffee cup icon poczęstunek w cenie

desktop icon stanowisko komputerowe w cenie

  1. Język i platforma Java – wprowadzenie
    • Przegląd wersji i edycji. Instalacja i konfiguracja platformy Java SE
    • Typy proste i referencyjne, operatory arytmetyczne i logiczne, instrukcje sterujące
    • Zmienne: rodzaje, inicjalizacja, zasięg i przesłanianie
    • Standardy nazewnicze
    • Struktura projektu, pakiety, kompilacja, bajtkod, ładowanie klas, tworzenie JAR-ów
    • Praca z Javą w konsoli oraz w IDE, przegląd dostępnych IDE
    • Java na tle innych języków programowania
    • Przegląd zastosowań Javy
  2. Programowanie obiektowe w Javie
    • Składowe klasy: pola, metody, konstruktory, bloki inicjalizacyjne
    • Obiekty i referencje, przekazywanie parametrów, klasy mutowalne i niemutowalne
    • Przeciążanie metod
    • Dziedziczenie i nadpisywanie metod
      • Klasy abstrakcyjne, finalne i zamknięte (sealed)
    • Interfejsy
      • Implementacje metod w interfejsach
    • Poziomy widoczności, metody dostępowe, wzorzec JavaBean
    • Kontekst statyczny i instancyjny
    • Wyjątki
  3. Uniwersalne elementy Java Standard Edition
    • Tablice: zasady używania, metody narzędziowe
    • Kolekcje: listy, kolejki, zbiory i słowniki
      • Zasady wyboru właściwego rodzaju i implementacji kolekcji
    • Zasady porównywania obiektów: metody equals i hashCode, interfejsy Comparable i Comparator, sortowanie danych
    • Klasy opakowujące („wrappers”) i inne klasy reprezentujące liczby
    • Użyteczne klasy narzędziowe
    • Klasy String, StringBuilder i inne możliwości przetwarzania tekstu
    • Wyrażenia regularne (regex)
    • Wejście/wyjście i dostęp do plików
    • Obsługa daty i czasu oraz ustawień lokalnych
  4. Wątki i synchronizacja
    • Struktura maszyny wirtualnej Java (JVM)
    • Tworzenie i konfiguracja wątków
    • Zagrożenia wynikające ze współbieżnego wykonania kodu
    • Synchronizacja za pomocą mechanizmów języka Java
    • Klasy narzędziowe i gotowe schematy synchronizacji (locki, semafory, synchronizowane kolekcje, pule wątków)
  5. Zaawansowane elementy języka Java
    • Typy wyliczeniowe (enum)
    • Typy generyczne
    • Klasy zagnieżdżone, lokalne i anonimowe
    • Elementy programowania funkcyjnego w Javie
      • Wyrażenia lambda i referencje do metod
      • Strumienie, przetwarzanie danych za pomocą strumieni i kolektorów.
      • Strumienie równoległe – korzyści i zagrożenia; Spliteratory
  6. Aplikacje z interfejsem graficznym (podstawy)
    • Przegląd technologii GUI dostępnych w Javie
    • Swing: komponenty, panele, layouty
    • Obsługa zdarzeń; różne typy zdarzeń, wątki w Swingu
  7. Dostęp do baz danych z aplikacji Java
    • JDBC: bezpośredni dostęp do bazy danych
      • Zadawanie zapytań i wydawanie poleceń modyfikujących dane
      • Obsługa parametrów, zapobieganie SQL injection
      • Zaawansowane możliwości JDBC: modyfikacja poprzez wynik, wywoływanie procedur składowanych, transakcje
    • Jakarta Persistence API (JPA / Hibernate)
      • Pomysł ORM, generowanie klas na podstawie tabel lub odwrotnie
      • Klasy encji, adnotacje JPA, zależności między encjami
      • Odczyt wszystkich i pojedynczych rekordów
      • Tworzenie i modyfikacja rekordów; transakcje
      • Zapytania JPQL, parametry, kryteria
  8. Serwlety
    • Czym jest Java Enterprise Edition / Jakarta EE?
      • Specyfikacje, implementacje, serwery aplikacji
    • Technologia serwletów
      • Obsługa zapytań i tworzenie odpowiedzi HTTP
      • Nagłówki, parametry, ciasteczka
      • Listenery i filtry
    • Podstawy Java Server Pages (JSP – szablony stron WWW)
      • Skryptlety, wyrażenia EL (expression language), dostęp do komponentów JavaBean
      • Biblioteki tagów (taglibs), JSTL Core
      • Architektura MVC za pomocą serwletów i JSP
  9. Usługi sieciowe w Jakarta EE
    • Koncepcja, rodzaje i zastosowania usług sieciowych (web services)
    • Usługi typu SOAP: JAX-WS
      • Klasa i interfejs usługi
      • Obsługa XML w Javie, w tym standard JAXB
      • Strona klienta usługi SOAP, w tym generowanie kodu na podstawie WSDL
    • Usługi typu REST: JAX-RS
      • Klasy zasobów i mapowanie adresów
      • Rola i właściwa implementacja zapytań GET, POST, PUT, DELETE
      • Obsługa różnych formatów danych, w tym JSON i XML oraz dodatkowe własne rozszerzenia na przykładzie PDF
  10. Dodatkowe narzędzia
    • Narzędzie budowania Maven (+pobieżnie Ant i Gradle)
      • Projekt wielomodułowy Maven przy okazji serwera i klienta usługi sieciowej
    • Popularne biblioteki open-source
    • Testy jednostkowe JUnit
      • Dodatkowe biblioteki związane z testowaniem: Mockito, AssertJ
    • Budowanie aplikacji Java na serwerze Jenkins
  11. Spring
    • Tworzenie i uruchamianie projektu Spring Boot
    • Spring MVC
      • Klasy kontrolera, mapowanie adresów, obsługa parametrów
      • Generowanie treści HTML za pomocą szablonów JSP i Thymeleaf (na szybko – głównie gotowe przykłady)
      • Usługi typu REST za pomocą Spring
    • Fundamentalne zasady działania Spring
      • Komponenty – tworzenie, priorytety, zakresy
      • Wstrzykiwanie zależności (dependency injection) – za pomocą adnotacji i przez konstruktor
      • Odwrócenie kontroli (inversion of control, IoC)
    • Spring Data
      • Stosowanie JPA/Hibernate w ramach Spring
      • Interfejsy typu @Repository i magiczne nazwy metod
      • „Natywne” zapytania SQL
    • Podstawy Spring Security
      • Definiowanie użytkowników i haseł lokalnie oraz w bazie danych
      • Kontrola dostępu do elementów usługi
    • Przegląd dodatkowych możliwości Spring
      • Usługi REST za pomocą Jersey (JAX-RS)
      • Schematyczne usługi REST za pomocą RestRepositories