Rust Developer. Basic

29 мая

Basic

5 месяцев

Онлайн

Вт/Чт 20:00 Мск

Для кого этот курс?

  • Для тех, кто знаком с основами программирования и хочет развиваться в разработке на Rust: разберётесь в синтаксисе Rust, получите ценный практический опыт

  • Для начинающих разработчиков на системных языках С и C++: познакомитесь с языком, который не уступает в производительности C и C++, а также гарантирует безопасность в работе с памятью

  • Для начинающих разработчиков на интерпретируемых или высокоуровневых языках (Python, JS, Java, C#): сможете увеличить производительность приложений

Что вам даст этот курс?

Rust используется в веб-разработке, в разработке системного ПО, мобильной разработке, разработке встраиваемых систем и даже в анализе данных. А ещё — в блокчейне и машинном обучении. На этом курсе вы изучите особенности работы с низкоуровневым ПО, подходы к разработке безопасного и отказоустойчивого ПО, а также основные библиотеки Rust.

Вы научитесь:
 
  • пользоваться инструментарием Rust

  • чинить, собирать и запускать приложения

  • реализовывать функции

  • работать с циклами, ветвлениями, кортежами, структурами и перечислениями

  • писать программы в процедурном стиле с использованием ссылок

  • работать со слайсами, строками и массивами

  • писать программы в объектном стиле

  • переиспользовать код и обобщать поведение с помощью шаблонов и трейтов

  • писать приложения с полиморфизмом

  • писать безопасный сложный многопоточный код

  • создавать декларативные макросы

  • использовать асинхронные вызовы для работы с сетью и файловой системой

  • читать и писать сложные Rust-приложения

Почему стоит освоить Rust?

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

Процесс обучения

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

И самое главное — сможете практиковаться.

Вебинары проводятся 2 раза в неделю по 2 ак. часа и сохраняются в записи в личном кабинете. Вы можете посмотреть их в любое удобное для вас время.

В ходе обучения вы будете выполнять домашние задания. Каждое из них посвящено одному из компонентов вашего выпускного проекта.

После выполнения всех домашних заданий вы получите готовый выпускной проект.

Совмещайте работу с учёбой


Занятия начинаются в 20:00, после окончания рабочего дня

Дополните портфолио


Личный проект на Rust станет вашим конкурентным преимуществом
 

Откройте новые возможности


Получите знания, которые помогут повысить ваш доход

Партнеры

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

  • Посещайте карьерные мероприятия OTUS: узнайте, как правильно составить резюме и пройти собеседование
  • Разместите резюме в базе OTUS: так наши партнёры смогут пригласить вас на интервью
Формат обучения

Интерактивные вебинары


2 занятия по 2 ак.часа в неделю. Доступ к записям и материалам остается навсегда

Обратная связь


Домашние задания с поддержкой и обратной связью наших преподавателей помогут освоить изучаемые технологии

Активное комьюнити


Чат в Telegram для общения преподавателей и студентов

Программа

Введение

Познакомимся с языком. Узнаем, как устроен курс. Поговорим о разработке ПО в целом.

Тема 1: Знакомство с Rust. Подготовка к обучению

Тема 2: Основы архитектуры компьютера

Синтаксис Rust и основы Computer Science

Разберёмся с базовыми концепциями разработки ПО. Рассмотрим и попрактикуемся в реализации этих концепций с использованием Rust.

Тема 1: Типы данных. Переменные и функции

Тема 2: Сложные типы данных. Кортеж, структура, перечисление

Тема 3: Ветвление и циклы

Тема 4: Практика: Типы данных. Переменные и функции. Ветвление и циклы

Тема 5: Управление ресурсами. Клонирование. Трейт Copy. Принцип владения

Тема 6: Владение. Ссылки и заимствование

Тема 7: Практика: Владение и заимствование

Тема 8: Коллекции. Слайсы, массивы, строки

Тема 9: Q&A сессия

Тема 10: Структуры и методы. Инкапсуляция

Тема 11: Перечисления и pattern matching

Тема 12: Практика: Структуры и методы. Перечисления и pattern matching

Тема 13: Введение в систему типов. Типы стандартной библиотеки: Result, Option, ()

Тема 14: Введение в лямбда-функции

Тема 15: Обрабока ошибок. Оператор ?. Обработчики Result, Option

Тема 16: Практика: работа с Result, Option

Типы, полиморфизм и дженерики

Познакомимся с утилитарными элементами стандартной библиотеки. Научимся работать со стандартными коллекциями и оценивать сложность алгоритмов. Научимся писать сложный полиморфный код и рассуждать о типах.

Тема 1: Обобщённое программирование. Статический полиморфизм

Тема 2: Q&A сессия

Тема 3: Времена жизни

Тема 4: Обобщённое программирование. Наследование

Тема 5: Обобщенное программирование. Динамический полиморфизм. dyn Trait. dyn Any

Тема 6: Практика: Обобщённое программирование

Тема 7: Коллекции. Big O нотация. Хэш-мэп и вектор

Тема 8: Коллекции. Итераторы.

Тема 9: Практика: коллекции и итераторы

Тема 10: Функции. Типы функций. Лямбда-функции

Тема 11: Q&A сессия

Многопоточность и дополнительные темы

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

Тема 1: Работа с кучей. Box, Arc, Rc. RAII

Тема 2: Потоки. Создание потоков. Send + Sync

Тема 3: Лямбды и потоки. Send + Sync. Использование move и Arc

Тема 4: Mutex, Atomic

Тема 5: Практика: потоки, куча, mutex, atomic

Тема 6: Interior mutability

Тема 7: Q&A сессия

Тема 8: Сборка. Модули

Тема 9: Продвинутые элементы синтаксиса

Тема 10: Макросы: декларативные и процедурные

Тема 11: Асинхронность. Понятие Event Loop, проблема 10k соединений. Использование async/await

Тема 12: Пример: разбор приложения на Rust

Тема 13: Q&A сессия

Проектная работа

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

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

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

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

Также вы можете получить полную программу, чтобы убедиться, что обучение вам подходит

Проектная работа


Каждый курс завершается финальным проектом, который предстоит защитить перед преподавателями и командой. Вам будет, что рассказать на собеседовании!

Вы можете выбрать одну из предложенных преподавателем тем или реализовать свою идею.

Ваша разработка дополнит портфолио, станет конкурентным преимуществом на собеседовании, поможет использовать полученные знания на практике

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

Руководитель курса

Денис Давыдов

Даниил Поляков

Сергей Потамошнев

Артём Павлов

Андрей Битюцкий

Эксперты-практики делятся опытом, разбирают кейсы студентов и дают развернутый фидбэк на домашние задания

Ближайшие мероприятия

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

Обработка ошибок. Оператор "?". Обработка Result и Option
Денис Давыдов
На вебинаре мы разберём, как Rust обрабатывает
ошибки и исключительные ситуации, сравним
его подход с другими языками
программирования и рассмотр...
...
23 апреля в 17:00
Открытый вебинар
Пишем нейросеть на Rust с нуля
Владимир Щерба
На вебинаре мы напишем простейшую
нейронную сеть, которая умеет распознавать
цифры по картинкам. Мы сделаем это на чистом
Rust с минимумом библиотек и...
...
6 мая в 17:00
Открытый вебинар
За что разработчики любят Rust
Андрей Битюцкий
На занятии мы разберёмся, почему разработчики
ПО переходят на Rust с других языков и не хотят
возвращаться. Определим место Rust среди
других языков, его ключевые о...
...
22 мая в 17:00
Открытый вебинар

Прошедшие
мероприятия

Денис Давыдов
Открытый вебинар
Умные указатели и interior mutability. Деструкторы
Владимир Щерба
Открытый вебинар
Как Rust обеспечивает безопасность по памяти не жертвуя скоростью
Оставьте заявку, чтобы получить доступ ко всем записям прошедших мероприятий. Записи всех мероприятий появятся в этом блоке

Корпоративное обучение для ваших сотрудников

OTUS помогает развивать высокотехнологичные команды. Почему нам удаётся это делать успешно:
  • Курсы OTUS верифицированы крупными игроками ИТ-рынка и предлагают инструменты и практики, актуальные на данный момент
  • Студенты работают в группах, могут получить консультации не только преподавателей, но и профессионального сообщества
  • OTUS проверяет знания студентов перед стартом обучения и после его завершения
  • Простой и удобный личный кабинет компании, в котором можно видеть статистику по обучению сотрудников
  • Сертификат нашего выпускника за 5 лет стал гарантом качества знаний в обществе
  • OTUS создал в IT более 120 курсов по 7 направлениям, линейка которых расширяется по 40-50 курсов в год

Подтверждение знаний и навыков

OTUS осуществляет лицензированную образовательную деятельность. В конце обучения вы получите сертификат OTUS о прохождении курса и удостоверение о повышении квалификации.

После обучения вы:

  • Получите материалы по пройденным занятиям (видеозаписи курса и дoполнительные материалы)
  • Создадите свой проект, который поможет при прохождении собеседований
  • Повысите свою ценность и конкурентоспособность как IT-специалист
  • Получите сертификат об окончании курса

Частые вопросы

Почему OTUS?
Мы обучаем IT-сотрудников уже 6 лет, через OTUS прошли 20 000 студентов. Специализируемся на программах для людей с опытом, а ещё – быстро переформатируем учебные программы под изменения в сфере информационных технологий.
Обязательно ли выполнять и защищать выпускной проект?
Для получения сертификата OTUS и УПК (удостоверение повышения квалификации государственного образца) необходимо сдать проект. Кроме того, проект необязательно защищать перед аудиторией, а можно сдать в чате с преподавателем. Для получения УПК также понадобится предъявить документ об образовании.
Обязательно ли выполнять все домашние задания?
Да, если хотите хорошо отточить навыки. На курсе будут практические домашние задания, их выполнение занимает примерно 2-3 часа.
Помогаете ли вы с трудоустройством после курса?
В Otus Club проводятся вебинары на тему трудоустройства, разбор резюме, прохождения собеседований, особенности реферальных программ при найме. Также обратим ваше внимание, что преподаватели курса занимают ведущие позиции в разных компаниях. Будьте активны, выполняйте домашние задания, стройте network с сокурсниками и преподавателями, и вам будет проще найти работу, расширив свои контакты.
Смогу ли я совмещать учебу с работой?
Да. Программа курса рассчитана на студентов, у которых мало времени. Лекции проводим дважды в неделю, домашние задания — не чаще 1 раза в неделю.
Что, если в середине курса я не смогу продолжать обучение?
Вы можете бесплатно перейти в другую группу. Но только один раз.
Я могу вернуть деньги?
Да, мы можем вернуть деньги за то время курса, которое вы ещё не успели отучиться. Например, если курс длится пять месяцев, а вы отучились один, мы вернём деньги за оставшиеся четыре месяца.
Может ли мой работодатель оплатить курс?
Да. Когда свяжетесь с нашим менеджером, уточните, что оплачивать курс будет ваш работодатель.
Остались вопросы?
Оставляйте заявку и задавайте вопросы менеджеру, команда курса с ним на связи и постарается дать вам исчерпывающую информацию.
Посещая наш сайт, вы принимаете политику использования cookie-файлов