О курсе
Курс предназначен для программистов, знакомых с основами разработки, и направлен на изучение языка Rust. В рамках программы рассматриваются базовые концепции Computer Science и их реализация на Rust: типы данных, переменные, функции, ветвления, циклы, кортежи, структуры, перечисления. Отдельное внимание уделяется системе владения, ссылкам и заимствованию, что обеспечивает безопасность работы с памятью.
Второй блок посвящён обобщённому программированию, статическому и динамическому полиморфизму, временам жизни, работе с коллекциями и итераторами, а также оценке сложности алгоритмов. Третий блок охватывает многопоточность: создание потоков, синхронизацию через Mutex и Atomic, умные указатели Box, Arc, Rc, а также асинхронное программирование с async/await.
Курс включает практические занятия, Q&A сессии и проектную работу, в ходе которой студенты получают обратную связь от преподавателей. Преподаватели — Сергей Потамошнев, ведущий разработчик с опытом создания высоконагруженных систем, и Артём Павлов, создатель проекта RustCrypto, занимающийся разработкой баз данных и криптографических средств.
Что рассматривается в программе
- рассматривается работа с инструментарием Rust
- разбираются типы данных, переменные, функции, ветвления и циклы
- изучается система владения, ссылки и заимствование
- рассматриваются структуры, перечисления и pattern matching
- осваивается обобщённое программирование и полиморфизм
- изучаются коллекции, итераторы и оценка сложности алгоритмов
- рассматривается многопоточность и синхронизация
- разбираются макросы и асинхронное программирование
Кому может быть полезен курс
- тем, кто знаком с основами программирования и хочет освоить разработку на Rust
- начинающим разработчикам на C и C++, желающим изучить язык с гарантиями безопасности памяти
- разработчикам на высокоуровневых языках (Python, JS, Java, C#), стремящимся повысить производительность приложений
Вопросы о программе
Какие темы охватывает курс?
Курс охватывает синтаксис Rust, систему владения, типы данных, обобщённое программирование, полиморфизм, коллекции, многопоточность, макросы и асинхронное программирование.
Для кого предназначен курс?
Курс рассчитан на разработчиков с базовыми знаниями программирования, включая тех, кто работает с C/C++ или высокоуровневыми языками.
Кто преподаёт курс?
Преподаватели — Сергей Потамошнев, ведущий разработчик с опытом создания высоконагруженных систем, и Артём Павлов, создатель проекта RustCrypto.
Включает ли курс практические задания?
Да, в программе предусмотрены практические занятия, Q&A сессии и проектная работа с обратной связью от преподавателей.