MENU
pl en

ETAP 2. Python dla średnio zaawansowanych

ETAP 2. Python dla średnio zaawansowanych

ETAP 2. Python dla średnio zaawansowanych
PLAN RAMOWY >

RAMOWY PLAN KSZTAŁCENIA:
I. Jakość kodu.

  1. Wskazówki typów.
    a: Typy zmiennej, funkcji, argumentów funkcji.
    b: Biblioteki typing i mypy.
    c: Zaawansowane wskazówki typów
  2. Docstring.
    a: Opisywanie celu funkcji, klas i modułów.
    b: Styl docstring (np. Google, NumPy, reStructuredText).
    c: Dokumentacja na podstawie docstringu (np. Sphinx).
  3. PEP-8.
    a: Podstawowe zasady stylu.
    b: Nazewnictwo, długość linii, wcięcia.
    c: Puste linie i spacje.
  4. Autoformatowanie.
    a: Narzędzia: Black, autopep8, yapf.
    b: Integracja z edytorami kodu.
  5. Linting.
    a: Narzędzia: pylint, flake8, pyright.
    b: Analiza statyczna kodu.
    c: Detekcja potencjalnych błędów i niedoskonałości.

II. Testowanie.

  1. Wyjątki.
    a: Obsługa błędów: try, except, finally, raise.
    b: Własne wyjątki.
  2. Testy jednostkowe.
    a: Moduły (pytest, robot, unittest).
    b: Tworzenie testów.
    c: Testowanie przypadków granicznych.
    d: Mockowanie i izolacja.
  3. Logi.
    a: Funkcja print.
    b: Logowanie do plików.
    c: Moduł logging.
    d: Poziomy logowania: DEBUG, INFO, WARNING, ERROR, CRITICAL.
    e: Formatowanie logów.

III. Programowanie obiektowe.

  1. Klasa i obiekt.
    a: Tworzenie klas i instancji.
    b: Inicjalizacja obiektu.
  2. Atrybuty.
    a: Atrybuty klasowe i instancji.
    b: Gettery i settery.
    c: Atrybuty prywatne i chronione.
  3. Metody.
    a: Metody instancji, statyczne, klasowe.
    b: Dekoratory.
  4. Konstruktor i desttruktor.
    a: init i del.
    b: Tworzenie obiektów z parametrami.
  5. Metody dunder.
    a: str, repr, len, getitem, setitem.
    b: Interakcja z obiektami.
  6. Przeładowanie operatorów.
    a: Operatory arytmetyczne, porównania, logiczne.
    b: Zastosowania i ograniczenia.
  7. Konwersje.
    a: Konwersje między typami.
    b: Rzutowanie typów.

IV. Kontenery i stringi.

  1. Metody stringów.
    a: Użycie metod: split, join, replace, find, count, etc..
    b: Funkcje związane z wielkością liter: upper, lower, capitalize, title, etc.
  2. Metody krotek.
    a: Metody count, index.
  3. Metody list.
    a: Dodawanie i usuwanie elementów.
    b: Sortowanie i reorganizacja.
  4. Metody i operatory zbiorów.
    a: Dodawanie i usuwanie elementów.
    b: Operacje: union, intersection, difference, issubset, issuperset, etc.
  5. Metody słowników.
    a: Dodawanie, usuwanie, aktualizacja elementów.
    b: Metoda get.

CZAS TRWANIA - 32 GODZINY DYDAKTYCZNE

ZALECENIA PRZED KSZTAŁCENIEM:

  1. Ukończone szkolenie etap 1 - Podstawy programowania w języku Python.

FORMA REALIZACJI ONLINE >

