Spring Framework

Spring Framework - szkolenie dwudniowe

Spring Framework jest prawdopodobnie najpopularniejszym frameworkiem do budowania aplikacji szerokiego zastosowania w języku Java. W trakcie tego kursu zbudujesz od podstaw pełnowartościową aplikację do zarządzania dokumentami w małej firmie.

Program szkolenia

Dzień pierwszy

Pierwszego dnia poznasz podstawy Spring Framework: czym jest kontener DI, podstawowe wzorce projektowe wykorzystywane przez framework, pisanie testów integracyjnych komponentów Spring, zarządzanie profilami oraz podstawy obsługi różnego rodzaju baz danych (w tym NoSql na przykładzie MongoDb), Spring Boot. Pierwszy dzień szkoleń zakończy się stworzeniem szkieletu aplikacji, wyposażonego w podstawowe mechanizmy umożliwiające dalszy rozwój aplikacji.

Dzień drugi

Drugiego dnia szkoleń skupimy się głównie na rozbudowie poznanych komponentów i rozwinięciu naszego projektu w pełnowartościową aplikację. Aplikacja będzie dostępna w postaci REST API, które może zostać skonsumowane przez dowolnego klienta. Dodatkowo, przedstawiony zostanie przykład prostej aplikacji frontendowej w AngularJs, która komunikuje się ze stworzonym wcześniej REST API.


Po zakończeniu szkolenia będziesz wiedział jak budować łatwe w rozbudowie aplikacje w Spring Framework, które z powodzeniem mogą zostać wykorzystane przez dowolny komponent, od czego już tylko krok do rozpoczęcia przygody np. z mikroserwisami.

Wszystkie przykłady kodu udostępnione zostaną w postaci repozytorium Git.

Trener

Michał Wojtyna - Programuję od ponad 8 lat, w tym od 6 zawodowo. Jakość wytwarzanego przeze mnie oprogramowania jest dla mnie priorytetem. Jestem zwolennikiem metodologii TDD oraz DDD. Od 2015 prowadzę firmę Slidetorial, w której stworzyliśmy narzędzie do błyskawicznego tworzenia tutoriali. Firma świadczy także usługi software house. Od 2012 pracuję jako freelancer. Większość ze swoich projektów zrealizowałem w technologiach Java i Spring Framework. Jestem także doktorantem na UMK zajmującym się zagadnieniami związanymi z inżynierią oprogramowania oraz metodologią DDD.

Najbliższe terminy szkolenia

24-25 marca 2018
Centrum Szkoleniowe Pankiewicza, ul Pankiewicza 3, Warszawa

Szczegółowy program szkolenia

Dzień pierwszy

Podczas pierwszego dnia poznasz podstawy stojące za frameworkiem Spring oraz zbudujesz podstawowy projekt, który drugiego dnia rozbudujemy w gotową aplikację w postaci REST API.

Moduł 1

  • Wprowadzenie do Spring Framework
  • Hello world
  • Wyjaśnienie podstaw filozofii stojącej za Spring Framework i najważniejszych wzorców zaimplementowanych na jego potrzeby
  • Przygotowanie środowiska (Spring Tool Suite) do pracy ze Spring Framework
  • Struktura projektu

Moduł 2

  • Podstawy Spring Core
  • Dependency injection i inverse of control
  • Profile
  • Obsługa command line

Moduł 3

  • Tworzenie własnych komponentów
  • Wstrzykiwanie komponentów
  • Sposoby konfiguracji i wyszukiwania komponentów
  • Eventy w kontenerze Spring Framework

Moduł 4

  • Spring Boot
  • Dodawanie zależności za pomocą Spring Boot
  • Autokonfiguracja Spring Boot
  • Konfiguracja aplikacji przy użyciu Java Config
  • Nadpisywanie domyślnych konfiguracji Spring Boot
  • Java properties

Moduł 5

  • Tworzenie aplikacji webowej
  • Wzorzec MVC
  • Kontrolery
  • Walidacja danych
  • Obsługa błędów
  • Widoki JSP, JSTL, Thymeleaf
  • Testy integracyjne kontrolerów

Moduł 6

  • Podstawy REST API
  • Konwersja klasycznej aplikacji do skalowalnej architektury REST API
  • Serializacja/deserializacja JSON
  • Testy integracyjne JSON/REST API
  • Dokumentacja REST API za pomocą restdocs

Moduł 7

  • Obsługa baz danych za pomocą Spring data
  • Obsługa transakcji baz danych
  • Podstawy NoSql
  • Mechanizm konwersji obiektów
  • Testy integracyjne persystencji
  • Migracje

Moduł 8

Czas na wyjaśnienie wątpliwości, pomoc w rozwiązaniu problemów.

Dzień drugi

Drugiego dnia użyjesz wszystkich mechanizmów poznanych podczas dnia pierwszego, aby stworzyć aplikację do zarządzania dokumentami w małej firmie.

Moduł 1

  • Przygotowanie podstawowych klas i ustalenie słownictwa związanego z domeną problemu (zarządzanie dokumentami)
  • Zdefiniowanie wymagań i zachowania
  • Zbudowanie interfejsów podstawowych serwisów

Moduł 2

  • Obsługa wielu użytkowników i ról w systemie
  • Autentykacja i autoryzacja za pomocą Spring Security
  • Model uprawnień aplikacji do zarządzania dokumentami
  • Spring AOP na potrzeby definiowania uprawnień

Moduł 3

  • Przygotowanie REST API dla klientów przeglądarkowych (np. obsługa CORS)
  • Nawigacja API za pomocą HATEOAS
  • Obsługa różnych rodzajów danych przez REST API
  • Obsługa wysyłania/pobierania plików

Moduł 4

  • Przykładowy klient API w postaci prostej aplikacji AngularJs
  • (Bonus) komunikacja dwustronna za pomocą websocketów
  • Oddanie finalnej aplikacji

Moduł 5

Czas na dyskusję/dodatkowe uwagi.

Oprogramowanie

Szkolenie wymaga przyniesienia własnych komputerów, z zainstalowanym oprogramowaniem:

Udział w szkoleniu

Szkolenie odbędzie się dla grupy minimum pięciu osób.

W przypadku zbyt małej liczby uczestników zostanie ustalony kolejny termin.