Skip to main content
CF

Rust: Building Reusable Code with Rust from Scratch

6h 17m 32s
English
Paid

Rust: Building Reusable Code with Rust from Scratch is a 68-lesson 6 hours 17 minutes self-paced course by Udemy. Rust is a systems programming language designed with a focus on safety, particularly safe concurrency.

Course facts

Lessons
68
Duration
6 hours 17 minutes
Level
All levels
Language
English
Updated
Instructor
Udemy
Price
Premium

Rust is a systems programming language designed with a focus on safety, particularly safe concurrency. It supports both functional and imperative paradigms and is syntactically similar to C++. However, its designers aim to provide superior memory safety while maintaining high performance. In this hands-on, practical course, you will start from scratch, becoming familiar with Rust's basic syntax and concepts, defining functions, creating variables, and much more.

Mastering Rust Code Development

Through this course, you will learn to test your code by building a simple crate with a well-documented and tested API using Cargo and RustDoc. You will explore various forms of code reuse, including loops, map, filter, and fold, to create reusable code for your applications, saving time and resources.

Course Outcomes

By the end of this course, you will be equipped to avoid code duplication and write clean, reusable code. You will also be confident in building diverse solutions using Rust.

Contents and Overview

This training program comprises two comprehensive courses, carefully selected to provide a holistic learning experience.

Course 1: Learning Rust

Learning Rust begins by introducing you to Rust's basic syntax and concepts, from writing a Hello World program to defining functions and creating variables. You'll learn to manage toolchains with Rustup and build your first command-line program. Moving forward, you'll delve into Rust's type system to enhance your coding skills and practice them in a simple markup language. You'll also employ Rust's functional programming features for a physics simulation and use the Rayon crate for parallel computations. Finally, you'll embrace best practices and learn to test your code by building a simple crate with a tested, usable, and well-documented API using Cargo and RustDoc. By course end, you'll be adept at creating various solutions in Rust and utilizing its robust type system and rich ecosystem of libraries, or "crates," via the Cargo package manager.

Key Learning Points

  • Introduction to Rust's basic syntax and concepts
  • Managing toolchains with Rustup
  • Building command-line programs
  • Exploring Rust's type system
  • Practicing Rust's functional programming features
  • Parallel computations with the Rayon crate
  • Testing and documenting code using Cargo and RustDoc

Course 2: Building Reusable Code with Rust

Building Reusable Code with Rust teaches you to develop reusable Rust code, eliminating the need for repetitive code. You'll craft adaptable code with advanced features such as traits, generics, and macros. Additionally, you'll engage with different forms of code reuse, including loops, map, filter, and fold, enabling high-level reuse without compromising runtime performance. The course also covers organizing your code into modules and crates, preparing you to publish them on crates.io. By course completion, you'll avoid code duplication and consistently create clean, reusable code.

Core Competencies

  • Developing adaptable code with traits, generics, and macros
  • Using loops, map, filter, and fold for code reuse
  • Organizing code into modules and crates
  • Publishing crates on crates.io
  • Writing clean, reusable Rust code

Who teaches Rust: Building Reusable Code with Rust from Scratch? Udemy

Udemy thumbnail

Udemy is the largest open marketplace for online courses on the internet. Founded in 2010 by Eren Bali, Oktay Caglar, and Gagan Biyani and headquartered in San Francisco, the company went public on the Nasdaq in 2021 under the ticker UDMY. The platform hosts well over two hundred thousand courses across software development, IT and cloud, data science, design, business, marketing, and creative skills, taught by tens of thousands of independent instructors. Roughly seventy million learners use it worldwide, and the corporate arm — Udemy Business — supplies a curated subset of that catalog to enterprise customers.

