Learning Rust

Learning Rust

English | MP4 | AVC 1920×1080 | AAC 48KHz 2ch | 4h 14m | 529 MB

Learn to write fast, low-level code without fear in Rust.

Rust is a new systems programming language from Mozilla, created to facilitate the development of large, complex software projects. Its powerful type system and memory safety rules prevent all memory corruption bugs without compromising developer productivity.

In this course, you’ll begin by getting familiar with the basic syntax and concepts of Rust, from writing a Hello World program to defining functions and creating variables. Then you’ll see how to manage toolchains with Rust up and build your first command-line program.

Moving on, you’ll explore Rust’s type system to write better code and put it into practice in a simple markup language. You’ll learn to use Rust’s functional programming features to perform a physics simulation and use the Rayon crate to parallelize your computations. Finally, you’ll discover the best practices and test your code by building a simple crate with a tested, usable, well-documented API using Cargo and RustDoc.

By the end of the video, you’ll be comfortable building various solutions in Rust. You’ll be able to take advantage of Rust’s powerful type system and a rich ecosystem of libraries, or “crates”, available through the Cargo package manager.

This course uses examples to demonstrate Rust programming concepts. You’ll learn each element of the Rust programming language by building a small application, and then analyzing the strengths and weaknesses of the approach used. You’ll also rebuild some applications more than once to demonstrate different ways to solve the same problem.

What You Will Learn

  • See how to encode common programming concepts in Rust
  • Discover the advantages of the Rustup toolchain manager and the Cargo build tool
  • Prevent data races and memory corruption by controlling exclusive versus shared access
  • Represent data with enums and structs
  • Build powerful abstractions with traits and bounded generics
  • Create concise pipelines with closures and iterators
  • Use Rayon to parallelize functional and procedural programs