Rust For Programmers - Coming From Another Language [2024]

Posted By: ELK1nG

Rust For Programmers - Coming From Another Language [2024]
Published 4/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 3.72 GB | Duration: 8h 46m

Rust Revealed: Unleashing Your Programming Potential in a modern, type safe and fast programming language.

What you'll learn

Learn the basic concepts of Rust

Understand the logic behind mutability and borrowing

Learn the most important features of the Standard Library

Apply modern object orientation

Understand the use of traits and generics

Requirements

Basic experience in a modern programming language (C, C++, Java etc.)

Description

Course description:You want to learn and master the modern and effective programming language Rust? you already have basic experience in another programming language (e.g. C/C++, C#, Java, Python etc.)? then my Rust course is just right for you!What is Rust?Rust was developed with the aim of being secure, concurrent and practical. Safety refers in particular to the avoidance of program errors that lead to memory access errors or buffer overflows and thus possibly also to security vulnerabilities. In contrast to other programming languages with automatic memory management, Rust does not use garbage collection for this purpose, but a special type system. Its type safety has been formally proven. (Source: Wikipedia)Key featuresNo race conditionsNo exceptionsNo memory leaksOfficial tools that are included:Build SystemPackage ManagerCompilerUnit TestingBenchmarkingDocumentation GeneratorIs Rust even important to learn?Rust has taken first place in the annual Stack Overflow survey of developers for six years in a row. The language is just as performant as C++, but at the same time more bug-proof and all the tools a developer needs are included. Even parts of the Linux kernel are already written in Rust!This course consists of the following topics:Installing the toolsVariables and consoleBasics of featuresMemory managementGeneric programmingData structuresLibraries and toolingThreads and channelsObject orientationFurther topicsSmall programming projects after the chaptersBecome a professional today, in the technology of tomorrow! See you on the course!

Overview

Section 1: Introduction to the course

Lecture 1 Introduction to the course

Lecture 2 Windows: Compiler Installation - Part 1

Lecture 3 Windows: Compiler Installation - Part 2

Lecture 4 Linux: Compiler Installation - Part 1

Lecture 5 Linux: Compiler Installation - Part 2

Lecture 6 Mac: Compiler Installation - Part 1

Lecture 7 Mac: Compiler Installation - Part 2

Lecture 8 Course manual

Lecture 9 Course materials

Lecture 10 Set up Visual Studio Code

Lecture 11 Hello World Example

Lecture 12 Hello World - Run und Debug

Section 2: Chapter 2: Variables and Console IO

Lecture 13 Print and Formatting

Lecture 14 Mutable and Immutable

Lecture 15 Primitive data types

Lecture 16 Const

Lecture 17 Shadowing

Lecture 18 Console input

Section 3: Chapter 3-1: Compound Types

Lecture 19 Tuples

Lecture 20 Arrays

Lecture 21 Array Slices

Lecture 22 Strings

Section 4: Chapter 3 - 2: Functions and Control Flow

Lecture 23 Functions

Lecture 24 If-Else

Lecture 25 Loops

Lecture 26 Enum - Part 1

Lecture 27 Enum Match

Lecture 28 Matches

Lecture 29 Enum - Part 2

Lecture 30 Option Enum

Lecture 31 If Let

Lecture 32 Nested Option Match

Lecture 33 While Let

Section 5: Chapter 3 - 3: More basics

Lecture 34 String slices

Lecture 35 Structs

Lecture 36 Struct Methods

Lecture 37 Associated Functions

Lecture 38 More about Structs

Lecture 39 Closures

Lecture 40 Function Pointer

Section 6: Project 1: Guessing Game

Lecture 41 Guessing Game - Part 1

Lecture 42 Guessing Game - Part 1

Section 7: Chapter 4: Memory management

Lecture 43 Casting

Lecture 44 Ownership

Lecture 45 Borrowing Rules

Lecture 46 Are we always Moving?

Lecture 47 Borrowing Scope

Lecture 48 RAII and Box Pointer

Lecture 49 Rc (Reference Count) Pointer

Lecture 50 Lifetime

Section 8: Chapter 5 - 1: Error Handling

Lecture 51 Panic

Lecture 52 Result Enum

Lecture 53 Unwrap and Expect

Lecture 54 Propagating Errors

Lecture 55 The ? Operator

Section 9: Project 2: File Parser

Lecture 56 File Parser - Part 1

Lecture 57 File Parser - Part 2

Lecture 58 File Parser - Part 3

Section 10: Chapter 5 - 2: Generics

Lecture 59 Generic Structs

Lecture 60 Generic Methods and Traits

Lecture 61 Bounding our Generic Struct

Lecture 62 Traits to Extend Types

Lecture 63 Useful Derived Traits

Section 11: Project 3: Comparison Traits

Lecture 64 Comparison Traits

Section 12: Chapter 6: Data structures

Lecture 65 Vector

Lecture 66 HashMap

Lecture 67 HashSet

Lecture 68 Iterator - Part 1

Lecture 69 Iterator - Part 2

Lecture 70 IntoIterator and Iterator Trait

Lecture 71 Iterator on Ranges

Section 13: Project 4: Computations

Lecture 72 Computations

Section 14: Chapter 7 - 1: Crates and Modules

Lecture 73 Library

Lecture 74 Modules - Part 1

Lecture 75 Modules - Part 2

Lecture 76 Modules - Part 3

Lecture 77 Absolute vs. Relative Paths

Section 15: Project 5: Iterator Module

Lecture 78 Iterator

Section 16: Chapter 7 - 2: Tooling

Lecture 79 Unit Test

Lecture 80 Code Coverage

Lecture 81 HTML Documentation

Lecture 82 Linter: Clippy

Lecture 83 Compile Options and Profiles

Lecture 84 Benchmarking

Lecture 85 Edition

Section 17: Project 6: Iterator Tests

Lecture 86 Iterator

Section 18: Chapter 8: Threads and Channels

Lecture 87 Thread

Lecture 88 Channel - Part 1

Lecture 89 Channel (mpsc) - Part 2

Lecture 90 Mutex

Section 19: Project 7: Parallel Primes

Lecture 91 Implement Parallel Primes

Lecture 92 Time and Optimize

Section 20: Chapter 9: Object orientation

Lecture 93 OOP in Rust?

Lecture 94 Polymorphism - Part 1

Lecture 95 Polymorphism - Part 2

Lecture 96 Polymorphism - Part 3

Lecture 97 Operator Overload

Lecture 98 Super Trait

Section 21: Project 8: Tensor1D

Lecture 99 Tensor1D - Part 1

Lecture 100 Tensor1D - Part 2

Section 22: Chapter 10: Further details

Lecture 101 Custom error type

Lecture 102 Deref Trait

Lecture 103 Closure Traits

Section 23: Project 9: GUI

Lecture 104 Intro

Lecture 105 GUI

Section 24: Chapter 11: Completion of the course

Lecture 106 Conclusion of the course

Lecture 107 Bonus Lecture

Everyone who wants to learn Rust :)