Vyberte svůj jazyk
Kurz Rust
Více než 2 miliony studentů po celém světě

Kurz Rust

Ovládněte Rust od základů – od vlastnictví a životností po asynchronní souběžnost a systémové programování. Toto komplexní školení pokrývá vše, co pracující vývojář potřebuje k psaní bezpečného, rychlého a produkčně připraveného kódu v Rustu. Ať už vytváříte webová API, nástroje pro CLI nebo nízkoúrovňový systémový software, tento kurz vás k tomu dovede.

Dedika pro firmy

Co se naučíte:

Vybudujete si pevné základy v základní syntaxi Rustu, modelu vlastnictví a typovém systému, než postoupíte k traitům, generikám a ošetření chyb. Naučíte se zpracovávat data pomocí iterátorů a uzávěrů, psát souběžné programy s využitím vláken a async/await s knihovnou Tokio a pracovat se systémovými zdroji prostřednictvím unsafe Rustu a FFI. Kurz se rovněž věnuje webovému vývoji s Axum a SQLx, profilování výkonu, tvorbě maker a publikování crate. Po absolvování budete mít dovednosti k sebevědomému navrhování, testování a dodávání skutečných aplikací v Rustu.

Jak studujete v praxi Kurz Rust

Jak procvičujete Kurz Rust

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 Rustu a nastavení nástrojů

  • Lekce 1 • Základy řídicích struktur

    Naučíte se if/else, cykly a porovnávání vzorů. Umožní studentům řídit průběh programu pomocí větvení a iterací.

  • Lekce 2 • Funkce a moduly

    Definuje signatury funkcí, návratové typy a viditelnost modulů. Ustanoví vzory organizace kódu používané v průběhu celého kurzu.

  • Lekce 3 • Základní syntaxe a datové typy

    Představuje proměnné, skalární typy a složené typy. Buduje slovní zásobu potřebnou k vyjadřování logiky ve všech následujících kapitolách.

  • Lekce 4 • Cargo a struktura projektu

    Zkoumá příkazy Cargo, Cargo.toml a rozvržení pracovního prostoru. Studenti získají dovednosti v oblasti správy projektů potřebné pro všechna praktická cvičení.

  • Lekce 5 • Instalace a konfigurace Rustu

    Pokrývá rustup, správu toolchainů a integraci s IDE. Poskytuje základ pro veškerou následnou kompilaci a práci na projektech.

Kapitola 2Zobrazit detaily

Vlastnictví, půjčování a životnosti

  • Lekce 1 • Reference a půjčování

    Představuje sdílené a měnitelné reference s pravidly půjčování. Studenti se naučí předávat data bez přenosu vlastnictví.

  • Lekce 2 • Pravidla vlastnictví a sémantika přesunu

    Vysvětluje invariant jediného vlastníka a přesuny hodnot. Přímo řeší nejčastější chyby začátečníků při kompilaci v Rustu.

  • Lekce 3 • Anotace životností

    Učí explicitní syntaxi životností pro funkce a struktury. Umožňuje studentům řešit chyby životností, které kompilátor nemůže automaticky odvodit.

  • Lekce 4 • Typy řezů

    Pokrývá řezy řetězců a řezy polí jako referenční pohledy. Propojuje koncepty půjčování s praktickými vzory přístupu k datům.

  • Lekce 5 • Běžné vzory vlastnictví

    Zkoumá Rc, RefCell a vnitřní měnitelnost pro sdílené vlastnictví. Připravuje studenty na scénáře z reálného světa, kde jediné vlastnictví nestačí.

Kapitola 3Zobrazit detaily

