Zaawansowane programowanie w języku Python
Poznaj zawansowane techniki programowania i tworzenia modeli w Python!
Poznaj program szkolenia
- Co zyskasz dzięki szkoleniu ?
Cele szkolenia
Celem szkolenia jest utrwalenie i rozwój umiejętności projektowania i programowania opartego na złożonych strukturach języka Python. Uczestnicy szkolenia zdobędą szczegółową wiedzę na temat zaawansowanych funkcjonalności i mechanizmów języka Python i ich efektywnego zastosowania.
UmiejętnościDzięki szkoleniu uczestnik będzie potrafił:
- Typować zmienne w zaawansowany sposób
- Programować funkcyjnie i obiektowo w zaawansowany sposób
- W złożony sposób pracować z modułami
- Stosować metaprogramowanie do realizacji modeli obiektowych
- Wdrażać program współbierzne, równoległe i asynchroniczne
- Programować dostęp do baz danych, SQL i noSQL
- Badać wydajność, optymalizować i testować oprogramowanie w Pythonie
- Stosować zawansowane techniki programowania w języku Python w celu projektowania i realizowania modeli oprogramowania
- Czy to szkolenie jest dla Ciebie ?
Profil uczestników
Szkolenie przeznaczone jest dla programistów języka Python, którzy chcą programować w tym języku na poziomie zaawansowanym.
Przygotowanie uczestników
Uczestnik powinien posiadać wiedzę i doświadczenie w programowaniu w języku Python minimum na poziomie średnio zawansowanym.- Czas trwania
-
Przed nami:
- 5 dni, 40 h szkoleniowych
- Szczegółowy program szkolenia
Szczegółowy program zaawansowanego szkolenia z programowania w języku Python
Środowisko pracy: omówienie
Interpreter języka Python- Style PEP8
- IDE dla Pythona
Zaawansowane aspekty typowania
- Typowanie dynamiczne
- Łańcuchy znaków
- Generalne kategorie typów
- Typy złożone
Programowanie funkcyjne
- Pisanie funkcji prostych i złożonych
- Paradygmaty programowania funkcyjnego
- Funkcje iteracyjne, funkcje: zip(), reverse(), enumerate()
- Funkcje wyższego rzędu, funkcje generatorowe
- Złożone funkcje rekurencyjne
- Redukcje
- Moduły: itertools, functools, biblioteka PyMonad
- Dekoratory
- Złożone funkcje Lambda
- Funkcyjne programowanie wielowątkowe
Programowanie obiektowe
- Klasy, Interfejsy i metody
- Paradygmaty programowania obiektowego
- Klasy abstrakcyjne
- Kontenery niestandardowe
- Przeciążanie operatorów
- Programowanie zorientowane obiektowo
- Tworzenie klas mieszanych
- Rozszerzanie typów wbudowanych
- Dziedziczenie diamentowe – zmiany w wersji 3.x Pythona
- Klasy w nowym stylu
- Metody statyczne i metody klasy
- Pułapki związane z klasami
Moduły
- Przestrzenie nazw modułów
- Pakiety modułów
- Ukrywanie danych w modułach
- Przechodnie przeładowywanie modułów
- Pułapki związane z modułami
Metaprogramowanie
- Metaklasy – model metaklasy
- Tworzenie i dekorowanie metaklas
- Algorytm dzedziczenie w Pythonie
- Atrybuty, Atrybuty getter i setter
- Refaktoryzacja atrybutów a @property
- Podklasy i klasy nadrzędne
- Zastosowanie metaklas
Współbieżność i równoległość
- Tworzenie wątków
- Programowanie równoległe
- Klasy współbieżne: Lock, Queue, ThreadPoolExecutor
- Asynchroniczność
- Pułapki wiązane z programowaniem współbieżnym i asynchronicznym
Wydajność i optymalizacja
- Testowanie aplikacji w języku Python
- Analiza błędów
- Profilowanie
- Zarządzanie pamięcią
- Testowanie wydajności
Zaawansowane aspekty programowania w języku Python
- Wzorce projektowe
- Systemy rozproszone
- Przetwarzanie języka naturalnego (NLP)
Bazy danych
- Połączenie z bazą danych SQL
- Systemy ORM
- Interpreter sqlite Pythona, baza SQLITE3
- Peewee
- Bazy noSQL
Co dalej?- Rozgałęzienia ścieżki edukacyjnej
Metoda realizacji szkolenia
Szkolenie jest realizowane różnymi metodami takimi jak, mikro wykład, ćwiczenia wspólne, ćwiczenia i praca indywidualna, z głębokim naciskiem na praktyczne programowanie.
- W ramach szkolenia zapewniamy
W ramach szkolenia zapewniamy
- materiały szkoleniowe
- certyfikat potwierdzający udział w kursie
- pełna obsługa cateringowa (dla szkoleń stacjonarnych)
- Ścieżka rozwoju
Jak zostać Python Developerem?
Sprawdź ścieżkę szkoleniową i przekonaj się, jak nasze kursy poprowadzą Cię krok po kroku przez wszystkie kluczowe aspekty programowania w Pythonie – od podstaw po zaawansowane zagadnienia.

