Rust - продвинутый уровень
Курс Rust для продвинутых предоставляет все необходимые навыки для уверенного освоения языка.
Вас ждут практические задачи различного уровня сложности, охватывающих ключевые темы — от базового синтаксиса до работы с памятью, многопоточности и веб-разработки. Rust стремительно набирает популярность благодаря своей безопасности, скорости и выразительности, и уже активно используется такими компаниями, как Apple, Google, Microsoft, Mozilla и многими другими.
Чему вы научитесь
- Глубокое понимание Rust и его экосистемы.
- Портфолио из практических задач и проектов.
- Навыки, востребованные в системной и веб-разработке.
- Уверенность в написании безопасного, быстрого и современного кода.
О курсе
Курс построен по принципу «от простого к сложному». В первой части вы изучите основы языка: синтаксис, управление памятью, типы данных и модули. Далее вас ждёт погружение в продвинутые концепции Rust: владение памятью, многопоточность, асинхронность, обработка ошибок и работа с внешними библиотеками. В финале вы освоите веб-разработку, сетевое программирование и базы данных. В стоимость включена поддержка на протяжении всего курса, разбор задач, вопросов от учеников а также консультация и рецензирование итогового проекта. Вы можете задать любой вопрос по курсу или материалу t.me/mentorix_support
Для кого этот курс
начинающим разработчикам, желающим освоить Rust с нуля;
программистам на C/C++/Go, ищущим безопасную альтернативу;
backend-разработчикам, которым интересны высокопроизводительные веб-сервисы;
тем, кто хочет понять, как Rust работает «под капотом».
Начальные требования
Курс подойдет новичкам, но если у вас до этого не было опыта в программировании будет непросто. Желателен следующий стек навыков
Базовое понимание программирования (любые языки: Python, Java, C и т.д.).
Желание учиться и не бояться низкоуровневых тем.
Программа курса
Модулей: 7, уроков: 53. Задачи с кодом проверяются автоматически.
Введение в Rust и основы программирования
- История и философия Rust
- Установка Rust, настройка среды (rustup, Cargo, IDE)
- Работа с Cargo
- Первая программа: Hello, World!
- Основы синтаксиса: переменные, типы данных, константы
- Стандартный ввод (stdin)
- Управляющие конструкции: if, match, циклы (for, while, loop)
- Кортежи, массивы, срезы
- Функции
- Модули и организация кода
- Документирование кода
Работа с памятью, владение и заимствование
- Основы владения (ownership), правила владения
- Заимствование (borrowing), ссылки (immutable и mutable)
- Жизненный цикл переменных (lifetimes)
- Ссылки и слайсы
- Smart pointers: Box, Rc, Arc
- Interior mutability: RefCell, Cell
- Работа с коллекциями: Vector, HashMap, HashSet, String
- Работа с Option и Result
Структуры данных и ООП
- Структуры (struct), перечисления (enum), объединения (union)
- Generic programming
- Трейты (traits)
- Associated types и where-ограничения
- Базовые структуры данных
- Trait objects и динамическая диспетчеризация (dyn Trait)
Ошибки и обработка исключений
- Обработка ошибок с Result и Option
- Оператор ? и распространение ошибок
- Создание собственных типов ошибок (enum)
- Использование популярных библиотек: error-chain, thiserror, anyhow
- Panic и recover
- Паттерны обработки ошибок в реальных приложениях
- Pattern matching для ошибок
- Балансировка нагрузки
Работа с файлами, вводом/выводом и сериализацией
- Работа с файлами
- Потоки ввода/вывода: stdin, stdout, stderr
- Асинхронный ввод/вывод (async I/O)
- Сериализация и десериализация с помощью serde (JSON, TOML, YAML)
- Работа с форматами CSV, XML (через дополнительные крейты)
- Работа с конфигурационными файлами
Многопоточность и асинхронное программирование
- Основы многопоточности: thread::spawn, join
- Примитивы синхронизации: Mutex, RwLock, atomic типы
- Каналы и обмен сообщениями: mpsc, crossbeam
- Безопасность многопоточного кода: Send и Sync
- Асинхронное программирование: async/await, Future, Pin
- Runtime: tokio, async-std — устройство и отличия
- Асинхронные каналы (tokio mpsc, broadcast)
Веб-разработка и сетевое программирование
- Основные HTTP-методы: GET, POST, PUT, DELETE
- TCP и UDP соединения
- Создание REST API с actix-web, axum, rocket
- Middleware, обработка запросов и маршрутизация
- Аутентификация и авторизация (JWT, OAuth)
- Работа с WebSocket
- Клиенты HTTP: reqwest, hyper
Стоимость курса: 7990 ₽
Открыть курс на Mentorix · Все курсы