Szkolenie: Go - budowanie narzędzi CLI
Szkolenie Go - budowanie narzędzi CLI to praktyczny kurs, który uczy budowy profesjonalnych aplikacji wiersza poleceń oraz narzędzi platformowych z wykorzystaniem Cobra, Viper, Bubble Tea oraz Lipgloss
- Trenerzy praktycy
- Kameralne grupy
Czas trwania szkolenia:2 dni (16h)
Kod kursu:GO/CLI
Go - budowanie narzędzi CLI
Cele szkolenia
Szkolenie przygotowuje do samodzielnego projektowania i implementowania narzędzi CLI w języku Go, z użyciem popularnych bibliotek, zgodnie z najlepszymi praktykami oraz ergonomią POSIX i GNU
Szkolenie uczy budowy interaktywnych interfejsów terminalowych z wykorzystaniem Bubble Tea oraz Lipgloss
Szkolenie pokazuje, jak dystrybuować narzędzia CLI w modelu multi-platform
Dla kogo?
Programistów posiadających praktyczną znajomość języka Go, odpowiedzialnych za tworzenie narzędzi wewnętrznych oraz aplikacji CLI
Inżynierów platform oraz zespołów DevOps budujących Internal Developer Platforms i własne narzędzia do automatyzacji
Efekty kształcenia
Uczestnik projektuje i implementuje aplikacje CLI w Go zgodnie z dobrymi praktykami oraz konwencjami Unix i POSIX
Uczestnik konfiguruje Cobrę i Viper, zarządzając flagami, zmiennymi środowiskowymi i plikami konfiguracyjnymi
Uczestnik buduje interaktywne interfejsy TUI z wykorzystaniem Bubble Tea, Lipgloss oraz komponentów Bubbles, tworząc nowoczesne terminalowe UI
Uczestnik dostarcza binarne artefakty CLI na wiele systemów
Uczestnik projektuje rozszerzalne narzędzia CLI z wykorzystaniem architektury plugin
Wymagania
Praktyczna umiejętność programowania w języku Go
Podstawowa znajomość pracy z terminalem oraz systemami kontroli wersji
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
Projektowanie narzędzi CLI
Ergonomia CLI i konwencje POSIX oraz GNU
Komendy, podkomendy, flagi, argumenty pozycyjne, flagi globalne
Kody wyjściao oraz obsługa sygnałów
Pliki konfiguracyjne i zmienne środowiskowe
Zapewnienie przewidywalnego wyjścia: human-readable, JSON, YAML, tabele
Obsługa kolorów i formatowania w duchu NO_COLOR oraz terminali bez wsparcia ANSI
Cobra i Viper w praktyce
Struktura projektu opartego o Cobrę, generator cobra-cli
Walidacja argumentów, PersistentPreRunE, ExecuteContext
Autocompletion dla bash, zsh, fish i PowerShell oraz generowanie docs
Viper: łączenie źródeł konfiguracji, reload, sekrety i szyfrowanie
Subkomendy z dynamicznymi listami oraz lazy loading
Praca z plikami, stdin i pipe, integracja z narzędziami Unix
Interaktywne TUI z Bubble Tea i Lipgloss
Model-Update-View w Bubble Tea, model Elm w praktyce
Komponenty Bubbles: textinput, list, table, viewport, spinner
Stylowanie z Lipgloss, layouty, warstwy oraz kompozycja
Wizardy instalacyjne, panele administracyjne, monitorowanie zadań
Obsługa myszy, klawiatury oraz skrótów
Dostępność TUI oraz testowanie interakcji z użyciem teatest
Dystrybucja, rozszerzalność i utrzymanie
Cross-compilation w Go, cele GOOS i GOARCH, zasoby osadzone przez go:embed
goreleaser: automatyzacja buildów, changelog, archiwa, checksums
Publikacja w kanałach Homebrew, Winget, Scoop, Snap oraz obrazy Docker
Podpisywanie artefaktów z sigstore cosign oraz generowanie SBOM
Architektura plugin
Mechanizmy self-update oraz kanały stable, beta i nightly
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

