Programowanie w języku Rust
Czas trwania szkolenia:3 dni (24h)
Kod kursu:RUST/PROG
Poziom zaawansowania:
O szkoleniu Programowanie w języku Rust
W cenie otrzymasz:
- Materiały szkoleniowe
- Certyfikat ukończenia szkolenia
- W przypadku szkolenia w trybie stacjonarnym zapewnimy Ci również lunch oraz sprzęt niezbędny do nauki
Dla kogo?
- Programistów chcących kompleksowo poznać język Rust, poszerzyć posiadane umiejętności, a także poprawić wydajność i bezpieczeństwo wytwarzanego oprogramowania
Wymagania
- Podstawowa umiejętność programowania w dowolnym języku będzie dużym ułatwieniem
Zalety
- Szkolenie ma charakter warsztatowy - duża ilość przykładów i ćwiczeń ułatwiających przyswojenie zdobywanej wiedzy
- Praktyka przed teorią - wszystkie szkolenia technologiczne prowadzone są w formie warsztatowej. Konieczna teoria jest wyjaśniana na przykładzie praktycznych zadań
- Konkretne umiejętności - w ramach każdego szkolenia rozwijamy praktyczne umiejętności związane z daną technologią i tematyką
- Nauka z praktykami - wszyscy trenerzy na co dzień pracują w projektach, gwarantuje to dostęp do eksperckiej wiedzy i praktycznego know-how
Cele szkolenia
- Gruntowne wprowadzenie do składni i najważniejszych elementów języka Rust
- Poznanie i zrozumienie unikalnego modelu zarządzania pamięcią
- Zapoznanie z istniejącym ekosystemem i dostępnymi narzędziami deweloperskimi
- Przedstawienie obowiązujących konwencji i dobrych praktyk programistycznych
- Zaprezentowanie metod budowania usług sieciowych z użyciem jednego z najpopularniejszych frameworków (Actix Web)
Program
Podstawy języka
- Charakterystyka, zastosowanie i najważniejsze cechy Rust
- Konfiguracja środowiska deweloperskiego
- Podstawy składni i obowiązujące konwencje kodowania
- Kompilowanie, debugowanie i uruchamianie aplikacji
- Dostępne typy danych
- Zmienne, stałe oraz koncepcja niezmienności
- Operatory
- Instrukcje sterujące
- Wyrażenia, funkcje i domknięcia
- Struktury
- Wyliczenia
Model zarządzania pamięcią
- Wyjaśnienie koncepcji Ownership
- Referencje, wskaźniki i reguły bezpiecznego zarządzania pamięcią
- Lifetimes
- Smart Pointers
- Rozwiązywanie typowych problemów zgłaszanych przez kompilator
Codzienne programowanie w Rust
- Kolekcje
- Pattern matching i jego formy
- Język Rust a podejście obiektowe
- Traits - tworzenie, implementacja, zastosowanie
- Programowanie w stylu funkcyjnym
- Obsługa błędów
- Typy generyczne
- Iteratory
- Organizacja kodu aplikacji z wykorzystaniem modułów
- Obsługa wejścia / wyjścia
- Testowanie
Budowanie usług sieciowych z użyciem Actix Web
- Wprowadzenie i najważniejsze elementy frameworku
- Konfiguracja serwera oraz aplikacji
- Mapowanie i obsługa żądań klienta
- Generowanie odpowiedzi
- Wzbogacanie/zmiana obsługi żądań z użyciem middlewares
- Utrwalanie i dostęp do danych
- Obsługa błędów
- Uwierzytelnianie i autoryzacja dostępu
- Logowanie oraz monitorowanie usług
- Testowanie
- Rozwiązania alternatywne na przykładzie Rocket oraz Axum