Szkolenie dostępne na zamówienie

Python: Tworzenie aplikacji HTTP/REST w architekturze mikroserwisowej

Uczestnicy szkolenia zapoznają się z metodami tworzenia aplikacji webowych w języku Python

Czas trwania szkolenia:3 dni (24h)

Poziom zaawansowania:

Kod kursu:PYTHON/HTTP

microserviceswebnetworkinghttp

Szkolenie na zamówienie

  • Dostosowany program
  • Indywidualna wycena
  • Dowolny termin
Zapytanie o szkolenie

Python: Tworzenie aplikacji HTTP/REST w architekturze mikroserwisowej

Cele szkolenia

  • Zapoznanie się z mechanizmami programowania aplikacji sieciowych, dostarczanymi w ramach biblioteki standardowej języka Python
  • Pokazanie silnych i słabych stron popularnych rozwiązań
  • Wstępne zapoznanie się z frameworkami ułatwiającymi tworzenie rozwiązań w aplikacjach sieciowych

Dla kogo?

  • Średnio zaawansowani i zaawansowani programiści posługujący się językiem Python
  • Architekci rozwiązań aplikacyjnych w języku Python

Zalety

  • Zajęcia prowadzone są przez doświadczonych praktyków, którzy na co dzień stosują prezentowane techniki i narzędzia
  • Na zajęciach stosowane są otwarte rozwiązania
  • Szkolenie porusza zagadnienia związane z tworzeniem i rozwijaniem aplikacji, z użyciem biblioteki standardowej oraz szkieletów aplikacyjnych (ang. framework) związanych z komunikacją sieciową
  • W trakcie ćwiczeń wykorzystywane są przykłady zbliżone do rzeczywistych zastosowań i promowane są praktyki tworzenia łatwego w utrzymaniu kodu
  • Praktyka przed teorią - wszystkie szkolenia technologiczne prowadzone są w formie warsztatowej. Konieczna teoria jest wyjaśniana na przykładzie praktycznych zadań
  • Konkretne umiejętności - w ramach każdego szkolenia rozwijamy praktyczne umiejętności związane z daną technologią i tematyką
  • Nauka z praktykami - wszyscy trenerzy na co dzień pracują w projektach, gwarantuje to dostęp do eksperckiej wiedzy i praktycznego know-how

Wymagania

  • Umiejętność posługiwania się wybranym środowiskiem IDE, dedykowanym dla języka Python, w stopniu średniozaawansowanym
  • Ogólna znajomość biblioteki standardowej języka Python
  • Znajomość zagadnień programowania obiektowego

W cenie otrzymasz:

  • Materiały szkoleniowe
  • Certyfikat ukończenia szkolenia
  • W przypadku szkolenia w trybie stacjonarnym zapewnimy Ci również lunch oraz sprzęt niezbędny do nauki

Program

Pobierz program w PDF

Wprowadzenie teoretyczne do zagadnień sieciowych:

  • Model OSI
  • Komunikacja TCP/IP i trójstronny handshake
  • Komunikacja klient-serwer
  • Asynchroniczna komunikacja sieciowa
  • Skalowalność horyzontalna

Protokół HTTP

  • Cykl życia żądania HTTP
  • Request-Response
  • Metody (czasowniki) protokołu
  • Nagłówki żądań i odpowiedzi
  • Statusy
  • Mimetype
  • Uwierzytelnianie
  • Pobieranie danych z serwera
  • Przesyłanie danych do serwera
  • Debugging
  • HTTPS
  • Uwierzytelnianie
  • OAuth2 i JWT (JSON Web Token)

REST

  • JSON serializacja i deserializacja
  • Dokumentacja: OpenAPI
  • Zasady tworzenia API
  • Wersjonowanie API
  • Uwierzytelnianie

Wprowadzenie do frameworków

  • FastAPI
  • Django
  • Kolejki zadań: Redis+Cellery

Wprowadzenie do baz danych

  • Surowe zapytania SQL
  • Wykorzystanie ORM w aplikacji
  • Przykłady użycia baz danych: SQLite3, PostgreSQL, MongoDB, InfluxDB, Prometheus
  • Mechanizmy cache: memcached, redis, varnish

Wprowadzenie do konteneryzacji

  • Docker
  • Kubernetes

Mikroserwisy

  • Architektura mikroserwisowa
  • Skalowalność
  • BFF - Backend for Frontend
  • API Gateway
  • Load Ballancing

Testowanie aplikacji sieciowych

  • Praktyczna implementacja testów aplikacji sieciowej w języku Python
  • Testowanie aplikacji sieciowych we współczesnych metodykach wytwarzania oprogramowania
  • Pipeline CI/CD

Autorem szkolenia jest Matt Harasymczuk

Od 2015 roku prowadzę szkolenia jako trener Sages. Mam ponad 9 tysięcy godzin (tak, 9000!) doświadczenia w prowadzeniu warsztatów dla ponad 30 tys. osób. Dotychczas przeprowadziłem szkolenia dla 196 organizacji z sektorów tj. publiczny, bankowy, obronny, agencje kosmiczne, firmy branży lotniczej, automotive, e-commerce, fintech, ubezpieczenia, startupy wysokich technologii, branża paliwowa, telekomy, medyczna, uczelnie wyższe, gaming, druk 3d i consumer electronics. Specjalizuję się w szkoleniach…