PAKIET: Kurs Aplikacji Webowych

ze Spring Framework i Angular

Co znajdziesz w pakiecie?

W pakiecie znajdziesz wszystkie moje kursy i warsztaty:

  • Kurs Aplikacji Webowych
  • Kurs Hibernate i JPA
  • Kurs Testy Jednostkowe
  • Warsztat Architektura Warstwowa
  • Warsztat Architektura Heksagonalna
>>> Sprzedaż zakończona <<<

Kurs Aplikacji Webowych

Kurs jest przeznaczony dla początkujących programistów Javy lub osób dopiero uczących się Javy. Dla wszystkich, którzy są lub chcą w przyszłości stać się programistami aplikacji webowych w Javie, czy też w innym języku. 

Wystarczy znajomość podstaw Javy i/lub podstawowa znajomość frameworka Spring i Hibernate, bo tych narzędzi będziemy używać w kursie. Polecam tutaj także mój kurs Spring Boota na Youtubie.

Jak wygląda kurs aplikacji webowych?

Cały kurs będzie polegał na tworzeniu aplikacji i to nie byle jakiej aplikacji. Podczas kursu stworzymy w pełni funkcjonalny sklep internetowy.

 

Dlaczego wybrałem właśnie sklep jako aplikację, którą stworzymy w kursie? 

Sklep to taki typ aplikacji, w którym może się zawierać bardzo wiele ciekawych komponentów. W sklepie będziemy mieli zarówno proste CRUDy (dodawanie kategorii, dodawanie produktów), jak i także bardziej skomplikowane zagadnienia takie jak proces sprzedażowy (koszyk, zamówienie, płatność). Ale też możemy mieć różne integracje, takie jak np. pobieranie kursów walut, integracje z dostawcami szybkich płatności, z usługami kurierskimi, z dostawcami usług księgowych i wiele więcej.

Więc jest to tak naprawdę doskonała baza do prowadzenia takiego kursu. Różnorodność tematów, jakie można tu poruszyć, jest naprawdę bardzo duża.

 

Kurs będzie bazował na nowoczesnym modelu budowania aplikacji, w oparciu o usługi REST. Więc nauczysz się także tworzenia REST API. Do REST API będziemy podłączać się z aplikacji frontendowej zbudowanego w Angularze.

 

W kursie będę starał się pokazywać nowoczesne narzędzia i podejście do tworzenia aplikacji.

Poniżej znajdziesz lekcje demo dla tego kursu

Pierwsza lekcja zawiera więcej frontendu, a druga natomiast sam backend.

Moduł 3 – Katalog produktów
Usuwanie produktów

W tym odcinku realizuję jedną z funkcjonalności CRUD dla katalogu produktów, czyli usuwanie produktów.  Ten odcinek zawiera więcej frontendu, bo na backendzie dorabiam tylko jedną prostą usługę.

Moduł 5 – Koszyk
Czyszczenie starych koszyków (backend)

W tym odcinku pokazuję jak za pomocą schedulera można optymalizować zawartość tabel z koszykami. Dużą część odcinka poświęcam temu jak trzeba to robić optymalnie.

Co będzie zawarte w kursie?

Kurs będzie zawierał:

10 modułów, każdy moduł to od 2 do 5 godzin materiału

– cały kurs to 30 godzin materiału

– pod prawie każdym modułem jest dodatkowo praca domowa

– na koniec każdego modułu jest odcinek z review modułu, w którym omawiam bardzo wiele dodatkowych zagadnień związanych z prowadzeniem projektu i utrzymaniem kodu

– lekcje dotyczące analizy programowanych zagadnień

– omawiam frameworki Spring i Angular

– omawiam podstawy Gita (w kursie będziemy korzystać z gita, w podstawowym zakresie)

– jak korzystać z gita i Githuba

integracja z bramką płatności

– wdrożenie projektu w chmurze i omówienie zagadnień konfiguracyjnych

Spis treści:

Moduł 1

Wprowadzenie

  1. Powitanie
  2. Jak zbudowany jest kurs, co będzie nam potrzebne
  3. Co będziemy robić w kursie? Jaki będzie wynik?
  4. Wybór frameworka: Spring, Spring Boot, Angular
  5. Wybór architektury aplikacji + Bonus: Warsztat Architektura Warstwowa
  6. Jak uzyskać pomoc podczas trwania kursu?
  7. Praca domowa
  8. Instalacja Javy (którą wersję wybrać)
  9. Instalacja środowiska IntelliJ IDEA
  10. Instalacja środowiska Visual Studio Code
  11. Instalacja bazy danych Mysql i Mysql Workbench
  12. Instalacja node.js
  13.  Instalacja gita

Moduł 2

