Vyberte svůj jazyk
Kurz programování v Go
Více než 2 miliony studentů po celém světě

Kurz programování v Go

Ovládněte Go od základů a získejte dovednosti pro psaní rychlého, spolehlivého softwaru připraveného pro produkční prostředí. Tento kurz pokrývá vše od základní syntaxe a souběžnosti po REST API, integraci databází a nasazení v rámci DevOps. Ať už s Go začínáte, nebo přecházíte z jiného jazyka na vyšší úroveň, odnesete si skutečné odborné znalosti připravené pro praxi.

Dedika pro firmy

Co se naučíte:

Začnete syntaxí, typovým systémem a nástroji jazyka Go a poté postoupíte k funkcím, rozhraním a základním datovým strukturám. Kurz pokrývá model souběžnosti jazyka Go s využitím gorutin, kanálů a balíčku context pro vytváření správných a vysoce výkonných programů. Naučíte se psát komplexní testy, benchmarkovat kód a ladit pomocí profesionálních nástrojů. Pozdější části se věnují tvorbě REST API, integraci databází a nasazování kontejnerizovaných služeb do Kubernetesu. Také budete používat generické typy, pokročilé vzory souběžnosti a odborné inženýrské postupy používané v produkčních Go týmech.

Jak studujete v praxi Kurz programování v Go

Jak procvičujete Kurz programování v Go

Pro vás, kteří jste firma a chcete školit svůj tým

V Dedika pro firmy je kurz doplněn o cvičení a příklady přímo z vašeho podnikání a přizpůsoben tak, jak vaše firma potřebuje.

Klikněte zde

Obsah kurzu

8 Kapitoly • 40 LekceDélka mezi 4 a 360 hodinami (rozhodujete vy)

Kapitola 1Zobrazit detaily

Základy jazyka Go

  • Lekce 1 • Proměnné, typy a konstanty

    Představuje statické typování, odvozování typů a deklarace konstant. Ukotvuje studenty v přísném typovém systému jazyka Go dříve, než se objeví složité datové struktury.

  • Lekce 2 • Operátory a výrazy

    Pokrývá aritmetické, porovnávací, logické a bitové operátory. Připravuje studenty na psaní smysluplné podmínkové a výpočetní logiky.

  • Lekce 3 • Základní syntaxe a struktura programu

    Pokrývá balíčky, importy, hlavní funkci a syntaxi příkazů. Poskytuje strukturální kostru pro všechny programy v Go psané v kurzu.

  • Lekce 4 • Struktury řízení toku

    Vyučuje příkazy if, for, switch a defer jako kompletní sadu nástrojů pro řízení v Go. Umožňuje studentům psát programy s větvením a iterační logikou.

  • Lekce 5 • Nastavení prostředí Go

    Nainstalujte si nástrojový řetězec Go a nakonfigurujte produktivní pracovní prostředí. Stanovuje technickou základnu, na níž závisí každá následující kapitola.

Kapitola 2Zobrazit detaily

Funkce a ošetření chyb

  • Lekce 1 • Rekurze a funkční hodnoty

    Zkoumá rekurzivní algoritmy a funkce jako hodnoty první třídy. Připravuje studenty na vzory vyššího řádu a návrhy založené na zpětných voláních.

  • Lekce 2 • Vzory panic, recover a defer

    Pokrývá šíření paniky, mechaniku zotavení a úklid založený na defer. Vybavuje studenty pro řešení neočekávaných selhání bez pádu produkčních služeb.

  • Lekce 3 • Variadické funkce a uzávěry

    Představuje variadické parametry a funkční literály zachycující rozsah. Umožňuje flexibilní API a vzory funkcionálního programování v Go.

  • Lekce 4 • Definování a volání funkcí

    Pokrývá signatury funkcí, parametry a návratové hodnoty. Stanovuje znovupoužitelnou jednotku kódu, na níž staví všechny pozdější abstrakce.

  • Lekce 5 • Typ error a konvence

    Vyučuje rozhraní error v Go, idiomatické vracení chyb a sentinelové chyby. Buduje základ pro robustní šíření chyb napříč kódovou základnou.

Kapitola 3Zobrazit detaily