Szkolenie realizowane jest wyłącznie w formie zdalnej. Jest to połączenie wieloletniego doświadczenia trenerów w zakresie realizacji kursów stacjonarnych, platformy Zoom oraz stanowiska szkoleniowego, w które uczestnik zostanie zaopatrzony drogą kurierską na czas trwania kursu (wyposażenie oraz materiały szkoleniowe).

      Platforma Zoom umożliwia dwustronną komunikację z trenerem w czasie rzeczywistym i zapewnia wysoką jakość obrazu oraz audio w technologii HD. Platforma pozwala na udział w szkoleniach online z dowolnego urządzenia. Podczas spotkań organizowanych za pomocą Zoom, można udostępniać ekran oraz aplikacje. Dzięki platformie trener będzie mógł śledzić poczynania osoby odbywającej szkolenie na ekranie oraz udzielać jej praktycznych wskazówek, odpowiadać na pytania oraz przeprowadzać ćwiczenia praktyczne z omawianego zakresu. Ilość godzin kursu zdalnego jest identyczna jak w przypadku kursu stacjonarnego. Wyposażenie osoby odbywającej kurs w obu przypadkach jest takie samo.

W przypadku realizacji kursu zdalnego, jego uczestnicy uzyskują te same efekty kształcenia, jakie osiągnęliby podczas kursu stacjonarnego oraz podchodzą do egzaminu wewnętrznego, a jego pozytywne zaliczenie uhonorowane jest certyfikatem potwierdzającym ukończenie kompletnego kursu.

Jeśli chodzi o sprzęt, materiały oraz narzędzia tj. kompletne wyposażenie stanowiska szkoleniowego – wysyłamy je do uczestnika za pośrednictwem kuriera.

Co wysyłamy na  szkolenie:

  • jednostka sprzętowa z niezbędnym oprogramowaniem, peryferia (monitor, klawiatura, mysz).

W/w wyposażenie stanowiska szkoleniowego jest przesłane i następnie odebrane od uczestnika po ukończeniu szkolenia za pośrednictwem kuriera.

INFORMACJE O TRENERZE >

IMIĘ I NAZWISKO: 

  • Karol Kołodziejczyk

OBSZAR SPECJALIZACJI: 

  • Języki skryptowe JavaScript oraz Python

WYKSZTAŁCENIE:

  • Technik Informatyk

DOŚWIADCZENIE ZAWODOWE: 

  • Tworzenie programów narzędziowych dla klientów biznesowych jako freelancer w latach 2017-2020

DOŚWIADCZENIE SZKOLENIOWE:

  • Nauczyciel przedmiotu Tworzenie stron i aplikacji internetowych w szkole policealnej TEB Edukacja, w technikum TEB, w Technikum Technologii Cyfrowych od 2019 do 2022.
  • Prowadzenie kursów z programowania w językach Python, JavaScript i C w TEB Edukacja, Fundacja IT od 2021.
  • Kursy Python i Wordpress w Redsplash Academy od 2022.
CERTYFIKAT >

Image       

Kształcenie rozpoczyna się od testu mającego na celu sprawdzenie wiedzy uczestników przed jego rozpoczęciem. Podczas kształcenia, cały czas weryfikujemy wiedzę, jaką nabywają uczestnicy. Zadajemy wyrywkowe pytania, przeprowadzamy szereg testów (głównie praktycznych), podczas których sprawdzamy postępy uczestników. Każdy etap kształcenia zakończony jest wewnętrznym egzaminem weryfikującym i potwierdzającym uzyskaną wiedzę. Po ukończeniu kształcenia uczestnik otrzymuje autorski certyfikat wydany przez Notebook Master.

Nazwa certyfikatu: 'Certificate Knowledge supported by skills'.

Certyfikat zawiera: imię i nazwisko uczestnika, nazwę kształcenia, liczbę godzin kształcenia, nazwę i adres organizatora, termin realizacji kształcenia, numer certyfikatu wraz z datą wystawienia, znak jakości MSUES oraz znak wpisu do Rejestru Instytucji Szkoleniowych (RIS).

Ponadto po zrealizowaniu każdego z etapów kształcenia uczestnik otrzymuje zaświadczenie potwierdzające jego ukończenie, zawierające powyższe informacje, a dodatkowo nazwę etapu.

Potrzebne dokumenty do złożenia wniosku kliknij 'pobierz'

KOMPETENCJE NABYTE W TOKU SZKOLENIA >

UZYSKANE KOMPETENCJE I UMIEJĘTNOŚCI PO POZYTYWNYM ZAKOŃCZENIU KSZTAŁCENIA PRZEZ UCZESTNIKA:
Uczestnik kształcenia po jego zakończeniu posiada wiedzę i umiejętności dot. projektowania stron internetowych, w zakresie omawianym podczas kształcenia.

