Budowanie Real Project w Pythonie. Zaawansowany poziom

Dowiedz się, jak używać języka programowania Python do tworzenia prawdziwych back-endowych produktów oprogramowania.
Kod: SCRIPT-007
Czas trwania: 30 godzin

Opis szkolenia

Python to niezwykle potężny i dynamiczny język programowania, który może być używany w różnych obszarach zastosowań (w tym w telekomunikacji). Często jest porównywany z Tcl, Perl, Ruby, Scheme lub Java. To szkolenie pomoże Ci zdobyć zaawansowane umiejętności programowania w Pythonie, biorąc udział w tworzeniu prawdziwego back-endowego oprogramowania.

Podczas kursu przejdziemy przez niektóre z kluczowych obszarów, takich jak: interakcje w systemie plików, programowanie obiektowe, kryptografia, programowanie asynchroniczne, tworzenie oprogramowania back-end, interakcje z bazami danych, wielowątkowość i instalacja pakietów.

Plan szkolenia

Wprowadzenie. Krótkie wprowadzenie do kursu
  • Kluczowe cechy Pythona
  • Systemy kontroli wersji (Git)
  • Model Gitflow
  • Środowiska wirtualne
  • Wdrażanie środowiska wirtualnego

Serwer plików. Opis Projektu
  • Opis projektu i wymagania projektowe
  • Architektura projektu

Pierwszy prototyp. Praca z systemem plików
  • Praca z systemem plików, menedżer kontekstów
  • Moduły i importy
  • Zmienne środowiska
  • Pierwsza architektura prototypowa
  • Opracowanie pierwszego prototypu serwera plików

Testowanie i konserwacja
  • Główne zasady utrzymania kodu w Pythonie
  • Standardy formatowania i dokumentowania kodu
  • Testowanie kodu. Pytest framework
  • Logowanie
  • Obsługa ciągów dokumentów
  • Tworzenie testów we frameworku Pytest
  • Dodawanie logowania

Ochrona zasobów. Kryptografia. Programowanie obiektowe
  • Programowanie obiektowe
  • Klasa statyczna, singleton, meta-klasy
  • Hermetyzacja w Pythonie
  • Kryptografia w Pythonie, podpisy cyfrowe
  • Funkcje skrótu
  • Szyfrowanie symetryczne i asymetryczne, szyfrowanie hybrydowe
  • Wdrażanie OOP w projekcie
  • Implementacja klas statycznych i singletonów
  • Rozwijanie funkcjonalności plików podpisów cyfrowych
  • Szyfrowanie plików

Transfer kodu z Python 2 do Python 3
  • Różnice między Pythonem 2 i Pythonem 3
  • Przyszły pakiet, algorytm transferu kodu z Pythona 2 do Pythona 3
  • Transfer kodu z Python 2 do Python 3

Opracowanie asynchronicznego serwera WWW
  • GIL
  • Programowanie asynchroniczne w Pythonie, asyncio
  • Korekty i obiekty oczekiwane, pętla zdarzeń
  • Serwer Aiohttp
  • Pisanie własnych koreutorów
  • Opracowanie serwera WWW aiohttp
  • Testowanie opracowanego serwera WWW

Upoważnienie. Poświadczenie. Korzystanie z bazy danych
  • Struktura bazy danych
  • DBMS PostgreSQL
  • Interakcje z bazami danych w Pythonie
  • Budowanie zapytań SQL w Pythonie
  • Wspieranie kont użytkowników
  • Uwierzytelnianie użytkownika i żądanie autoryzacji
  • Interakcja aplikacji z bazą danych

Montaż pakietów Pythona
  • Pakiety Pythona, struktura pakietów
  • Montaż i instalacja pakietu
  • Montaż i instalacja własnego pakietu

