Перейти к основному содержимому
eLearner.app

Интерактивный курс

Курс ржавчины

Изучите язык программирования Rust с нуля с помощью подробных объяснений, практических примеров и интерактивных упражнений: от переменных и примитивных типов до безопасного управления памятью с помощью владения, заимствования, структур и методов.

Статическая проверка по ключевым словам + исполнение на официалеRust Playground(один клик для копирования кода + открытия).

01 · Модуль 1 — Основы Rust

2 уроков

Основы языка: переменные, изменчивость, затенение, использование примитивных скалярных и составных типов.

  1. 1.1Переменные и изменчивостьПоймите неизменяемость по умолчанию, использование ключевого слова mut и возможности затенения в Rust.~10 min
  2. 1.2Примитивные типыПримитивные скалярные типы данных (числовые, логические, символьные) и составные типы (кортежи и массивы фиксированного размера).~10 min

02 · Модуль 2 — Поток управления

2 уроков

Принятие решений с помощью условных выражений, итераций в циклах и использования сопоставления с образцом языка.

  1. 2.1Условные выражения и циклыВетвление с помощью if/else (используется как выражение) и итерация с использованием конструкций цикла, while и for.~12 min
  2. 2.2Сопоставление с образцом, параметр и результатИспользование оператора match и стандартных перечислений Option и Result для безопасной обработки ошибок.~15 min

03 · Модуль 3 — Право собственности и заимствование

2 уроков

Сердце управления памятью в Rust: владение, стек против кучи, перемещение против копирования и безопасное использование ссылок.

  1. 3.1Правила владенияТри ключевых правила управления памятью без сборщика мусора: динамическое выделение, копирование и передача владения.~15 min
  2. 3.2Ссылки и заимствованиеЗаимствование данных через общие (&) и изменяемые (&mut) ссылки, а также предотвращение гонок за данными с помощью правил компилятора.~15 min

04 · Модуль 4 — Структуры данных и методы

2 уроков

Определите и организуйте сложные пользовательские типы данных с помощью структур и реализуйте их поведение с помощью блоков impl.

  1. 4.1Определение и создание экземпляров структурПользовательские структурированные типы данных в Rust: классические структуры, структуры кортежей и создание экземпляров.~12 min
  2. 4.2Методы и блоки реализацииСвяжите функции и методы со структурой, используя impl, и поймите различия между self, &self и &mut self.~12 min

05 · Модуль 5 — Обобщения и особенности

2 уроков

Разрабатывайте гибкий и многократно используемый код, используя универсальные типы, и определяйте общее поведение с помощью признаков.

  1. 5.1Дженерики и функцииСинтаксис общих типов в функциях и структурах данных, позволяющий избежать дублирования кода.~12 min
  2. 5.2Черты и границы чертОпределите общие интерфейсы с помощью Traits и ограничьте универсальные типы с помощью предложения Trait Bound.~15 min

06 · Модуль 6. Время жизни и интеллектуальные указатели

2 уроков

Управляйте временем жизни ссылок с помощью сроков жизни и анализируйте управление кучей памяти с помощью Box, Rc и Arc.

  1. 6.1Срок службы и ссылкиПоймите роль средства проверки заимствования и при необходимости укажите явные аннотации срока действия.~15 min
  2. 6.2Умные указатели: коробка и пультДинамическое распределение кучи с помощью Box и указатели множественного владения с подсчетом ссылок с помощью Rc и Arc.~15 min

07 · Модуль 7 — Обработка и сбор ошибок

2 уроков

Управляйте динамическими коллекциями, такими как HashMap, и обрабатывайте исключения/ошибки продвинутым и идиоматическим способом.

  1. 7.1Коллекции и HashMapИспользуйте и манипулируйте динамическими векторами (Vec) и словарями значений ключа (HashMap) для сбора данных.~12 min
  2. 7.2Обработка ошибок и ? ОператорРаспространяйте ошибки чисто и линейно, используя ? оператор и реализовывать собственные типы ошибок.~15 min