1
0
mirror of https://github.com/google/comprehensive-rust.git synced 2024-11-28 18:11:07 +02:00

ru: Translation for the welcome page and chapters 1,2 (#724)

Translate the welcome page and chapters 1,2
This commit is contained in:
Yauheni Baltukha 2023-06-13 15:50:55 +02:00 committed by GitHub
parent cf0ce5c0b2
commit 078a99885d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

297
po/ru.po
View File

@ -2,7 +2,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Comprehensive Rust 🦀\n"
"POT-Creation-Date: \n"
"PO-Revision-Date: 2023-05-25 22:44+0200\n"
"PO-Revision-Date: 2023-06-08 23:41+0200\n"
"Last-Translator: Yauheni Baltukha <evgenii.boltuho@gmail.com>\n"
"Language-Team: \n"
"Language: ru\n"
@ -14,39 +14,39 @@ msgstr ""
#: src/SUMMARY.md:3
msgid "Welcome to Comprehensive Rust 🦀"
msgstr ""
msgstr "Добро пожаловать в Comprehensive Rust 🦀"
#: src/SUMMARY.md:4
msgid "Running the Course"
msgstr ""
msgstr "Проведение курса"
#: src/SUMMARY.md:5
msgid "Course Structure"
msgstr ""
msgstr "Структура курса"
#: src/SUMMARY.md:6
msgid "Keyboard Shortcuts"
msgstr ""
msgstr "Горячие клавиши"
#: src/SUMMARY.md:7
msgid "Translations"
msgstr ""
msgstr "Переводы"
#: src/SUMMARY.md:8
msgid "Using Cargo"
msgstr ""
msgstr "Использование Cargo"
#: src/SUMMARY.md:9
msgid "Rust Ecosystem"
msgstr ""
msgstr "Экосистема Rust"
#: src/SUMMARY.md:10
msgid "Code Samples"
msgstr ""
msgstr "Примеры кода"
#: src/SUMMARY.md:11
msgid "Running Cargo Locally"
msgstr ""
msgstr "Локальный запуск Cargo"
#: src/SUMMARY.md:14
msgid "Day 1: Morning"
@ -993,7 +993,7 @@ msgstr ""
#: src/welcome.md:1
msgid "# Welcome to Comprehensive Rust 🦀"
msgstr ""
msgstr "# Добро пожаловать в Comprehensive Rust 🦀"
#: src/welcome.md:3
msgid "[![Build workflow](https://img.shields.io/github/actions/workflow/status/google/comprehensive-rust/build.yml?style=flat-square)](https://github.com/google/comprehensive-rust/actions/workflows/build.yml?query=branch%3Amain)"
@ -1033,12 +1033,17 @@ msgid ""
"the full spectrum of Rust, from basic syntax to advanced topics like generics\n"
"and error handling. It also includes Android-specific content on the last day."
msgstr ""
"Это трехдневный курс по языку Rust, разработанный командой Android. Курс\n"
"охватывает весь спектр Rust, от базового синтаксиса до сложных тем, таких как обобщения (generics)\n"
"и обработка ошибок. Последний день курса также охватывает особенности программирования под Android."
#: src/welcome.md:11
msgid ""
"The goal of the course is to teach you Rust. We assume you don't know anything\n"
"about Rust and hope to:"
msgstr ""
"Цель курса --- научить вас языку Rust. Мы предполагаем, что вы ничего не знаете\n"
"о Rust и надеемся:"
#: src/welcome.md:14
msgid ""
@ -1046,12 +1051,17 @@ msgid ""
"* Enable you to modify existing programs and write new programs in Rust.\n"
"* Show you common Rust idioms."
msgstr ""
"* Дать полное представление о синтаксисе и семантике Rust.\n"
"* Научить работать с существующим кодом и писать новые программы на Rust.\n"
"* Показать распространённые идиомы языка Rust."
#: src/welcome.md:18
msgid ""
"The first three days show you the fundamentals of Rust. Following this, you're\n"
"invited to dive into one or more specialized topics:"
msgstr ""
"Первые три дня познакомят вас с основами Rust. После этого вам \n"
"предлагается углубиться в одну или несколько специализированных тем:"
#: src/welcome.md:21
msgid ""
@ -1065,16 +1075,27 @@ msgid ""
" mutexes) and async/await concurrency (cooperative multitasking using\n"
" futures)."
msgstr ""
"* [Android](android.md): рассчитанный на полдня курс по использованию Rust для разработки на\n"
"платформе Android (AOSP).\n"
"Сюда входит взаимодействие с C, C++ и Java.\n"
"* [Bare-metal](bare-metal.md): однодневное занятие по использованию Rust для низкоуровневой\n"
"(embedded) разработки, охватывающее как микроконтроллеры, так и обычные процессоры.\n"
"* [Concurrency](concurrency.md): полный день занятий по изучению конкуретности в Rust.\n"
"Мы рассмотрим как классическую конкурентность\n"
"(вытесняющая многозадачность с использованием потоков и мьютексов),\n"
"так и async/await конкурентность (кооперативная многозадачность с использованием футур)."
#: src/welcome.md:32
msgid "## Non-Goals"
msgstr ""
msgstr "## За рамками курса"
#: src/welcome.md:34
msgid ""
"Rust is a large language and we won't be able to cover all of it in a few days.\n"
"Some non-goals of this course are:"
msgstr ""
"Rust --- это объёмный язык, и мы не сможем охватить его целиком за несколько дней.\n"
"Темы, выходящие за рамки курса:"
#: src/welcome.md:37
msgid ""
@ -1082,10 +1103,13 @@ msgid ""
" Book](https://doc.rust-lang.org/book/ch19-06-macros.html) and [Rust by\n"
" Example](https://doc.rust-lang.org/rust-by-example/macros.html) instead."
msgstr ""
"* Написание макросов, см. [Глава 19.5 в The Rust\n"
" Book](https://doc.rust-lang.org/book/ch19-06-macros.html) и [Rust by\n"
" Example](https://doc.rust-lang.org/rust-by-example/macros.html)."
#: src/welcome.md:41
msgid "## Assumptions"
msgstr ""
msgstr "## Предположения"
#: src/welcome.md:43
msgid ""
@ -1093,12 +1117,17 @@ msgid ""
"typed language and we will sometimes make comparisons with C and C++ to better\n"
"explain or contrast the Rust approach."
msgstr ""
"Предполагается, что вы уже умеете программировать. Rust --- это\n"
"статически типизированный язык, и иногда мы будем сравнивать и сопоставлять его с C и C++, чтобы\n"
"лучше объяснить или подчеркнуть разницу в подходах к написанию кода на Rust."
#: src/welcome.md:47
msgid ""
"If you know how to program in a dynamically typed language such as Python or\n"
"JavaScript, then you will be able to follow along just fine too."
msgstr ""
"Если вы знаете, как программировать на языке с динамической типизацией,\n"
"таком как Python или JavaScript, вы сможете успешно пройти этот курс."
#: src/welcome.md:50 src/cargo/rust-ecosystem.md:19
#: src/cargo/code-samples.md:22 src/cargo/running-locally.md:68
@ -1204,6 +1233,9 @@ msgid ""
"information to the slides. This could be key points which the instructor should\n"
"cover as well as answers to typical questions which come up in class."
msgstr ""
"Это пример _заметок для преподавателя_. Мы будем использовать их для добавления\n"
"дополнительной информации к слайдам. Это могут быть ключевые моменты, которые преподаватель\n"
"должен осветить, а также ответы на типичные вопросы, которые возникают в ходе прохождения курса."
#: src/welcome.md:56 src/cargo/rust-ecosystem.md:67
#: src/cargo/code-samples.md:35 src/cargo/running-locally.md:74
@ -1306,21 +1338,21 @@ msgstr ""
#: src/running-the-course.md:1
msgid "# Running the Course"
msgstr ""
msgstr "# Проведение курса"
#: src/running-the-course.md:3 src/running-the-course/course-structure.md:3
msgid "> This page is for the course instructor."
msgstr ""
msgstr "> Эта страница предназначена для преподавателя курса."
#: src/running-the-course.md:5
msgid ""
"Here is a bit of background information about how we've been running the course\n"
"internally at Google."
msgstr ""
msgstr "Вот краткая справочная информация о том, как мы проводили курс внутри компании Google."
#: src/running-the-course.md:8
msgid "Before you run the course, you will want to:"
msgstr ""
msgstr "Перед проведением курса желательно:"
#: src/running-the-course.md:10
msgid ""
@ -1357,12 +1389,36 @@ msgid ""
" and offer a solution, e.g., by showing people where to find the relevant\n"
" information in the standard library."
msgstr ""
"1. Ознакомиться с материалами курса. Мы добавили заметки для преподавателя на некоторых страницах,\n"
"чтобы выделить ключевые моменты (пожалуйста, помогайте нам, добавляя свои заметки для преподавателей!).\n"
"Убедитесь в том, что открыли заметки для преподавателя во всплывающем окне (нажмите на ссылку с маленькой стрелкой рядом\n"
"с ”Заметки для преподавателя”). У вас откроется отдельное окно с заметками для преподавателя,\n"
"в то время как основное окно вы можете демонстрировать классу.\n"
"\n"
"1. Определиться с датами. Поскольку курс требует как минимум три дня, мы рекомендуем вам запланировать три дня в течение двух недель.\n"
"По нашему опыту, участники курса считают полезным наличие перерывов, так как это помогает им лучше осмыслить информацию.\n"
"\n"
"1. Найти помещение, достаточно просторное для очного участия.\n"
"Мы рекомендуем, чтобы в классе было 15-20 человек.\n"
"Это достаточно немного для того, чтобы людям было комфортно задавать вопросы,\n"
"а у преподавателя осталось время на то, чтобы на них отвечать.\n"
"\n"
"1. В день занятия приходите в комнату немного раньше, чтобы всё подготовить.\n"
"Мы рекомендуем показывать слайды используя `mdbook serve`, запущенного на вашем ноутбуке (см. [installation instructions][3]).\n"
"Это обеспечивает оптимальную производительность без задержек при смене страниц.\n"
"Использование ноутбука также позволит вам исправлять опечатки по мере их обнаружения вами или участниками курса.\n"
"\n"
"1. Позвольте участникам решать упражнения самостоятельно или в небольших группах.\n"
"Обычно мы уделяем упражнениям по 30-45 минут утром и во второй половине дня (включая время на разбор решений).\n"
"Обязательно спросите, не испытывают ли они трудности и есть ли что-нибудь, с чем вы можете помочь.\n"
"Когда вы видите, что у нескольких человек одна и та же проблема, сообщите об этом классу и предложите решение,\n"
"например, показав, где найти соответствующую информацию в стандартной библиотеке."
#: src/running-the-course.md:43
msgid ""
"That is all, good luck running the course! We hope it will be as much fun for\n"
"you as it has been for us!"
msgstr ""
msgstr "На этом всё, удачи в прохождении курса! Мы надеемся, что вам будет так же весело, как и нам!"
#: src/running-the-course.md:46
msgid ""
@ -1370,14 +1426,18 @@ msgid ""
"course. We would love to hear what worked well for you and what can be made\n"
"better. Your students are also very welcome to [send us feedback][2]!"
msgstr ""
"Пожалуйста, [оставьте отзыв][1],\n"
"чтобы мы могли продолжать совершенствовать курс.\n"
"Мы хотели бы услышать, что было хорошо и что можно сделать лучше.\n"
"Ваши студенты также могут [присылать нам свои отзывы][2]!"
#: src/running-the-course/course-structure.md:1
msgid "# Course Structure"
msgstr ""
msgstr "# Структура курса"
#: src/running-the-course/course-structure.md:5
msgid "The course is fast paced and covers a lot of ground:"
msgstr ""
msgstr "Курс проходит в быстром темпе и охватывает много вопросов:"
#: src/running-the-course/course-structure.md:7
msgid ""
@ -1385,16 +1445,21 @@ msgid ""
"* Day 2: Compound data types, pattern matching, the standard library.\n"
"* Day 3: Traits and generics, error handling, testing, unsafe Rust."
msgstr ""
"* День 1: Базовый Rust, владение и анализатор заимствований.\n"
"* День 2: Составные типы данных, сопоставление с образцом, стандартная библиотека.\n"
"* День 3: Трейты и обобщения, обработка ошибок, тестирование, небезопасный Rust."
#: src/running-the-course/course-structure.md:11
msgid "## Deep Dives"
msgstr ""
msgstr "## Глубокое погружение"
#: src/running-the-course/course-structure.md:13
msgid ""
"In addition to the 3-day class on Rust Fundamentals, we cover some more\n"
"specialized topics:"
msgstr ""
"В дополнение к 3-дневному курсу по основам Rust,\n"
"мы рассмотрим ещё несколько специализированных тем:"
#: src/running-the-course/course-structure.md:16
msgid "### Android"
@ -1406,6 +1471,8 @@ msgid ""
"Android platform development. This includes interoperability with C, C++, and\n"
"Java."
msgstr ""
"[Android Deep Dive](../android.md) --- это полудневный курс по использованию Rust\n"
"для разработки на платформе Android. Сюда входит взаимодействие с C, C++ и Java."
#: src/running-the-course/course-structure.md:22
msgid ""
@ -1414,6 +1481,10 @@ msgid ""
"the root of your AOSP checkout. This will ensure that the Android build system\n"
"sees the `Android.bp` files in `src/android/`."
msgstr ""
"Вам потребуется [AOSP][1]. Загрузите [репозиторий курса][2]\n"
"на тот же компьютер, что и курс и переместите каталог `src/android/` в\n"
"корневой каталог вашего AOSP.\n"
"Это гарантирует, что система сборки Android увидит файлы `Android.bp` в `src/android/`."
#: src/running-the-course/course-structure.md:27
msgid ""
@ -1421,6 +1492,10 @@ msgid ""
"Android examples using `src/android/build_all.sh`. Read the script to see the\n"
"commands it runs and make sure they work when you run them by hand."
msgstr ""
"Убедитесь, что `adb sync` работает с вашим эмулятором или реальным устройством,\n"
"и предварительно соберите все примеры Android, используя `src/android/build_all.sh`.\n"
"Прочтите скрипт, чтобы увидеть команды, которые он запускает,\n"
"и убедитесь, что они работают, когда вы запускаете их вручную."
#: src/running-the-course/course-structure.md:34
msgid "### Bare-Metal"
@ -1432,6 +1507,8 @@ msgid ""
"bare-metal (embedded) development. Both microcontrollers and application\n"
"processors are covered."
msgstr ""
"[Bare-Metal Deep Dive](../bare-metal.md): занятие на полный день по использованию Rust для\n"
"низкоуровневой (embedded) разработки. Рассматриваются как микроконтроллеры, так и прикладные процессоры."
#: src/running-the-course/course-structure.md:40
msgid ""
@ -1440,16 +1517,20 @@ msgid ""
"will need to install a number of packages as described on the [welcome\n"
"page](../bare-metal.md)."
msgstr ""
"Что касается части микроконтроллеров, то вам нужно будет заранее приобрести плату разработки [BBC\n"
"micro:bit](https://microbit.org/) v2. Всем нужно будет установить несколько пакетов, как описано на [странице приветствия](../bare-metal.md)."
#: src/running-the-course/course-structure.md:45
msgid "### Concurrency"
msgstr ""
msgstr "### Конкурентность"
#: src/running-the-course/course-structure.md:47
msgid ""
"The [Concurrency Deep Dive](../concurrency.md) is a full day class on classical\n"
"as well as `async`/`await` concurrency."
msgstr ""
"[Concurrency Deep Dive](../concurrency.md) это целый день занятий по классической,\n"
"а также `async`/`await` конкурентности."
#: src/running-the-course/course-structure.md:50
msgid ""
@ -1457,6 +1538,8 @@ msgid ""
"go. You can then copy/paste the examples into `src/main.rs` to experiment with\n"
"them:"
msgstr ""
"Вам понадобится настроенный новый крейт, а также загруженные зависимости, готовые к работе.\n"
"Затем вы можете скопировать примеры в `src/main.rs`, чтобы поэкспериментировать с ними:"
#: src/running-the-course/course-structure.md:54
msgid ""
@ -1470,21 +1553,23 @@ msgstr ""
#: src/running-the-course/course-structure.md:61
msgid "## Format"
msgstr ""
msgstr "## Формат"
#: src/running-the-course/course-structure.md:63
msgid ""
"The course is meant to be very interactive and we recommend letting the\n"
"questions drive the exploration of Rust!"
msgstr ""
"Курс задуман весьма интерактивным, и мы рекомендуем,\n"
"чтобы вопросы содействовали изучению Rust!"
#: src/running-the-course/keyboard-shortcuts.md:1
msgid "# Keyboard Shortcuts"
msgstr ""
msgstr "# Горячие клавиши"
#: src/running-the-course/keyboard-shortcuts.md:3
msgid "There are several useful keyboard shortcuts in mdBook:"
msgstr ""
msgstr "В mdBook есть несколько полезных сочетаний клавиш:"
#: src/running-the-course/keyboard-shortcuts.md:5
msgid ""
@ -1493,36 +1578,46 @@ msgid ""
"* <kbd>Ctrl + Enter</kbd>: Execute the code sample that has focus.\n"
"* <kbd>s</kbd>: Activate the search bar."
msgstr ""
"* <kbd>Стрелка-влево</kbd>: Переход на предыдущую страницу.\n"
"* <kbd>Стрелка-вправо</kbd>: Переход на следующую страницу.\n"
"* <kbd>Ctrl + Enter</kbd>: Выполнение примера кода, находящегося в фокусе.\n"
"* <kbd>s</kbd>: Активировать панель поиска."
#: src/running-the-course/translations.md:1
msgid "# Translations"
msgstr ""
msgstr "# Переводы"
#: src/running-the-course/translations.md:3
msgid ""
"The course has been translated into other languages by a set of wonderful\n"
"volunteers:"
msgstr ""
"Курс был переведен на другие языки группой замечательных\n"
"волонтёров:"
#: src/running-the-course/translations.md:6
msgid ""
"* [Brazilian Portuguese][pt-BR] by [@rastringer] and [@hugojacob].\n"
"* [Korean][ko] by [@keispace], [@jiyongp] and [@jooyunghan]."
msgstr ""
"* [Бразильский португальский][pt-BR] от [@rastringer] и [@hugojacob].\n"
"* [Корейский][ko] от [@keispace], [@jiyongp] и [@jooyunghan]."
#: src/running-the-course/translations.md:9
msgid "Use the language picker in the top-right corner to switch between languages."
msgstr ""
msgstr "Используйте кнопку выбора языка в правом верхнем углу для переключения между языками."
#: src/running-the-course/translations.md:11
msgid ""
"If you want to help with this effort, please see [our instructions] for how to\n"
"get going. Translations are coordinated on the [issue tracker]."
msgstr ""
"Если вы хотите помочь в этом, пожалуйста, ознакомьтесь с [our instructions] о том, как приступить к работе.\n"
"Переводы координируются с помощью [issue tracker]."
#: src/cargo.md:1
msgid "# Using Cargo"
msgstr ""
msgstr "# Использование Cargo"
#: src/cargo.md:3
msgid ""
@ -1531,26 +1626,36 @@ msgid ""
"give a brief overview of what Cargo is and how it fits into the wider ecosystem\n"
"and how it fits into this training."
msgstr ""
"Когда вы начнете читать о Rust, то вскоре познакомитесь с [Cargo](https://doc.rust-lang.org/cargo/),\n"
"стандартным инструментом, используемым в экосистеме Rust для создания и запуска приложений.\n"
"Здесь мы хотим дать краткий обзор того, что такое Cargo и как он вписывается в более широкую экосистему\n"
"и в этот курс."
#: src/cargo.md:8
msgid "## Installation"
msgstr ""
msgstr "## Установка"
#: src/cargo.md:10
msgid "### Rustup (Recommended)"
msgstr ""
msgstr "### Rustup (рекомендуется)"
#: src/cargo.md:12
msgid "You can follow the instructions to install cargo and rust compiler, among other standard ecosystem tools with the [rustup][3] tool, which is maintained by the Rust Foundation."
msgstr ""
"Вы можете следовать инструкции для установки Cargo, компилятора Rust и\n"
"других стандартных инструментов экосистемы с помощью инструмента\n"
"[rustup][3], который поддерживается Rust Foundation."
#: src/cargo.md:14
msgid "Along with cargo and rustc, Rustup will install itself as a command line utility that you can use to install/switch toolchains, setup cross compilation, etc."
msgstr ""
"Наряду с Cargo и rustc, Rustup будет установлен как утилита командной\n"
"строки, которую вы можете использовать для установки/переключения наборов\n"
"инструментов, настройки кросс-компиляции и т. д."
#: src/cargo.md:16
msgid "### Package Managers"
msgstr ""
msgstr "### Менеджеры пакетов"
#: src/cargo.md:18
msgid "#### Debian"
@ -1558,7 +1663,7 @@ msgstr ""
#: src/cargo.md:20
msgid "On Debian/Ubuntu, you can install Cargo, the Rust source and the [Rust formatter][6] with"
msgstr ""
msgstr "В Debian/Ubuntu вы можете установить Cargo, исходный код Rust и [Rust formatter][6] с помощью"
#: src/cargo.md:22
msgid ""
@ -1572,18 +1677,24 @@ msgid ""
"This will allow [rust-analyzer][1] to jump to the definitions. We suggest using\n"
"[VS Code][2] to edit the code (but any LSP compatible editor works)."
msgstr ""
"Это позволит [rust-analyzer][1] переходить к определениям в исходном коде.\n"
"Мы предлагаем использовать [VS Code][2] для редактирования кода (поддерживается любой совместимый с LSP редактор)."
#: src/cargo.md:29
msgid "Some folks also like to use the [JetBrains][4] family of IDEs, which do their own analysis but have their own tradeoffs. If you prefer them, you can install the [Rust Plugin][5]. Please take note that as of January 2023 debugging only works on the CLion version of the JetBrains IDEA suite."
msgstr ""
"Некоторым также нравится использовать семейство IDE [JetBrains][4], которые\n"
"выполняют собственный анализ, но имеют свои особенности. Если вы\n"
"предпочитаете их, вы можете установить [Rust Plugin][5]. Обратите внимание,\n"
"что по состоянию на январь 2023 года отладка работает только в CLion."
#: src/cargo/rust-ecosystem.md:1
msgid "# The Rust Ecosystem"
msgstr ""
msgstr "# Экосистема Rust"
#: src/cargo/rust-ecosystem.md:3
msgid "The Rust ecosystem consists of a number of tools, of which the main ones are:"
msgstr ""
msgstr "Экосистема Rust состоит из ряда инструментов, основными из которых являются:"
#: src/cargo/rust-ecosystem.md:5
msgid ""
@ -1601,6 +1712,19 @@ msgid ""
" library. You can have multiple versions of Rust installed at once and `rustup`\n"
" will let you switch between them as needed."
msgstr ""
"* `rustc`: компилятор Rust, который превращает файлы `.rs` в исполняемые файлы\n"
"и другие промежуточные форматы.\n"
"\n"
"* `cargo`: менеджер зависимостей Rust и инструмент сборки. Cargo знает, как\n"
"загрузить зависимости, размещённые на <https://crates.io>, и передать их\n"
"`rustc` при сборке вашего проекта. Cargo также поставляется со\n"
"встроенным иструментом запуска тестов, который используется для выполнения модульных тестов.\n"
"\n"
"* `rustup`: программа установки и обновления набора инструментов Rust. Этот\n"
"инструмент используется для установки и обновления rustc и cargo при выходе новых версий Rust.\n"
"Кроме того, `rustup` также может загружать документацию стандартной библиотеки.\n"
"У вас может быть установлено несколько версий Rust одновременно и `rustup`\n"
"позволит вам переключаться между ними по мере необходимости."
#: src/cargo/rust-ecosystem.md:21 src/hello-world.md:25
#: src/hello-world/small-example.md:27 src/why-rust/runtime.md:10
@ -1611,7 +1735,7 @@ msgstr ""
#: src/error-handling/converting-error-types-example.md:50
#: src/concurrency/threads.md:30 src/async/async-await.md:25
msgid "Key points:"
msgstr ""
msgstr "Ключевые моменты:"
#: src/cargo/rust-ecosystem.md:23
msgid ""
@ -1647,10 +1771,41 @@ msgid ""
" * It is also extensible with sub command plugins as well (such as [cargo clippy]).\n"
" * Read more from the [official Cargo Book]"
msgstr ""
"* У Rust стремительный график релизов: новая версия выходит каждые шесть недель.\n"
"Новые версии поддерживают обратную совместимость со старыми версиями ---\n"
"в дополнение они предоставляют новые функциональные возможности.\n"
"\n"
"* Существует три вида релизов: ”stable”, ”beta” и ”nightly”.\n"
"\n"
"* Новые функции тестируются на ”nightly”, ”beta” --- это то, что становится\n"
"”stable” каждые шесть недель.\n"
"\n"
"* У Rust также есть [редакции]: текущая редакция --- Rust 2021. Предыдущими\n"
"редакциями были Rust 2015 и Rust 2018.\n"
"\n"
" * Редакциями позволено вносить обратно--несовместимые изменения в язык.\n"
"\n"
" * Чтобы избежать сбоев, редакцию для своего пакета можно явно указать в файле `Cargo.toml`.\n"
"\n"
" * Чтобы избежать разделения экосистемы, компилятор Rust может смешивать код,\n"
"написанный для разных редакций.\n"
"\n"
" * Стоит упомянуть, что использование компилятора напрямую, а не через `cargo`, является редким явлением\n"
"(большинство пользователей никогда этого не делают).\n"
"\n"
" * Cargo сам по себе является чрезвычайно\n"
"мощным и всеобъемлющим инструментом. Он поддерживает множество дополнительных функций, включая, помимо прочего:\n"
" * Структура проекта/пакета\n"
" * [workspaces]\n"
" * Управление зависимостями для разработки (dev) и времени выполнения (runtime)\n"
" * [build scripting]\n"
" * [global installation]\n"
" * Он также расширяем с помощью плагинов подкоманд (таких как [cargo clippy]).\n"
" * Подробнее читайте в [official Cargo Book]"
#: src/cargo/code-samples.md:1
msgid "# Code Samples in This Training"
msgstr ""
msgstr "# Примеры кода в этом курсе"
#: src/cargo/code-samples.md:3
msgid ""
@ -1658,6 +1813,8 @@ msgid ""
"which can be executed through your browser. This makes the setup much easier and\n"
"ensures a consistent experience for everyone."
msgstr ""
"В этом курсе мы в основном будем изучать язык Rust на примерах, которые могут быть выполнены в вашем браузере.\n"
"Это значительно упрощает настройку и обеспечивает единообразный опыт для всех."
#: src/cargo/code-samples.md:7
msgid ""
@ -1665,10 +1822,13 @@ msgid ""
"exercises. On the last day, we will do a larger exercise which shows you how to\n"
"work with dependencies and for that you need Cargo."
msgstr ""
"Установка Cargo по-прежнему рекомендуется: это облегчит вам выполнение упражнений.\n"
"В последний день мы выполним более масштабное упражнение, которое покажет вам,\n"
"как работать с зависимостями, и для этого вам понадобится Cargo."
#: src/cargo/code-samples.md:11
msgid "The code blocks in this course are fully interactive:"
msgstr ""
msgstr "Блоки кода в этом курсе полностью интерактивны:"
#: src/cargo/code-samples.md:13
msgid ""
@ -1683,13 +1843,15 @@ msgstr ""
msgid ""
"You can use <kbd>Ctrl + Enter</kbd> to execute the code when focus is in the\n"
"text box."
msgstr ""
msgstr "Вы можете использовать <kbd>Ctrl + Enter</kbd> для выполнения кода, когда фокус ввода находится в текстовом поле."
#: src/cargo/code-samples.md:24
msgid ""
"Most code samples are editable like shown above. A few code samples\n"
"are not editable for various reasons:"
msgstr ""
"Большинство примеров кода доступны для редактирования, как показано выше.\n"
"Несколько примеров кода недоступны для редактирования по разным причинам:"
#: src/cargo/code-samples.md:27
msgid ""
@ -1701,10 +1863,15 @@ msgid ""
" solve the exercises using a local Rust installation or via the\n"
" Playground."
msgstr ""
"* Встроенный в страницу редактор кода не может запускать модульные тесты.\n"
"Скопируйте код и откройте его в Rust Playground, чтобы продемонстрировать модульные тесты.\n"
"\n"
"* Встроенные в страницу редакторы кода теряют своё состояние в тот момент, когда вы уходите со страницы!\n"
"Именно по этой причине учащиеся должны выполнять упражнения, используя локальную установку Rust или Rust Playground."
#: src/cargo/running-locally.md:1
msgid "# Running Code Locally with Cargo"
msgstr ""
msgstr "# Запуск кода локально с помощью Cargo"
#: src/cargo/running-locally.md:3
msgid ""
@ -1713,6 +1880,9 @@ msgid ""
"Book][1]. This should give you a working `rustc` and `cargo`. At the time of\n"
"writing, the latest stable Rust release has these version numbers:"
msgstr ""
"Если вы хотите поэкспериментировать с кодом на своей системе, то вам нужно будет сначала установить Rust.\n"
"Сделайте это, следуя [инструкциям в The Rust Book][1]. В вашей системе появятся инструменты `rustc` и `cargo`.\n"
"На момент написания статьи последний стабильный выпуск Rust имеет следующие версии:"
#: src/cargo/running-locally.md:8
msgid ""
@ -1729,6 +1899,8 @@ msgid ""
"With this in place, follow these steps to build a Rust binary from one\n"
"of the examples in this training:"
msgstr ""
"После этого выполните следующие шаги, чтобы собрать исполняемый файл\n"
"на основе одного из примеров в этом курсе:"
#: src/cargo/running-locally.md:18
msgid ""
@ -1780,6 +1952,51 @@ msgid ""
" run `cargo` commands, it will automatically download and compile missing\n"
" dependencies for you."
msgstr ""
"1. Нажмите кнопку ”Copy to clipboard” на примере кода, который вы хотите скопировать.\n"
"\n"
"2. Используйте`cargo new exercise`, чтобы создать новую директорию `exercise/` для вашего кода:\n"
"\n"
" ```shell\n"
" $ cargo new exercise\n"
" Created binary (application) `exercise` package\n"
" ```\n"
"\n"
"3. Перейдите в директорию `exercise/` и выполните `cargo run` для сборки и запуска исполняемого файла:\n"
"\n"
" ```shell\n"
" $ cd exercise\n"
" $ cargo run\n"
" Compiling exercise v0.1.0 (/home/mgeisler/tmp/exercise)\n"
" Finished dev [unoptimized + debuginfo] target(s) in 0.75s\n"
" Running `target/debug/exercise`\n"
" Hello, world!\n"
" ```\n"
"\n"
"4. Замените шаблонный код в `src/main.rs` своим кодом. Например, используя пример кода с предыдущей страницы,\n"
"сделайте `src/main.rs` похожим на\n"
"\n"
" ```rust\n"
" fn main() {\n"
" println!(\"Edit me!\");\n"
" }\n"
" ```\n"
"\n"
"5. Используйте `cargo run` для сборки и запуска обновленного исполняемого файла:\n"
"\n"
" ```shell\n"
" $ cargo run\n"
" Compiling exercise v0.1.0 (/home/mgeisler/tmp/exercise)\n"
" Finished dev [unoptimized + debuginfo] target(s) in 0.24s\n"
" Running `target/debug/exercise`\n"
" Edit me!\n"
" ```\n"
"\n"
"6. Используйте `cargo check` для быстрой проверки проекта на наличие ошибок и `cargo build` для\n"
"компиляции проекта без его запуска. Вы найдете результат в директории `target/debug/` для отладочной сборки.\n"
"Используйте `cargo build --release` для создания оптимизированной финальной сборки в `target/release/`.\n"
"\n"
"7. Вы можете добавить зависимости для вашего проекта, отредактировав файл `Cargo.toml`.\n"
"Когда вы запустите команду `cargo`, она автоматически загрузит и скомпилирует недостающие зависимости для вас."
#: src/cargo/running-locally.md:70
msgid ""
@ -1787,6 +2004,8 @@ msgid ""
"local editor. It will make their life easier since they will have a\n"
"normal development environment."
msgstr ""
"Предложите участникам занятия установить Cargo и использовать локальный редактор.\n"
"Это облегчит им жизнь, так как у них будет подходящая среда разработки."
#: src/welcome-day-1.md:1
msgid "# Welcome to Day 1"