Struktury, výčty a porovnávání vzorů

  • Lekce 1 • Metody a asociované funkce

    Přidává chování strukturám pomocí bloků impl a konstruktorů. Propojuje datové modelování se zapouzdřením ve stylu objektově orientovaného programování v Rustu.

  • Lekce 2 • Definování a používání struktur

    Pokrývá pojmenované, n-ticové a jednotkové struktury s přístupem k polím. Poskytuje primární nástroj pro seskupování souvisejících dat v průběhu celého kurzu.

  • Lekce 3 • Pokročilé porovnávání vzorů

    Rozšiřuje match o destrukturování, stráže a vázání. Umožňuje stručné a vyčerpávající zpracování složitých datových tvarů.

  • Lekce 4 • Výčty a typ Option

    Představuje výčty s datovými variantami a typ Option<T>. Eliminuje chyby nulových ukazatelů explicitním zakódováním absence v typovém systému.

  • Lekce 5 • if let a while let

    Představuje stručné konstrukce pro porovnávání jednoho vzoru. Snižuje množství nadbytečného kódu, když je třeba zpracovat pouze jednu variantu.

Kapitola 4Zobrazit detaily

Vlastnosti, generika a polymorfismus

  • Lekce 1 • Vlastnosti standardní knihovny

    Zkoumá Display, Debug, From, Into, Iterator a Clone. Integrace těchto vlastností umožňuje spolupráci vlastních typů s celým ekosystémem.

  • Lekce 2 • Omezení vlastností a klauzule where

    Omezuje generika pomocí omezení vlastností a syntaxe where. Umožňuje kompilátoru ověřit, že generické typy podporují požadované operace.

  • Lekce 3 • Generické funkce a struktury

    Představuje typové parametry pro funkce, struktury a výčty. Umožňuje psát algoritmy, které pracují s jakýmkoli kompatibilním typem.

  • Lekce 4 • Dynamický dispatch pomocí objektů vlastností

    Porovnává statický dispatch s dyn Trait pro runtime polymorfismus. Studenti si vyberou správnou strategii dispatche pro každý návrhový scénář.

  • Lekce 5 • Definování a implementace vlastností

    Pokrývá deklaraci vlastností, výchozí metody a implementaci. Ustanoví primární mechanismus abstrakce používaný ve všech knihovnách Rustu.

Kapitola 5Zobrazit detaily

Ošetření chyb a typy Result

  • Lekce 1 • Operátor ? a šíření chyb

    Učí operátor ? pro stručné šíření chyb ve funkcích. Dramaticky snižuje nadbytečný kód ve funkcích, které volají více operací náchylných k chybám.

  • Lekce 2 • Vlastní typy chyb

    Covers defining error enums, implementing std::error::Error, and conversions. Enables libraries to expose meaningful, structured error information.

  • Lekce 3 • Ošetření chyb v aplikacích

    Představuje anyhow pro agregaci chyb na úrovni aplikace a kontext. Propojuje typované chyby knihovního stylu s uživatelsky orientovanými diagnostickými zprávami.

  • Lekce 4 • Panika a neobnovitelné chyby

    Vysvětluje panic!, assert! a odvíjení zásobníku. Ustanoví, kdy je vhodné zastavit program a kdy je třeba chyby šířit.

  • Lekce 5 • Result<T, E> a obnovitelné chyby

    Představuje varianty Result, zpracování pomocí match a řetězení metod. Poskytuje základ pro všechny operace náchylné k chybám v Rustu.

Kapitola 6Zobrazit detaily

Kolekce, iterátory a uzávěry

  • Lekce 1 • Vlastní iterátory

    Vede studenty implementací Iterator pro vlastní struktury. Prohlubuje porozumění systému vlastností a umožňuje doménově specifickou iteraci.

  • Lekce 2 • Uzávěry a zachytávání

    Vysvětluje syntaxi uzávěrů, režimy zachytávání a rodiny vlastností Fn. Umožňuje předávání chování jako hodnot iterátorům a funkcím vyššího řádu.

  • Lekce 3 • Vec, HashMap a HashSet

    Pokrývá vytváření, vkládání, vyhledávání a odstraňování pro základní kolekce. Poskytuje datové struktury používané ve většině reálných programů v Rustu.

  • Lekce 4 • Konzumace iterátorů a collect

    Pokrývá konzumenty fold, sum, count, collect a partition. Převádí líné pipeline na konkrétní výsledky a kolekce.

  • Lekce 5 • Vlastnost Iterator a adaptéry

    Představuje vlastnost Iterator, líné vyhodnocování a řetězení adaptérů. Studenti skládají expresivní datové pipeline bez mezilehlých alokací.

