Poziom

Podstawowy

Czas

24h / 3 dni

Termin

Indywidualnie

Cena

Indywidualnie

Szkolenie Go

Szkolenie wprowadza w praktyczne podstawy języka Go oraz jego zastosowanie w aplikacjach backendowych, narzędziach infrastrukturalnych i usługach sieciowych. Obejmuje składnię języka, idiomy Go, testy, TDD, serwery HTTP, metryki Prometheus, podstawy Grafany, operatory Kubernetes oraz mikroserwisy z wykorzystaniem gRPC. Uczestnicy pracują na ćwiczeniach i zadaniach grupowych, aby po szkoleniu samodzielnie tworzyć, testować i rozwijać podstawowe aplikacje w Go z uwzględnieniem czytelności kodu, obserwowalności, ograniczeń współbieżności i dobrych praktyk utrzymaniowych.

Dla kogo jest to szkolenie?

Szkolenie przeznaczone jest dla osób, które chcą poznać podstawy języka Go, dobre praktyki oraz zdobyć wiedzę praktyczną. Szkolenie nastawione jest na pisanie kodu – naukę poprzez praktykę. Podczas szkolenia uczestnicy pracują razem z prowadzącym przy wprowadzaniu nowych konceptów oraz wykorzystują zdobytą wiedzę podczas ćwiczeń indywidualnych i zadań grupowych. Jeśli chcesz nauczyć się języka Go i poznać jego zastosowanie przy tworzeniu serwerów HTTP, mikroserwisów, metryk aplikacyjnych oraz podstaw operatorów Kubernetesa, to szkolenie jest właśnie dla Ciebie.

Wymagania
  • logo infoshare obsługa terminala systemu Linux
  • logo infoshare podstawowa znajomość programowania w dowolnym językuwiedza z architektury mikroserwisów będzie przydatna, ale nie jest wymagana
  • logo infoshare podstawowa wiedza z architektury mikroserwisów będzie przydatna, ale nie jest wymagana
  • logo infoshare wiedza z architektury Kubernetesa będzie Twoim atutem

Czego nauczysz się na tym szkoleniu?

  • Nauczysz się rozumieć podstawowe zasady języka Go, jego składnię, idiomy i organizację kodu
  • Nauczysz się tworzyć proste aplikacje, serwery HTTP oraz testy jednostkowe w Go
  • Nauczysz się stosować TDD w podstawowych scenariuszach programistycznych
  • Dowiesz się, jak wystawiać i analizować metryki aplikacyjne z wykorzystaniem Prometheus i Grafany
  • Poznasz podstawy tworzenia operatorów Kubernetes w Go
  • Nauczysz się tworzyć prosty mikroserwis z wykorzystaniem gRPC
  • Zrozumiesz podstawowe ryzyka związane z obserwowalnością, współbieżnością, obsługą błędów i utrzymaniem aplikacji w Go

Program szkolenia

Dzień 1

 

1. Wprowadzenie do szkolenia i integracja grupy

  • Cele szkolenia i zakres pracy warsztatowej
  • Organizacja środowiska pracy
  • Zasady pracy indywidualnej i grupowej
  • Przegląd zastosowań języka Go

2. Wprowadzenie do Go, TDD i ćwiczenia

  • Składnia języka Go i podstawowe konstrukcje
  • Struktura projektu i organizacja kodu
  • Typy danych, funkcje, pakiety i moduły
  • Obsługa błędów i idiomy języka Go
  • Testy jednostkowe i podstawy TDD
  • Ćwiczenia praktyczne z podstaw języka Go

 

Dzień 2

 

3. Zadanie grupowe z wykorzystaniem podstaw Go – funkcjonalny serwer HTTP

  • Struktura serwera HTTP
  • Routing i obsługa żądań
  • Obsługa odpowiedzi i kodów statusu HTTP
  • Walidacja danych wejściowych
  • Obsługa błędów w aplikacji HTTP
  • Testy podstawowych elementów serwera

