Системное программирование на Rust, сделанное правильно
Rust — это язык системного программирования, который гарантирует безопасность памяти без сборщика мусора. Это язык, используемый в частях ядра Linux, высокопроизводительных веб-серверах, WebAssembly рантаймах и встроенном ПО — везде, где важны как корректность, так и скорость. Этот курс охватывает Rust от первых принципов до продвинутого параллелизма, асинхронного ввода-вывода и низкоуровневой системной работы, полностью основываясь на модели владения языка.
Что вы будете изучать
Вы начнёте с системы типов Rust — переменных, типов данных, строк, срезов, векторов и HashMaps — затем перейдёте к механизмам, которые делают Rust уникальным: владению, заимствованию и временам жизни. После этого вы будете работать с функциями и замыканиями, итераторами, обобщениями и границами трейтов, а также продвинутым сопоставлением по образцу. Практические модули охватывают асинхронное программирование с Tokio, создание CLI-инструментов с clap, веб-сервисы с Axum, доступ к базам данных с sqlx, сериализацию с Serde, gRPC-сервисы с tonic и проектирование REST API. На продвинутых уровнях вы будете писать макросы, использовать unsafe Rust намеренно, вызывать внешний код через FFI, компилировать в WebAssembly и работать со встроенными системами.
Путь обучения
Тридцать девять курсов охватывают уровни от A1 до C2. Курсы A1 и A2 устанавливают синтаксис, основные структуры данных и управление потоком выполнения. B1 добавляет модули, Cargo, потоки и общее состояние. Уровень B2 — самый большой блок с четырнадцатью курсами, охватывающими экосистему асинхронности, реальные фреймворки и паттерны организации проектов. C1 углубляется в времена жизни, умные указатели, макросы, unsafe-код, WebAssembly, продвинутые веб-сервисы, GUI-приложение с egui и разработку игр с Bevy. Курс завершается на C2 с продвинутой системой типов — обобщениями, трейтами и ассоциированными типами — а также встроенным Rust и основами системного программирования.
Как это работает
Каждый курс разбит на короткие, сфокусированные уроки, которые вы выполняете в встроенном редакторе кода с мгновенной обратной связью. AI-репетитор доступен в любой момент, когда вы застряли, поэтому вы можете разбираться с ошибками владения и аннотациями времени жизни в собственном темпе, не покидая приложение.