Menu Zamknij

Kurs Python

Cena kursu

  • Cena spotkania grupowego wynosi 90 zł netto za 60 minut (110,7 zł brutto za 60 minut).
  • Cena spotkania indywidualnego wynosi 140 zł netto za 60 minut (172,2 zł brutto za 60 minut).
  • Płacisz zawsze za 25 kolejnych spotkań grupowych.
  • Płacisz zawsze za jedno kolejne spotkanie indywidualne.
  • Pierwsze spotkanie grupowe gratis.
  • Istnieje możliwość wystawienia faktury VAT.

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.

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

Zapisz się na KURS i zyskaj - licencja JetBrains na 6 miesięcy za darmo!