FastAPI: tworzenie aplikacji REST

Najbliższe terminy tego szkolenia
Skuteczność
Program szkolenia
- Wstęp do REST API
- Metody
- Statusy HTTP
- Sposób działania
- Nagłówki HTTP
- Hello World w FastAPI
- Zdefiniowanie routera
- Start servera uvicorn
- Automatyczne restart serwera przy zmianie kodu
- Zapytania do serwera za pomocą Curl oraz Postman
- Konfiguracja projektu
- Config z biblioteką dotenv
- Jak sprawnie zacząć projekt od zera?
- Start projektu z biblioteką cookiecutter
- Jak definiować endpointy
- GET
- POST
- PUT
- DELETE
- Dependency injection
- Czym jest wzorzec dependency injection?
- Uwierzytelnianie
- Połączenia z bazą
- Logging
- Znaczenie DI w testach
- Middleware
- Czym są?
- Droga przetwarzania zapytania w FastAPI?
- CQRS
- Logging
- Sync vs Async
- Różnice
- Jak zdefiniować asynchroniczne endpointy
- Pydantic
- Jak definiować modele z użyciem pydantic.BaseModel?
- Walidacja z użyciem Pydantic
- Serializacja danych z użyciem Pydantic
- Przydatne metody
- Dokumentacja kodu
- Typowanie w Pythonie
- Sprawdzanie typów w Pythonie - biblioteka Typing
- Sprawdzenie błędów typów z użyciem Flake8
- Obsługa baz danych SQL
- Wstęp do SQLAlchemy
- Migracje z użyciem biblioteki Alembic
- JSON Web Token
- O JWT
- Budowa
- Jak generować
- Typy tokenów
- Bezpieczeństwo JWT
- Zabezpieczenie endpointów na podstawie JWT
- Zabezpieczenie endpointu z użyciem FastAPI scope
- Logika biznesowa w projekcie FastAPI
- Repository pattern
- Klasa protocol w Pythonie
- Warstwa serwisów
- Swagger
- Generowanie dokumentacje API
- Testy
- Dependency injection w testach jednostkowych
- mock.patch vs dependency injection
- Testowanie za pomocą Pytest
- Testy API
Opis szkolenia
Szkolenie odbywa się na żywo z udziałem trenera. Nie jest to forma kursu video!
O skoleniu w skrócie
Warsztatowe szkolenie z biblioteki FastAPI - najszybciej zdobywającej popularność biblioteki Python do tworzenia aplikacji webowych.
Dla kogo?
Aby uczestniczyć w tym szkoleniu potrzebna jest podstawowa wiedza z programowania w języku Python - jak definiować klasy, pisać funkcje i uruchamiać skrypty w języku Python. Podstawowa znajomość protokołu HTTP oraz Git będzie wyjaśniona podczas wstępu jednak wskazane jest wcześniejsze rozumienie działania
Charakter szkolenia
Szkolenie ma charakter warsztatowy. W trakcie szkolenia uczestnicy otrzymają praktyczną wiedzę na temat budowania aplikacji z użyciem FastAPI.
Przebieg szkolenia
- Szkolenie zaczniemy od stworzenia projektu w git z pomocą cookiecutter.
- Następnie dowiemy się jak dodać do aplikacji pierwszy endpoint w FastAPI służący do zwracania informacji na temat aktualnych ofert pracy.
- Napiszemy testy sprawdzające zwracane dane do enepointów, które planujemy napisać podczas rozwijania aplikacji do zarządzania ofertami pracy.
- Następnie skupimy się na dostarczeniu funkcjonalności spełniające wymagania opisane testami.
- Uczestnicy dowiedzą się gdzie zawrzeć logikę biznesową aplikacji - stworzymy warstwę serwisów obsługującą zarządzanie ofertami pracy oraz użyjemy jej w endpointach.
- Dowiemy się jak zapisywać rekordy do bazy przy użyciu biblioteki SQLAlchemy.
- Dowiemy się jak uruchamiać aplikacje w Docker compose.
Prowadzący szkolenie: Łukasz Jaworowski
Zawodowo programista od 8 lat. Typowy praktyk lubiący rozwiązywanie problemów biznesowych od koncepcji do gotowego programu.
Skupiony na technologiach backendowych. Zaczynał od Javy, większość czasu w pracy spędził programując systemy przetwarzania danych oraz aplikacji webowych z użyciem języka Python i AWS.
Od 2021 roku pracuje jako lider techniczny w projektach Golang w firmie z obszaru security/crypto.
Doświadczenie zdobywał w startupach, Fintechach, bankach oraz realizując projekty jako freelancer.
W wolnym czasie poza programowaniem lubi sport i inne formy rywalizacji.
Gdy na jakiś termin zgłosi się minimalna liczba osób, termin oznaczamy jako gwarantowany.
Jeśli jakiś termin oznaczony jest jako gwarantowany to oznacza to, że na 100% się odbędzie we wskazanym czasie i miejscu.
Nawet gdyby część takiej grupy zrezygnowała lub przeniosła się na inny termin, raz ustalony termin gwarantowany takim pozostaje.
Ewentualne ryzyko ponosimy my jako organizator.
Przejdź do terminów tego szkolenia

Sprawdź, co mówią o nas ci, którzy nam zaufali
Trenerzy kategorii Python




Programista z ponad 12 letnim stażem, pracował dla klientów z Norwegii, Szwecji, Wielkiej Brytanii oraz Niemiec. Pracował dla takich firm jak Schibsted Tech Polska oraz PrimeQ tworząc strony o bardzo dużym natężeniu ruchu, skrypty automatyzujące pracę innych, w tym także crawlery. Trener, który na sali spędził ponad 5000h prowadząc szkolenia z baz danych, programowania w Pythonie i PHP.
Kacper uważa, że język programowania to tylko narzędzie w rękach doświadczonego dewelopera, dlatego nieustannie lubi uczyć się nowych rzeczy oraz zarażać miłością do programowania innych (stąd pewnie ten kanał na Youtubie -> Kacper Sieradziński).



