Rust in 4 Hours
Published by Pearson
Learn to create, build and run Rust applications
November 19, 2021
3:00 p.m. - 7:00 p.m. Coordinated Universal Time
175 spots availableSign up for a free trial!
or sign in.
Registration closes November 18, 2021 11:00 p.m. Coordinated Universal Time
Rust is an absolutely beautiful language. It combines the efficiency, speed, and low-level power of C/C++ with the benefits of higher-level languages such as Java, Python, and C#. Rust has emerged in recent years as an incredibly important language for organizations large and small around the world, implementing all kinds of solutions including embedded systems, web applications, large-scale data analytics, and much more besides.
This course will help you get started with Rust. We'll see what Rust applications look like and explore what special features are available. It will also provide real-world programming examples throughout and give you an opportunity to create and build your first Rust application.
Andy Olsen, experienced trainer and author, provides working examples so you can follow along and get the experience you need. Andy will provide full source code and solutions online, plus bonus materials you can take away for additional exploration and added value.
What you’ll learn and how you can apply it
- Creating, building, and running Rust applications
- Organizing Rust code and application structure properly
- Managing memory safely and effectively
- Implementing concurrency
- Exploring additional Rust techniques
This live event is for you because…
- You're working in an organization that is using Rust to create safe and efficient solutions
- You're a systems developer using another language and you want to learn how Rust can make your job easier
- You've heard the buzz about Rust and you're excited to learn more
- Experience with C/C++ or a similar programming language such as Go, Java, C#, etc.
- If you would like to follow along with exercises in this training, you should install Rustup (Rust installer and version management tool); see https://www.rust-lang.org/tools/install
- Exercise files are available here, Please download before the class if you would like to follow along with the instructor, but this is not required: https://github.com/andyolsen/rust.git
- Watch: Intro to C++ Programming (from Paul Deitel’s C++ 20 Fundamentals LiveLessons) Lessons 1-4: https://learning.oreilly.com/videos/c-20-fundamentals/9780136875185/
The timeframes are only estimates and may vary according to how the class is progressing.
Segment 1: Getting Started with Rust (20 min)
- What is Rust?
- What can I do with Rust?
- What tools do I need for Rust?
- Example: Hello world in Rust
Segment 2: Rust Language Essentials (40 min)
- Types and variables
- Flow control, functions, and collections
- Modules and packages
- Using the Cargo dependency manager and build tool
- Example: Organizing, building, and running a Rust application
Break (5 min)
Segment 3: Object Orientation (40 min)
- Defining structures
- Implementing functionality
- Specifying traits
- Example: Implementing OO design patterns
Break (5 min)
Segment 4: Memory Management (40 min)
- What memory management problems does Rust solve?
- The stack, the heap, and ownership
- Referencing and borrowing
- Unsafe Rust
- Example: Memory management patterns
Break (5 min)
Segment 5: Concurrency (40 min)
- Overview of concurrency in Rust
- Creating threads
- Defining actors and passing messages
- Accessing shared data safely
- Example: Implementing a concurrent application
Break (5 min)
Segment 6: A Taster of Additional Rust Techniques (40 min)
- Working with embedded systems
- Performing data analysis
- Accessing a database
- Implementing a REST API
Course wrap-up and next steps
Andy is a freelance consultant, instructor, and developer with more than 30 years of experience in IT. Andy began his professional career as a C/C++ developer and morphed into Java, C#, and other languages as the years and decades passed by. Andy is actively involved in a wide range of technologies including full-stack development, cloud native applications, data science, and more. Andy is passionate about technology education and runs training courses around the world across diverse market sectors.