Opanuj moc REST API

Poznaj FastApi, niech tworzenie REST API będzie przyjemnością!
Jego moc zachwyca nawet doświadczonych developerów.
"Nie próbuj. Rób albo nie rób. Nie ma próbowania" Mistrz Yoda

Użyj mocy
hero

Prawdziwa kosmiczna przygoda

FastAPI Nowoczesny, ultraszybki framework
w którym pracuje się intuicyjnie.
Pięknie napisany kod daje radość i satysfakcję.

Sprawdzanie poprawności?
Pydantic robi to ge-nia-lnie.
Gotowe metody, własne validatory..
To i wiele więcej! Proszę bardzo!

meteor

Baza danych? Oczywiście!
Pokaże Ci jak skonfigurować ORM
i pisać zapytania z jego pomocą
To będzie efekt wow.. SQL bez SQLa.

W końcu omówimy testowanie!
Nie tylko testy jednostkowe,
Także integracyjne! To będzie sztos
W tym czeka nas niespodzianka 😊

Jak podzielić się aplikacją z innymi?
Pokaże Ci pełen proces deploymentu
oraz jak zbudować aplikację i zamknąć
w dockerowym obrazie.

Dołączam do przygody
miecz świetlny

Czego się nauczymy?

Moduł 0 - pierwsze starcie

  • Przywitanie w kursie i informacje organizacyjne
  • Przedstawienie projektu, który będziemy wykonywali
  • Potrzebna wiedza, potrzebne oprogramowanie
  • Przedstawienie Fastapi i jego składników
  • Porównanie innych dostępnych rozwiązań.
  • Zrozumieć asynchroniczność - ćwiczenia i kod

Moduł 1 - Nowa nadzieja

  • Rest API vs GraphQL? Json czy XML?
  • Projektujemy dobre API
  • Metody protokołu http i odpowiedzi serwera
  • HATEOAS
  • Wersjonowanie i dokumentacja
  • Poziomy dojrzałości według modelu Richardsona

Moduł 2 - Środowisko kontratakuje!

  • Przygotowanie środowiska w oparciu o Poetry i PyEnv
  • Instalacja Postmana i przejście po jego możliwościach
  • Typowanie i wstęp do MyPy
  • Pierwsze “dummy” kontrolery i Hello World
  • Routing - nawigacja po aplikacji
  • Request Body i Query

Moduł 3 - Powrót Requestu

  • Sprawdzanie poprawności naszego zapytania
  • Poznajemy Pydantic'a !
  • Tworzymy i sprawdzamy pierwsze Requesty
  • Piszemy własne walidatory
  • Upload plików

Moduł 4 - Mrok kodu kontratakuje

  • Jak powinien być ułożony kod naszej aplikacji?
  • Utworzenie instancji bazy danych PostgreSQL
  • PonyORM vs SQL Alchemy
  • Grupowanie danych.
  • Bardziej złożone zapytania.

Moduł 5 - Atak obrazów - Docker

  • Instalacja i oprowadzenie po Dockerze.
  • Dockeryzacja naszej aplikacji.
  • Twelve factors app, zmienne środowiskowe.
  • Zmieniamy silnik na PostgreSQL.
  • Budujemy kontenery z naszą aplikacją.

Moduł 6 - Zemsta użytkowników

  • Porównanie dostępnych metod autentykacji.
  • Ograniczanie dostępu do kontrolerów.
  • Kontekst użytkownika - pobranie zalogowanego usera.
  • Modyfikujemy nasze modele.
  • Dodajemy asocjacje z użytkownikiem.

Moduł 7 - Przebudzenie kodu.

  • Cache w oparciu o redisa.
  • Konfiguracja: pylint, flake8, black itp.
  • Dodajemy pre git hook i sprawdzamy jakość naszego kodu.
  • Jak dokumentować nasze API? Swagger & Open API.
  • Teoria testów i pierwszy test.
  • Kilka informacji o CI & CD & Github Actions.

Moduł 8 - Ostatni ORM

  • Dokładniejsze omówienie asocjacji.
  • Transakcje.
  • PonyORM vs SQL Alchemy
  • Instalacja i konfiguracja ORMa
  • Pierwsze modele i podłączenie do bazy danych.
  • Przykładowe zapytania na bazie danych.

Moduł 9 - Testowanie. Odrodzenie.

  • Krótki wstęp do Pytest'a
  • Piramida testów, rodzaje testów.
  • Wystawienie testowej bazy, testy end-end.
  • Httpx client
  • Pytest fixtures - autouse, scope, parametrized
  • Mockowanie zapytań do REST API

Moduł 10 - Dzielimy się ze światem

  • Przenosimy aplikacje na Githuba.
  • Git flow, jak efektywnie pracować z Gitem?
  • Istota gałęzi master i develop.
  • Przygotowanie produkcyjnej wersji aplikacji.
  • Deployment obrazu dockerowego na serwerze wirtualnym.
  • Omówienie innych metod deploymentu aplikacji.

Moduł 11 -A może jednak GraphQL?

  • Czym jest GraphQL?
  • Omówienie terminologii.
  • Porównanie dostępnych bibliotek.
  • Jak wdrożyć go bezproblemowo w naszej aplikacji?
  • Mutacje i modyfikacja danych.
  • Wady i zalety takiego rozwiązania.

Moduł 12 - Ostatki i zaawansowane

  • Jak zintegrować się z Cellery?
  • Zdarzenia i zadania w tle.
  • Czym jest replikacja?
  • Tworzymy klienta w Typescripcie.
  • Jaki jest dalszy plan?
  • Podsumowanie zdobytej wiedzy w kursie.

miecz świetlny
statek

Kapitan Statku

kacper

Kacper Sieradziński

Wieloletnie doświadczenie w wytwarzaniu aplikacji webowych i kierowania zespołami informatycznymi.
Od 2007 roku zdobywa doświadczenie jako programista, wytwarza aplikację, testuje ich bezpieczeństwo oraz organizuje pracę programistyczne.

Ponad 15-letnie doświadczenie w prowadzeniu szkoleń informatycznych w całym kraju.

Prywatnie youtuber, prowadzący od 3 lat swój kanał programistyczny zrzeszający ponad 6 tyś subskrybentów i około 1000 sprzedanych własnych szkoleń online

Zapraszam na mój kanał Youtube.

Oni lecieli już z nami

Mariusz: uczestnik Pystart, Pycamp, PyWWW i SkumajBazy

Bootcampy godne polecenia! Dzięki nim nauczyłem się programować i szybko przeskoczyłem na inne języki. Mix wiedzy i nacisk na samodzielne wykonywania zadań to skuteczna mieszanka ułatwiająca naukę. DoKodu to również discordowa społeczność pełna życzliwości i zawsze pomocna.

Marcin: uczestnik Pystart

...rekomenduję! Po skończeniu wysłane CV i bezproblemowe znalezienie pracy z marszu! (...) Jak się rzetelnie przeszło przez całość i trochę się człowiek douczał to część techniczna to był pryszcz w czasie rekturacji!

Katarzyna: uczestniczka Pystartu

Bootcamp jest świetny! Bezcenne są te wszystkie zadania, że można pogłówkować, a potem skonfrontować z wytłumaczeniem :-) Pozdrawiam!!

miecz świetlny

Wpadnij na nasz bootcamp

Jeśli masz wątpliwości to serdecznie zapraszam do kontaktu:

kacper@dokodu.it