- Leren door doen
- Trainers met praktijkervaring
- Klassikale trainingen
- Gedetailleerd cursusmateriaal
- Duidelijke inhoudsbeschrijving
- Maatwerk inhoud mogelijk
- Trainingen die doorgaan
- Kleine groepen
In de cursus Rust Programmeren van SpiralTrain leren de deelnemers software te ontwikkelen met de laatste versie van de innovatieve programmeertaal Rust . Rust is bekend om zijn focus op snelheid, veiligheid en geheugen bescherming, waardoor het een uitstekende keuze is voor systeemprogrammering en applicaties waar prestaties cruciaal zijn. De cursus behandelt de nieuwste versie van Rust, zodat je met de laatste mogelijkheden leert werken.
In de cursus Rust Programmeren leer je de basisprincipes van de krachtige en moderne programmeertaal Rust. Rust biedt een unieke combinatie van hoge prestaties en veiligheid, waardoor het een favoriete keuze is voor systeemprogrammeurs. Het is community-driven en zorgt ervoor dat je vrijwel alle crashes en data races kunt voorkomen.
Rust bouwt voort op een rijke geschiedenis van programmeertalen en combineert verschillende paradigma's, zowel imperatief als functioneel. Deze veelzijdigheid maakt Rust geschikt voor een breed scala aan toepassingen, van low-level systeemontwikkeling tot meer abstracte probleemoplossingen.
De cursus Rust Programmeren richt zich op het ontwikkelen van veilige, high-performance, concurrent applicaties. Al vóór de officiële 1.0 versie in mei 2015 kreeg Rust momentum in de industrie, omdat er een duidelijke behoefte was aan een nieuwe low-level systeemtaal die zowel snel als veilig is.
Tijdens de cursus behandelen we wat Rust zo uniek maakt en hoe je deze concepten kunt toepassen op praktische problemen in systeemprogrammering. Onderwerpen die aan de orde zullen komen zijn: traits, generics, memory safety, move semantics, borrowing en lifetimes.
Daarnaast komen ook het rijke macro-systeem van Rust, closures en concurrency aan bod. Deze aspecten zijn cruciaal voor het ontwikkelen van robuuste en efficiënte applicaties in Rust.
Voor meer informatie over Rust, bezoek de officiële [Rust-documentatie](https://www.rust-lang.org/learn) voor uitgebreide bronnen en handleidingen. Ook kun je meer leren over andere programmeertalen, zoals in de cursus Carbon Programmeren.
De cursus Rust Programmeren is bedoeld voor developers die in Rust willen leren programmeren en anderen die Rust code willen begrijpen.
Ervaring met programmeren in moderne programmeertaal is wenselijk en is bevorderlijk voor een goede begripsvorming.
De theorie wordt behandeld aan de hand van presentatie slides. De concepten worden toegelicht met demo's. De theorie wordt afgewisseld met oefeningen. De cursustijden zijn van 9.30 tot 16.30.
De deelnemers krijgen na het goed doorlopen van de cursus een officieel certificaat Rust Programmeren.
Module 1 : Rust Intro |
Module 2 : Data Types |
Module 3 : Flow Control |
| What is Rust? Rust Background Rust Momentum Rust Usage Comparisons to C Rust Applications Hello Rust Comments Formatted Printing Debug and Display Literals Operators |
Primitives Tuples and Arrays Slices Custom Types Enums Constants Variable Bindings Scope Shadowing Casting Inference Alias |
Expressions Flow Control if else loop Nesting and labels while for and range match Guards Binding if let while let |
Module 4 : Functions |
Module 5 : Modules |
Module 6 : Generics |
| Methods Closures Capturing As Input Parameters Input Functions Type Anonymity As Output Parameters Examples from std Iterator::any Iterator::find Higher order Functions |
Visibility Struct Visibility use Declaration Using super Using self File Hierarchy Crates Attributes Extern crate Dead Code Custom |
Functions Implementations Parametrization over Types Traits Bounds Multiple Bounds Where Clauses Associated Items Associated Types Phantom Type Parameters Unit Clarification |
Module 7 : Scoping |
Module 8 : Traits |
Module 9 : Standard Library |
| RAII Ownership and Moves Functions and Methods Mutability Borrowing and Freezing Aliasing ref Pattern Lifetimes Explicit Annotation Bounds and Coercion Static Elison |
Zero cost Abstraction Traits are interfaces Derive Operator Overloading Drop Iterators Clone Designators Overload and Repeat Unsafe Operations Static dispatch Dynamic dispatch |
Box, stack, heap Data Structures Vectors Strings Hashmap Threads Channels Path File I/O Pipes Wait Arguments Meta |