Menu Zamknij

Kurs Python

Opis kursu

  • Profesjonalne przygotowanie do pracy na stanowisku programisty w wybranym języku programowania oraz powiązanymi z nim bibliotekami oraz frameworkami.
  • Nauka od podstaw po zaawansowane rozwiązania komercyjne.
  • Zoptymalizowany kod napisany zgodnie z dobrymi praktykami programistycznymi.
  • Szkolenie według planu dopasowanego do najnowszych standardów IT.
  • Nagrania ze spotkań grupowych, które możesz oglądać kiedy tylko chcesz.
  • Ogromna ilość zadań teoretycznych i praktycznych o różnym poziomie trudności.
  • Wsparcie mentora przy rozwiązywaniu problemów związanych z pytaniami teoretycznymi, zadaniami praktycznymi i projektami komercyjnymi.
  • Elastyczny kontakt z mentorem.
  • Profesjonalne przygotowanie do rozmowy kwalifikacyjnej.
  • Profesjonalnie przygotowane portfolio z rozbudowanymi projektami komercyjnymi.
  • Skuteczne techniki nauki programowania.
promocja ikona
PROMOCJA – pierwsze spotkanie GRATIS

Już teraz

zapisz się na kurs​

Zostaw swoje namiary, a skontaktuję się z Tobą w sprawie kursu

    * - pola obowiązkowe

    Administratorem danych osobowych jest KM PROGRAMS KRZYSZTOF MAKOWSKI z siedzibą przy ul. Cicha 7, 42-454 Niegowonice, Polska. Dane osobowe osób korzystających z formularza kontaktowego przetwarzane są w celu identyfikacji nadawcy oraz obsługi zapytania przesłanego przez udostępniony formularz. Więcej informacji o przetwarzaniu danych osobowych, w tym o przysługujących Ci uprawnieniach, znajduje się w Polityce Prywatności.

    Plan kursu

    • Narzędzia potrzebne do uruchomienia programu w Python
    • Wersje języka Python
    • Instalacja Python na dowolnym systemie operacyjnym
    • Pierwsza aplikacja Python
    • Praca z managerem pakietów pip
    • Praca z interpreterem Python
    • Zasada działania środowisk wirtualnych (virtual environments)
    • Zarządzanie wirtualnym środowiskiem z wykorzystaniem virtualenv
    • Zarządzanie wirtualnym środowiskiem z wykorzystaniem pipenv
    • Zarządzanie wirtualnym środowiskiem z wykorzystaniem poetry
    • Zarządzanie wirtualnym środowiskiem z wykorzystaniem conda
    • Przegląd IDE oraz code editors do tworzenia aplikacji Python
    • Analiza struktury projektu Python
    • Zagadnienia uzupełniające
    • Cechy języka dynamicznie typowanego
    • Obiekty immutable oraz mutable
    • Funkcja globalna id
    • Typy liczbowe (całkowite i zmiennoprzecinkowe)
    • Typy logiczne
    • Liczby zespolone
    • Ułamki
    • Precyzyjne przechowywanie danych zmiennoprzecinkowych
    • Namespaces
    • Zasięg zmiennych
    • Zasada LEGB
    • Rzutowanie
    • Pobieranie, losowanie i inne formy generowania danych
    • Prezentacja danych w terminalu
    • Losowanie danych
    • Operatory i priorytety operatorów
    • Zagadnienia uzupełniające
    • Instrukcji warunkowe
    • Ternary operator
    • Blok match case
    • Pętle
    • Instrukcje break oraz continue
    • Słowo kluczowe pass oraz operator ellipsis
    • Debugowanie
    • Analiza mechanizmu podpowiadania błędów
    • Zagadnienia uzupełniające
    • Organizacja kodu z wykorzystaniem funkcji
    • Sposoby definiowania i wywoływania funkcji
    • Parametry i argumenty funkcji
    • Zwracanie wyniku działania funkcji
    • Argumenty domyślne funkcji
    • Positional arguments
    • Keyword arguments
    • Arbitrary argument list
    • Zasady kolejności przekazywania argumentów do funkcji
    • Podpowiadanie typów
    • Higher Order Function
    • Wyrażenia lambda
    • Funkcje zagnieżdżone
    • Closures
    • Dekoratory
    • Dokumentowanie funkcji
    • Zagadnienia uzupełniające
    • Napis jako obiekt niemutowalny
    • Sposoby tworzenia i prezentacji napisów
    • Napisy wielowierszowe
    • Raw strings
    • Formatowanie napisów
    • Przegląd i praktyczne przykłady metod zarządzających napisami
    • Optymalne przetwarzanie napisów
    • Wyrażenia regularne
    • Flagi do pracy z wyrażeniami regularnymi
    • Konwersja i parsowanie napisów
    • Zagadnienia uzupełniające
    • Iteratory oraz struktury iterable
    • Wzorzec lazy evaluation
    • Sekwencje jako szczególny przypadek iterable
    • List
    • Tuple
    • Namedtuple
    • Range
    • Bytes oraz bytearray
    • Set
    • Frozenset
    • Dict
    • Counter
    • Deque
    • Defaultdict
    • OrderedDict
    • ChainedMap
    • Przegląd innych struktur z modułu collections
    • Operacje i metody do zarządzania strukturami iterable
    • Zasady porównywania elementów struktur iterable
    • Zasady sortowania elementów struktur iterable
    • List comprehension
    • Przegląd funkcji realizujących programowanie funkcyjne
    • Generatory
    • Generator expressions
    • Moduł itertools
    • Struktury wielowymiarowe
    • Tworzenie kodu o strukturze jednowierszowej
    • Praktyczne przykłady wykorzystania bytów iterable
    • Zagadnienia uzupełniające
    • Przechowywanie daty i czasu za pomocą obiektów naive
    • Przechowywanie daty i czasu za pomocą obiektów aware
    • Omówienie struktury modułu datetime
    • Reprezentowanie różnicy czasu za pomocą datetime.timedelta
    • Reprezentowanie daty za pomocą datetime.date
    • Reprezentowanie czasu za pomocą time.time oraz datetime.time
    • Przechowywanie daty i czasu za pomocą obiektu datetime.datetime
    • Zarządzanie strefami czasowymi za pomocą modułu pytz
    • Konwersja daty i czasu pomiędzy różnymi strefami czasowymi
    • Porównywanie daty i czasu
    • Dobre praktyki programistyczne przetwarzania daty i czasu
    • Zagadnienia uzupełniające
    • Klasyfikacja błędów
    • Syntax errors
    • Wyjątki
    • Zachowanie aplikacji podczas wystąpienia wyjątku
    • Rzucanie wyjątków
    • Przechwytywanie wyjątków za pomocą bloku try except
    • Sekcja else w bloku try except
    • Sekcja finally w bloku try except
    • Przechwycenie rodzaju wyjątku w sekcji except
    • Exception Groups
    • Przegląd wbudowanych klas wyjątków
    • Definiowanie własnych klas wyjątków
    • Bezpieczna obsługa zasobów
    • Zagadnienia uzupełniające
    • Definicja modułu oraz paczki
    • Sposoby tworzenia modułu
    • Importowanie modułów
    • Pozyskiwanie informacji na temat modułu
    • Skrypt szczególnym przypadkiem modułu
    • Zasady wyszukiwania modułów
    • Kompilowanie modułów
    • Moduł sys
    • Przegląd innych standardowych modułów Python
    • Funkcja dir
    • Definiowanie paczek
    • Plik __init__.py
    • Różne sposoby importowania elementów paczki
    • Dobre praktyki tworzenia struktury projektu
    • Tworzenie przykładowego projektu z podziałem na paczki i moduły
    • Umieszczenie paczek w zdalnym repozytorium PyPI
    • Importowanie utworzonej paczki z repozytorium PyPI
    • Zagadnienia uzupełniające
    • Omówienie zasad programowania obiektowego
    • Tworzenie klas i obiektów
    • Klasyfikacja składników klasy
    • Słowo kluczowe self
    • Metoda __init__
    • Inne ważne dunder methods
    • Atrybuty klasy oraz atrybuty obiektu klasy
    • Różne sposoby odwoływania się do składników instancji klasy
    • Pozyskiwanie informacji na temat obiektu
    • Przygotowanie obiektów klasy do pracy ze strukturami iterable
    • Metody instancji klasy
    • Dekoratory @classmethod oraz @staticmethod
    • Dekorator @property
    • Klasy jako obiekty callable
    • Składniki prywatne w klasie
    • Klasy POJO
    • Dynamiczne tworzenie klas
    • Podstawy metaprogramowania
    • Dziedziczenie
    • Polimorfizm
    • Dekoratory @classmethod oraz @staticmethod w dziedziczeniu
    • Rozszerzanie typów wbudowanych
    • Abstrakcyjność
    • Dziedziczenie wielokrotne
    • Duck typing
    • Implementacja własnego iteratora
    • Moduł pythonlangutil
    • Dekorator @dataclass
    • Przegląd innych dekoratorów rozszerzających możliwości klasy
    • Metoda __init_subclass__
    • Dokumentowanie kodu klasy
    • Zagadnienia uzupełniające
    • Algorytmy badające właściwości geometryczne
    • Algorytm badające właściwości matematyczne
    • Konwersje pomiędzy systemami liczbowymi
    • Badanie ciągów danych pod kątem wybranych właściwości
    • Sortowanie ciągów danych
    • Zastosowanie metody dziel i zwyciężaj
    • Wybrane metody numeryczne
    • Programowanie zachłanne
    • Algorytmy na tekstach
    • Wybrane algorytmy kryptograficzne
    • Rekurencja
    • Przegląd wybranych struktur danych
    •  Zagadnienia uzupełniające
    • Klasyfikacja wzorców projektowych
    • Implementacja wzorców kreacyjnych
    • Implementacja wzorców strukturalnych
    • Implementacja wzorców czynnościowych
    • Zagadnienia uzupełniające
    • Porównanie funkcji str() oraz repr()
    • Implementacja różnych sposobów formatowania danych
    • Operacje odczytu i zapisu do plików
    • Praca z plikami w trybie tekstowym oraz binarnym
    • Zarządzanie danymi w formacie JSON
    • Operacje odczytu i zapisu do plików w formacie JSON
    • Bezpieczny sposób zarządzania komunikacją z plikiem
    • Zagadnienia uzupełniające
    • Konfiguracja wybranego środowiska bazodanowego
    • Omówienie zasad języka SQL
    • Nawiązanie połączenia z bazą danych
    • Konfiguracja connection pool
    • Implementacja kursora do zarządzania połączeniem
    • Implementacja operacji CRUD
    • Zapytania parametryzowane
    • Zarządzanie wynikami zapytań SQL
    • Konfiguracja i zarządzanie relacjami
    • Transakcyjność
    • Pozyskiwanie informacji o właściwościach bazy danych i tabel
    • Wykonywanie kopii zapasowej bazy danych
    • Praktyczny przykład uogólnionego repozytorium bazodanowego
    • Zagadnienia uzupełniające
    • Omówienie zagadnień ORM
    • Instalacja i konfiguracja aplikacji do pracy z SQLAlchemy
    • Różne sposoby tworzenia modelu tabeli
    • Zarządzanie modelem tabeli bazy danych z poziomu SQLAlchemy
    • Pozyskiwanie informacji na temat modelu tabeli z bazy danych
    • Zarządzanie migracjami z wykorzystaniem narzędzia Alembic
    • Różne sposoby tworzenia i zarządzania sesją
    • Transakcyjność
    • Implementacja operacji CRUD
    • Omówienie sposobów pozyskiwania danych z tabel
    • Zarządzanie wynikami otrzymanymi w ramach zapytań
    • Konfiguracja i zarządzanie relacjami bazodanowymi
    • Sposoby implementowania mechanizmu eager loading
    • Implementacja mechanizmów optimistic / pessimistic locking
    • Implementacja cache
    • Praktyczny przykład uogólnionego repozytorium bazodanowego
    • Implementacja warstwy ORM z wykorzystaniem mechanizmów asynchroniczności (patrz punkt 19)
    • Zagadnienia uzupełniające
    • Konfiguracja wybranego środowiska bazodanowego NoSQL
    • Omówienie zasad języka NoSQL
    • Nawiązanie połączenia z bazą danych
    • Tworzenie kolekcji oraz dokumentów
    • Zarządzanie właściwościami pól dokumentów
    • Implementacja relacji
    • Indeksowanie oraz ustalanie porządku danych
    • Dziedziczenie dokumentów
    • Tworzenie i zarządzanie instancjami dokumentów
    • Wstawianie, modyfikowanie i usuwanie dokumentów
    • Pobieranie i zarządzanie danymi
    • Sposoby optymalizacji zapytań
    • Zagadnienia uzupełniające
    • Zarządzanie archiwami ZIP
    • Zarządzanie plikami CSV
    • Zarządzanie plikami i katalogami
    • Wysyłanie wiadomości email
    • Lazy Streams
    • Generowanie tokenów JWT
    • Komunikacja ze zdalnym REST API
    • Geolokalizacja
    • Zagadnienia uzupełniające
    • Omówienie zagadnień związanych z architekturą testowania
    • Klasyfikacja testów
    • TDD (Test-Driven Development)
    • Wprowadzenie do biblioteki pytest
    • Wprowadzenie do modułu unittest
    • Analiza podstawowej struktury kodu testującego
    • Uruchamianie testów
    • Omówienie zasady działania asercji
    • Praktyczne przykłady wykorzystania różnych rodzajów asercji
    • Generowanie testów opartych na istniejących metodach
    • Sposoby omijania testów
    • Wykonywanie testów zagnieżdżonych i parametryzowanych
    • Grupowanie testów
    • Wykonywanie operacji przed testami i po testach
    • Implementacja test loaderów
    • Omówienie zagadnień związanych z mockowaniem
    • Mechanizm patch oraz dekorator @patch
    • Prezentacja różnych przykładów mockowania
    • Analiza struktury i kolejności wywołania bytów mockowanych
    • Rzucanie wyjątków z mockowanych obiektów
    • Operacje typu side effect
    • Generowanie mocków na podstawie istniejących obiektów
    • Partial mocking
    • Praca z fixtures
    • Testy parametryzowane
    • Implementacja przykładowych scenariuszy testujących różne warstwy aplikacji
    • Generowanie raportu z testów
    • Ocena jakości testów i badanie pokrycia testami
    • Zagadnienia uzupełniające
    • Wprowadzenie pojęć związanych z wielowątkowością
    • Wprowadzenie pojęć związanych z asynchronicznością
    • Wprowadzenie pojęć związanych z programowaniem równoległym
    • Porównanie wielowątkowości, asynchroniczności i równoległości
    • Moduł threading
    • Tworzenie wątku za pomocą funkcji
    • Tworzenie wątku za pomocą klasy
    • Zarządzanie pracą wielu wątków z wykorzystaniem ThreadPoolExecutor
    • Analiza problemów związanych z pracą wielu wątków
    • Lock
    • RLock
    • Kolejki
    • Implementacja wzorca producent-konsument
    • Semafor
    • Timer
    • Barrier
    • Moduł asyncio
    • Słowa kluczowe async i await
    • Omówienie zasady działania coroutine
    • Omówienie zasady działania event loop
    • Wykorzystanie funkcji asyncio.gather
    • Wykorzystanie funkcji asyncio.create_task
    • Chaining coroutines
    • Kolejki asynchroniczne asyncio.Queue
    • Iterator asynchroniczny
    • Moduł aiohttp i asynchroniczna komunikacja z REST API
    • Implementowanie asynchronicznego web servera
    • Asynchroniczna komunikacja z plikami
    • Praca z asynchronicznym context managerem
    • Implementacja klasy do pracy z asynchronicznym context managerem
    • Zarządzania taskami za pomocą asyncio.TaskGroup
    • Przechwytywanie błędów podczas pracy z asyncio.TaskGroup
    • Praktyczne przykłady mechanizmów programowania równoległego w Python
    • Zagadnienia uzupełniające
    • Omówienie architektury aplikacji webowej
    • Omówienie standardów HTTP, REST, JSON i innych powiązanych
    • Klasyfikacja pojęć związanych z frameworkiem Django
    • Projekt i aplikacja
    • Wzorzec projektowy Active Record
    • Framework Django REST
    • Przygotowanie środowiska do pracy z Django REST
    • Dokeryzacja aplikacji webowej (patrz punkt 23)
    • Praca ze zmiennymi środowiskowymi
    • Implementacja REST API w oparciu o klasę APIView
    • Implementacja REST API w oparciu o dekorator @api_view
    • Routing
    • Przekazywanie request params oraz query strings
    • Praca z nagłówkami
    • Przechwytywanie i walidacja ciała żądania
    • Zarządzanie sesją oraz cookies
    • Przygotowanie odpowiedzi dla żądania
    • Analiza kodów HTTP
    • Globalne przechwytywanie wyjątków
    • Serializacja i deserializacja JSON
    • Dobre praktyki serializacji danych
    • Przygotowanie prawidłowego formatu zwracanych danych
    • Implementacja serializerów i deserializerów
    • Django ORM jako mechanizm do zarządzania warstwą bazodanową
    • Migracje
    • Tworzenie modelu bazy danych
    • Zarządzanie zmianami w modelu bazy danych
    • Implementacja relacji bazodanowych
    • Zarządzanie zapytaniami do bazy danych
    • Pobieranie i przetwarzanie danych z warstwy bazodanowej
    • Optymalizacja komunikacji z bazą danych
    • Konfiguracja panelu administratora
    • Warstwa serwisowa aplikacji webowej
    • Wykorzystanie modułu testowego Django do testowania aplikacji
    • Testowanie modelu aplikacji
    • Mockowanie obiektów i testowanie warstwy serwisowej
    • Testowanie REST API z wykorzystaniem zewnętrznych klientów REST
    • Konfiguracja CORS
    • Pobieranie zasobów statycznych z aplikacji frontend
    • Zarządzanie zasobami statycznymi z wykorzystaniem AWS S3
    • Autentykacja i autoryzacja
    • Omówienie standardu JWT
    • JWT Debugger
    • Zarządzanie danymi przesyłanymi w tokenie JWT
    • Omówienie zasady działania i przygotowanie access token
    • Omówienie zasady działania i przygotowanie refresh token
    • Dobre praktyki szyfrowania danych w tokenach JWT
    • Biblioteka Simple JWT
    • Przygotowanie modułu rejestracji użytkowników
    • Przygotowanie modułu aktywacji konta użytkownika
    • Szyfrowanie hasła użytkownika
    • Implementacja modułu autentykacji użytkownika
    • Implementacja modułu autoryzacji użytkownika
    • Omówienie zastosowania serwera nginx
    • Przygotowanie wersji produkcyjnej aplikacji (WSGI oraz ASGI)
    • Osadzenie aplikacji webowej w chmurze
    • Generowanie dokumentacji aplikacji webowej
    • Internacjonalizacja
    • Zagadnienia uzupełniające
    • Omówienie architektury aplikacji webowej
    • Omówienie standardów HTTP, REST, JSON oraz innych powiązanych
    • Klasyfikacja pojęć związanych z frameworkiem Flask
    • Wprowadzenie do frameworka Flask-RESTful
    • Przygotowanie środowiska do pracy z Flask-RESTful
    • Dokeryzacja aplikacji webowej (patrz punkt 23)
    • Praca ze zmiennymi środowiskowymi
    • Implementacja REST API w oparciu o klasę Resource
    • Implementacja REST API w oparciu o dedykowane dekoratory
    • Routing
    • Przekazywanie request params oraz query strings
    • Praca z nagłówkami
    • Przechwytywanie i walidacja ciała żądania
    • Zarządzanie sesją oraz cookies
    • Przygotowanie odpowiedzi dla żądania
    • Analiza kodów HTTP
    • Globalne przechwytywanie wyjątków
    • Serializacja i deserializacja JSON
    • Dobre praktyki serializacji danych
    • Przygotowanie prawidłowego formatu zwracanych danych
    • Flask-SQLAlchemy jako mechanizm do zarządzania warstwą bazodanową
    • Migracje
    • Tworzenie modelu bazy danych
    • Zarządzanie zmianami w modelu bazy danych
    • Implementacja relacji bazodanowych
    • Zarządzanie zapytaniami do bazy danych
    • Pobieranie i przetwarzanie danych z warstwy bazodanowej
    • Optymalizacja komunikacji z bazą danych
    • Warstwa serwisowa aplikacji webowej
    • Testowanie modelu aplikacji
    • Mockowanie obiektów i testowanie warstwy serwisowej
    • Testowanie REST API z wykorzystaniem zewnętrznych klientów REST
    • Konfiguracja CORS
    • Pobieranie zasobów statycznych z aplikacji frontend
    • Zarządzanie zasobami statycznymi z wykorzystaniem AWS S3
    • Autentykacja i autoryzacja
    • Omówienie standardu JWT
    • JWT Debugger
    • Zarządzanie danymi przesyłanymi w tokenie JWT
    • Omówienie zasady działania i przygotowanie access token
    • Omówienie zasady działania i przygotowanie refresh token
    • Dobre praktyki szyfrowania danych w tokenach JWT
    • Biblioteka Flask-PyJWT
    • Przygotowanie modułu rejestracji użytkowników
    • Przygotowanie modułu aktywacji konta użytkownika
    • Szyfrowanie hasła użytkownika
    • Implementacja modułu autentykacji użytkownika
    • Implementacja modułu autoryzacji użytkownika
    • Omówienie zastosowania serwera nginx
    • Przygotowanie wersji produkcyjnej aplikacji (WSGI oraz ASGI)
    • Osadzenie aplikacji webowej w chmurze (patrz punkt 24)
    • Generowanie dokumentacji aplikacji webowej
    • Internacjonalizacja
    • Zagadnienia uzupełniające
    • Omówienie architektury aplikacji webowej
    • Omówienie standardów HTTP, REST, JSON oraz innych powiązanych
    • Klasyfikacja pojęć związanych z frameworkiem FastAPI
    • Prezentacja i wykorzystanie mechanizmu dependency injection
    • Prezentacja i wykorzystanie mechanizmu middleware
    • Wykorzystanie mechanizmów asynchroniczności do implementowania aplikacji webowej
    • Przygotowanie środowiska do pracy z FastAPI
    • Dokeryzacja aplikacji webowej (patrz punkt 23)
    • Praca ze zmiennymi środowiskowymi
    • Implementacja REST API
    • Routing
    • Przekazywanie request params oraz query strings
    • Praca z nagłówkami
    • Przechwytywanie i walidacja ciała żądania
    • Zarządzanie sesją oraz cookies
    • Przygotowanie odpowiedzi dla żądania
    • Analiza kodów HTTP
    • Globalne przechwytywanie wyjątków
    • Serializacja i deserializacja JSON
    • Dobre praktyki serializacji danych
    • Przygotowanie prawidłowego formatu zwracanych danych
    • SQLAlchemy jako mechanizm do zarządzania warstwą bazodanową
    • Migracje
    • Tworzenie modelu bazy danych
    • Zarządzanie zmianami w modelu bazy danych
    • Implementacja relacji bazodanowych
    • Zarządzanie zapytaniami do bazy danych
    • Pobieranie i przetwarzanie danych z warstwy bazodanowej
    • Optymalizacja komunikacji z bazą danych
    • Warstwa serwisowa aplikacji webowej
    • Testowanie modelu aplikacji
    • Mockowanie obiektów i testowanie warstwy serwisowej
    • Testowanie REST API z wykorzystaniem zewnętrznych klientów REST
    • Konfiguracja CORS
    • Pobieranie zasobów statycznych z aplikacji frontend
    • Zarządzanie zasobami statycznymi z wykorzystaniem AWS S3
    • Autentykacja i autoryzacja
    • Omówienie standardu JWT
    • JWT Debugger
    • Zarządzanie danymi przesyłanymi w tokenie JWT
    • Omówienie zasady działania i przygotowanie access token
    • Omówienie zasady działania i przygotowanie refresh token
    • Dobre praktyki szyfrowania danych w tokenach JWT
    • Biblioteka Jose do generowania tokenów JWT
    • Przygotowanie modułu rejestracji użytkowników
    • Przygotowanie modułu aktywacji konta użytkownika
    • Szyfrowanie hasła użytkownika
    • Implementacja modułu autentykacji użytkownika
    • Implementacja modułu autoryzacji użytkownika
    • Omówienie zastosowania serwera nginx
    • Przygotowanie wersji produkcyjnej aplikacji
    • Osadzenie aplikacji webowej w chmurze (patrz punkt 24)
    • Generowanie dokumentacji aplikacji webowej
    • Internacjonalizacja
    • Zagadnienia uzupełniające
    • Omówienie architektury platformy Docker
    • Zasada działania obrazu oraz kontenera
    • Różnica pomiędzy kontenerem Docker oraz maszyną wirtualną
    • Instalacja platformy Docker
    • Praca z Docker CLI
    • Tworzenie i zarządzanie obrazami platformy Docker
    • Image Layers
    • Wprowadzenie do pracy z Docker Hub
    • Osadzenie przygotowanego obrazu w repozytorium Docker Hub
    • Tworzenie i zarządzanie kontenerami w platformie Docker
    • Omówienie cyklu życia kontenera
    • Kopiowanie plików z maszyny lokalnej do kontenera
    • Kopiowanie plików z kontenera do maszyny lokalnej
    • Klasyfikacja rodzajów danych przechowywanych w kontenerach
    • Tworzenie i zarządzanie volumes w platformie Docker
    • Różnica pomiędzy anonymous volumes oraz named volumes
    • Tworzenie i zarządzanie bind mounts w platformie Docker
    • Omówienie różnic pomiędzy volumes oraz bind mounts
    • Tworzenie volumes tylko do odczytu
    • Instalacja i uruchamianie przykładowych narzędzi z wykorzystaniem platformy Docker
    • Omówienie struktury pliku konfiguracyjnego Dockerfile
    • Praca z argumentami oraz zmiennymi środowiskowymi
    • Konteneryzacja aplikacji webowej z wykorzystaniem Docker
    • Komunikacja kontenera z zewnętrznym REST API
    • Komunikacja kontenera z narzędziami osadzonymi w localhost
    • Komunikacja container to container z użyciem networks w platformie Docker
    • Przegląd sterowników do konfiguracji zachowania networks
    • Omówienie zasady działania narzędzia Docker Compose
    • Instalacja narzędzia Docker Compose
    • Struktura pliku konfiguracyjnego narzędzia Docker Compose
    • Przygotowanie kontenera bazy danych
    • Konfiguracja kontenerów do pracy z wieloma bazami danych
    • Konteneryzacja aplikacji webowej
    • Przykład tworzenia utility containers
    • Zagadnienia uzupełniające
    • Omówienie architektury GIT
    • Konfiguracja i personalizacja ustawień GIT
    • Klasyfikacja repozytoriów
    • Tworzenie repozytorium lokalnego
    • Zarządzanie plikami w ramach obszarów repozytorium
    • Rozgałęzianie i scalanie
    • Przegląd wszystkich operacji GIT
    • Aplikacje i wtyczki do pracy z GIT
    • Praca ze zdalnym repozytorium
    • Dobre praktyki tworzenia repozytoriów GIT
    • GitHub Pages
    • Zagadnienia uzupełniające

    Newsletter