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.
Image for course subject

Schedule:

Continuously ongoing

Teaching time:

Self-paced

Location:

Online

Topic:

Information and communications technology

Form of learning:

Online

Provider:

Aalto University, FITech

Level:

Intermediate

Credits:

3 By Aalto University (ECTS)

Fee:

Free of charge

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:
Share
URL copied!

You might be interested in these

Fundamental courses

Image for course subject

Machine learning transforms our lives

Information and communications technology

Location:
Online
Level:
Beginner
Image for course subject

Informaatioteknologian perusteet

Information and communications technology

Location:
Espoo
Level:
Beginner
Image for course subject

Cybersecurity

Information and communications technology

Location:
Online
Level:
Beginner
Image for course subject

Introduction to web development and programming

Information and communications technology

Location:
Online
Level:
Beginner
Image for course subject

Introduction to digital transformation

Information and communications technology

Location:
Online
Level:
Beginner
Image for course subject

Digital ethics and sustainability

Information and communications technology

Location:
Online
Level:
Beginner

Intermediate courses

Image for course subject

Digital Platform Economy

Information and communications technology

Location:
Online
Level:
Intermediate
Image for course subject

Deep learning with Python

Information and communications technology

Location:
Online
Level:
Intermediate
Image for course subject

Tietokannat

Information and communications technology

Location:
Espoo
Level:
Intermediate
Image for course subject

Tietokoneverkot

Information and communications technology

Location:
Espoo
Online
Level:
Intermediate
Image for course subject

Tietoliikenteen siirtomenetelm├Ąt

Information and communications technology

Location:
Espoo
Level:
Intermediate
Image for course subject

Capstone: Information Systems Development

Information and communications technology

Location:
Espoo
Level:
Intermediate

Advanced courses

Image for course subject

Federated learning

Information and communications technology

Location:
Online
Level:
Advanced
Image for course subject

Speech Recognition

Information and communications technology

Location:
Espoo
Level:
Advanced
Image for course subject

Value network design for internet services

Information and communications technology

Location:
Espoo
Level:
Advanced
Image for course subject

SDN fundamentals & techniques

Information and communications technology

Location:
Espoo
Level:
Advanced
Image for course subject

Performance analysis

Information and communications technology

Location:
Espoo
Level:
Advanced
Image for course subject

Machine type communications for internet of things

Information and communications technology

Location:
Espoo
Level:
Advanced