Poziom

Zaawansowany

Czas

40h / 5 dni

Termin

Indywidualnie

Cena

Indywidualnie

Szkolenie Spring

Spring sprawia, że ​​programowanie w Javie jest szybsze, łatwiejsze i bezpieczniejsze. Szybkość, prostota i produktywność wpłynęły na to, że Spring to obecnie najpopularniejszy na świecie framework dla Javy. Dzięki temu szkoleniu uczestnicy poznają architekturę frameworka, zostaną od podstaw przeprowadzeni przez najważniejsze moduły do Springa oraz w praktyce doświadczą jak szybko można stworzyć aplikację webową przy jego użyciu.

Dla kogo jest to szkolenie?
  • logo infoshare Dla osób chcących od podstaw nauczyć się tworzenia aplikacji webowych przy użyciu technologii Spring lub chcących uporządkować posiadaną wiedzę.
  • logo infoshare Dla osób chcących posiąść lub pogłębić wiedzę z zakresu tworzenia aplikacji internetowych.
  • logo infoshare Dla osób posiadającą średnio-zaawansowaną wiedzę z zakresu JavaSE.
  • logo infoshare Dla osób, które szukają lekkich alternatyw do Java EE.

Czego nauczysz się na tym szkoleniu?

  • Poznasz architekturę Spring Framework – zaczynając od podstaw czyli Spring Core, poprzez usprawnienia do konfiguracji, które przyniósł ze sobą Spring Boot, aż po dokładne działanie poszczególnych modułów takich jak Spring Web lub Spring Data
  • Nauczysz się skonfigurować aplikację (wraz z odpowiedzią na pytanie dlaczego robimy to w taki sposób)
  • Dowiesz się jak, zgodnie z najlepszymi praktykami, wystawić usługi REST w Springu, przyjmować i walidować dane oraz jak obsługiwać ewentualne błędy, a także jak konsumować takie API wystawione przez inne serwisy
  • Przećwiczysz pracę z bazą danych przy użyciu modułu Spring Data
  • Napiszesz testy (jednostkowe i integracyjne) do aplikacji korzystając z modułu Spring Test
  • Poznasz najlepsze praktyki, które pozwolą Ci lepiej zarządzać kodem oraz strukturą projektu podczas tworzenia aplikacji webowych

Korzyści z frameworku Spring

  • nie musimy przejmować się problemami związanymi z konfiguracją poszczególnych elementów naszej infrastruktury – Spring jest w stanie zrobić to za nas, dzięki czemu możemy skupić się na tworzeniu kodu biznesowego
  • jesteśmy w stanie szybko dostarczyć MVP projektu
  • dzięki spójnemu modelowi programowania, użycie w aplikacji technologii, której jeszcze nie znamy wydaje się bardzo naturalne i proste

Program szkolenia

Moduł 1: Wprowadzenie do Spring Framework i Spring Boot

  • Problemy rozwiązywane przez Spring Framework
  • Spring Core Principles
  • Java EE vs Spring

Moduł 2: Spring Core

  • Konfiguracja aplikacji przy użyciu Java Config i adnotacji
  • Application Context i zarządzanie beanami
  •  Dependency Injection i Inversion of Control
  • Rodzaje beanów i sposoby wstrzykiwania zależności
  • Qualifier i rozwiązywanie konfliktów zależności

Moduł 3: Konfiguracja aplikacji Spring Boot

  • application.yml i zarządzanie konfiguracją
  • Profiles i konfiguracja środowisk
  • Dobre praktyki zarządzania konfiguracją

Moduł 4: Spring Boot

  • Auto Configuration
  • Startery i zarządzanie zależnościami
  • Embedded Servers
  • Dobre praktyki pracy ze Spring Boot

Moduł 5: REST API — dobre praktyki

  • REST jako styl komunikacji
  • Projektowanie czytelnych endpointów
  • Dobre praktyki związane z kontraktem API
  • Najczęstsze błędy przy projektowaniu API

