Trwają zapisy do grupy

Szkolenie: Programowanie w języku Go

Szkolenie Programowanie w języku Go to praktyczny kurs, który uczy tworzenia wydajnych, skalowalnych aplikacji w Go, obejmując idiomatyczną składnię, concurrency, narzędzia developerskie, wzorce projektowe oraz wykorzystanie biblioteki standardowej

  • Trenerzy praktycy
  • Kameralne grupy

Czas trwania szkolenia:3 dni (24h)

Poziom zaawansowania:

Kod kursu:GO/PROG

wydajne-aplikacjeaplikacje-serwerowejezyk-goprogramowanie-go

Dostępne terminy szkolenia

  • Termin
  • Trener
  • Cena
  • Lokalizacja
  • Zapis

Termin:

27 kwietnia - 29 kwietnia
Trwają zapisy na szkolenieTrwają zapisy na szkolenie
Dostępne w Bazie Usług RozwojowychDostępne w Bazie Usług Rozwojowych
Oferta specjalnaOferta specjalna

Trener:

Trener-Sages

Cena:

2805 PLN netto
Dowiedz się więcej o cenach szkoleń - zapraszamy do kontaktuDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Zapytaj o inne lokalizacje - w tym celu skorzystaj z chatuZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Termin:

17 czerwca - 19 czerwca
Trwają zapisy na szkolenieTrwają zapisy na szkolenie

Trener:

Łukasz Andrzejewski

Cena:

2805 PLN netto
Dowiedz się więcej o cenach szkoleń - zapraszamy do kontaktuDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Zapytaj o inne lokalizacje - w tym celu skorzystaj z chatuZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Termin:

28 września - 30 września
Trwają zapisy na szkolenieTrwają zapisy na szkolenie

Trener:

Trener Sages

Cena:

2805 PLN netto
Dowiedz się więcej o cenach szkoleń - zapraszamy do kontaktuDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Zapytaj o inne lokalizacje - w tym celu skorzystaj z chatuZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Termin:

2 grudnia - 4 grudnia
Trwają zapisy na szkolenieTrwają zapisy na szkolenie

Trener:

Łukasz Andrzejewski

Cena:

2805 PLN netto
Dowiedz się więcej o cenach szkoleń - zapraszamy do kontaktuDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Zapytaj o inne lokalizacje - w tym celu skorzystaj z chatuZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Forma szkolenia

Interesuje Cię szkolenie stacjonarne?

Powiadom o kolejnych terminach

Interesuje Cię szkolenie w innym terminie?

Programowanie w języku Go

Cele szkolenia

  • Szkolenie przygotowuje do samodzielnego projektowania i implementowania aplikacji w języku Go z wykorzystaniem idiomatycznej składni oraz narzędzi developerskich

  • Szkolenie uczy stosowania mechanizmów współbieżności oraz wzorców projektowych charakterystycznych dla ekosystemu Go

  • Szkolenie omawia wykorzystanie najważniejszych modułów biblioteki standardowej w praktycznych zastosowaniach programistycznych

  • Szkolenie rozwija umiejętność analizy, debugowania i optymalizacji kodu Go w kontekście wydajności i bezpieczeństwa


Dla kogo?

  • Programistów z podstawowym doświadczeniem w dowolnym języku, chcących poznać Go i rozwijać nowoczesne aplikacje

  • Osób realizujących zadania związane z tworzeniem serwisów backendowych, mikrousług lub narzędzi CLI

  • Specjalistów IT zainteresowanych zwiększeniem wydajności i bezpieczeństwa wytwarzanego oprogramowania


Efekty kształcenia

  • Uczestnik projektuje aplikacje w języku Go zgodnie z najlepszymi praktykami

  • Uczestnik analizuje i implementuje mechanizmy współbieżności z użyciem goroutines i kanałów

  • Uczestnik obsługuje narzędzia developerskie oraz środowisko pracy Go

  • Uczestnik wykorzystuje wzorce projektowe i idiomy charakterystyczne dla Go

  • Uczestnik testuje i debugguje kod z użyciem narzędzi ekosystemu Go

  • Uczestnik wdraża aplikacje z wykorzystaniem biblioteki standardowej Go


Wymagania

  • Podstawowa umiejętność programowania w dowolnym języku


W cenie otrzymasz:

  • Materiały szkoleniowe

  • Certyfikat ukończenia szkolenia

  • W przypadku szkolenia w trybie stacjonarnym zapewnimy Ci również lunch oraz sprzęt niezbędny do nauki

Program szkolenia

Pobierz program w PDF

Podstawy języka

  • Charakterystyka Go: prostota jako cecha projektowa, kompilacja do natywnego kodu, wbudowana współbieżność, silne typowanie

  • Konfiguracja środowiska deweloperskiego (kompilator, IDE, debugger)

  • Model kompilacji i workflow z wykorzystaniem narzędzia go

  • Weryfikacja jakości kodu: go vet (analiza statyczna), gofmt/goimports (formatowanie), staticcheck (linting)

  • Podstawy składni i konwencje kodowania

  • Typy podstawowe i złożone

  • Zmienne, stałe, kontrolowana mutowalność, shadowing

  • Operatory

  • Instrukcje sterujące, pętle i wyrażenie switch

  • Funkcje, closures i defer

  • Definicja i użycie struktur oraz typów wyliczeniowych z iota

