fbpx

Spring Framework – kompletna aplikacja

Właśnie wystartowała pierwsza edycja mojego kursu Spring „Spring Framework – kompletna aplikacja”.

[ STRONA KURSU ]

Jest to kurs Spring podczas którego razem stworzymy aplikację z użyciem frameworku Spring. Zaczynamy od poziomu zero, wiec od samych podstaw tego frameworku, a potem krok po kroku tworzymy i powiększamy projekt, który finalnie zdeployujemy na zewnętrznym hostingu. Aplikacja będzie komunikować się z zewnętrzną bazą danych. Serwer to jedna część. Zrobimy też część frontendową. Zaczniemy od szablonów Thymeleaf, a potem przejdziemy do strony bazującej na ReactJS. Serwer i klient webowy będą porozumiewać się ze sobą z użyciem API typu REST.


[ STRONA KURSU ]

Oczywiście sam kod to nie wszystko, więc dowiesz się też jak aplikację wrzucić zarówno na prywatny hosting jak i na chmurę AWS oraz postawić tam bazy danych. Kurs ten uczy rzeczy potrzebnych do stworzenia solidnej aplikacji, którą śmiało może być prezentowana w portfolio albo być podstawą do aplikacji obsługującej nasz biznes. Niejako przy okazji poznajemy najistotniejsze części Frameworku Spring. Koncentrujemy się na tym co jest najwazniejsze – solidne zrozumienie podstaw, tworzenie aplikacji webowej testy jednostkowe, komunikacja z baza danych na wspomaganiu springowym. Bardzo dużo czasu poświęcimy Spring Security.

[ STRONA KURSU ]

Zaczynamy, bez niespodzianek, od początku, czyli wygenerowania szkieletu projektu za pomocą narzędzia dostępnego na start.spring.io, a następnie poznajemy fundamenty frameworku Spring. Następnie przechodzimy do nauki modelu Model – View – Controler, szablonów HTML i protokołu HTTP. Uczymy jak te wszystkie rzeczy ze sobą połączyć, by otrzymać funkcjonalną aplikację. W kolejnych rozdziałach dowiadujemy się o Spring Data i efektywnym połączeniu Springa z persystencją danych w zewnętrznej bazie danych. Przy okazji dowiemy się conieco o zdarzeniach w Springu oraz o podpakiecie służącym do wysyłania emaili. Następnym krokiem jest podróż w świat REST API, wraz tym jak jak porządnie je dokumentować, tak by korzystanie z niego nie było nauką po omacku. Spring Security pochłonie jeden, duży rozdział. Nauczyły się trzech sposobów na uwierzytelnianie i autoryzację użytkowników. Następnie wrzucimy część serwerową na zewnętrzny hosting. Finalnie stworzymy front-end dla naszej aplikacji w ReactJS.

W dodatkowych materiałach pokaże postawić naszą aplikację w chmurzę AWS oraz pokaże case study popularnego zadania rekrutacyjnego.

Mockito.mock() vs @Mock vs @MockBean

W tym wpisie przyjrzymy się trzem sposobom na tworzenie mocków z użyciem frameworka Mockito, a mianowicie .mock() i @Mock.

Mockito.mock()

Metoda Mockito.mock() tworzy obiekt typu mock na podstawie klasy albo interfejsu, jaki podamy w argumencie. Następnie możemy ustawić kiedy, jakie wartości ma ów obiekt zwracać, albo weryfikować, jakie metody zostały wykonane.

Czytaj dalej Mockito.mock() vs @Mock vs @MockBean

Integracja ReactJS i Spring Framework.

Na mojej platformie pojawiły się pierwsze warsztaty programistyczne, dotyczą one integracji Springa z ReactJS. Czym są warsztaty programistyczne? Są to krótkie kursy (ten trwa dwie godziny z niewielkim hakiem) koncentrujące się na jednym, konkretnym zagadnieniu. W tym wypadku jest to zestawienie komunikacji pomiędzy częścią serwerową w Javie, a front-endem w JavaScript i oprogramowanie operacji z rodziny Create, Read, Update, Delete.