Because Udemy is a marketplace rather than a single editorial publisher, the catalog is uneven by design. The strongest material lives in the long-form, project-based courses authored by working engineers — full-stack JavaScript, React, Node.js, Python data science, AWS, Docker and Kubernetes, mobile development with Flutter and React Native, and cloud certification preparation. The CourseFlix listing under this source is the slice of that catalog that has been mirrored here for offline-friendly viewing, organized by topic and updated as new releases land. Pricing on Udemy itself swings dramatically with the site's near-permanent sales, which is why the platform is best treated as a deep reference catalog: pick instructors with strong reviews and a track record of updating their material rather than buying on the headline price alone.

What lessons are included in Rust: Building Reusable Code with Rust from Scratch?

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 68 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: The Course Overview
All Course Lessons (68)
#Lesson TitleDurationAccess
1
The Course Overview Demo
01:35
2
Bindings and Mutability
02:16
3
Built-In Types
12:01
4
Imports and Namespaces
07:25
5
The Standard Library
04:25
6
Recursive Fibonacci
05:15
7
Dynamic Fibonacci
07:24
8
Installing Rust with Rustup
02:18
9
Managing Toolchains with Rustup
02:30
10
Creating Projects with Cargo
08:16
11
Exploring the Crate Ecosystem
05:17
12
Rustdoc and the Documentation Ecosystem
04:37
13
Adding Dependencies with Cargo
14:02
14
Motivation for the Borrow Checker
03:54
15
Ownership, Borrowing, and RAII
06:28
16
Shared and Exclusive Access
12:27
17
Fighting with the Borrow Checker
02:11
18
Strings, Strs, Vecs, and Slices
03:27
19
Understanding Borrow Checker Errors
01:15
20
Structured Data
08:21
21
Enumerations
04:36
22
Match Expressions
10:57
23
Designing a Markup Language
04:38
24
Implementing the Markup Language
13:20
25
Introduction to Traits
02:06
26
Built-In Traits
03:01
27
Writing Your Own Traits
07:59
28
Generic Functions
05:41
29
Generic Types
02:03
30
Trait Objects and Dynamic Dispatch
04:14
31
Closures
06:09
32
Iterators
05:19
33
Map, Filter, and Fold
05:06
34
Building a Barycenter Finder
10:59
35
Parallelizing the Barycenter Finder
11:11
36
Breaking Up Code with Modules
03:48
37
Error Handling
03:01
38
API Design
02:35
39
Unit Testing
18:01
40
Integration Testing
06:49
41
Documentation
07:28
42
The Course Overview
03:16
43
Setting Up the Rust Development Environment
03:55
44
Exploring Code Reuse in Rust
03:16
45
Loops and Iterators
05:41
46
Using Functional Programming Loops
13:50
47
Functions in Rust
03:07
48
Exploring Generics
02:27
49
Use Generic Functions to Reuse Algorithms
03:50
50
Reuse Structures in Enums and Structs
02:31
51
Working with Generic in Struct Methods
03:44
52
Generics in the Rust Standard Library – Part I
03:46
53
Generics in the Rust Standard Library – Part II
05:49
54
Exploring Traits
03:13
55
Using Trait Bounds and Trait Objects to Communicate Interfaces
03:42
56
Associated Types versus Generics and Trait Inheritance
02:57
57
Exploring Traits, Generics, and Performance
03:31
58
Traits in the Rust Standard Library – Part I
07:43
59
Traits in the Rust Standard Library – Part II
06:25
60
Write Code with Code – Metaprogramming in Rust
02:29
61
Use Declarative Macros to Write Less Code
04:06
62
Using Procedural Macros for Custom Derive
04:44
63
Macros in the Rust Standard Library – Part I
04:56
64
Macros in the Rust Standard Library – Part II
05:40
65
Introducing Crates
05:06
66
Using Modules to Define the Structure of Crates
04:28
67
Using a Crate with Cargo.toml
06:07
68
Publishing to crates.io
02:48
Unlock unlimited learning

Get instant access to all 67 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

