Schița de curs
# 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
Mărturii (4)
Cunoștințele formatorului sunt foarte bune, implicarea în conversație și transferul de cunoștințe foarte mare. Contact bun cu participanții. Materiale foarte bine pregătite, multe diapozitive, descrieri ale exercițiilor, s-a putut vedea multă pregătire pentru training, în ciuda comentariilor mele, consider în continuare trainingul foarte bun. Comentariile mele sunt doar un adaos care poate fi făcut la training, care a fost la un nivel foarte bun. După părerea mea, cu participanți din zona C# și cu îmbunătățirile aduse, trainingul ar putea fi la un nivel ideal ;-)
Sławek - Sonova Warsaw Service Center Sp z o o
Curs - Rust Programming
Tradus de catre o masina
Mi-au plăcut exemplele interactive pe care am lucrat, formatorul a fost extrem de bine informat în aproape toate subiectele pe care le-am avut întrebări și a oferit sfaturi excelente pentru cazurile de utilizare din lumea reală referitoare la unele dintre materialele din cadrul cursului.
Tracy - GenesysGo
Curs - Rust Advanced
Tradus de catre o masina
O mulțime de cunoștințe practice prezentate cu exemple din "viața reală".
Kamil - Streamsoft Kraków
Curs - Java Advanced
Tradus de catre o masina
Schimbări pe loc, deoarece în ziua a 3-a începusem deja să mă pierd mai mult decât înainte și era mai greu să descopăr rapid o greșeală, am putut să fac zcheckout la ultima schimbare și să fiu la curent cu materialul.
Paulina
Curs - Advanced Java Security
Tradus de catre o masina