Go – generické programování (GO3)
Programování, Rust, Go, Julia
Dokážete už psát běžné aplikace v Go, ale chtěli byste ovládnout umění psaní znovupoužitelného kódu nezávislého na konkrétních datových typech? Datový model Go nabízí možnost psát generické funkce a datové struktury, jejichž konkrétní podobu volí uživatel zadáním typových parametrů.
Vyzkoušejte si tvorbu obecných nástrojů, které můžete sdílet mezi projekty. Generika jsou například oproti C++ jednoduchá a striktní, a především založená na definicích rozhraní, které už se v Go používají. Implementace generik v Go je zajímavá a odlišná například od C++ nebo Rustu.
TOTO ŠKOLENÍ VÁM POMŮŽE:
- Seznámit se se syntaxí a pravidly typových parametrů v Go (Go 1.18+)
- Naučit se navrhovat a implementovat generické funkce a datové typy (kolekce, utilitky)
- Pochopit použití constraints a vytvářet vlastní type sets pro robustní API
- Zvládnout integraci generik s rozhraními a rozhodovat mezi generiky a interface-based polymorfismem
- Řešit type inference, ladit chybové stavy a aplikovat idiomatické workaroundy
- Optimalizovat výkon, velikost binárky a psát udržitelnou dokumentaci a testy pro generické komponenty
KDO BY SE MĚL KURZU ZÚČASTNIT?
- Vývojáři backendu pracující v Go
- Autoři knihoven a frameworků v Go
- DevOps a systémoví inženýři píšící sdílené utility
- Softwaroví architekti navrhující typově bezpečná API
Privátní školení a termíny na míru
Toto téma je možné zrealizovat pouze jako privátní, a to nejen formou uzavřeného firemního kurzu, ale také jako individuální konzultaci pro jednotlivce.
V případě kurzu na míru je níže uvedená osnova pouze inspirací. Finální obsah vzdělávání, jeho délka i termíny budou přizpůsobeny konkrétním vstupním znalostem, potřebám a cílům účastníků.
Cenovou nabídku vám rádi připravíme na základě vstupů zaslaných e-mailem nebo zadaných prostřednictvím poptávkového formuláře. Cena privátního školení vychází z náročnosti požadované obsahové náplně školení, časového rozsahu a celkového počtu přihlášených osob.
KDE A KDY KURZ PROBÍHÁ?
Kontaktujte nás
S námi
máte na výběr: Přijďte na
kurz osobně do naší učebny, nebo se ke kurzu
připojte online. Pokud preferujete online formu, uveďte prosím do poznámky v objednávce "Připojím se virtuálně".
Více informací k hybridní formě školení
naleznete zde.
Náplň kurzu:
Skrýt detaily
-
Úvod do generik (Go 1.18+)
-
Syntaxe typových parametrů, constraints (
~
, |
, type sets)
-
Vestavěné constraints (
comparable
, any
), vlastní constraints
-
Generické funkce a typy
-
Psaní obecných utilit (např.
Min
/Max
, filtry, transformace)
-
Generické kolekce a algoritmy (řazení, vyhledávání)
-
Kompozice typů, asociované metody na generických typech
-
Rozhraní a generika
-
Propojení
interface
a type parameters, návrh API
-
Kdy volit interface-based polymorfismus a kdy generika
-
Chybové stavy a inference
-
Type inference vs. explicitní typy, čitelnost a chyby kompilace
-
Omezení generik v Go a idiomatické workaroundy
-
Výkon a čitelnost
-
Dopad generik na binárku a výkon
-
Udržitelnost, dokumentace, testy (table-driven s typy)
-
Doporučený předchozí kurz:
-
Go – pokročilé prostředky (GO2)
-
Doporučený následný kurz:
-
Go – paralelní programování (GO4)
-
Časový rozvrh:
-
3 dny (9:00hod. - 17:00hod.)
-
Jazyk:
-
Česky