Plan Szkolenia
# Day 1
- Introduction
- Installation
- rustup
- cargo, rustc
- crates.io
- create a first project
- creating a library or executable
- Cargo.toml
- Cargo.lock
- exploring the source
- cargo tools
- hello world program
- Basic syntax
- functions
- variables
- types
- structs and enums
- control flow: if, loops, pattern matching
- exercise: the guessing game
- Ownership
- moves
- mutability
- borrowing
- lifetimes
- exercise: fixing borrow checker compilation errors
- Modules
- importing code
- visibility
- source code organisation
- Traits and generics
- methods
- generic types, functions and methods
- type aliases
- Standard library
- Option
- Result
- collections: Vec, HashMap
- iterators
- exercise: start building a small in memory database
# Day 2
- Tools
- importing crates
- unit tests
- benchmarks
- fuzzing
- documentation
- attributes
- exercise: integrate unit tests, CI and other tools for the database example
- Strings and slices
- String
- &str
- &[u8]
- Iterators
- Closures
- exercise: start implementing queries
- Destructuring
- if let
- API design
- Usual traits
- Clone and Copy
- Debug and Display
- PartialEq, Eq
- Drop
- Static VS dynamic dispatch
- Associated types
- Deref
- Into
- I/O
- exercise: add optional file storage for the database
- Concurrency
- threads
- channels
- Send, Sync
- mutability
- Arc, Mutex
- exercise: multiple clients querying the database while storing regularly
# Day 3
- FFI
- repr(C)
- exporting functions and structures
- unsafe
- Box
- rusty-cheddar and rust-bindgen
- linking
- cargo-vendor
- exercise: making a C interface for our in memory database
- common libraries and interfaces (adaptable depending on what the students want to focus on)
- docs.rs
- Command
- clap
- serde
- log
- tokio
- rocket
- lazy_static
- nom
Opinie uczestników (4)
Wiedza trenera bardzo duża, zaangażowanie w rozmowę i przekazywanie wiedzy ogromne. Dobry kontakt z uczestnikami. Bardzo dobrze przygotowane materiały, dużo slajdów, opisy ćwiczeń, widać było duże przygotowania do szkolenia, mimo moim komentarzy nadal oceniam szkolenie bardzo dobrze. Moje komentarze są jedynie uzupełnieniem, jakie można poczynić do szkolenia, które było na bardzo dobrym poziomie. Według mnie przy uczestnikach z obszaru C# i wprowadzonych poprawkach, szkolenie może być na poziomie idealnym ;-)
Sławek - Sonova Warsaw Service Center Sp z o o
Szkolenie - Rust Programming
Duża ilość wiedzy praktycznej pokazanej na przykładach z "życia wziętych".
Kamil - Streamsoft Kraków
Szkolenie - Java Advanced
Pushowanie zmian na bieżąco, jak w 3 dzień zaczęłam się już gubić bardziej niż wcześniej i było ciężej wyłapać błąd na szybko to na szybko byłam w stanie zcheckoutować się na najnowszą zmiane i być na bieżąco z materiałem
Paulina
Szkolenie - Advanced Java Security
Podobały mi się interaktywne przykłady, nad którymi pracowaliśmy, trener miał ogromną wiedzę na prawie każdy temat, o który mieliśmy pytania, i udzielił doskonałych porad dotyczących naszych rzeczywistych przypadków użycia związanych z niektórymi materiałami w szkoleniu.
Tracy - GenesysGo
Szkolenie - Rust Advanced
Przetłumaczone przez sztuczną inteligencję