Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Learning Rust
Rating: 4.4 out of 5(86 ratings)
353 students

Learning Rust

Learn to write fast, low-level code without fear in Rust.
Last updated 9/2018
English

What you'll 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

Course content

7 sections41 lectures4h 13m total length
  • The Course Overview1:34

    This video gives an overview of the entire course.

  • Bindings and Mutability2:15

    In this video, we will examine the basic syntax of Rust and see its variables called “bindings” at work.

    • Learn that bindings are immutable by default

    • Learn that Rust supports mutable bindings

    • Know that the compiler will prevent us from using a variable that was not initialized

  • Built-In Types12:00

    In this video, we will examine the built-in types provided by Rust.

    • Load up the Rust playground

    • Learn about the two types of Rust – strong and dynamic

    • Get acquainted with the built-in types and check on some programming as well

  • Imports and Namespaces7:24

    In this video, we will see how rust code is organized, see some more types, and build some more programs.

    • Learn some basics about crates and modules

    • Learn that there are a number of imports that come into a program, known as “preludes”

  • The Standard Library4:24

    In this video, we will talk about the functionality that is available by default on every Rust program: Rust standard library.

    • Get to know about the contents of the rust standard library

    • Learn a bit about the Rust standard library’s philosophy

  • Recursive Fibonacci5:14

    In this video, we will build a simple Fibonacci calculator.

    • Define the program to be written

    • Sketch out the implementation types

    • Build a working implementation

  • Dynamic Fibonacci7:23

    In this video, we will build a more efficient Fibonacci program.

    • Define the performance bottleneck of the previous program

    • Understand how dynamic programming will help

    • Implement a dynamic solution

Requirements

  • The video is for developers who have basic knowledge of programming.
  • There is no knowledge of Rust language expected.

Description

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.

About the Author

Leo Tindall is a software developer and hacker from San Diego whose interests include scalability, parallel software, and machine learning.

Who this course is for:

  • The video will also appeal to developers who are using C/C++ language to write their applications.