Konfiguracja / Pierwsza usługa

  1. Wprowadzenie
  2. Podstawy Spring: beany , autokonfiguracja, dependency injection, IOC
  3. Podstawy Angulara: pliki konfiguracyjne, wstrzykiwanie zależności, dodawanie bibliotek, tworzenie komponentów
  4. Tworzymy podstawowe aplikacje dla frontendu i backendu
  5. Podstawy gita, połączenie z Githubem, tworzymy repozytoria dla projektu
  6. Przygotowanie layoutów i szablonów z Angular i Flexlayout
  7. Szybkie stylowanie komponentów z Angular Material
  8. Lista produktów – pierwsza funkcjonalność. Konfiguracja CORS
  9. Po co nam Liquibase?
  10. Konfiguracja Liquibase.
  11. Pobieranie produktów z bazy danych
  12. Review modułu
  13. Praca domowa

Moduł 3

Katalog produktów

  1. Wprowadzenie
  2. REST API wprowadzenie
  3. Tworzenie usług REST w Spring Framework
  4. Projekt bazy danych dla katalogu produktów
  5. Wprowadzenie Hibernate, JPA i Spring Data
  6. Stronicowanie produktów
  7. Różne podejścia do administracji aplikacjami
  8. Lista produktów w panelu administracyjnym
  9. Edycja produktów
  10. Dodawanie produktu
  11. Walidacja danych wejściowych
  12. Usuwanie produktów
  13. Upload obrazków
  14. Pobieranie szczegółów produktu
  15. Rewie modułu
  16. Praca domowa

Moduł 4

Kategorie produktów

  1. Wprowadzenie
  2. Relacje one-to-many (omówienie relacji jeden do wielu)
  3. Tworzymy kategorie dla produktów – panel administracyjny (CRUD)
  4. Lista kategorii na stronie głównej
  5. Podstrona kategorii, filtrowanie po kategoriach, stronicowanie
  6. Dodawanie i wyświetlanie opinii dla produktów.
  7. Mapowanie encji do DTO (kiedy potrzebne, problem n+1)
  8. Review modułu – Refactoring (pakietowanie)
  9. Praca domowa

Moduł 5

Koszyk

  1. Wprowadzenie
  2. Strona koszyka, dodawanie do koszyka
  3. Aktualizacja koszyka
  4. Ikonka koszyka – zliczanie produktów
  5. Czyszczenie starych koszyków (backend)
  6. Review modułu
  7. Praca domowa

Moduł 6

Zamówienie

  1. Wprowadzenie
  2. Analiza procesu zamówień
  3. Formularz zamówień. Zamówienia 
  4. Sposób dostawy
  5. Sposób płatności
  6. Wysyłka mailowa zamówienia do klienta
  7. Review modułu – Refaktoring, testy
  8. Praca domowa

Moduł 7

Przetwarzanie zamówień

  1. Wprowadzenie
  2. Analiza procesu przetwarzania zamówień
  3. Przetwarzanie zamówień – zmiana statusu
  4. Przetwarzanie zamówień – logi i powiadomienia
  5. Eksport zamówień
  6. Wykresy sprzedaży
  7. Review modułu
  8. Praca domowa

Moduł 8

Obsługa użytkowników - Spring Security

  1. Wprowadzenie
  2. Analiza procesu logowania i autoryzacji użytkownika
  3. Logowanie użytkownika administracyjnego (JWT token)
  4. Autoryzacja usług w Swaggerze 
  5. Rejestracja i logowanie klientów sklepu
  6. Wstrzykiwanie użytkownika w procesie zamówień
  7. Review modułu
  8. Praca domowa

Moduł 9

Integracje z bramką płatności

  1. Wprowadzenie
  2. Analiza procesu integracji z dostawcą płatności
  3. Wdrożenie projektu na serwer
  4. Integracja z bramką płatności (inicjalizacja)
  5. Integracja z bramką płatności (odbieranie potwierdzenia)
  6. Review modułu

Moduł 10

Strona główna i dalsze prace nad projektem

  1. Wprowadzenie
  2. Strona główna – promocje
  3. Obsługa błędów
  4. Cache dla usług REST
  5. Zakończenie kursu

Co jest w cenie kursu?

Kurs Hibernate i JPA

Co otrzymasz w kursie?

Kurs Hibernate i JPA (wszystko o przetwarzaniu danych) to ponad 8,5 godziny materiału poświęconego jednemu z najważniejszych i najbardziej zaawansowanych narzędzi, jakim jest Hibernate. Hibernate to obecnie drugi najpopularniejszy framework w świecie Javy tuż po frameworku Spring.

Spring framework i Hibernate to dwa najczęściej pojawiające się frameworki w ogłoszeniach o pracę na stanowisko Java Developera, niezależnie czy chodzi o Juniora, Mida, czy Seniora.

W kursie omawiam wszystkie zagadnienia związane z Hibernate używanym jako dostawca JPA. Hibernate wraz z JPA, to jedna z najpopularniejszych konfiguracji użycia tego narzędzia.

Zaczynam od omawiania podstawowych zagadnień, następnie przechodzę do operacji CRUD i wszystkich rodzajów relacji, jakie mogą wystąpić przy mapowaniu encji w Hibernate. Dalej skupiam się na zaawansowanym pobieraniu danych przy użyciu języka zapytań JPQL. A na koniec przechodzę do bardziej złożonych tematów takich jak Caching i Batchowanie.

Szczegółowy spis treści i więcej informacji związanych z tym kursem znajdziesz tutaj 