Základní datové struktury

  • Lekce 1 • Vzory a úskalí řezů

    Řeší kopírovací sémantiku, sdílená podkladová pole a běžné chyby. Předchází problémům s pamětí a správností, které vznikají ve skutečném kódu náročném na řezy.

  • Lekce 2 • Struktury a značky struktur

    Představuje deklaraci struktur, přístup k polím, vkládání a značky. Poskytuje základ vlastního typu pro doménové modelování a serializaci.

  • Lekce 3 • Pole a řezy

    Rozlišuje pevná pole a dynamické řezy a pokrývá vnitřnosti řezů. Poskytuje hlavní typ kolekce používaný prakticky v každém programu v Go.

  • Lekce 4 • Mapy

    Pokrývá vytváření map, operace CRUD a sémantiku iterace. Umožňuje datové modelování klíč-hodnota nezbytné pro konfiguraci, ukládání do mezipaměti a vyhledávací tabulky.

  • Lekce 5 • Ukazatele a adresování paměti

    Vysvětluje syntaxi ukazatelů, dereferencování a kdy použít ukazatele vs. hodnoty. Spojuje paměťovou sémantiku s mutací struktur a výkonnostními kompromisy.

Kapitola 4Zobrazit detaily

Rozhraní a typový systém

  • Lekce 1 • Metody na typech

    Vyučuje hodnotové a ukazatelové přijímače, výrazy metod a propagaci. Spojuje definice struktur s kontrakty chování vyjádřenými prostřednictvím rozhraní.

  • Lekce 2 • Typová tvrzení a typové přepínače

    Pokrývá bezpečná a nebezpečná typová tvrzení a konstrukci typového přepínače. Umožňuje běhovou inspekci typů potřebnou pro vzory dispečinku v generickém stylu.

  • Lekce 3 • Definování a implementace rozhraní

    Pokrývá deklaraci rozhraní, implicitní splnění a sady metod. Stanovuje mechanismus polymorfismu ústřední pro idiomatický návrh v Go.

  • Lekce 4 • Kompozice rozhraní a návrhové vzory

    Zkoumá skládání malých rozhraní a aplikaci vkládání závislostí. Vytváří volně provázané, testovatelné architektury kódu.

  • Lekce 5 • Rozhraní standardní knihovny

    Zkoumá io.Reader, io.Writer, Stringer a error jako návrhové modely. Ukazuje, jak splnění standardních rozhraní integruje vlastní typy s ekosystémem.

Kapitola 5Zobrazit detaily

Balíčky, moduly a nástroje

  • Lekce 1 • Dokumentace a generování kódu

    Vyučuje konvence godoc, příkladové funkce a go generate. Vytváří samo-dokumentující balíčky a automatizuje opakující se úkoly v kódu.

  • Lekce 2 • Lintování a nástroje pro kvalitu kódu

    Představuje staticcheck, golangci-lint a vynucování formátování. Začleňuje standardy profesionální kvality do každého projektu od prvního dne.

  • Lekce 3 • Principy organizace balíčků

    Pokrývá konvence pojmenování, exportované identifikátory a interní balíčky. Stanovuje strukturální disciplínu, která udržuje rozsáhlé kódové základny přehledné.

  • Lekce 4 • Příkazy build, test a vet

    Pokrývá go build, go test, go vet a build tagy. Začleňuje kontroly kvality do vývojového workflow od začátku.

  • Lekce 5 • Moduly Go a správa závislostí

    Vyučuje go.mod, go.sum, verzování a proxy modulů. Umožňuje reprodukovatelná sestavení a bezpečnou integraci závislostí třetích stran.

Kapitola 6Zobrazit detaily

Souběžnost pomocí gorutin a kanálů

  • Lekce 1 • Příkaz select a časové limity

    Vyučuje příkaz select pro multiplexování operací kanálů. Umožňuje neblokující I/O vzory a souběžné workflow řízené časovými limity.

  • Lekce 2 • Synchronizační primitiva: Mutex a WaitGroup

    Představuje sync.Mutex, sync.RWMutex a sync.WaitGroup pro sdílený stav. Doplňuje návrh založený na kanálech o nízkoúrovňové synchronizační nástroje.

  • Lekce 3 • Gorutiny a plánovač jazyka Go

    Vysvětluje vytváření gorutin, plánovač M:N a životní cyklus gorutin. Poskytuje koncepční model potřebný k uvažování o souběžném provádění.

  • Lekce 4 • Detekce souběhu a vzory souběžnosti

    Používá detektor souběhu a pokrývá pipelines, fan-out a fondy pracovníků. Vytváří ověřené, produkčně kvalitní souběžné architektury.

  • Lekce 5 • Kanály: Komunikace a synchronizace

    Pokrývá nevyrovnávací a vyrovnávací kanály, typy směrů a zavírání. Stanovuje bezpečné předávání dat mezi gorutinami bez sdílené paměti.