UCZESTNIK SZKOLENIA PO JEGO UKOŃCZENIU:

  • Charakteryzuje typy zmiennych, funkcji i argumentów funkcji.
  • Wykorzystuje biblioteki 'typing' i 'mypy'.
  • Tworzy czytelne i dokładne docstringi opisujące cel funkcji, klasy i modułów.
  • Pracuje z różnymi stylami docstringu, takimi jak Google, NumPy, reStructuredText, i potrafi generować dokumentację na podstawie docstringu za pomocą narzędzi takich jak Sphinx.
  • Przestrzega podstawowych zasad stylu zgodnie z PEP-8, zarządzając nazewnictwem, długością linii, wcięciami, pustymi liniami i odstępami.
  • Korzysta z narzędzi do autoformatowania, takich jak Black, autopep8, yapf, i integruje je z edytorami kodu.
  • Wykorzystuje narzędzia lintingu, takie jak pylint, flake8, pyright, do analizy statycznej kodu, wykrywania potencjalnych błędów i niedoskonałości.
  • Obsługuje wyjątki, stosując konstrukcje try, except, finally, oraz raise.
  • Tworzy własne wyjątki.
  • Pracuje z testami jednostkowymi, wykorzystując moduły takie jak pytest, robot i unittest, tworzy testy, testuje przypadki graniczne, oraz stosuje mockowanie i izolację.
  • Dokonuje logowania, używając funkcji print, logowania do plików, oraz modułu logging, z uwzględnieniem różnych poziomów logowania: DEBUG, INFO, WARNING, ERROR, CRITICAL, oraz formatowania logów.
  • Stosuje koncepcje programowania obiektowego, tworzy klasy i instancje, inicjalizuje obiekty, zarządza atrybutami klasowymi i instancyjnymi, oraz korzysta z getterów i setterów.
  • Pracuje z metodami instancji, statycznymi i klasowymi, stosuje dekoratory, oraz tworzy konstruktory i destruktory, zarówno z domyślnymi jak i z parametrami.
  • Korzysta z metod specjalnych, włączając str, repr, len, getitem, setitem, i interakcję z obiektami.
  • Przeładowuje operatory, w tym arytmetyczne, porównania, logiczne, oraz rozumie ich zastosowania i ograniczenia.
  • Dokonuje konwersji między typami oraz rzutowania typów.
  • Rozumie i wykorzystuje metody dla stringów, list, zbiorów i słowników.
  • Pracuje z metodami krotek oraz korzysta z operacji na zbiorach i słownikach.
  • Dodaje, usuwa i aktualizuje elementy w słownikach, a także stosuje metodę get.
CELE SZKOLENIA >

Cele kształcenia ujęte w kategoriach efektów uczenia się z uwzględnieniem wiedzy, umiejętności i kompetencji społecznych.Kształcenie ma na celu wyedukowanie programistów Python, posiadających umiejętności postępowania zgodnie z kategoriami uczenia się:

  • Umiejętność intelektualna - rozumienie zaawansowanych typów zmiennych, funkcji oraz argumentów funkcji w celu poprawy jakości kodu.
  • Strategia poznawcza - zdobycie umiejętności stosowania zaawansowanych wskazówek typów, w tym korzystanie z bibliotek typing i mypy w celu poprawy czytelności kodu.
  • Informacja werbalna - tworzenie dokładnych i zrozumiałych docstringów w kodzie, opisujących cele funkcji, klas i modułów, stosując odpowiedni styl, np. Google, NumPy lub reStructuredText, oraz tworzenie dokumentacji na podstawie docstringu, np. przy użyciu Sphinx.
  • Umiejętność motoryczna - implementacja zasad PEP-8 dotyczących stylu kodu, włączając w to zastosowanie podstawowych zasad stylu, nazewnictwa, długości linii i wcięć, a także stosowanie narzędzi do autoformatowania takich jak Black, autopep8 lub yapf.
  • Postawa - stosowanie narzędzi lintingowych, takich jak pylint, flake8 lub pyright, w celu analizy statycznej kodu, detekcji potencjalnych błędów i niedoskonałości oraz dążenie do utrzymania wysokiej jakości kodu.