Kurs Testy Jednostkowe

Co otrzymasz w kursie?

Duża ilość drobnych błędów, zagmatwany kod – to może zniechęcić każdego programistę. Testy jednostkowe są na to lekarstwem. Wiem to, bo sam je z powodzeniem stosuję.

Dzięki testom stałem się lepszym programistą, dlatego chciałem podzielić się z Tobą tą wiedzą i tym, co mi pomogło wznieść się na wyższy poziom. 

Przygotowałem dla Ciebie kurs, który nie tylko pomoże Ci stać się lepszym programistą, ale także wyzwoli Cię od drobnych i powracających błędów, czyli zmory każdego programisty.

Szczegółowy spis treści i więcej informacji związanych z tym kursem znajdziesz tutaj 

Warsztat Architektura Warstwowa

Warsztat poświęcony jest Architekturze Warstwowej, czyli najpowszechniej stosowanej architekturze aplikacji. Architekturę warstwową znajdziesz w przeróżnych aplikacjach od tych najmniejszych, po te mające po kilka milionów linii kodu.

Co znajdziesz w warsztacie?

Warsztat zawiera:

  • szczegółowe omówienie architektury warstwowej (po co stosujemy tę architekturę, omówienie odpowiedzialności poszczególnych warstw, omówienie zależności pomiędzy warstwami)
  • omówienie dodatkowych zagadnień, takich jak Dependency Inversion Principal
  • omówienie różnego rodzaju pakietowania i rozłożenia różnych elementów w kodzie aplikacji
  • moje doświadczenia związane z pracą z tą architekturą
  • kodowanie przykładowej aplikacji w architekturze warstwowej z naciskiem na odpowiednie rozłożenie elementów aplikacji w poszczególnych warstwach

Warsztat trwa ok, 1,5 godz.

Warsztat Architektura Heksagonalna

Warsztat poświęcony jest architekturze heksagonalnej. Jednej z alternatywnych architektur aplikacji, która jest pomocna w rozwiązywaniu wielu problemów występujących w dużych i skomplikowanych aplikacjach.

Co znajdziesz w warsztacie?

Warsztat zawiera:

  • szczegółowe omówienie architektury heksagonalnej (szczegółowe omówienie elementów architektury, kiedy stosować tę architekturę, jakie problemy wiążą się z tą architekturą)
  • omówienie separacji komponentów jako podstawowego założenia architektury heksagonalnej
  • omówienie portów i adapterów jako integralnego elementu architektury heksagonalnej
  • omówienie pakietowania charakterystycznego dla tej architektury
  • kodowanie przykładowej aplikacji w architekturze heksagonalnej
  • testowanie jednostkowe w architekturze heksagonalnej
  • testy komponentowe z wykorzystaniem fejkowych adapterów i mocków
  • dostosowanie konfiguracji, aplikacji do korzystanie z profili springowych
  • uruchamianie aplikacji w trybie inmemory (alternatywne adaptery)

Warsztat trwa ponad 2 godz.

Mateusz Dąbrowski
Prowadzący

Cześć, nazywam się Mateusz Dąbrowski, od kilkunastu lat zajmuję się zawodowo programowaniem. Moim głównym językiem jest Java, ale programowałem też w takich językach jak Python, PHP, Javascript.

W swojej karierze współtworzyłem wiele aplikacji, głównie dla sektora bankowego, ale nie są mi obce także projekty z sektora ubezpieczeń czy telekomunikacji.

Najczęściej zadawane pytania:

Kiedy otrzymam dostęp do wszystkich kursów?

Po zakupie Kursu Aplikacji Webowych otrzymasz dostęp do wszystkich kursów, wystarczy zalogować się do platformy. Pozostałe kursy powinny być dostępne po około minucie od złożenia zamówienia. Jeśli kursy nie pojawiły się w panelu „Moje kursy” proszę o kontakt.

Jak długo mam dostęp do tego kursu?

Otrzymujesz dożywotni dostęp do kursów. Nie są wymagane dodatkowe opłatny.

Czy dostanę cały kurs od razu?

Tak. Wszystkie lekce zawarte w kursach są dostępne od razu po zalogowaniu się do platformy

Na jakiej wersji Javy i Springa  i Angulara jest oparty kurs aplikacji?

Aplikacja budowana jest na Javie 17 LTS, ale nic nie stoi na przeszkodzie, żeby odpalać ją na nowszych wersjach Javy. Spring w wersji 2.6.x i po katualizacji w wersji 2.7.x, Angulara w wersji 13.x.

Czy mogę prosić o wystawienie faktury za kurs?

Tak, wystawiam faktury vat. Wystarczy, że w formularzu zamówienia zaznaczysz dodatkowego checkboxa i podasz dane firmy, na którą ma być wystawiona faktura. Po zakupie faktura wysyłana jest automatycznie na maila podanego w zamówieniu.

Co jeśli mam inne pytania?

Skorzystaj z formularza kontaktowego na mojej stronie, na pewno odpowiem, znajdziesz go tutaj. Możesz także skontaktować się ze mną na moim profilu facebookowym tutaj.