Kapitola 7Zobrazit detaily

Standardní knihovna do hloubky

  • Lekce 1 • I/O primitiva a operace se soubory

    Pokrývá balíčky io, bufio a os pro čtení a zápis dat. Poskytuje I/O základ pro zpracování souborů a programy založené na proudech.

  • Lekce 2 • Základy HTTP klienta a serveru

    Představuje net/http pro sestavování serverů a vytváření HTTP požadavků. Poskytuje síťový základ rozšířený v následující aplikační kapitole.

  • Lekce 3 • Řetězce, byty a Unicode

    Vyučuje balíčky strings, bytes, unicode a strconv pro zpracování textu. Umožňuje správné zacházení s UTF-8 daty v mezinárodních aplikacích.

  • Lekce 4 • Čas, data a časovače

    Zkoumá balíček time pro parsování, formátování a plánování. Umožňuje logiku uvědomující si čas v API, úlohách a systémech řízených událostmi.

  • Lekce 5 • Kódování a serializace

    Pokrývá encoding/json, encoding/xml a encoding/csv pro výměnu dat. Propojuje programy v Go s externími systémy prostřednictvím standardních serializačních formátů.

Kapitola 8Zobrazit detaily

Testování, benchmarky a ladění

  • Lekce 1 • Jednotkové testování s balíčkem testing

    Pokrývá testovací funkce, tabulkově řízené testy a subtesty. Stanovuje základní testovací disciplínu aplikovanou na každý balíček v kurzu.

  • Lekce 2 • Integrační a end-to-end testování

    Pokrývá httptest, in-memory databáze a testovací kontejnery. Ověřuje chování systému napříč hranicemi komponent za realistických podmínek.

  • Lekce 3 • Benchmarky a profilování

    Používá funkce Benchmark, pprof a trace k nalezení úzkých hrdel. Vytváří daty řízená zlepšení výkonu založená na měření.

  • Lekce 4 • Techniky a nástroje ladění

    Pokrývá debugger Delve, trasování založené na logování a diagnostiku běhu. Vybavuje studenty pro efektivní hledání a opravu defektů v jakémkoli programu v Go.

  • Lekce 5 • Vytváření napodobenin a testovacích dvojníků

    Vyučuje vytváření napodobenin založené na rozhraních, falešné implementace a testovací přípravky. Umožňuje izolované jednotkové testy, které nezávisí na externích systémech.

Certifikace

Váš platný certifikát o dokončení

Tento kurz je pro vás:

  • Backend vývojář: chce přejít na Go kvůli rychlejší a efektivnější práci na straně serveru.

  • Vývojář v Pythonu nebo JavaScriptu: připravený přejít na staticky typované, kompilované jazyky.

  • Student informatiky: tvorba portfolia s jazykem, který je na trhu práce ceněný.

  • DevOps inženýr: potřebuje číst, upravovat nebo psát nástroje a automatizační skripty v Go.

  • Člověk měnící kariéru: přechod do softwarového inženýrství se zaměřením na moderní backendové technologie.

  • Programátor amatér: zajímá vás systémové uvažování bez složitosti C nebo C++.

Co říkají naši studenti

Vaše lekce jsou perfektní. Koupil jsem si roční balíček a konečně mám možnost sledovat různá témata, která mě zajímají, aniž bych musel měnit platformu... děkuji za vše, co děláte, už jsem vás doporučil dalším lidem...
Giulio Carlo
Giulio CarloStudent digitálního marketingu
Líbí se mi, jak jsou lekce přímočaré a jak mohu přepínat mezi kapitolami a přeskakovat obsah, který nepotřebuji.
Mariana Ferres
Mariana FerresStudentka fotografie
Líbí se mi obsah a způsob prezentace a přepisu videí, což celý proces zrychluje!
Luciana Alvarenga
Luciana AlvarengaStudentka nail designu
Platforma je rychlá a jednoduchá na používání. Rozmanitost obsahu a doplňková videa velmi pomáhají při učení.
André Felipe
André FelipeStudent prompt engineeringu

Hlavní školení

Často kladené otázky

Kdo je Dedika?

Je certifikát platný v Česko?

Jsou kurzy zdarma?

Jaká je pracovní zátěž kurzu?

Jak kurzy vypadají?

Jak kurzy fungují?

Jaká je délka kurzů?

Jaká je cena nebo poplatek za kurzy?

Co je EAD nebo online kurz a jak funguje?

PDF kurz