Szkolenie dostępne na zamówienie

Quarkus framework

Quarkus to framework do tworzenia aplikacji Java, działających na tradycyjnym JVM lub jako rozwiązania natywne, przystosowane pod kątem architektury microservices oraz Kubernetes

Czas trwania szkolenia:5 dni (40h)

Poziom zaawansowania:

Kod kursu:QUARKUS

javaquarkuscdi

Szkolenie na zamówienie

  • Dostosowany program
  • Indywidualna wycena
  • Dowolny termin
Zapytanie o szkolenie

Quarkus framework

Cele szkolenia

  • Wprowadzenie i gruntowne poznanie możliwości frameworku
  • Zrozumienie idei programowania z użyciem interfejsów, wstrzykiwania zależności oraz aspektów
  • Poznanie najważniejszych modułów Quarkus framework

Dla kogo?

  • Szkolenie adresowane do programistów języka Java, chcących tworzyć skalowalne i łatwe w utrzymaniu aplikacje, z wykorzystaniem najnowszej wersji Quarkus framework

Zalety

  • Warsztatowy charakter zajęć (realizacja jednego, dużego projektu)
  • Gruntowne wprowadzenie do tematu, umożliwiające samodzielną pracę z omawianymi technologiami
  • Program ukierunkowany na praktyczne zdobywanie wiedzy, umożliwiającej budowanie rozwiązań opartych o architekturę mikroserwisów
  • Praktyka przed teorią - wszystkie szkolenia technologiczne prowadzone są w formie warsztatowej. Konieczna teoria jest wyjaśniana na przykładzie praktycznych zadań
  • Konkretne umiejętności - w ramach każdego szkolenia rozwijamy praktyczne umiejętności związane z daną technologią i tematyką
  • Nauka z praktykami - wszyscy trenerzy na co dzień pracują w projektach, gwarantuje to dostęp do eksperckiej wiedzy i praktycznego know-how

Wymagania

  • Umiejętność programowania w języku Java na poziomie średnio zaawansowanym
  • Elementarna wiedza z zakresu technologii wchodzących w skład Jakarta EE
  • Podstawowa znajomość SQL i relacyjnych baz danych

W cenie otrzymasz:

  • Materiały szkoleniowe
  • Certyfikat ukończenia szkolenia
  • W przypadku szkolenia w trybie stacjonarnym zapewnimy Ci również lunch oraz sprzęt niezbędny do nauki

Program

Pobierz program w PDF

Architektura mikroserwisów

  • Założenia, zalety, wyzwania, zastosowanie
  • Mikrousługi vs. monolit
  • Architektura na poziomie mikro i makro
  • Przypadki użycia

Wprowadzenie do Quarkus

  • Charakterystyka frameworku
  • Quarkus a technologie Jakarta EE
  • Przygotowanie środowiska deweloperskiego i tworzenie projektu
  • Czysta architektura jako klucz do skalowalności i reużywalności
  • Wstrzykiwanie zależności i separacja odpowiedzialności z użyciem CDI
  • Konfigurowanie projektu oraz instalowanie rozszerzeń
  • Dokumentacja

Warstwa dostępu do danych

  • Konfigurowanie połączenia do bazy danych
  • Integracja z JPA/Hibernate
  • Zarządzanie transakcjami
  • Warstwa utrwalania z wykorzystaniem Panache
  • Wykorzystanie baz NoSQL
  • Walidacja modelu bazodanowego z użyciem Bean Validation
  • Pamięć podręczna/cachowanie danych

Usługi REST

  • Założenia i dobre praktyki związane z projektowaniem REST API
  • Budowanie usług opartych o JAX-RS/RestEasy
  • Obsługa wyjątków
  • Obiekty transferowe i mapowanie między warstwami
  • Konfiguracja CORS
  • Publikowanie dokumentacji z OpenAPI
  • Konsumowanie usług z REST Client

Usługi sterowane zdarzeniami

  • Standard Reactive Streams i programowanie reaktywno-funkcyjne
  • Wprowadzenie do platformy Vert.x
  • Implementacja reaktywnych usług REST
  • Reaktywna warstwa dostępu do danych
  • Integracja z popularnymi brokerami - Kafka, JMS

Bezpieczeństwo i monitorowanie usług

  • Konfiguracja uwierzytelniania i autoryzacji dostępu
  • Zbieranie metryk oraz monitorowanie usług
  • Tracing
  • Agregacja logów

Testowanie

  • Tworzenie testów jednostkowych z wykorzystaniem narzędzia JUnit oraz Quarkus Tests
  • Tworzenie testów integracyjnych w oparciu o REST Assured

Wdrażanie aplikacji

  • Konfiguracja, uruchamianie i skalowanie mikroserwisów w oparciu o kontenery
  • Wdrażanie w środowisku zarządzanym na przykładzie Kubernetes
  • Budowanie natywnej wersji aplikacji

Autorem szkolenia jest Łukasz Andrzejewski

Doświadczony trener z ponad 16-letnią praktyką na sali szkoleniowej. Aktywnie działa jako konsultant i programista w zakresie szeroko pojętych technologii Java, rozwiązań frontendowych i mobilnych. Absolwent Wydziału Fizyki Technicznej Politechniki Poznańskiej, specjalizacja: Symulacje komputerowe. Aktualnie Partner, Head of Technology w Sages. Dba o rozwój oferty, przygotowuje i prowadzi szkolenia, konsultuje i bierze udział w realizacji projektów IT