Schulungsübersicht
# 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
Erfahrungsberichte (4)
Wissen des Trainers sehr hoch, Beteiligung am Gespräch und Wissensvermittlung groß. Guter Kontakt mit den Teilnehmern. Sehr gut vorbereitete Materialien, viele Folien, Beschreibungen der Übungen, man konnte eine Menge Vorbereitung für das Training sehen, trotz meiner Kommentare bewerte ich das Training immer noch als sehr gut. Meine Kommentare sind nur ein Zusatz, der zu der Schulung gemacht werden kann, die auf einem sehr guten Niveau war. Meiner Meinung nach könnte die Schulung mit Teilnehmern aus dem Bereich C# und den vorgenommenen Verbesserungen auf einem idealen Niveau sein ;-)
Sławek - Sonova Warsaw Service Center Sp z o o
Kurs - Rust Programming
Maschinelle Übersetzung
Ich mochte die interaktiven Beispiele, an denen wir gearbeitet haben, der Trainer war in fast jedem Thema, zu dem wir Fragen hatten, äußerst sachkundig und gab ausgezeichnete Ratschläge für unsere realen Anwendungsfälle, die sich auf einige der in der Schulung behandelten Themen bezogen.
Tracy - GenesysGo
Kurs - Rust Advanced
Maschinelle Übersetzung
Viel praktisches Wissen wird anhand von Beispielen aus dem wirklichen Leben vermittelt.
Kamil - Streamsoft Kraków
Kurs - Java Advanced
Maschinelle Übersetzung
Da ich mich am dritten Tag schon mehr als zuvor verlaufen hatte und es schwieriger war, einen Fehler schnell zu finden, konnte ich die letzte Änderung abhaken und war mit dem Material auf dem neuesten Stand.
Paulina
Kurs - Advanced Java Security
Maschinelle Übersetzung