О курсе

Курс Rust Developer. Basic от Otus посвящён изучению языка Rust с акцентом на разработку безопасного и отказоустойчивого программного обеспечения. В программе рассматриваются основы синтаксиса, типы данных, управление ресурсами и принцип владения, а также работа с коллекциями, структурами и перечислениями.

Отдельные модули посвящены обобщённому программированию, статическому и динамическому полиморфизму, временам жизни и трейтам. Слушатели знакомятся с системой типов стандартной библиотеки, обработкой ошибок через Result и Option, а также с лямбда-функциями.

В разделе о многопоточности рассматриваются работа с кучей (Box, Arc, Rc), потоки, примитивы синхронизации Mutex и Atomic, а также концепция Interior mutability. Дополнительно изучаются сборка и модули, продвинутые элементы синтаксиса, макросы и асинхронное программирование с async/await и Event Loop.

Курс включает практические занятия и Q&A-сессии, а завершается проектной работой, в рамках которой эксперты разбирают кейсы студентов и дают обратную связь по домашним заданиям. Преподаватели — Сергей Потамошнев, ведущий разработчик с опытом промышленной разработки, и Артём Павлов, Rust-программист, создатель и мейнтейнер проекта RustCrypto.

Что рассматривается в программе

  • рассматривается синтаксис Rust: переменные, функции, ветвления, циклы
  • разбирается система владения, ссылки и заимствование
  • изучаются структуры, перечисления и pattern matching
  • рассматривается обобщённое программирование, трейты и времена жизни
  • разбирается работа с коллекциями, итераторами и Big O нотацией
  • изучаются многопоточность, Mutex, Atomic и Send + Sync
  • рассматриваются макросы и асинхронное программирование с async/await
  • практикуется сборка приложений и работа с модулями

Кому может быть полезен курс

  • тем, кто знаком с основами программирования и интересуется разработкой на Rust
  • начинающим разработчикам на системных языках C и C++, желающим познакомиться с Rust
  • разработчикам на высокоуровневых языках (Python, JavaScript, Java, C#), рассматривающим переход на Rust
  • специалистам, которым нужно ознакомиться с подходами к безопасной работе с памятью и многопоточности в Rust

Вопросы о программе

Какие темы включает программа курса?

Программа охватывает введение в Rust и архитектуру компьютера, синтаксис и основы Computer Science, систему типов, владение и заимствование, обобщённое программирование и полиморфизм, коллекции и итераторы, многопоточность, макросы и асинхронность.

Кто преподаватели курса?

Курс ведут Сергей Потамошнев, ведущий разработчик с опытом промышленной разработки, и Артём Павлов, Rust-программист, создатель и один из главных мейнтейнеров проекта RustCrypto.

Предусмотрена ли практическая работа?

Да, в программе есть практические занятия по темам, Q&A-сессии, а также проектная работа, в рамках которой эксперты разбирают кейсы студентов и дают обратную связь по домашним заданиям.

Для кого предназначен этот курс?

Курс ориентирован на тех, кто знаком с основами программирования и хочет изучать Rust, а также на начинающих разработчиков на C, C++ или высокоуровневых языках, интересующихся особенностями Rust.