Repository files navigation
Wprowadzenie do języka Rust – Główne cechy: bezpieczeństwo, wydajność, przenośność.
Środowisko i narzędzia – Instalacja i użycie rustup, cargo, rustc, fmt, clippy i innych.
Zmienne i typy proste – Typy logiczne, liczbowe, znakowe, rozmiarowe; wyrażenia i rzutowanie typów.
Programowanie strukturalne – Funkcje, instrukcje warunkowe, pętle.
Funkcje jako wartości pierwszego rzędu – Wykorzystywanie funkcji jako danych.
Własność i czasy życia – Przekazywanie danych, przenoszenie, kopiowanie, klonowanie, współpraca z kompilatorem.
Wbudowane typy złożone – Tablice, wycinki, surowe napisy, krotki.
Biblioteczne typy złożone – Napisy (String), wektory (Vec).
Obsługa błędów – Mechanizmy Option i Result.
Programowanie funkcyjne – Domknięcia, iteratory, map, filter, fold i inne.
Korzystanie z dokumentacji – Oficjalna dokumentacja języka Rust i biblioteki standardowej.
Programowanie obiektowe (struktury i cechy) – Struktury, implementacje, cechy (interfejsy).
Derywacja cech – Automatyczne implementowanie cech przez #[derive(...)].
Programowanie obiektowe (wyliczenia) – Użycie typów enum.
Dopasowywanie wzorców – match, if let, while let, itd.
Programowanie modułowe – Moduły i hermetyzacja.
Wzorzec Builder – Budowanie obiektów krok po kroku.
Programowanie generyczne z własnymi cechami – Definiowanie i używanie generyków oraz cech.
Wskaźniki inteligentne – Box, Rc, Arc i inne.
Polimorfizm dynamiczny – Obiekty cech i dynamiczne wiązanie.
Czasy życia jako parametry generyczne – Zaawansowane adnotacje czasu życia.
Szablony (generyki) – Pisanie elastycznego kodu z użyciem generyków.
Zbiory i mapy – HashSet, HashMap i inne kolekcje.
Przeciążanie funkcji i operatorów – Nadpisywanie zachowań przez cechy.
Testy jednostkowe – Tworzenie testów z użyciem wbudowanego frameworka.
Obsługa plików tekstowych – Odczyt i zapis danych do plików.
Wzorzec Typestate – Reprezentowanie stanów obiektów za pomocą typów.
Zaawansowana obsługa błędów – Propagacja, kontekst, własne typy błędów.
Zewnętrzne biblioteki (crates.io) – Zarządzanie zależnościami, serializacja (serde).
Programowanie wielowątkowe – Wątki, kanały, Mutex, Arc.
Makra – Tworzenie i używanie makr w metaprogramowaniu.
Introduction to Rust – Key features such as safety, performance, and portability.
Environment and Tools – Setting up and using tools like rustup, cargo, rustc, fmt, clippy, and others.
Variables and Primitive Types – Boolean, numeric, character, and sized types; expressions and type casting.
Structured Programming – Functions, conditionals, and loop constructs in Rust.
First-Class Functions – Treating functions as values.
Ownership and Lifetimes – Data passing, moving, copying, cloning, and working with the borrow checker.
Built-in Compound Types – Arrays, slices, raw strings, and tuples.
Library Compound Types – Strings and vectors.
Error Handling – Handling errors and exceptions using Option and Result.
Functional Programming – Closures, iterators, map, filter, fold, and other functional paradigms.
Documentation Usage – Navigating and using Rust's official and standard library documentation.
Object-Oriented Programming (Structs & Traits) – Structs, implementations, and traits as interfaces.
Trait Derivation – Automatically implementing traits using #[derive(...)].
Object-Oriented Programming (Enums) – Working with enumerations.
Pattern Matching – Using match, if let, while let, etc.
Modular Programming – Modules and encapsulation.
Builder Pattern – Structuring object construction with the builder design pattern.
Generic Programming with Custom Traits – Defining and using generics and traits.
Smart Pointers – Using Box, Rc, Arc, and other pointer types.
Dynamic Polymorphism – Trait objects and runtime dispatch.
Lifetimes as Generic Parameters – Advanced lifetime annotations in generics.
Template-like Generics – Extensive use of generics to write flexible code.
Collections – Sets and maps (HashSet, HashMap).
Function and Operator Overloading – Using traits to overload behavior.
Unit Testing – Writing and running tests with Rust's built-in testing framework.
Text File Handling – Reading from and writing to text files.
Typestate Pattern – Modeling object states at the type level.
Advanced Error Handling – Propagation, context, and custom error types.
Using External Libraries – Working with crates.io, dependency management, and serialization (serde).
Multithreaded Programming – Using threads, channels, Mutex, and Arc.
Macros – Writing and using macros for metaprogramming.
About
No description, website, or topics provided.
Resources
Stars
Watchers
Forks
You can’t perform that action at this time.