Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Development Tools No-Code Development
Business
Entrepreneurship Communications Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certification Network & Security Hardware Operating Systems Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design Design Thinking 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition Yoga Mental Health Dieting Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Teacher Training Test Prep Other Teaching & Academics
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Cisco CCNA Amazon AWS CompTIA Security+ AWS Certified Developer - Associate
Graphic Design Photoshop Adobe Illustrator Drawing Digital Painting InDesign Character Design Canva Figure Drawing
Life Coach Training Neuro-Linguistic Programming Mindfulness Personal Development Personal Transformation Meditation Life Purpose Emotional Intelligence Neuroscience
Web Development JavaScript React CSS Angular PHP WordPress Node.Js Python
Google Flutter Android Development iOS Development Swift React Native Dart Programming Language Mobile Development Kotlin SwiftUI
Digital Marketing Google Ads (Adwords) Social Media Marketing Google Ads (AdWords) Certification Marketing Strategy Internet Marketing YouTube Marketing Email Marketing Retargeting
SQL Microsoft Power BI Tableau Business Analysis Business Intelligence MySQL Data Modeling Data Analysis Data Science
Business Fundamentals Entrepreneurship Fundamentals Business Strategy Online Business Business Plan Startup Blogging Freelancing Home Business
Unity Game Development Fundamentals Unreal Engine C# 3D Game Development C++ 2D Game Development Unreal Engine Blueprints Blender
30-Day Money-Back Guarantee
Development Programming Languages Rust Programming Language

Learn Rust by Building Real Applications

Fundamentals of the Rust Programming Language
Bestseller
Rating: 4.6 out of 54.6 (503 ratings)
2,896 students
Created by Lyubomir Gavadinov
Last updated 7/2020
English
English [Auto]
30-Day Money-Back Guarantee

What you'll learn

  • The fundamentals of the Rust Programming Language
  • Low level memory management
  • Rust’s unique approach to memory safety
  • How to troubleshoot common compiler errors
Curated for the Udemy for Business collection

Course content

4 sections • 61 lectures • 6h 31m total length

  • Preview02:05
  • Preview03:38
  • Installing Rust
    01:33
  • Setting Up the Development Environment
    01:35
  • Cargo
    06:37

  • Code for this section
    00:02
  • Preview00:24
  • The Stack
    03:42
  • The Heap
    04:40
  • Smart Pointers
    01:53
  • Explore the Memory Layout in GDB
    04:53
  • Memory Management
    4 questions

  • Code for this section
    00:02
  • Preview00:48
  • Basic Data Types
    02:29
  • Functions
    06:30
  • Macros
    05:43
  • Mutability
    03:22
  • The Standard Library
    05:14
  • Ownership
    08:36
  • References and Borrowing
    07:44
  • Explore the Ownership and Borrowing in GDB
    04:43
  • Finishing Touches
    07:08
  • Rust Basics
    5 questions

  • Code for this section
    00:02
  • Preview00:44
  • The HTTP Protocol and the Architecture of Our Server
    04:15
  • Structs
    10:50
  • Strings
    17:11
  • Enums
    11:15
  • The Option Enum
    04:09
  • Organising Our Code into Modules
    14:26
  • Listening for TCP Connections
    02:39
  • The Result Enum
    07:28
  • Loops
    02:34
  • Tuples
    03:20
  • The Match Expression
    10:21
  • Arrays
    10:07
  • Logging the Incoming Requests to the Console
    06:32
  • Traits and Type Conversions
    18:36
  • Custom Errors
    13:18
  • Advanced Error Handling
    08:42
  • Iterating Over Strings
    09:51
  • Converting an Option into a Result
    06:38
  • Parsing Values From Strings
    07:13
  • The "If Let" Expression
    07:14
  • Lifetimes - Part 1
    07:44
  • Lifetimes - Part 2
    19:29
  • Lifetimes
    3 questions
  • Silencing Compiler Warnings
    01:38
  • Representing the Query String Using a Hash Map - Part 1
    08:10
  • Representing the Query String Using a Hash Map - Part 2
    17:12
  • The Derive Attribute
    04:48
  • Modelling the HTTP Response
    03:41
  • Copy and Clone Types
    11:00
  • Writing Data to a TCP Stream
    13:24
  • Preview06:53
  • Custom Traits
    06:15
  • Implementing Getters
    02:59
  • Routing Incoming Requests
    03:00
  • Working with Environment Variables
    06:55
  • Serving HTML Files
    03:49
  • Serving Arbitrary Files Securely
    10:47
  • Final Quiz
    6 questions
  • Next Steps
    02:38

Requirements

  • Basic Computer Science Knowledge
  • Experience in at least one other programming language

Description

You have probably heard of the Rust Programming Language - a modern systems language that is blazingly fast, guarantees memory safety without the use of a garbage collector and most importantly is fun to write. It has a great community and excellent tooling. These are just some of the reasons why Rust was voted the most loved programming language for five years in a row. Rust is the proof that systems programmers can have nice things.

In this course you will learn the fundamentals of Rust. The format will be a bit different than most other courses. Instead of jumping between unrelated concepts in every video and showing examples that have nothing to do with the real world use of the language, we will learn entirely through practice.

Together we will build real Rust applications and introduce new concepts when we need them to solve actual problems.


To start there will be a short theoretical section on low level memory management.

Then to introduce the basics of Rust we will build a simple command line application. This will provide us with the necessary knowledge to tackle a much larger project.

For our big project we will build a working HTTP server from scratch. We will write our custom implementation of the HTTP protocol and we will build a functioning web server with it. This will let us introduce all of the fundamental and some advanced features of the Rust language.



Who this course is for:

  • Developers interested in a safe systems programming language

Instructor

Lyubomir Gavadinov
Senior Software Engineer
Lyubomir Gavadinov
  • 4.6 Instructor Rating
  • 506 Reviews
  • 2,896 Students
  • 1 Course

I'm a senior software engineer with over 7 years of experience working for a variety of companies.

For most of my career I was at Amazon and AWS where I got to work on various projects, from designing and building high scale distributed systems to optimising the performance of low level streaming protocols.

I have written plenty of C, Java and JavaScript in my days, but when I discovered Rust a couple of years ago I immediately fell in love with it.

Now I want to share my passion for Rust with you!

  • Udemy for Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Featured courses
Udemy
© 2021 Udemy, Inc.