Kapitola 7Zobrazit detaily

Souběžnost a asynchronní programování

  • Lekce 1 • Předávání zpráv pomocí kanálů

    Učí kanály mpsc pro komunikaci mezi vlákny. Demonstruje model souběžnosti založený na předávání zpráv jako alternativu ke sdílenému stavu.

  • Lekce 2 • Základy běhového prostředí Tokio

    Pokrývá nastavení exekutoru Tokio, asynchronní úlohy a primitiva asynchronního I/O. Umožňuje studentům vytvářet skutečné síťové aplikace s dominantním asynchronním běhovým prostředím.

  • Lekce 3 • Synchronizační primitiva

    Zkoumá asynchronní Mutex, RwLock, Semaphore a Notify z Tokia. Vybavuje studenty k synchronizaci souběžných úloh bez datových závodů.

  • Lekce 4 • Základy async/await

    Představuje vlastnost Future, async fn a syntaxi .await. Poskytuje konceptuální model pro neblokující I/O v aplikacích Rustu.

  • Lekce 5 • Vlákna a sdílený stav

    Covers thread::spawn, join handles, and Mutex-protected shared data. Introduces the Send and Sync traits that enforce thread safety at compile time.

Kapitola 8Zobrazit detaily

Systémové programování a nebezpečný Rust

  • Lekce 1 • Nebezpečné bloky a funkce

    Vysvětluje pět nebezpečných super schopností a jak je zapouzdřit. Studenti se učí minimalizovat plochu nebezpečného kódu a dokumentovat bezpečnostní invarianty.

  • Lekce 2 • Rozhraní pro cizí funkce (FFI)

    Pokrývá bloky extern, ABI jazyka C a volání knihoven jazyka C z Rustu. Umožňuje integraci s existujícími nativními kódovými bázemi a systémovými knihovnami.

  • Lekce 3 • Surové ukazatele a rozvržení paměti

    Představuje *const T a *mut T, aritmetiku ukazatelů a zarovnání paměti. Poskytuje základ pro FFI a ruční správu paměti.

  • Lekce 4 • Vlastní alokátory a správa paměti

    Představuje vlastnost GlobalAlloc, jemalloc a alokaci v arénách. Umožňuje jemnozrnnou kontrolu paměti pro aplikace kritické z hlediska výkonu.

  • Lekce 5 • Vestavěná a no-std prostředí

    Pokrývá atribut no_std, knihovnu core a cílové platformy bez OS. Připravuje studenty na nasazení Rustu na mikrokontrolérech a systémech s omezenými zdroji.

Certifikace

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

Tento kurz je pro vás:

  • Backendový vývojář: chce rychlejší a bezpečnější alternativy k jazykům se správou paměti s automatickým uvolňováním.

  • Programátor v C nebo C++: hledá moderní nástroje a záruky bezpečnosti paměti v době kompilace.

  • Inženýr vestavěných systémů: potřebuje nízkoúrovňový jazyk s přísnými bezpečnostními omezeními.

  • Student informatiky: buduje si základní dovednosti v konceptech programování na úrovni systémů.

  • Osoba měnící kariéru: přechází ze skriptovacích rolí do kompilovaného inženýrství zaměřeného na výkon.

  • Inženýr DevOps nebo infrastruktury: automatizuje a optimalizuje nástroje pomocí kompilovaného jazyka.

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