Глоссарий
Ниже приведён глоссарий, который даёт краткое определение многим терминам Rust. Для переводов он также связывает термин с английским оригиналом.
- выделение памяти: Динамическое выделение памяти в куче.
- массив: Коллекция фиксированного размера из элементов одного типа, хранящихся в памяти непрерывно. См. Массивы.
- ассоциированный тип: Тип, связанный с конкретным трейтом. Полезен для определения связи между типами.
- Bare-metal Rust: Низкоуровневая разработка на Rust, часто для систем без операционной системы. См. Bare-metal Rust.
- блок: См. Блоки и область видимости.
- заимствование: См. Заимствование.
- анализатор заимствований: Часть компилятора Rust, которая проверяет, что все заимствования корректны.
- фигурная скобка:
{и}. Также называются curly brace; они ограничивают блоки. - канал: Используется для безопасной передачи сообщений между потоками.
- конкурентность: Одновременное выполнение нескольких задач или процессов. См. Добро пожаловать в конкурентность в Rust.
- константа: Значение, которое не меняется во время выполнения программы. См. const.
- поток управления: Порядок, в котором выполняются отдельные инструкции программы. См. Основы управления потоком.
- аварийное завершение: Неожиданный и необработанный сбой или завершение программы. См. паника.
- перечисление: Тип данных, который хранит одно из нескольких именованных значений, возможно, с ассоциированным кортежем или структурой. См. enum.
- ошибка: Неожиданное условие или результат, отклоняющийся от ожидаемого поведения. См. Обработка ошибок.
- обработка ошибок: Процесс управления ошибками, возникающими во время выполнения программы, и реагирования на них.
- функция: Многократно используемый блок кода, который выполняет конкретную задачу. См. Функции.
- сборщик мусора: Механизм, который автоматически освобождает память, занятую объектами, которые больше не используются. См. Подходы к управлению памятью.
- обобщения: Возможность писать код с заполнителями вместо типов, что позволяет переиспользовать код с разными типами данных. См. Обобщения.
- неизменяемый: Не может быть изменён после создания. См. Переменные.
- интеграционный тест: Тип теста, который проверяет взаимодействие между различными частями или компонентами системы. См. Другие типы тестов.
- библиотека: Набор предкомпилированных процедур или кода, которые могут использоваться программами. См. Модули.
- макрос: Макросы Rust узнаются по
!в имени. Макросы используются, когда обычных функций недостаточно. Типичный пример —format!, который принимает переменное число аргументов, а функции Rust этого не поддерживают. - функция
main: Программы на Rust начинают выполняться с функцииmain. - match: Конструкция управления потоком в Rust, которая позволяет выполнять сопоставление с образцом над значением выражения.
- утечка памяти: Ситуация, когда программа не освобождает память, которая больше не нужна, из-за чего использование памяти постепенно растёт. См. Подходы к управлению памятью.
- метод: Функция, связанная с объектом или типом в Rust. См. Методы.
- модуль: Пространство имён, содержащее определения (функции, типы или трейты) для организации кода в Rust. См. Модули.
- перемещение: Передача владения значением от одной переменной к другой в Rust. См. Семантика перемещения.
- изменяемый: Свойство в Rust, которое позволяет переменным изменяться после объявления.
- владение: Понятие Rust, которое определяет, какая часть кода отвечает за управление памятью, связанной со значением. См. Владение.
- паника: Неустранимая ошибка в Rust, которая приводит к завершению программы. См. Паники.
- шаблон: Сочетание значений, литералов или структур, с которым можно сопоставить выражение в Rust. См. Сопоставление с образцом.
- полезная нагрузка: Данные или информация, которые переносятся сообщением, событием или структурой данных.
- получатель: Первый параметр метода в Rust, который представляет экземпляр, для которого вызван метод.
- ссылка: Невладеющий указатель на значение, которое заимствуется без передачи владения. Ссылки могут быть неизменяемыми (разделяемыми) или изменяемыми (эксклюзивными).
- подсчёт ссылок: Техника управления памятью, при которой отслеживается число ссылок на объект, и объект освобождается, когда счётчик достигает нуля. См. Rc.
- Rust: Системный язык программирования, в центре внимания которого безопасность, производительность и конкурентность. См. Что такое Rust?.
- безопасный: Относится к коду, который соблюдает правила владения и заимствования Rust и предотвращает ошибки, связанные с памятью. См. Небезопасный Rust.
- срез: Представление динамического размера над непрерывной последовательностью, например массивом или вектором. В отличие от массивов, размер срезов определяется во время выполнения. См. Срезы.
- область видимости: Участок программы, в котором переменная действительна и может использоваться. См. Блоки и области видимости.
- стандартная библиотека: Набор модулей, предоставляющих базовую функциональность Rust. См. Стандартная библиотека.
- static: Ключевое слово Rust для определения статических переменных или элементов с временем жизни
'static. См. static. - строка: Тип данных для хранения текста. См. Строки.
- структура: Составной тип данных в Rust, который объединяет переменные разных типов под одним именем. См. Структуры.
- тест: Функция, которая проверяет корректность другого кода. В Rust есть встроенное средство запуска тестов. См. Тестирование.
- поток: Отдельная последовательность выполнения в программе, которая позволяет выполнять код конкурентно. См. Потоки.
- потокобезопасность: Свойство программы, которое обеспечивает корректное поведение в многопоточной среде. См. Send и Sync.
- трейт: Набор методов, определённых для неизвестного типа, который даёт способ достичь полиморфизма в Rust. См. Трейты.
- ограничение трейта: Абстракция, с помощью которой можно требовать, чтобы типы реализовывали определённые трейты. См. Ограничения трейтов.
- кортеж: Составной тип данных, содержащий переменные разных типов. Поля кортежа не имеют имён и доступны по порядковым номерам. См. Кортежи.
- тип: Классификация, которая определяет, какие операции можно выполнять над значениями данного вида в Rust. См. Типы и значения.
- вывод типов: Способность компилятора Rust определить тип переменной или выражения. См. Вывод типов.
- неопределённое поведение: Действия или условия в Rust, у которых нет определённого результата, что часто приводит к непредсказуемому поведению программы. См. Небезопасный Rust.
- union: Тип данных, который может хранить значения разных типов, но только одно в каждый момент времени. См. Объединения.
- модульный тест: В Rust есть встроенная поддержка запуска небольших модульных тестов и более крупных интеграционных тестов. См. Модульные тесты.
- тип unit: Тип, который не хранит данных и записывается как кортеж без элементов. См. заметки для докладчика по функциям.
- небезопасный: Подмножество Rust, которое позволяет вызывать неопределённое поведение. См. Небезопасный Rust.
- переменная: Место в памяти, которое хранит данные. Переменные действительны в пределах области видимости. См. Переменные.