Lifewide learning courses and programmes

Modern and emerging programming languages: Rust

This course teaches the basics of Rust, a high-level all-purpose programming language that provides low-level access for blazingly fast performance with special focus on memory safety and concurrency.

Schedule:

Continuously ongoing

Teaching time:

Self-paced

Topic:

Information and communications technology

Form of learning:

Online

Provider:

Aalto University, FITech

Level:

Intermediate

Credits:

3 By Aalto University (ECTS)

Fee:

€ 0.00

Application period:

No application needed

Target group and prerequisites

Basic programming skills, familiarity with working on the command line, and familiarity with using programming environments. Course is suitable for anyone interested in expanding their programming language toolkit or diving into a modern systems programming language.

Course description

Course contents

  • Tooling
  • Syntax and basic concepts
  • Ownership and borrowing
  • Control flow
  • Error handling
  • Data structures
  • Loops and iteration
  • User input
  • Command line applications
  • Modules and crates
  • Structs
  • Enums
  • Traits
  • Generics
  • Memory and lifetimes
  • Macros
  • Attributes
  • Testing

Learning outcomes

After successfully completing this course, the student

  • Understands the history of programming languages that offer low-level access to memory, including programming languages such as B, C, and C++.
  • Understands the problems that these programming languages solve well, and understands some problems that these programming languages do not solve so well.
  • Knows the key features of the Rust programming language and can contrast these features with those in some of the earlier programming languages with low-level memory access.
  • Knows the types of problems that Rust is designed to solve, and knows how to solve such problems with Rust.
  • Can design and implement basic programs with Rust, knows about Rust-specific working practices, knows about some of the advanced features in Rust, and can independently navigate Rust documentation.

Course material

The course uses open source software. Participants are expected to be comfortable with installing Rust specific software tools and using them on the command line. The materials, exercises and course completion information can all be found on the course page.

Completion methods

This course is completed by reading the course materials and completing the course exercises. The course is completed online on the FITech101 platform.

  • Updated: