Добро пожаловать! Эта книга обучает основным принципам работы с языком
программирования Rust. Rust — это системный язык программирования, внимание которого
сосредоточено на трёх задачах: безопасность, скорость и параллелизм. Он решает эти задачи
без сборщика мусора, что делает его полезным в ряде случаев, когда использование других
языков было бы нецелесообразно: при встраивании в другие языки, при написании программ с
особыми пространственными и временными требованиями, при написании низкоуровневого
кода, такого как драйверы устройств и операционные системы. Во время компиляции Rust
делает ряд проверок безопасности. За счёт этого не возникает накладных расходов во время
выполнения приложения и устраняются все гонки данных. Это даёт Rust преимущество над
другими языками программирования, имеющими аналогичную направленность. Rust также
направлен на достижение «абстракции с нулевой стоимостью». Хотя некоторые из этих
абстракций и ведут себя как в языках высокого уровня, но даже тогда Rust по-прежнему
обеспечивает точный контроль, как делал бы язык низкого уровня.
Author(s): Сообщество Rust Book ru
Year: 0
Language: Russian
Pages: 354
Полезные ссылки......Page 2
Введение......Page 4
C чего начать......Page 8
Изучение Rust......Page 20
Угадайка......Page 21
Обедающие философы......Page 40
Вызов кода на Rust из других языков......Page 53
Эффективное использование Rust......Page 60
Стек и куча......Page 61
Тестирование......Page 74
Условная компиляция......Page 84
Документация......Page 86
Итераторы......Page 96
Многозадачность......Page 103
Обработка ошибок......Page 110
Выбор гарантий......Page 138
Интерфейс внешних функций (foreign function interface)......Page 147
Типажи `Borrow` и `AsRef`......Page 158
Каналы сборок......Page 160
Синтаксис и семантика......Page 162
Связывание имён......Page 163
Функции......Page 166
Простые типы......Page 170
Комментарии......Page 176
Конструкция `if`......Page 177
Циклы......Page 179
Владение......Page 183
Ссылки и заимствование......Page 187
Время жизни......Page 195
Изменяемость (mutability)......Page 202
Структуры......Page 206
Перечисления......Page 211
Конструкция `match`......Page 213
Шаблоны сопоставления `match`......Page 215
Синтаксис методов......Page 221
Вектора......Page 227
Строки......Page 229
Обобщённое программирование......Page 233
Типажи......Page 236
Типаж `Drop` (сброс)......Page 245
Конструкция `if let`......Page 247
Типажи-объекты......Page 249
Замыкания......Page 255
Универсальный синтаксис вызова функций (universal function call syntax)......Page 264
Контейнеры (crates) и модули (modules)......Page 266
`const` и `static`......Page 276
Атрибуты......Page 278
Псевдонимы типов......Page 280
Приведение типов......Page 282
Ассоциированные типы......Page 284
Безразмерные типы......Page 287
Перегрузка операций......Page 289
Преобразования при разыменовании (deref coercions)......Page 292
Макросы......Page 295
Сырые указатели......Page 310
Небезопасный код......Page 313
Нестабильные возможности Rust......Page 316
Плагины к компилятору......Page 318
Встроенный ассемблерный код......Page 323
Без stdlib......Page 326
Внутренние средства (intrinsics)......Page 330
Элементы языка (lang items)......Page 331
Продвинутое руководстве по компоновке (advanced linking)......Page 334
Тесты производительности......Page 338
Синтаксис упаковки и шаблоны `match`......Page 341
Шаблоны `match` для срезов......Page 344
Ассоциированные константы......Page 345
Пользовательские менеджеры памяти......Page 347
Глоссарий......Page 351
Библиография......Page 353