KOD | Treść programowa | Godziny |
---|
laboratoria |
---|
T-L-1 | Java Web. Tworzenie, kompilacja i wdrożenie aplikacji webowych z wykorzystaniem Apache Maven 3. Budowa prostego servletu. Wykorzystanie archetypów Maven. | 2 |
T-L-2 | Spring Boot - prosty webserwis typu REST. Stworzenie i uruchomienie prostej aplikacji webowej w Spring Boot. Dodanie API REST umożliwiająćego manipulowanie danymi w aplikacji. | 2 |
T-L-3 | Spring Data JPA i Spring Data REST. Tworzenie i używanie encji i repozytoriów w Spring Data JPA. Wystawianie repozytoriów jako endpointy REST. | 2 |
T-L-4 | Wprowadzenie do Angular. Utworzenie prostego projektu Angular z komponentami losującymi liczby losowa oraz listą zadań. | 2 |
T-L-5 | Routing i serwisy w Angular. Przetwarzanie danych z zapisem w LocalStorage i wykorzystaniem serwisów. Obsługa routingu w Angular. | 2 |
T-L-6 | Komunikacja aplikacji Angular z warstwą backend. Aplikacja menadżera zadań w oparciu o dostarczony gotowy backend. | 2 |
T-L-7 | Zastosowanie komponentów UI na przykładzie biblioteki Angular Material. Przebudowa projektu z poprzedniego tematu i zastosowanie komponentó UI z biblioteki Material Design. | 2 |
T-L-8 | Spring Data JPA, Spring REST i DTO - budowa webserwisu RESt z wykorzystaniem wzorca DTO | 2 |
T-L-9 | Ćwiczenia z zastosowania operatorów reaktywnych | 2 |
T-L-10 | Aplikacja w Angular wykorzystująca magazyn reaktywny (rective store) typu NgRx | 2 |
T-L-11 | Budowa aplikacji webowej (fronted SPA + backend API) wykorzystującej mechanizm Server Side Events | 2 |
T-L-12 | Budowa aplikacji webowej (frontend SPA + backend API) wykorzystującej dwukierunkową komunikację w oparciu o protokół Websocket | 4 |
T-L-13 | Budowa i konfiguracja aplikacji typu PWA z wykorzystaniem frameworku Angular | 2 |
T-L-14 | Przesyłanie komunikatów z użyciem Apache Kafka pomiędzy mikroserwisami | 2 |
| 30 |
---|
wykłady |
---|
T-W-1 | Podstawy aplikacji webowych w języku Java. Szybkie wprowadzenie do Java (cechy języka, kompilacja, uruchamianie, dołączanie bibliotek, classpath, postać dystrybucyjna JAR), Apache Maven (fazy cyklu życia projektu, zarządzanie zależnościami), aplikacje webowe (servlety, obsługa wywołań HTTP w servletach, strony JSP, skryptlety, deskryptor wdrożenia web.xml, struktura aplikacji, serwery aplikacji webowych, wdrożenie aplikacji – deployment). | 2 |
T-W-2 | Podstawy aplikacji webowych w Spring Boot. Wprowadzenie do spring boot, funkcjonalności spring boot, spring boot vs. spring, architektura aplikacji spring boot (konfiguracja, komponenty, kontrolery, kontrolery REST, serwisy, security) | 2 |
T-W-3 | Spring Data JPA i Spring Data REST. Zapoznanie z modułami Spring Data JPA (konfiguracja połączenia z bazą danych w projekcie, definicja klas domenowych/encji, podstawy określania relacji pomiędzy encjami, tworzenie repozytoriów i zapytań bazujących na metodach w repozytoriach) i Spring Data REST (ekspozycja repozytoriów jako end-pointy REST, sprawdzenie operacji CRUD, sprawdzenie wywołań query methods poprzez REST), dostęp do danych przez kontrolery REST z użyciem obiektów DTO | 4 |
T-W-4 | Wprowadzenie do Angular. Single Page Application – idea, architektura aplikacji, założenia frameworku Angular, porównanie do popularnych technologii alternatywnych (React, Vue), praca z Angularem (typescript, Angular CLI, modułowość, komponenty, konfiguracja, kontrolery, serwisy, widoki, dyrektywy, wiązanie danych, serwowanie aplikacji, budowa aplikacji i uruchamianie w środowisku produkcyjnym). | 2 |
T-W-5 | Rouging i serwisy w Angular. Charakterystyka mechanizmu routingu w Angular, konfiguracja routingu, przekazywanie parametrów do kontrolera w ścieżkach, wzorzec projektowy serwisu, wstrzykiwanie zależności w Angular, przykładowe implementacje klasy serwisu, przechowywanie lokalne danych w przeglądarce (local storage) z użyciem serwisu | 2 |
T-W-6 | Komunikacja aplikacji Angular z warstwą backend. Zastosowanie serwisu HttpClient, wywołania GET, POST, PUT i DELETE, odbieranie rezultatów wywołania, przekazywanie danych w wywołaniach, ustawianie nagłówków wywołania (np. do celów autoryzacji), obsługa błędów i reagowanie na status odpowiedzi. | 2 |
T-W-7 | Zastosowanie komponentów UI na przykładzie biblioteki Angular Material. Charakterystyka języka projektowego Material Design, charakterystyka biblioteki Angular Material, przegląd komponentów UI z przykładami zastosowania. | 2 |
T-W-8 | Programowanie reaktywne w aplikacjach frontend, deklaratywny vs. imperatywny wzorzec programowania, charakterystyka biblioteki RxJS, wzorzec projektowy obserwowanego i obserwatora (Observable, Observer), mechanizm subskrypcji zdarzeń, operatory reaktywne | 2 |
T-W-9 | Zarządzanie stanem aplikacji typu Single Page, zasada działania i obszary zastosowań na przykładzie biblioteki NgRX dla frameworku Angular oraz Redux | 2 |
T-W-10 | Komunikacja serwera z klientem z użyciem Server Side Events - zasada działania i zastosowania, implementacja klienta, implementacja serwera SSE na przykładzie frameworku Spring Boot. Komunikacja dwukierunkowa klient-serwer z użyciem protokolu Websocket. | 2 |
T-W-11 | Progressive Web Apps - założenia i wymagania, mechanizm Service Worker, budowa aplikacji spełniającej wymogi PWA z użyciem frameworku Angular | 2 |
T-W-12 | Architektura mikroserwisów - założenia, wady i zalety, porównanie z podejściem monolitycznym, techniki komunikacji pomiędzy elementami systemu, brokerzy i kolejki komunikatów, wsparcie dla architektury mikrserwisów w rozwiązaniach chmurowych (na przykładzie AWS) | 2 |
T-W-13 | Apache Kafka w kontekście architektury mikroserwisów, streaming komunikatów, implementacja konsumenta i producenta komunikatów na przykładzie frameworku Spring Boot | 2 |
T-W-14 | Podsumowanie kursu, zaliczenie. | 2 |
| 30 |
---|