Программирование на Rust

Санкт-Петербург, весна 2019

Описание

Курс знакомит слушателей с языком программирования Rust.

Для курса необходимо уметь программировать на любом другом языке, например Python. Особенно хорошо курс сочетается с курсом по C++.

Цель курса не просто научить программировать на Rust, а сделать акцент на его особенностях и отличиях от более традиционных языков, и увидеть знакомые задачи с другого ракурса.

Предварительная программа курса:

  1. Зачем нужны языки программирования без сборщика мусора?
  2. Дисциплина владения, линейные типы, RAII.

  3. Ссылки и времена жизни.

  4. Механика языка: встроенные типы, выражения, алгебраические типы данных, macro by example.

  5. Модули, библиотеки и модель компиляции.

  6. Стратегии обработки ошибок.

  7. Параметрический полиморфизм, трейты, статичекое и динамическое связывание.

  8. FFI и unsafe.

  9. Реализация коллекций и итераторов.

  10. Надёжное многопоточное программирование.

  11. Стратегии управления памятью.

  12. Процедурные макросы.

Полезные учебные материалы:

The Rust Programming Language -- книга/официальное руководство

Rust Reference -- спецификация языка

Programming Rust -- ещё одна хорошая книга для изучения языка, движется чуть быстрее чем TRPL.

Репозиторий с исходным кодом слайдов: https://github.com/matklad/rust-course

Преподаватели