Przejdź do głównej treści
eLearner.app

Interaktywny kurs

Kurs Rust

Naucz się języka Rust od zera dzięki szczegółowym objaśnieniom, praktycznym przykładom i interaktywnym ćwiczeniom: od zarządzania zmiennymi i typów prostych po bezpieczne zarządzanie pamięcią z użyciem ownership, borrowing, struktur i metod.

Statyczna weryfikacja za pomocą słów kluczowych + wykonanie w oficjalnym Rust Playground (jedno kliknięcie do skopiowania kodu + otwarcie).

01 · Moduł 1 — Podstawy Rusta

2 lekcji

Podstawy języka: zmienne, mutowalność, shadowing oraz używanie typów prostych i złożonych.

  1. 1.1Zmienne i mutowalnośćZrozumienie domyślnej niezmienności, użycia słowa kluczowego mut oraz możliwości shadowing w Rust.~10 min
  2. 1.2Typy prosteTypy proste (skalarne: liczbowe, logiczne, znakowe) oraz złożone (krotki i tablice o stałym rozmiarze).~10 min

02 · Moduł 2 — Przepływ sterowania

2 lekcji

Podejmowanie decyzji za pomocą wyrażeń warunkowych, iterowanie za pomocą pętli i wykorzystanie dopasowania wzorców.

  1. 2.1Instrukcje warunkowe i pętleRozgałęzienia if/else (używane jako wyrażenia) oraz iteracje przy użyciu loop, while i for.~12 min
  2. 2.2Dopasowanie wzorców, Option i ResultUżywanie dopasowania match oraz standardowych typów wyliczeniowych Option i Result w celu bezpiecznej obsługi błędów.~15 min

03 · Moduł 3 — Ownership i Borrowing

2 lekcji

Serce zarządzania pamięcią w języku Rust: ownership, stack vs heap, move vs copy oraz bezpieczne używanie referencji.

  1. 3.1Zasady OwnershipTrzy kluczowe zasady zarządzania pamięcią bez garbage collectora, alokacja dynamiczna, operacje copy i transfery własności (ownership).~15 min
  2. 3.2Referencje i BorrowingPożyczanie danych za pomocą referencji współdzielonych (&) i mutowalnych (&mut) oraz unikanie wyścigów danych (data races) dzięki regułom kompilatora.~15 min

04 · Moduł 4 — Struktury danych i Metody

2 lekcji

Definiowanie i organizowanie złożonych własnych typów danych za pomocą struktur (struct) oraz implementowanie ich zachowań za pomocą impl.

  1. 4.1Definiowanie i tworzenie strukturZłożone struktury danych w języku Rust: klasyczne struktury, struktury krotkowe oraz tworzenie instancji.~12 min
  2. 4.2Metody i bloki implPowiązywanie funkcji i metod ze strukturą przy użyciu impl, rozumienie różnicy między self, &self i &mut self.~12 min

05 · Moduł 5 — Generics i Traits

2 lekcji

Tworzenie elastycznego kodu wielokrotnego użytku za pomocą typów generycznych oraz definiowanie wspólnych zachowań za pomocą cech (Traits).

  1. 5.1Typy generyczne i funkcjeSkładnia typów generycznych w funkcjach i strukturach danych w celu unikania powtarzania kodu.~12 min
  2. 5.2Cechy i ograniczenia (Traits / Trait Bounds)Definiowanie wspólnych interfejsów za pomocą cech (Traits) i ograniczanie typów generycznych klauzulą Trait Bound.~15 min

06 · Moduł 6 — Lifetimes i Smart Pointers

2 lekcji

Zarządzanie czasem życia referencji za pomocą lifetimes i analiza zarządzania pamięcią na stercie (heap) przy użyciu Box, Rc i Arc.

  1. 6.1Lifetimes i referencjeZrozumienie roli mechanizmu Borrow Checker i określanie jawnych adnotacji czasu życia (lifetimes) w razie potrzeby.~15 min
  2. 6.2Inteligentne wskaźniki (Smart Pointers): Box i RcDynamiczna alokacja na stercie za pomocą Box oraz wskaźniki wielokrotnej własności z licznikami referencji Rc i Arc.~15 min

07 · Moduł 7 — Obsługa błędów i Kolekcje

2 lekcji

Praca z dynamicznymi kolekcjami, takimi jak HashMap, oraz zaawansowana i idiomatyczna obsługa błędów.

  1. 7.1Kolekcje i HashMapKorzystanie z dynamicznych wektorów (Vec) oraz słowników klucz-wartość (HashMap) do zbierania danych.~12 min
  2. 7.2Obsługa błędów i operator ?Propagowanie błędów w czysty i liniowy sposób przy użyciu operatora ? oraz tworzenie własnych typów błędów.~15 min