Сложность
Сложность
Продвинутый
Тип обучения
Тип обучения
Курс
Формат обучения
Формат обучения
С проверкой домашнего задания
Трудоустройство
Трудоустройство
Содействие
Сертификат
Сертификат
Да

Стоимость курса

86 100 ₽
есть рассрочка

Углублённый курс по языку программирования Rust, в котором мы разберем:
- ключевые особенности Rust, понимание которых позволяет не только разрабатывать сложные программные продукты на этом языке, но и помогает лучше проектировать ПО в целом;
- наиболее популярные библиотеки и проекты, широко используемые на практике;
многопоточность и архитектуру программного обеспечения.

Курс будет интересен:
 Разработчикам на системных языках (С, C++, ...), которые хотят:

  • изучить Rust, его сильные и слабые стороны;
  • научиться избегать ошибки по работе с памятью и многопоточностью;
  • изучить проектирование высокопроизводительного ПО

Разработчикам на интепретируемых или высокоуровневых языках (Python, JS, Java, C#, ...), которые хотят:
- изучить язык, позволяющий делать критические по производительности секции вашего ПО максимально быстрыми;
- особенности работы с низкоуровневым ПО;
- подходы к разработке безопасного и отказоустойчивого ПО

Чему вы научитесь на курсе?
- использовать язык Rust для разработки ПО;
- разворачивать Rust и среду разработки;
- создавать надёжное, отказоустойчивое и высокопроизводительное ПО;
- тестировать код;
- использовать сторонние библиотеки;
- писать асинхронный код

Что вы получите после обучения

Приобретаемые навыки
1
Rust
2
Синтаксис
3
Макросы
4
Модули
5
Тесты
6
Библиотеки
7
Многопоточность
8
ThreadPool
10
Многозадачность
13
ФП
14
Фреймворк
15
GUI
16
GameDev
18
Frontend
Сертификат, ссылками на который можно делиться с другими людьми

Вас будут обучать

InfinitySwap, Lead Rust Developer

Заинтересовался программированием ещё в школе. Работает программистом более 5 лет. Увлекается компьютерной графикой и разработкой игр. Основной стэк: Rust, C++, Python. Есть опыт работы с С#, JS, PHP, MatLab.Проектировал и разрабатывал:- программное обеспечение для цифровой обработки сигналов;- файловую систему для последовательного хранения больших объёмов данных;- фреймворк для параллельной обработки данных на графическом процессоре;- Backend части распределённых систем сбора и обработки данных; Руководитель программы
С программированием познакомился в 14 лет и перепробовал множество языков, пока не нашел для себя Rust.Больше 4 лет пишет на Rust в Open-Source. Занимался разработкой игр, баз данных и блокчейнов,...
С программированием познакомился в 14 лет и перепробовал множество языков, пока не нашел для себя Rust.Больше 4 лет пишет на Rust в Open-Source. Занимался разработкой игр, баз данных и блокчейнов, работал Rust разработчиком в Pontem Technology Ltd.Активный участник русскоязычного Rust-сообщества, соорганизатор местных митапов в Санкт-Петербурге. Преподаватель курса "Язык программирования Rust" в СПбГУ. Преподаватель
Около 11 лет опыта коммерческой разработки.Прошлый стек C++/Objective-C/Go/Python/NodeJS/Java.Сейчас Rust Developer с опытом более 3х лет.
Около 11 лет опыта коммерческой разработки.Прошлый стек C++/Objective-C/Go/Python/NodeJS/Java.Сейчас Rust Developer с опытом более 3х лет.

Образовательная организация

Otus.ru - высокотехнологический стартап в области образования. Наша миссия - делать образование осмысленным, реализуя связь между работодателями, специалистами и преподавателями. Приходите к нам учиться!

OTUS сегодня – это более 80 авторских курсов для IT-специалистов из разных направлений таких как программирование, тестирование, инфраструктура, информационная безопасность, управление и Data Science. И что важно, у нас есть программы для разных уровней подготовки от новичков до профессионалов, которые хотят освоить продвинутые навыки.
Наша миссия — делать обучение осмысленным, реализуя взаимосвязь между ожиданиями работодателей, компетенциями специалистов и возможностями преподавателей.

Программа курса

Основные концепции Rust
Рассмотрим основные концепции и особенности языка программирования Rust. Установим основные инструменты, компилятор и среду разработки. Разберёмся в базовом и продвинутом синтаксисе Rust.

Тема 1: Основные концепции и особенности Rust

Тема 2: Основные элементы синтаксиса. Часть 1

Тема 3: Основные элементы синтаксиса. Часть 2

Тема 4: Владение и заимствование

Тема 5: Обобщённое программирование. Часть 1

Тема 6: Обобщённое программирование. Часть 2

Тема 7: Макросы

Тема 8: Дополнительные вопросы синтаксиса

Модули, крейты и тесты
Научимся разбивать проект на модули, писать тесты и примеры. Разберёмся с крейтами и пакетами. Воспользуемся сторонними крейтами.

Тема 1: Разбиение проекта на файлы и логические блоки. Тесты и примеры

Тема 2: Пакеты и крейты. Использование сторонних крейтов. Версии и features

Тема 3: Консультация по вопросам ДЗ (Q&A)

Стандартная библиотека
Научимся использовать стандартные перечисления и реализовывать стандартные трайты. Разберёмся с управлением памятью и структурами данных. Научимся читать и писать файл и общаться по сети.

Тема 1: Основные перечисления и типажи. Часть 1

Тема 2: Основные перечисления и типажи. Часть 2

Тема 3: Умные указатели и коллекции. Часть 1

Тема 4: Умные указатели и коллекции. Часть 2

Тема 5: Ввод и вывод

Тема 6: Работа с файлами и сетью

Тема 7: Пишем клиент-серверное приложение

Многопоточность
Познакомимся с проблемами многопоточного кода. Запустим выполнение задачи в отдельном системном потоке. Напишем свой ThreadPool. Создадим асинхронное клиент-серверное приложение. Организуем взаимодействие между процессами.

Тема 1: Проблемы многопоточного кода. Запуск параллельного потока

Тема 2: Контроль корректности многопоточного приложения на стадии компиляции

Тема 3: Пишем свой ThreadPool

Тема 4: Консультация по вопросам ДЗ (Q&A)

Тема 5: Типы многозадачности. Асинхронность

Тема 6: Асинхронность под капотом

Тема 7: Делаем клиент-серверное приложение асинхронным

Тема 8: Межпроцессное взаимодействие и синхронизация

Тема 9: Консультация по вопросам ДЗ (Q&A)

Архитектура
Научимся проектировать архитектуру Rust приложений. Рассмотрим элементы функционального и объектно-ориентированного программирования в Rust. Углубимся в обработку ошибок. Будем поддерживать инварианты и использовать паттерны.

Тема 1: Rust и ООП

Тема 2: Rust и ФП

Тема 3: Обработка ошибок

Тема 4: Инварианты

Тема 5: Паттерны

Фреймворки и библиотеки
Рассмотрим современную инфраструктуру Rust. Научимся логировать, отлаживать и профилировать приложение. Попробуем применить Rust в различных областях IT.

Тема 1: Популярные утилитарные библиотеки

Тема 2: Логирование, отладка и профилирование

Тема 3: Rust и Backend

Тема 4: Rust и GUI

Тема 5: Rust и GameDev

Тема 6: Rust и Frontend

Тема 7: Rust и Blockchain

Тема 8: Взаимодействие с другими языками

Проектная работа
Заключительный месяц курса посвящен проектной работе. Свой проект — это то, над чем интересно поработать слушателю. То, что можно создать на основе знаний, полученных на курсе. При этом не обязательно закончить его за месяц. В процессе написания по проекту можно получить консультации преподавателей.

Тема 1: Выбор темы и организация проектной работы

Тема 2: Консультация по проектам и домашним заданиям

Тема 3: Защита проектных работ

Тема 4: Подведение итогов курса

Рейтинг курса

4.8
рейтинг
1
0
0
0
0

Отзывы о курсе

1 отзыв
по рейтингу по дате
N
new-divos

Курс Rust Developer

Достоинства: Подробно рассмотрены вопросы параллельного и асинхронного программирования в Rust Недостатки: Некоторые темы рассмотрены весьма поверхностно. Курс не подходит для начинающих Курс оставил после себя достаточно благоприятные впечатления. Преподаватели хорошо разбираются в программировании на языке Rust. Очень хорошо показано взаимодействие по сети с использованием как синхронных,...

Может быть интересно

обновлено 21.02.2024 10:07
Rust Developer. Professional

Rust Developer. Professional

Оставить отзыв
Поделиться курсом с друзьями