Program kształcenia jest autorski, wszystkie dokumenty, slajdy oraz dokumentacja filmowa wykorzystywane podczas kształcenia są wynikiem badań i doświadczeń zbieranych latami.

KRÓTKI OPIS SZKOLENIA >

Python jest językiem ogólnego zastosowania, co oznacza, że ​​ma szerokie spektrum zastosowań i może być używany do rozwiązywania różnorodnych problemów w wielu dziedzinach. Oto kilka powodów, dlaczego Python jest uważany za język ogólnego zastosowania:

  1. Prostota i Czytelność: Składnia Pythona jest czytelna i łatwa do zrozumienia, co czyni go przyjaznym dla początkujących programistów oraz przyczynia się do szybkiego prototypowania i rozwoju aplikacji.
  2. Wieloplatformowość: Python jest dostępny na wielu platformach, takich jak Windows, macOS i różne dystrybucje Linuxa, co czyni go przenośnym i wszechstronnym językiem programowania.
  3. Bogata Biblioteka Standardowa: Python posiada bogatą bibliotekę standardową, która zawiera wiele modułów i narzędzi do obsługi różnych zadań, takich jak operacje wejścia/wyjścia, obsługa sieci, manipulacja danymi, obsługa wątków, obsługa czasu i wiele innych
  4. Obsługa Różnych Paradygmatów Programowania: Python obsługuje różne paradygmaty programowania, takie jak programowanie obiektowe, programowanie proceduralne i programowanie funkcyjne, co pozwala programistom na wybór odpowiedniego podejścia do rozwiązywania problemów.
  5. Wszechstronność w Tworzeniu Aplikacji: Python może być używany do tworzenia różnych rodzajów aplikacji, począwszy od prostych skryptów i narzędzi, przez aplikacje webowe, po złożone systemy analizy danych i uczenia maszynowego.
  6. Silne Wsparcie Społeczności i Ekosystemu: Python cieszy się silnym wsparciem społeczności programistycznej, co oznacza, że istnieje wiele zasobów, narzędzi, frameworków i bibliotek opracowanych przez społeczność, które mogą być łatwo dostępne i wykorzystane w projektach.

Obszary, w których wykorzystuje się Python:

  1. Web Development: Python jest używany do tworzenia stron internetowych i aplikacji webowych za pomocą popularnych frameworków takich jak Django, Flask czy Pyramid.
  2. Data Science i Analiza Danych: Python oferuje bogate narzędzia do analizy danych i uczenia maszynowego poprzez biblioteki takie jak Pandas, NumPy, Matplotlib, scikit-learn, TensorFlow i PyTorch.
  3. Automatyzacja i Skrypty: Python jest często wykorzystywany do automatyzacji zadań, tworzenia skryptów do manipulacji plikami, zarządzania systemem operacyjnym czy obsługi sieci.
  4. Sztuczna Inteligencja i Uczenie Maszynowe: Python jest preferowanym językiem do projektowania i implementacji algorytmów sztucznej inteligencji, uczenia maszynowego i głębokiego uczenia.
  5. Tworzenie Aplikacji Desktopowych: Choć nie jest to główny obszar zastosowań, Python umożliwia tworzenie aplikacji desktopowych za pomocą bibliotek takich jak Tkinter, PyQt czy wxPython.
  6. Tworzenie Gier Komputerowych: Python może być wykorzystywany do tworzenia gier komputerowych, zarówno w formie samodzielnych projektów, jak i przy użyciu silników do gier takich jak Pygame czy Panda3D.
  7. Analiza Obrazów i Przetwarzanie Sygnałów: Python jest używany do przetwarzania obrazów, analizy wideo, przetwarzania sygnałów audio i innych dziedzin związanych z mediami.

jeśli potrzebujesz informacji o szkoleniach, zadzwoń do nas!


Aleksandra Dziadowiec Starszy specjalista ds. szkoleń
Aleksandra Dziadowiec
+48 572 995 842 adziadowiec@notemaster.pl
Maciej Piela Wsparcie techniczne 24h
Maciej Piela
+48 518 115 526 mpiela@notemaster.pl