This couse will teach you advances concepts and usage of Rust in specific domains such as asynchronous programming, graphics (GUI) programming, programming for the web, etc. Rust is a modern programming language blazingly fast, memory-efficient, memory-safe and thread-safe that enables you to eliminate many classes of bugs at compile-time. Rust can power performance-critical services, run on embedded devices, and easily integrate with other languages.
This training is available as "onsite live training" as well as "remote live training".
Languages: French, English
Why take this course
This course combines hands-on exercices (about 60%) with concept understanding and theory (about 40%) and can be adapted to the learner's needs. By the end you will become autonomous in developping Rust applications.
On successfull completion of this course, you will receive an instructor-signed certificate with the institution's logo.
What you'll learn
- Think as a rustacean.
- Write idiomatic Rust code.
- Being self-sufficient in the programming Rust in the domains addressed by this training.
- Basic programming experience.
- Knowledge of Linux/Unix environment.
- Basic Rust programming (see initial training).
Course syllabusModule 1 - Introduction
- Revision of basic Rust programming
- Computed constants (const functions)
- Runtime type information (Any and TypeId)
- Non-move memory (pin and unpin)
- Async functions
- Tokio and async-std runtimes
- Asynchronous IO
- Agent-oriented programming with Actix
- Programming with no-std
- Collections with dynamic allocations (alloc)
- Collections without dynamic allocations (heapless)
- Ecosystem presentation
- System interfaces (GUI)
- druid and piet
- Access to an SQL database with diesel
- Web server
- Rocket and Actix-web
- Rust in the browser with WebAssembly
Meet your instructor
Laurent Wouters is co-founder of Cénotélie
and a dedicated researcher and trainer. He has been coding
actively in Rust for several years, in particular, to
software for crop
management using satelite images processing. It is a complex
application with a backend entirely written in Rust.
Laurent is an active contributor to other open projects, like Hime, for which he has also developed the Rust runtime.
He holds a PhD in the Theory of languages. As a researcher, he was particularly interested in understanding how languages and semantics can contribute to efficient digital collaboration and complex systems engineering. He gained a strong teaching experience as a teaching assistant in top universities in Paris, including Ecole Centrale de Paris.