Call : (+91) 968636 4243
Mail : info@EncartaLabs.com
EncartaLabs

Rust Programming

( Duration: 5 Days )

A modern Rust Programming language has the power of both native code as well as the safety of some managed languages.

By attending Rust Programming workshop, delegates will learn:

  • How to download and install Rust; how to compile programs and (optionally) work with an IDE.
  • About fundamental data types and how to use them to declare variables.
  • Understand arrays, vectors and strings, the concept of slices.
  • To create functions, methods, closures, higher-order functions.
  • Understand how to create various data structures such as structs and enums; also traits.
  • Master Rust's explicit take on the concept of lifetime with ownership, borrowing, lifetime specifiers, lifetime elision.
  • How to safely share data around your (possibly multithreaded) application with Rc, Arc and Mutex.
  • Use Rust's package management using Cargo.
  • About other useful topics: documentation, conditional compilation, testing.

  • Basic knowledge of computer science
  • A computer with a Rust-enabled IDE (VisualRust, intellij-rust, etc.)
  • Systems programmers
  • Experienced developers interested in Rust
  • C/C++ programmers

COURSE AGENDA

1

Introduction

  • Installing and Configuring Rust
  • Hello, Rust!
  • Introducing the Cargo Package Manager
  • Rust in IntelliJ IDEA
2

Types & Variables

  • Numbers on the Computer
  • Application Entrypoint
  • Core Data Types
  • Operators
  • Scope and Shadowing
  • Declaring and Using Constants
  • Stack and Heap
3

Control Flow

  • If Statement
  • While and Loop
  • For Loops
  • Match Statement
  • Combination Lock
4

Data Structures

  • Structs
  • Enumerations
  • Unions
  • Option(T) and if let/while let
  • Arrays
  • Slices
  • Tuples
  • Pattern Matching
  • Generics
5

Standard Collections

  • Overview
  • Vec(tor)
  • HashMap
  • HashSet
6

Characters and Strings

  • Strings
  • String Formatting (format!)
  • Number Guessing Game
7

Functions

  • Functions and Function Arguments
  • Methods
  • Closures
  • Higher-Order Functions
8

Traits

  • Traits
  • Trait Parameters
  • Into
  • Drop
  • Operator Overloading
  • Static Dispatch
  • Dynamic Dispatch
  • Why Dynamic Dispatch?
  • Vectors of Different Objects
9

Lifetime and Memory

  • Ownership
  • Borrowing
  • Lifetime
  • Lifetime in Structure Implementation
  • Reference-Counted Variables (Rc)
  • Atomic Reference-Counted Variables (Arc)
  • Using a Mutex for Thread-Safe Mutability
10

Circular References

11

Concurrency

  • Spawning and Joining Threads

Encarta Labs Advantage

  • One Stop Corporate Training Solution Providers for over 6,000 various courses on a variety of subjects
  • All courses are delivered by Industry Veterans
  • Get jumpstarted from newbie to production ready in a matter of few days
  • Trained more than 50,000 Corporate executives across the Globe
  • All our trainings are conducted in workshop mode with more focus on hands-on sessions

View our other course offerings by visiting https://www.encartalabs.com/course-catalogue-all.php

Contact us for delivering this course as a public/open-house workshop/online training for a group of 10+ candidates.

Top
Notice
X