4. Prometheus Go client – wprowadzenie

  • Podstawy obserwowalności aplikacji
  • Metryki aplikacyjne i ich typy
  • Biblioteka Prometheus Go client
  • Rejestracja i ekspozycja metryk
  • Ograniczenia i ryzyka błędnie dobranych metryk

5. Zadanie grupowe – rozszerzenie serwera HTTP i customowe metryki aplikacji

  • Rozszerzenie istniejącego serwera HTTP
  • Metryki liczby żądań i czasu odpowiedzi
  • Metryki błędów i statusów HTTP
  • Endpoint dla metryk Prometheus
  • Weryfikacja poprawności eksportowanych metryk

6. Zadanie grupowe – customowe metryki w Grafanie

  • Podstawowa konfiguracja źródła danych
  • Wizualizacja metryk aplikacyjnych
  • Dashboard dla serwera HTTP
  • Analiza trendów i anomalii
  • Czytelność i utrzymywalność dashboardów

 

Dzień 3

 

7. Operatory Kubernetes – Operator Framework

  • Rola operatorów w ekosystemie Kubernetes
  • Podstawowe pojęcia: CRD, kontroler i reconciliation loop
  • Struktura projektu w Operator Framework
  • Cykl życia zasobu zarządzanego przez operatora
  • Ograniczenia i ryzyka automatyzacji operacyjnej

8. Zadanie grupowe – customowy operator z wykorzystaniem Operator Framework

  • Definicja zasobu własnego
  • Logika kontrolera
  • Obsługa zmian stanu zasobu
  • Testowanie podstawowego scenariusza działania operatora
  • Analiza błędów i zachowania operatora

9. Operatory Kubernetes – Kubebuilder

  • Rola Kubebuilder w tworzeniu operatorów
  • Struktura projektu Kubebuilder
  • Definicje API i kontrolery
  • Generowanie manifestów
  • Porównanie Kubebuilder i Operator Framework

10. Zadanie grupowe – customowy operator z wykorzystaniem Kubebuilder

  • Model zasobu własnego
  • Implementacja kontrolera
  • Manifesty Kubernetes
  • Uruchomienie operatora w środowisku testowym
  • Weryfikacja scenariusza reconciliation

11. Mikroserwisy z wykorzystaniem gRPC

  • Podstawy architektury mikroserwisowej
  • Rola gRPC w komunikacji między usługami
  • Definicje kontraktów w Protocol Buffers
  • Typy komunikacji gRPC
  • Obsługa błędów i ograniczenia komunikacji synchronicznej

12. Przykładowa implementacja

  • Struktura przykładowego mikroserwisu
  • Definicja pliku proto
  • Implementacja serwera gRPC
  • Implementacja klienta gRPC
  • Testowanie komunikacji między usługami

13. Zadanie grupowe – mikroserwisy z wykorzystaniem gRPC

  • Projekt prostego scenariusza mikroserwisowego
  • Implementacja kontraktu komunikacyjnego
  • Implementacja usługi i klienta
  • Obsługa błędów i walidacja danych
  • Weryfikacja działania komunikacji gRPC

14. Podsumowanie szkolenia

  • Przegląd najważniejszych elementów języka Go
  • Podsumowanie pracy z testami, HTTP, metrykami, operatorami i gRPC
  • Najczęstsze ryzyka w utrzymaniu aplikacji Go
  • Dobre praktyki dalszego rozwoju kodu
  • Kierunki dalszej nauki i rozwoju kompetencji

Skontaktuj sie z nami

zorganizujemy dla Ciebie szkolenie dopasowane do Twoich potrzeb

Przemysław Wołosz

Key Account Manager

przemyslaw.wolosz@infoShareAcademy.com

    Administratorem danych osobowych jest InfoShare Academy Sp. z o.o. z siedzibą w Gdańsku, al. Grunwaldzka 427B, 80-309 Gdańsk, KRS: 0000531749, NIP: 5842742213. Dane osobowe przetwarzane są zgodnie z klauzulą informacyjną.