Tworzymy więc aplikację serwerową opartą na frameworku Spring oraz aplikację internetową z użyciem biblioteki ReactJS. Za pomocą API typu REST integrujemy je ze sobą, tak by stanowiły całość i stanowiły odbicie realnej aplikacji z jakimi przyjdzie Ci pracować.

  • Tworzymy aplikację serwerową z użyciem Spring Framework
  • Tworzymy obiekt domenowy i repozytorium
  • Za pomocą RestControllera nasłuchujemy na żądania HTTP
  • Implementujemy obsługę metod GET, POST, PUT, DELETE
  • Wyciągamy dane z adresu URL na jaki przyszedł request, jak i wyciągamy dane z jego samego.
  • Konfigurujemy CORS, by umożliwić komunikację z front-endem
  • Tworzymy aplikację internetową w ReactJS
  • Z poziomu JavaScript łączymy się z częścią serwerową
  • W bonusie poprawiamy wygląd naszej strony za pomocą react-bootstrap

Do warsztatów można dołączyć pod tym linkiem.

Uczenie się – najważniejsza umiejętność dla programistów

Poza językiem angielskim jest jeszcze jedna ważna umiejętność dla każdego w branży IT, a mianowicie wiedzieć JAK się uczyć. Nieważne czy dopiero starasz się o pierwszą pracę, jesteś już juniorem, czy masz już dwucyfrowy staż pracy w branży. Na każdym z tych etapów uczyć się trzeba, jeśli pewnego dnia nie chcę się obudzić w bardzo niefajnej sytuacji. Zwłaszcza w obecnej rzeczywistości, a coś o tym wiem, bo moja etatowa firma żyję ze sprzedaży biletów lotniczych i rezerwacji hotelowych. Tough luck.

Mnie nigdzie nie nauczono jak się uczyć. Wiadomo – stare, sprawdzone, przekazywane z pokolenia na pokolenie „nie uczyć się na dzień przed egzaminem”, „wyśpij się” etc. etc. Oczywiście to wszystko prawda, problem był taki, że ja muszę wiedzieć DLACZEGO, prawdy objawione jakoś specjalnie nigdy na mnie nie działały.

O tym dlaczego proces nauki powinno się rozciągać w czasie i dziennie poświęcać jej godzinę, dwie. Nie więcej. O tym dlaczego sen jest ważny w kontekście uczenia się i o wielu, wielu rzeczach można dowiedzieć się ze świetnego, darmowego (!) kursu – Learning How to Learn – https://www.coursera.org/learn/learning-how-to-learn.

Polecam z całego serca.

Tymczasem na Dev-foundry

Jeśli ktoś jeszcze nie miał okazji się zapoznać to na blogu devfoundry.pl pojawiło się kilka ciekawych wpisów – m.in. o pracy zdalnej, platformie GitHub czy o tym jaki język programowania wybrać. Czyli pakiet startowy dla osób zaczynających przygodę z programowaniem 🙂

Oczywiście nie zabrakło bardziej technicznego „mięcha” jak wpis o pracy z typem Optional w Hibernate czy wpis o Mockach i Stubach autorstwa Dawida, które pięknie wprowadzają w nasz nowy kurs.

Tak, więc jeśli szukasz treści powiązanych z Javą zapraszam do powyższych wpisów 🙂

Optional – nie tylko .isPresent() i .get() + ogłoszenie parafialne

Cześć! Kolejny post już online, jednak tym razem pod flagą Dev Foundry. Na Clockwork Java nowe materiały od 6 czerwca co dwa tygodnie – zaczynamy z cyklem nauki Javy od podstaw (a jak już te nieco ogarniemy to i o Javascript zahaczymy, będzie się działo 🙂

Optional – nie tylko .isPresent() i .get()



Natomiast na http://devfoundry.pl materiały tradycyjnie porozrzucane po różnych aspektach stacks javowego, tworzone przeze mnie oraz Dawida Nowaka, z którym to stworzyłem całkiem popularny kurs o wzorcach projektowych na Udemy (a już niedługo zabieramy się za kolejny, o wiele ciekawszy temat).