Quarkus framework
Czas trwania szkolenia:5 dni (40h)
Kod kursu:QUARKUS
Poziom zaawansowania:
Szkolenie na zamówienie
Szkolenie dostosowane do potrzeb Twojego zespołu. Dostępne wyłącznie na zamówienie.
- Dostosowany program
- Indywidualna wycena
- Dowolny termin
O szkoleniu Quarkus framework
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
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
Wymagania
- Umiejętność programowania w języku Java na poziomie średnio zaawansowanym
- Elementarna wiedza z zakresu technologii wchodzących w skład Java EE
- Podstawowa znajomość SQL i relacyjnych baz danych
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
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
Program
Architektura mikroserwisów
- Założenia, zalety, wyzwania, zastosowanie
- Mikrousługi vs. rozwiązania tradycyjne
- 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 BeanValidation
- 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 / Quarkus Tests
- Tworzenie testów integracyjnych w oparciu o REST Assured
Wdrażanie aplikacji / Cloud Native
- Konfiguracja, uruchamianie i skalowanie mikroserwisów w oparciu o kontenery
- Wdrażanie w środowisku zarządzanym na przykładzie Kubernetes
- Budowanie natywnej wersji aplikacji