Model pamięci i wskaźniki

  • Idea wartości i referencji w Go

  • Przekazywanie przez wartość a przekazywanie przez wskaźnik

  • Wskaźniki w Go: *T, &, dereferencja, brak arytmetyki wskaźników

  • Typy referencyjne: map, slice, channel

  • Wartość nil: zero value, nil dereference panic

  • Rozwiązywanie typowych problemów zgłaszanych przez kompilator

Metody, interfejsy i kompozycja

  • Definiowanie typów: alias vs nowy typ

  • Metody: value receiver vs pointer receiver

  • Kompozycja przez embedding, promowanie pól i metod

  • Definicja i implementacja interfejsów

  • Pusty interfejs: interface{} i any

  • Type assertion i type switch

  • Kluczowe interfejsy standardowe: io.Reader, io.Writer, fmt.Stringer, error

  • Polimorfizm w Go: kompozycja zamiast dziedziczenia

Obsługa błędów

  • Filozofia Go: błędy jako wartości, kontrast z wyjątkami

  • Interfejs error: errors.New, fmt.Errorf

  • Idiom if err != nil

  • Sentinel errors: własne wartości błędów, kiedy stosować

  • Własne typy błędów: implementacja interfejsu error, dodatkowy kontekst

  • Error wrapping: %w, errors.Is, errors.As

  • Defer w obsłudze błędów: wzorzec named return values

  • Panic i recover: kiedy używać, konwersja na error

  • Biblioteki zewnętrzne: github.com/pkg/errors, wzorce stosowane w praktyce

Codzienne programowanie w Go

  • Kolekcje standardowe: slice, map, użycie w praktyce

  • Programowanie w stylu funkcyjnym: funkcje wyższego rzędu, closures, przekazywanie funkcji

  • Wprowadzenie do typów generycznych: definiowanie funkcji i struktur parametryzowanych typem, type constraints

  • Iteratory i range: lazy evaluation w Go 1.23+, komponowanie operacji

  • Organizacja projektu: system modułów, pakiet internal, go.work

  • Mechanizmy widoczności i enkapsulacja danych

  • Testowanie: testy jednostkowe, table-driven tests, testy integracyjne, mockowanie zależności

Współbieżność

  • Model współbieżności Go: goroutines, scheduler M:N, GOMAXPROCS

  • Channels: deklaracja, operacje send/receive, buffered vs unbuffered

  • Zamykanie channels, range po channel, idiom done channel

  • Directional channels: chan<-, <-chan

  • Select: multipleksowanie, timeout pattern, default case

  • Synchronizacja: sync.WaitGroup, sync.Mutex, sync.RWMutex, sync.Once, sync.Map

  • Operacje atomowe: sync/atomic

  • Context: zarządzanie cyklem życia, propagacja anulowania, WithTimeout/WithCancel/WithValue

  • Wzorce współbieżności: worker pool, pipeline, fan-out/fan-in, semaphore pattern

  • Graceful shutdown: obsługa sygnałów OS, context z timeoutem, cleanup zasobów

  • errgroup: golang.org/x/sync/errgroup, współbieżne operacje z obsługą błędów

  • Race detector: wykrywanie race conditions, typowe problemy

Budowanie aplikacji

  • Obsługa argumentów wejściowych i walidacja danych

  • Zarządzanie zmiennymi środowiskowymi i konfiguracją

  • Praca z systemem plików i operacje I/O

  • Budowanie serwisu HTTP: routing, middleware, obsługa błędów, graceful shutdown

  • Praca z bazą danych: database/sql, wzorzec repozytorium

  • Tworzenie i publikowanie bibliotek oraz narzędzi CLI

Autorem szkolenia jest Łukasz Andrzejewski

Od ponad 17 lat z pasją dzielę się wiedzą jako trener, wspierając rozwój kompetencji technologicznych wśród specjalistów IT na różnych etapach ich kariery. W ostatnich 5 latach przeszkoliłem ponad 2000 osób, prowadząc szkolenia zarówno otwarte, jak i dedykowane, dla czołowych firm z sektorów bankowości, ubezpieczeń i IT – m.in. Santander Bank Polska, ERGO Hestia, Asseco Poland oraz Orange. Specjalizuję się w szerokim zakresie technologii – od rozwiązań z ekosystemu Java, przez nowoczesny frontend,…

Wybrane opinie

Przeczytaj pozytywne opinie pochodzące z ankiet satysfakcji z naszych szkoleń wypełnianych wyłącznie przez ich uczestników po realizacji usługi

4.8
Ocena pochodzi ze średniej ocen Sages w serwisie Google i nie jest weryfikowanaŚrednia ocen Sages w serwisie Google Ocena pochodzi ze średniej ocen Sages w serwisie Google i nie jest weryfikowana

4.07.2025

Uczestnik szkoleniaProgramowanie w języku Go

Piotr Mazur, Ericsson Sp. z o.o.

Bardzo dobry prowadzący, z dużą wiedzą. Znaczna część szkolenia to pisanie kodu w ramach ćwiczeń.

Więcej opinii