CZĘŚĆ DODATKOWA (na podstawie wiedzy o uczestnikach)
  • Implementacja modelu dostępu opartego na rolach
  • Model dostępu oparty na rolach
  • ORM, Alchemia SQL
  • Implementacja modelu ograniczeń dostępu opartego na rolach
  • Wdrożenie ORM
  • Wielowątkowy program ładujący pliki
  • Wątki, demony, kolejki
  • Opracowanie wielowątkowego programu ładującego pliki

Cele

  • Jak używać Pythona do interakcji w systemie plików
  • Nauczenie się poprawnie obsługiwać kod
  • Pisanie testów automatycznych w oparciu o framework Pytest
  • Przejrzenie paradygmatu programowania zorientowanego obiektowo
  • Jak używać Pythona do rozwiązywania zadań kryptograficznych
  • Przesyłanie kodu programu z Python 2 do Python 3
  • Poznanie koncepcji programowania asynchronicznego w języku Python
  • Nauczenie się tworzyć serwer WWW
  • Poznanie możliwości języka Python do pracy z bazami danych
  • Zarządzanie dostępem do zasobów aplikacji
  • Jak napisać wielowątkową ładowarkę plików
  • Zbudowanie własnego instalowalnego pakietu Pythona
  • Stworzenie własnego oprogramowania

Grupa docelowa

To szkolenie jest skierowane do programistów, administratorów systemów i inżynierów QA, którzy chcą nauczyć się tworzyć, automatyzować i testować aplikacje i systemy przy użyciu jednego z najpotężniejszych dostępnych obecnie języków programowania.

Trener Online
Denys Zamiatin Software Development Consultant
Denys has over 20 years of experience in commercial software development. He has contributed, both as a developer and consultant, in a significant number of projects using wide range of languages and technologies such as Python, C++, JavaScript, Java, C#, PHP, Oracle, MySQL, MongoDB, Redis, Apache Spark and more.

Since 2005, Denys has been involved in the development of high loaded scalable systems in the field of machine learning and artificial intelligence. His last roles involved working as a consultant for software architecture development for distributed web systems and as a software developer for a project aimed at developing components for a distributed biometric authentication system.

He has a PhD in Image Processing and a Masters Degree in Computer Programming. And for the past 5 years Denys has been involved in developing and facilitating trainings.
Harmonogram w Online Cennik
Szkolenie zaplanowano na Online
14.03.2022 - 23.03.2022
Godziny szkolenia: 09:30-13:30
Strefa czasowa: UTC +2
Lokalizacja: Online
Czas trwania: 30 godzin
Jezyk: Angielski
Trener
Denys Zamiatin
Software Development Consultant
-10% 2 200 zł
1 980 zł
Zapisz sie na nastepny kurs
+
Wczesniejsza rejestracja gwarantuje priorytet. Powiadomimy panstwa o nastepnym zaplanowanym szkoleniu na ten temat.
14.03.2022 - 23.03.2022
Godziny szkolenia: 09:30-13:30
Strefa czasowa: UTC +2
Lokalizacja: Online
Czas trwania: 30 godzin
Trener
Denys Zamiatin
Software Development Consultant
-10% 2 200 zł
1 980 zł
Zapisz sie na nastepny kurs
+
Wczesniejsza rejestracja gwarantuje priorytet. Powiadomimy panstwa o nastepnym zaplanowanym szkoleniu na ten temat.
Online 2200 zł
Bucharest 2200 zł
Kraków 2200 zł
Wroclaw 2200 zł

Uprzejmie informujemy, że płatność za każde szkolenie będzie realizowana w lokalnie obowiązującej walucie. Jednocześnie informujemy, że podane ceny mogą ulec zmianie w zależności od lokalizacji szkolenia oraz trybu jego realizacji. Do ceny netto widocznej przy wybranym szkoleniu należy doliczyć 23% podatku VAT.

Szkolenia, które mogą Cię zainteresować:
SCRIPT-007106347

Zarejestruj się na następne szkolenie

Wybierz termin
Imię*
Nazwisko*
Firma
Email*
Numer telefonu*
Twój komentarz
Masz jeszcze jakieś pytania?
Skontaktuj się z nami
Thank you.
Your request has been received.