What courses are similar to Rust: Building Reusable Code with Rust from Scratch?

  • Ultimate Rust 2: Intermediate Concepts thumbnailUpdated 6mo ago

    Ultimate Rust 2: Intermediate Concepts

    By: Ardan Labs
    Master the Rust language: delve into variables, functions, and memory structure. For system developers looking to create safe and fast code.
    5h 1m
  • Rust Developer Bootcamp thumbnailClassic

    Rust Developer Bootcamp

    By: Let's Get Rusty
    Who is this Bootcamp for? Experienced Developers trying to switch to Rust. Learn the language of the future.
    9h 50m5/5
  • Ultimate Rust Foundations thumbnailUpdated 2y ago

    Ultimate Rust Foundations

    By: Ardan Labs
    Ultimate Rust: This course covers many best practices to help you integrate Rust into your workflow, and let Rust’s tooling work for you.
    17h 53m5/5
  • Crusty Interpreter thumbnailUpdated 4mo ago

    Crusty Interpreter

    By: David Beazley
    Study creating an interpreter in Rust using the book "Crafting Interpreters." This course is for experienced developers who wish to deepen their.
    33h 53m
  • Rust as a Service thumbnailUpdated 2y ago

    Rust as a Service

    By: Ardan Labs
    This course teaches integrating Rust into service-oriented architectures, covering REST server development, data handling, error management, and modularization.
    6h 13m5/5
  • Let’s Rust thumbnailUpdated 7mo ago

    Let’s Rust

    By: Pau Labarta Bajo
    Take the Let's Rust course and develop an ML service in Rust. Train the model, create a REST API for predictions, and deploy the service in Kubernetes.
    12h 40m
  • Rust for JavaScript Developers thumbnailUpdated 3y ago

    Rust for JavaScript Developers

    By: Sidhartha Chatterjee
    If you're a JavaScript developer like me, you might've been curious about Rust lately. A lot of modern JavaScript tooling (like Rome) is being re-written in Rus
  • Rust for Beginners thumbnailUpdated 9mo ago

    Rust for Beginners

    By: Zero To Mastery
    Want to try Rust but don't know where to start? This course will be your starting point.
    3h 18m5/5

More courses by Udemy

Frequently asked questions

What prerequisites are necessary before enrolling in this course?
This course is designed for beginners, so there are no specific prerequisites needed to start learning Rust. However, familiarity with basic programming concepts and experience in languages like C++ can be beneficial, as Rust is syntactically similar to C++ and covers topics such as variables, functions, and loops.
What will I build or achieve by the end of this course?
By the end of the course, you will have built a simple crate with a well-documented and tested API using Cargo and RustDoc. You will learn to write clean, reusable code, avoid duplication, and implement various coding patterns like map, filter, and fold to create efficient solutions in Rust.
Who is the target audience for this course?
The course is ideal for beginner to intermediate programmers interested in systems programming and those who want to learn about safe concurrency and memory safety. Developers looking to transition from languages like C++ to Rust will find the course particularly useful given Rust's focus on safety and performance.
How does the depth and scope of this course compare to other Rust courses?
This course takes a practical, hands-on approach, focusing on Rust's syntax, type system, and advanced concepts like ownership and borrowing. It covers both functional and imperative paradigms, offering comprehensive exposure to Rust's standard library and crate ecosystem. With 68 lessons, it provides a detailed exploration of code reuse and testing, making it suitable for those seeking a thorough understanding of Rust.
What platforms or tools will I use throughout this course?
Learners will use Cargo for project management and RustDoc for documentation. The course also covers Rustup for managing toolchains. These tools are fundamental to Rust development, and familiarity with them will be beneficial for managing Rust projects and dependencies effectively.
What topics are not covered in this course?
The course does not cover web development frameworks or GUI applications in Rust. It is focused on systems programming, code reuse, and creating command-line applications. Topics like advanced concurrency models beyond basic safe concurrency are not discussed in-depth.
How much time should I expect to commit to this course?
The course is divided into 68 lessons, each designed to provide a comprehensive understanding of Rust programming. While the exact runtime isn't specified, students should expect to allocate sufficient time for both video content and hands-on practice, possibly dedicating a few weeks for a thorough grasp of the material.