Moduł 6: Spring Web

  • Tworzenie kontrolerów REST
  • Wystawianie endpointów HTTP
  • Odczytywanie danych z requesta
  • Serializacja i deserializacja danych przy użyciu Jackson
  • Walidacja danych przy użyciu Hibernate Validator

Moduł 7: Dokumentowanie API

  • Podstawy OpenAPI i Swagger UI
  • Generowanie dokumentacji endpointów
  • Dobre praktyki utrzymywania dokumentacji API

 

Moduł 8: Obsługa błędów w Spring Web

  • Obsługa wyjątków w aplikacjach REST
  • Global Exception Handling
  • Tworzenie spójnych odpowiedzi błędów
  • Najczęstsze błędy w obsłudze wyjątków

Moduł 9: Wprowadzenie do Hibernate i JPA

  • Hibernate vs JPA
  • ORM i mapowanie obiektowo-relacyjne
  • Podstawowe mapowania encji
  • Entity Manager i zarządzanie encjami
  • Transakcje w JPA

Moduł 10: Spring Data

  • Koncepcja Repository
  • Tworzenie repozytoriów i podstawowych zapytań
  • Spring Data JPA
  • Dobre praktyki pracy z JPA i Spring Data
  • Zarządzanie transakcjami w Springu

Moduł 11: Monitorowanie aplikacji — Spring Boot Actuator

  • Endpointy monitorujące
  • Health checks i metryki aplikacji
  • Monitorowanie działania aplikacji
  • Podstawy observability w Spring Boot

Moduł 12: Migracje danych przy użyciu Liquibase

  • Zarządzanie zmianami w bazie danych
  • Tworzenie i uruchamianie migracji
  • Versioning schematu bazy danych
  • Dobre praktyki pracy z migracjami

Moduł 13: Spring AOP

  • Wprowadzenie do programowania aspektowego
  • Mechanizm proxy w Springu
  • Najczęstsze zastosowania AOP

Moduł 14: Komunikacja z zewnętrznymi API

  • Konsumowanie REST API przy użyciu WebClient
  • Obsługa błędów i timeoutów
  • Retry i odporność komunikacji
  • Dobre praktyki komunikacji z zewnętrznymi usługami

Moduł 15: Odporność aplikacji — Circuit Breaker

  • Problemy komunikacji rozproszonej
  • Pattern Circuit Breaker
  • Wprowadzenie do resilience4j
  • Budowanie bardziej odpornych integracji

Moduł 16: Testowanie aplikacji Spring Boot

  • Wprowadzenie do JUnit 5
  • Testy jednostkowe i integracyjne
  • Spring Boot Test
  • Dobre praktyki związane z testowaniem aplikacji Spring Boot

Moduł 17: Uruchamianie aplikacji w Dockerze

  • Podstawy Docker
  • Budowanie obrazu aplikacji Spring Boot
  • Uruchamianie aplikacji w kontenerze

Moduł 18: Spring Boot i AI

  • Wykorzystanie AI przy generowaniu kodu i konfiguracji Spring Boot
  • Jak weryfikować kod generowany przez AI
  • Ryzyka związane z bezrefleksyjnym użyciem AI
  • AI jako wsparcie refaktoryzacji i analizy błędów

Moduł 19: Podsumowanie

  • Najważniejsze elementy ekosystemu Spring Boot
  • Dobre praktyki budowania aplikacji backendowych
  • Najczęstsze problemy spotykane w projektach
  • Jak rozwijać aplikacje Spring Boot w sposób utrzymywalny

 

Skontaktuj sie z nami

zorganizujemy dla Ciebie szkolenie dopasowane do Twoich potrzeb

Przemysław Wołosz

Key Account Manager

przemyslaw.wolosz@infoShareAcademy.com

    Administratorem danych osobowych jest InfoShare Academy Sp. z o.o. z siedzibą w Gdańsku, al. Grunwaldzka 427B, 80-309 Gdańsk, KRS: 0000531749, NIP: 5842742213. Dane osobowe przetwarzane są zgodnie z klauzulą informacyjną.