Materiał jest nagraniem archiwalnym Stacji IT (warsztatów z różnych technologii w trybie 4- lub 8-godzinnym).
➡️ Czego się nauczysz?
– Poznamy ekosystem języka,
– Napiszemy naszą pierwszą aplikację w Rust,
– Poznamy prymitywne i złożone typy danych,
– Napiszemy funkcje i poznamy ich składnię,
– Dowiemy się co to system ownershipu, czym jest borrow checker oraz referencje,
– Dowiemy się, czym są zmienne i mutowalnośćoraz czym są stałe,
– Czym jest shadowing w Rust,
– Jak działa przepływ sterowania w Rust,
– Typy złożone i ich składnia, kolekcje, krotki, tablice, slice’y,
– Definiowanie struktur i enumeratorów,
– Typy generyczne, trait’y i implementacje,
– Obsługa błędów-
– Jak efektywnie pisać testy.
➡️ Dla kogo jest ten materiał?
Dla początkujących oraz doświadczonych programistów, posługujących się imperatywnymi językami programowania z rodziny języka C, osób technicznych zainteresowanych pisaniem i produkowaniem oprogramowania, entuzjastów technologii, którzy chcą zrozumieć najnowsze osiągnięcia języków systemowych, których Rust jest jednym z przedstawicieli.
➡️ Wymagania wstępne
– Zainstalowany Rust (https://www.rust-lang.org/tools/install),
– Działające środowisko uruchomieniowe (cargo, rustc) – można sprawdzić wywołaniem opcji –version dla obu binarek.
(opcjonalnie) IDE wedle uznania (np. Visual Studio Code, IntelliJ IDEA z wtyczką Rust, itp.).
➡️ Program
1. Wprowadzenie do Rusta:
– Poznanie ekosystemu języka Rust, napisanie pierwszej aplikacji.
2. Podstawy składni i typy danych:
– Poznanie prymitywnych i złożonych typów danych, napisanie funkcji i ich składnia.
3. System ownershipu i referencje:
– System ownershipu, borrow checker, referencje.
4. Zmienne, sterowanie przepływem i makra:
– Zmienne i mutowalność, stałe, shadowing w Rust, przepływ sterowania oraz makra.
5. Struktury danych i typy złożone:
– Typy złożone i ich składnia, kolecje, krotki, tablice, slice’y, deifniowanie struktur i enumeratorów.
6. Zaawansowane koncepcje i testowanie:
– Typy generyczne, trait’y i implementacje, obsługa błędów, efektywne pisanie testów.
Materiał „Programowanie w języku Rust” (C) Sages 2025.
➡️ Informacje o prowadzącym:
Maciej Oliwa
Maciej Oliwa:
Senior inżynier oprogramowania specjalizujący się w technologiach systemowych i językach takich jak C/C++/Python oraz szeregu innych. Obecnie pracuje w obszarze Research and Development dla sieci telekomunikacyjnych i płynnie porusza się w technologiach LTE/5G (New Radio) oraz tworzy elementy przyszłego 6G. Tematem zainteresowań są też architektury sprzętowe, od CPU w ISA x86, arm, Risc-V poprzez implementacje dla języków RTL pod FPGA, aż do akceleratorów graficznych i tensorowych (GPU/TPU). Bardziej hobbystycznie i mniej zawodowo porusza się w tematach gamedevu oraz teorii języków oprogramowania, oraz uczenia maszynowego.