1
0
mirror of https://github.com/google/comprehensive-rust.git synced 2025-03-22 23:05:22 +02:00

uk: Cleaning up Ukrainian cloud-translate translations (day 1) (#1494)

uk: Cleaning up Ukrainian cloud-translate translations (day 1)

Signed-off-by: Andriy Redko <drreta@gmail.com>
This commit is contained in:
Andriy Redko 2023-11-30 09:27:42 -05:00 committed by GitHub
parent a73c830e45
commit dc92a2b9ba
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

305
po/uk.po
View File

@ -2129,7 +2129,7 @@ msgid ""
"`continue`." "`continue`."
msgstr "" msgstr ""
"Конструкції потоку керування: `if`, `if let`, `while`, `while let`, `break` " "Конструкції потоку керування: `if`, `if let`, `while`, `while let`, `break` "
"і `continue`." "та `continue`."
#: src/welcome-day-1.md:12 #: src/welcome-day-1.md:12
msgid "Pattern matching: destructuring enums, structs, and arrays." msgid "Pattern matching: destructuring enums, structs, and arrays."
@ -2143,14 +2143,14 @@ msgstr "Нагадайте учням, що:"
msgid "" msgid ""
"They should ask questions when they get them, don't save them to the end." "They should ask questions when they get them, don't save them to the end."
msgstr "" msgstr ""
"Вони повинні задавати питання, коли вони їх отримають, не зберігайте їх до " "Вони повинні задавати питання, коли вони їх мають, а не зберігають їх до "
"кінця." "кінця."
#: src/welcome-day-1.md:19 #: src/welcome-day-1.md:19
msgid "" msgid ""
"The class is meant to be interactive and discussions are very much " "The class is meant to be interactive and discussions are very much "
"encouraged!" "encouraged!"
msgstr "Клас має бути інтерактивним, тому дискусії дуже заохочуються!" msgstr "Клас має на меті бути інтерактивним, тому дискусії дуже заохочуються!"
#: src/welcome-day-1.md:20 #: src/welcome-day-1.md:20
msgid "" msgid ""
@ -2161,10 +2161,10 @@ msgid ""
"communication." "communication."
msgstr "" msgstr ""
"Як інструктор, ви повинні намагатися підтримувати обговорення актуальними, " "Як інструктор, ви повинні намагатися підтримувати обговорення актуальними, "
"тобто підтримувати обговорення, пов’язані з тим, як Rust щось робить проти " "тобто підтримувати обговорення, пов’язані з тим, як Rust щось робить на "
"іншої мови. Може бути важко знайти правильний баланс, але дозвольте " "відміну від іншої мови. Може бути важко знайти правильний баланс, але "
"обговорення, оскільки вони залучають людей набагато більше, ніж одностороннє " "дозволяйте обговорення, оскільки вони залучають людей набагато більше, ніж "
"спілкування." "одностороннє спілкування."
#: src/welcome-day-1.md:24 #: src/welcome-day-1.md:24
msgid "" msgid ""
@ -2180,7 +2180,7 @@ msgid ""
"you like." "you like."
msgstr "" msgstr ""
"Це цілком нормально! Повторення є важливою частиною навчання. Пам’ятайте, що " "Це цілком нормально! Повторення є важливою частиною навчання. Пам’ятайте, що "
"слайди є лише підтримкою, і ви можете пропускати їх, як забажаєте." "слайди є лише підтримкою, і ви можете пропускати їх, якщо забажаєте."
#: src/welcome-day-1.md:29 #: src/welcome-day-1.md:29
msgid "" msgid ""
@ -2221,7 +2221,7 @@ msgid ""
"Rust is a new programming language which had its [1.0 release in 2015]" "Rust is a new programming language which had its [1.0 release in 2015]"
"(https://blog.rust-lang.org/2015/05/15/Rust-1.0.html):" "(https://blog.rust-lang.org/2015/05/15/Rust-1.0.html):"
msgstr "" msgstr ""
"Rust — це нова мова програмування, яка випустила [1.0 у 2015 році](https://" "Rust — це нова мова програмування, яка мала [1.0 випуск у 2015 році](https://"
"blog.rust-lang.org/2015/05/15/Rust-1.0.html):" "blog.rust-lang.org/2015/05/15/Rust-1.0.html):"
#: src/welcome-day-1/what-is-rust.md:5 #: src/welcome-day-1/what-is-rust.md:5
@ -2231,7 +2231,7 @@ msgstr ""
#: src/welcome-day-1/what-is-rust.md:6 #: src/welcome-day-1/what-is-rust.md:6
msgid "`rustc` uses LLVM as its backend." msgid "`rustc` uses LLVM as its backend."
msgstr "`rustc` використовує LLVM як серверну частину." msgstr "`rustc` використовує LLVM як бекенд."
#: src/welcome-day-1/what-is-rust.md:7 #: src/welcome-day-1/what-is-rust.md:7
msgid "" msgid ""
@ -2267,15 +2267,15 @@ msgstr "мобільні телефони,"
#: src/welcome-day-1/what-is-rust.md:15 #: src/welcome-day-1/what-is-rust.md:15
msgid "desktops," msgid "desktops,"
msgstr "робочі столи," msgstr "робочі станції,"
#: src/welcome-day-1/what-is-rust.md:16 #: src/welcome-day-1/what-is-rust.md:16
msgid "servers." msgid "servers."
msgstr "серверів." msgstr "сервери."
#: src/welcome-day-1/what-is-rust.md:21 #: src/welcome-day-1/what-is-rust.md:21
msgid "Rust fits in the same area as C++:" msgid "Rust fits in the same area as C++:"
msgstr "Rust відповідає тій самій області, що й C++:" msgstr "Rust вписується в ту ж саму область, що й C++:"
#: src/welcome-day-1/what-is-rust.md:23 #: src/welcome-day-1/what-is-rust.md:23
msgid "High flexibility." msgid "High flexibility."
@ -2288,7 +2288,8 @@ msgstr "Високий рівень контролю."
#: src/welcome-day-1/what-is-rust.md:25 #: src/welcome-day-1/what-is-rust.md:25
msgid "" msgid ""
"Can be scaled down to very constrained devices such as microcontrollers." "Can be scaled down to very constrained devices such as microcontrollers."
msgstr "Можна зменшити до дуже обмежених пристроїв, таких як мікроконтролери." msgstr ""
"Може бути зменьшений до дуже обмежених пристроїв, таких як мікроконтролери."
#: src/welcome-day-1/what-is-rust.md:26 #: src/welcome-day-1/what-is-rust.md:26
msgid "Has no runtime or garbage collection." msgid "Has no runtime or garbage collection."
@ -2296,7 +2297,7 @@ msgstr "Не має часу виконання або збирання сміт
#: src/welcome-day-1/what-is-rust.md:27 #: src/welcome-day-1/what-is-rust.md:27
msgid "Focuses on reliability and safety without sacrificing performance." msgid "Focuses on reliability and safety without sacrificing performance."
msgstr "Зосереджено на надійності та безпеці без шкоди для продуктивності." msgstr "Зосереджений на надійності та безпеці без шкоди для продуктивності."
#: src/hello-world.md:3 #: src/hello-world.md:3
msgid "" msgid ""
@ -2316,7 +2317,7 @@ msgstr ""
#: src/hello-world.md:12 #: src/hello-world.md:12
msgid "What you see:" msgid "What you see:"
msgstr "Що ти бачиш:" msgstr "Що ви бачите:"
#: src/hello-world.md:14 #: src/hello-world.md:14
msgid "Functions are introduced with `fn`." msgid "Functions are introduced with `fn`."
@ -2337,7 +2338,7 @@ msgstr "Rust має гігієнічні макроси, `println!` є прик
#: src/hello-world.md:18 #: src/hello-world.md:18
msgid "Rust strings are UTF-8 encoded and can contain any Unicode character." msgid "Rust strings are UTF-8 encoded and can contain any Unicode character."
msgstr "" msgstr ""
"Рядки Rust мають кодування UTF-8 і можуть містити будь-які символи Unicode." "Рядки в Rust мають кодування UTF-8 і можуть містити будь-які символи Unicode."
#: src/hello-world.md:22 #: src/hello-world.md:22
msgid "" msgid ""
@ -2347,15 +2348,15 @@ msgid ""
msgstr "" msgstr ""
"Цей слайд спрямований на те, щоб студенти звикли працювати з кодом Rust. " "Цей слайд спрямований на те, щоб студенти звикли працювати з кодом Rust. "
"Вони побачать масу цього протягом наступних трьох днів, тож ми починаємо з " "Вони побачать масу цього протягом наступних трьох днів, тож ми починаємо з "
"малого з чогось знайомого." "чогось малого та знайомого."
#: src/hello-world.md:27 #: src/hello-world.md:27
msgid "" msgid ""
"Rust is very much like other languages in the C/C++/Java tradition. It is " "Rust is very much like other languages in the C/C++/Java tradition. It is "
"imperative and it doesn't try to reinvent things unless absolutely necessary." "imperative and it doesn't try to reinvent things unless absolutely necessary."
msgstr "" msgstr ""
"Rust дуже схожий на інші мови традиції C/C++/Java. Це обов’язково, і воно не " "Rust дуже схожий на інші традиціїні мови як C/C++/Java. Це навмисно, і він "
"намагається винайти щось заново, якщо це не є абсолютно необхідним." е намагається винайти щось заново, якщо це не є абсолютно необхідним."
#: src/hello-world.md:31 #: src/hello-world.md:31
msgid "Rust is modern with full support for things like Unicode." msgid "Rust is modern with full support for things like Unicode."
@ -2367,8 +2368,8 @@ msgid ""
"arguments (no function [overloading](basic-syntax/functions-interlude.md))." "arguments (no function [overloading](basic-syntax/functions-interlude.md))."
msgstr "" msgstr ""
"Rust використовує макроси для ситуацій, коли потрібно мати змінну кількість " "Rust використовує макроси для ситуацій, коли потрібно мати змінну кількість "
"аргументів (немає функції [перевантаження](basic-syntax/functions-interlude." "аргументів (немає [перевантаження](basic-syntax/functions-interlude.md) "
"md))." "функцій)."
#: src/hello-world.md:36 #: src/hello-world.md:36
msgid "" msgid ""
@ -2377,7 +2378,7 @@ msgid ""
"hygienic](https://veykril.github.io/tlborm/decl-macros/minutiae/hygiene." "hygienic](https://veykril.github.io/tlborm/decl-macros/minutiae/hygiene."
"html)." "html)."
msgstr "" msgstr ""
"Макроси є «гігієнічними» означає, що вони випадково не захоплюють " "Макроси є «гігієнічними» що означає, що вони випадково не захоплюють "
"ідентифікатори з області, у якій вони використовуються. Макроси Rust " "ідентифікатори з області, у якій вони використовуються. Макроси Rust "
"насправді лише [частково гігієнічні](https://veykril.github.io/tlborm/decl-" "насправді лише [частково гігієнічні](https://veykril.github.io/tlborm/decl-"
"macros/minutiae/hygiene .html)." "macros/minutiae/hygiene .html)."
@ -2389,7 +2390,7 @@ msgid ""
"while it is not a functional language, it includes a range of [functional " "while it is not a functional language, it includes a range of [functional "
"concepts](https://doc.rust-lang.org/book/ch13-00-functional-features.html)." "concepts](https://doc.rust-lang.org/book/ch13-00-functional-features.html)."
msgstr "" msgstr ""
"Іржа є мультипарадигмою. Наприклад, він має потужні [функції об’єктно-" "Rust є мультипарадигмою. Наприклад, він має потужні [функції об’єктно-"
"орієнтованого програмування](https://doc.rust-lang.org/book/ch17-00-oop." "орієнтованого програмування](https://doc.rust-lang.org/book/ch17-00-oop."
"html), і, хоча це не функціональна мова, він включає діапазон " "html), і, хоча це не функціональна мова, він включає діапазон "
"[функціональних понять](https://doc.rust-lang.org/book/ch13-00-functional-" "[функціональних понять](https://doc.rust-lang.org/book/ch13-00-functional-"
@ -2425,7 +2426,7 @@ msgid ""
"different inputs." "different inputs."
msgstr "" msgstr ""
"Код реалізує гіпотезу Коллатца: вважається, що цикл завжди закінчується, але " "Код реалізує гіпотезу Коллатца: вважається, що цикл завжди закінчується, але "
"це ще не доведено. Редагуйте код і грайте з різними введеннями." "це ще не доведено. Редагуйте код та пограйте з різними введеннями."
#: src/hello-world/small-example.md:29 #: src/hello-world/small-example.md:29
msgid "" msgid ""
@ -2496,8 +2497,8 @@ msgid ""
"Make sure to ask the class which languages they have experience with. " "Make sure to ask the class which languages they have experience with. "
"Depending on the answer you can highlight different features of Rust:" "Depending on the answer you can highlight different features of Rust:"
msgstr "" msgstr ""
"Обов’язково запитайте в класу, якими мовами вони мають досвід. Залежно від " "Обов’язково запитайте клас, з якими мовами вони мають досвід. Залежно від "
"відповіді ви можете виділити різні функції Rust:" "відповіді ви можете виділити різні особливості Rust:"
#: src/why-rust.md:14 #: src/why-rust.md:14
msgid "" msgid ""
@ -2521,13 +2522,13 @@ msgid ""
msgstr "" msgstr ""
"Досвід роботи з Java, Go, Python, JavaScript...: Ви отримуєте таку саму " "Досвід роботи з Java, Go, Python, JavaScript...: Ви отримуєте таку саму "
"безпеку пам’яті, що й у цих мовах, а також подібне відчуття мови високого " "безпеку пам’яті, що й у цих мовах, а також подібне відчуття мови високого "
"рівня. Крім того, ви отримуєте швидку та передбачувану продуктивність, як-от " "рівня. Крім того, ви отримуєте швидку та передбачувану продуктивність як C і "
"C і C++ (без збирача сміття), а також доступ до апаратного забезпечення " "C++ (без збиральника сміття), а також доступ низького рівня до апаратного "
"низького рівня (якщо воно вам знадобиться)" "забезпечення (якщо воно вам знадобиться)"
#: src/why-rust/compile-time.md:3 #: src/why-rust/compile-time.md:3
msgid "Static memory management at compile time:" msgid "Static memory management at compile time:"
msgstr "Керування статичною пам'яттю під час компіляції:" msgstr "Cтатичне керування пам'яттю під час компіляції:"
#: src/why-rust/compile-time.md:5 #: src/why-rust/compile-time.md:5
msgid "No uninitialized variables." msgid "No uninitialized variables."
@ -2535,7 +2536,7 @@ msgstr "Немає неініціалізованих змінних."
#: src/why-rust/compile-time.md:6 #: src/why-rust/compile-time.md:6
msgid "No memory leaks (_mostly_, see notes)." msgid "No memory leaks (_mostly_, see notes)."
msgstr "Немає витоків пам'яті (_переважно_, див. примітки)." msgstr "Немає витоків пам'яті (_переважно_, дивитится примітки)."
#: src/why-rust/compile-time.md:7 #: src/why-rust/compile-time.md:7
msgid "No double-frees." msgid "No double-frees."
@ -2543,7 +2544,7 @@ msgstr "Ніяких подвійних звільнень."
#: src/why-rust/compile-time.md:8 #: src/why-rust/compile-time.md:8
msgid "No use-after-free." msgid "No use-after-free."
msgstr "Без використання після безкоштовного використання." msgstr "Немає використання після звільнення."
#: src/why-rust/compile-time.md:9 #: src/why-rust/compile-time.md:9
msgid "No `NULL` pointers." msgid "No `NULL` pointers."
@ -2573,8 +2574,8 @@ msgid ""
"initialized and runtime-sized static variables" "initialized and runtime-sized static variables"
msgstr "" msgstr ""
"Ви можете використовувати [`Box::leak`](https://doc.rust-lang.org/std/boxed/" "Ви можете використовувати [`Box::leak`](https://doc.rust-lang.org/std/boxed/"
"struct.Box.html#method.leak) для витоку покажчика. Це може бути використано " "struct.Box.html#method.leak) для витоку вказівника. Це може бути використано "
"для отримання статичних змінних, ініціалізованих під час виконання та " "для отримання статичних змінних, ініціалізованих під час виконання та з "
"розміром під час виконання" "розміром під час виконання"
#: src/why-rust/compile-time.md:21 #: src/why-rust/compile-time.md:21
@ -2600,7 +2601,7 @@ msgid ""
"In fact, some will consider infinitely populating a collection a memory leak " "In fact, some will consider infinitely populating a collection a memory leak "
"and Rust does not protect from those." "and Rust does not protect from those."
msgstr "" msgstr ""
"Фактично, дехто вважатиме нескінченне заповнення колекції витоком пам’яті, а " "По факту, дехто вважатиме нескінченне заповнення колекції витоком пам’яті, і "
"Rust від цього не захищає." "Rust від цього не захищає."
#: src/why-rust/compile-time.md:28 #: src/why-rust/compile-time.md:28
@ -2608,8 +2609,8 @@ msgid ""
"For the purpose of this course, \"No memory leaks\" should be understood as " "For the purpose of this course, \"No memory leaks\" should be understood as "
"\"Pretty much no _accidental_ memory leaks\"." "\"Pretty much no _accidental_ memory leaks\"."
msgstr "" msgstr ""
"Для цілей цього курсу «Немає витоків пам’яті» слід розуміти як «Практично " "Для цілей цього курсу «Немає витоків пам’яті» слід розуміти як «Майже ніяких "
"немає _випадкових_ витоків пам’яті»." "_випадкових_ витоків пам’яті»."
#: src/why-rust/runtime.md:3 #: src/why-rust/runtime.md:3
msgid "No undefined behavior at runtime:" msgid "No undefined behavior at runtime:"
@ -2621,7 +2622,8 @@ msgstr "Доступ до масиву перевірено на межі."
#: src/why-rust/runtime.md:6 #: src/why-rust/runtime.md:6
msgid "Integer overflow is defined (panic or wrap-around)." msgid "Integer overflow is defined (panic or wrap-around)."
msgstr "Визначається цілочисельне переповнення (паніка або обертання)." msgstr ""
"Поведінка цілочисельного переповнення визначена (паніка або обертання)."
#: src/why-rust/runtime.md:12 #: src/why-rust/runtime.md:12
msgid "" msgid ""
@ -2634,7 +2636,7 @@ msgid ""
msgstr "" msgstr ""
"Цілочисельне переповнення визначається за допомогою позначки [`overflow-" "Цілочисельне переповнення визначається за допомогою позначки [`overflow-"
"checks`](https://doc.rust-lang.org/rustc/codegen-options/index.html#overflow-" "checks`](https://doc.rust-lang.org/rustc/codegen-options/index.html#overflow-"
"checks) під час компіляції. Якщо ввімкнути, програма виникне паніка " "checks) під час компіляції. Якщо ввімкнене, програма буде панікувати "
"(контрольований збій програми), інакше ви отримаєте семантику обертання. За " "(контрольований збій програми), інакше ви отримаєте семантику обертання. За "
"замовчуванням ви отримуєте паніку в режимі налагодження (`cargo build`) і " "замовчуванням ви отримуєте паніку в режимі налагодження (`cargo build`) і "
"обертання в режимі випуску (`cargo build --release`)." "обертання в режимі випуску (`cargo build --release`)."
@ -2646,10 +2648,10 @@ msgid ""
"call functions such as `slice::get_unchecked` which does not do bounds " "call functions such as `slice::get_unchecked` which does not do bounds "
"checking." "checking."
msgstr "" msgstr ""
"Перевірку меж не можна вимкнути за допомогою позначки компілятора. Його " "Перевірку меж не можна вимкнути за допомогою позначки компілятора. Ії також "
"також не можна вимкнути безпосередньо за допомогою ключового слова `unsafe`. " "не можна вимкнути безпосередньо за допомогою ключового слова `unsafe`. Однак "
"Однак `unsafe` дозволяє викликати такі функції, як `slice::get_unchecked`, " "`unsafe` дозволяє викликати такі функції, як `slice::get_unchecked`, яка не "
"яка не виконує перевірку меж." "виконує перевірку меж."
#: src/why-rust/modern.md:3 #: src/why-rust/modern.md:3
msgid "Rust is built with all the experience gained in the last decades." msgid "Rust is built with all the experience gained in the last decades."
@ -2665,11 +2667,11 @@ msgstr "Переліки та зіставлення шаблонів."
#: src/why-rust/modern.md:8 #: src/why-rust/modern.md:8
msgid "Generics." msgid "Generics."
msgstr "Дженерики." msgstr "Узагальнені типи."
#: src/why-rust/modern.md:9 #: src/why-rust/modern.md:9
msgid "No overhead FFI." msgid "No overhead FFI."
msgstr "Без накладних FFI." msgstr "FFI без накладних витрат."
#: src/why-rust/modern.md:10 #: src/why-rust/modern.md:10
msgid "Zero-cost abstractions." msgid "Zero-cost abstractions."
@ -2681,7 +2683,7 @@ msgstr "Інструменти"
#: src/why-rust/modern.md:14 #: src/why-rust/modern.md:14
msgid "Great compiler errors." msgid "Great compiler errors."
msgstr "Великі помилки компілятора." msgstr "Чудово деталізовані помилки компілятора."
#: src/why-rust/modern.md:15 #: src/why-rust/modern.md:15
msgid "Built-in dependency manager." msgid "Built-in dependency manager."
@ -2693,7 +2695,7 @@ msgstr "Вбудована підтримка тестування."
#: src/why-rust/modern.md:17 #: src/why-rust/modern.md:17
msgid "Excellent Language Server Protocol support." msgid "Excellent Language Server Protocol support."
msgstr "Чудова підтримка протоколу мовного сервера." msgstr "Чудова підтримка протоколу мовного сервера (LSP)."
#: src/why-rust/modern.md:23 #: src/why-rust/modern.md:23
msgid "" msgid ""
@ -2702,11 +2704,11 @@ msgid ""
"writing a loop using `for` should result in roughly the same low level " "writing a loop using `for` should result in roughly the same low level "
"instructions as using the `.iter().fold()` construct." "instructions as using the `.iter().fold()` construct."
msgstr "" msgstr ""
"Абстракції з нульовою вартістю, подібні до C++, означають, що вам не " "Абстракції без витрат, подібні до C++, означають, що вам не потрібно "
"потрібно «платити» за конструкції програмування вищого рівня за допомогою " "«платити» за конструкції програмування вищого рівня за допомогою пам’яті чи "
"пам’яті чи процесора. Наприклад, написання циклу за допомогою `for` має " "процесора. Наприклад, написання циклу за допомогою `for` має призвести до "
"призвести до приблизно тих самих інструкцій низького рівня, що й " "приблизно тих самих інструкцій низького рівня, що й використання конструкції "
"використання конструкції `.iter().fold()`." "`.iter().fold()`."
#: src/why-rust/modern.md:28 #: src/why-rust/modern.md:28
msgid "" msgid ""
@ -2716,7 +2718,7 @@ msgid ""
msgstr "" msgstr ""
"Можливо, варто згадати, що переліки Rust — це «алгебраїчні типи даних», " "Можливо, варто згадати, що переліки Rust — це «алгебраїчні типи даних», "
"також відомі як «типи сум», які дозволяють системі типів виражати такі речі, " "також відомі як «типи сум», які дозволяють системі типів виражати такі речі, "
"як «Option<T>» і «Result<T, E>»." "як «Option<T>» та «Result<T, E>»."
#: src/why-rust/modern.md:32 #: src/why-rust/modern.md:32
msgid "" msgid ""
@ -2725,10 +2727,10 @@ msgid ""
"talkative than other compilers. It will often provide you with _actionable_ " "talkative than other compilers. It will often provide you with _actionable_ "
"feedback, ready to copy-paste into your code." "feedback, ready to copy-paste into your code."
msgstr "" msgstr ""
"Нагадайте людям прочитати помилки --- багато розробників звикли ігнорувати " "Нагадайте людям читати помилки --- багато розробників звикли ігнорувати "
"довгий вихід компілятора. Компілятор Rust значно балакучіший, ніж інші " "довгий вихід компілятора. Компілятор Rust значно балакучіший, ніж інші "
"компілятори. Він часто надає вам _дієві_ відгуки, готові скопіювати та " "компілятори. Він часто надає вам _дієві_ відгуки, готові до копіювання та "
"вставити у ваш код." "вставки у ваш код."
#: src/why-rust/modern.md:37 #: src/why-rust/modern.md:37
msgid "" msgid ""
@ -2742,15 +2744,15 @@ msgstr ""
#: src/why-rust/modern.md:41 #: src/why-rust/modern.md:41
msgid "a random number generator, but see [rand](https://docs.rs/rand/)." msgid "a random number generator, but see [rand](https://docs.rs/rand/)."
msgstr "генератор випадкових чисел, але див. [rand](https://docs.rs/rand/)." msgstr "генератор випадкових чисел, але дивится [rand](https://docs.rs/rand/)."
#: src/why-rust/modern.md:42 #: src/why-rust/modern.md:42
msgid "support for SSL or TLS, but see [rusttls](https://docs.rs/rustls/)." msgid "support for SSL or TLS, but see [rusttls](https://docs.rs/rustls/)."
msgstr "підтримка SSL або TLS, але див. [rusttls](https://docs.rs/rustls/)." msgstr "підтримка SSL або TLS, але дивится [rusttls](https://docs.rs/rustls/)."
#: src/why-rust/modern.md:43 #: src/why-rust/modern.md:43
msgid "support for JSON, but see [serde_json](https://docs.rs/serde_json/)." msgid "support for JSON, but see [serde_json](https://docs.rs/serde_json/)."
msgstr "підтримка JSON, але див. [serde_json](https://docs.rs/serde_json/)." msgstr "підтримка JSON, але дивится [serde_json](https://docs.rs/serde_json/)."
#: src/why-rust/modern.md:45 #: src/why-rust/modern.md:45
msgid "" msgid ""
@ -2770,8 +2772,8 @@ msgid ""
"makes it trivial to download and compile third-party crates. A consequence " "makes it trivial to download and compile third-party crates. A consequence "
"of this is that the standard library can be smaller." "of this is that the standard library can be smaller."
msgstr "" msgstr ""
"Rust постачається з вбудованим менеджером пакунків у формі Cargo, і це " "Rust постачається з вбудованим менеджером пакетів у формі Cargo, і це "
"спрощує завантаження та компіляцію ящиків сторонніх розробників. Наслідком " "спрощує завантаження та компіляцію крейтів сторонніх розробників. Наслідком "
"цього є те, що стандартна бібліотека може бути меншою." "цього є те, що стандартна бібліотека може бути меншою."
#: src/why-rust/modern.md:54 #: src/why-rust/modern.md:54
@ -2780,9 +2782,9 @@ msgid ""
"lib.rs/> help with this by letting you compare health metrics for crates to " "lib.rs/> help with this by letting you compare health metrics for crates to "
"find a good and trusted one." "find a good and trusted one."
msgstr "" msgstr ""
"Виявлення хороших ящиків сторонніх виробників може бути проблемою. Такі " "Виявлення хороших крейтів сторонніх виробників може бути проблемою. Такі "
"сайти, як <https://lib.rs/>, допомагають у цьому, дозволяючи порівнювати " "сайти, як <https://lib.rs/>, допомагають у цьому, дозволяючи порівнювати "
"показники здоров’я ящиків, щоб знайти хороший і надійний." "показники здоров’я крейтів, щоб знайти хороший і надійний."
#: src/why-rust/modern.md:58 #: src/why-rust/modern.md:58
msgid "" msgid ""
@ -2790,7 +2792,7 @@ msgid ""
"implementation used in major IDEs and text editors." "implementation used in major IDEs and text editors."
msgstr "" msgstr ""
"[rust-analyzer](https://rust-analyzer.github.io/) — це добре підтримувана " "[rust-analyzer](https://rust-analyzer.github.io/) — це добре підтримувана "
"реалізація LSP, яка використовується в основних IDE і текстових редакторах." "реалізація LSP, яка використовується в основних IDEs і текстових редакторах."
#: src/basic-syntax.md:3 #: src/basic-syntax.md:3
msgid "Much of the Rust syntax will be familiar to you from C, C++ or Java:" msgid "Much of the Rust syntax will be familiar to you from C, C++ or Java:"
@ -2810,7 +2812,7 @@ msgstr ""
#: src/basic-syntax.md:8 #: src/basic-syntax.md:8
msgid "Keywords like `if` and `while` work the same." msgid "Keywords like `if` and `while` work the same."
msgstr "Такі ключові слова, як «якщо» та «поки» працюють однаково." msgstr "Такі ключові слова, як `if` та `while` працюють також само."
#: src/basic-syntax.md:9 #: src/basic-syntax.md:9
msgid "Variable assignment is done with `=`, comparison is done with `==`." msgid "Variable assignment is done with `=`, comparison is done with `==`."
@ -2865,7 +2867,7 @@ msgstr "`3.14`, `-10.0e20`, `2_f32`"
#: src/basic-syntax/scalar-types.md:8 #: src/basic-syntax/scalar-types.md:8
msgid "Strings" msgid "Strings"
msgstr "рядки" msgstr "Рядки"
#: src/basic-syntax/scalar-types.md:8 #: src/basic-syntax/scalar-types.md:8
msgid "`&str`" msgid "`&str`"
@ -2909,7 +2911,7 @@ msgstr "`iN`, `uN` і `fN` мають ширину _N_ біт,"
#: src/basic-syntax/scalar-types.md:15 #: src/basic-syntax/scalar-types.md:15
msgid "`isize` and `usize` are the width of a pointer," msgid "`isize` and `usize` are the width of a pointer,"
msgstr "`isize` і `usize` – це ширина покажчика," msgstr "`isize` і `usize` – це ширина вказівника,"
#: src/basic-syntax/scalar-types.md:16 #: src/basic-syntax/scalar-types.md:16
msgid "`char` is 32 bits wide," msgid "`char` is 32 bits wide,"
@ -2929,8 +2931,8 @@ msgid ""
"`r\"\\n\" == \"\\\\n\"`. You can embed double-quotes by using an equal " "`r\"\\n\" == \"\\\\n\"`. You can embed double-quotes by using an equal "
"amount of `#` on either side of the quotes:" "amount of `#` on either side of the quotes:"
msgstr "" msgstr ""
"Необроблені рядки дозволяють створювати значення `&str` з вимкненими " "Необроблені рядки дозволяють створювати значення `&str` з відключеним "
"екранами: `r\"\\n\" == \"\\\\n\"`. Ви можете вставити подвійні лапки, " "екрануванням: `r\"\\n\" == \"\\\\n\"`. Ви можете вставити подвійні лапки, "
"використовуючи однакову кількість `#` з обох боків лапок:" "використовуючи однакову кількість `#` з обох боків лапок:"
#: src/basic-syntax/scalar-types.md:27 #: src/basic-syntax/scalar-types.md:27
@ -2963,7 +2965,7 @@ msgid ""
"`1_000` can be written as `1000` (or `10_00`), and `123_i64` can be written " "`1_000` can be written as `1000` (or `10_00`), and `123_i64` can be written "
"as `123i64`." "as `123i64`."
msgstr "" msgstr ""
"Усі підкреслення в цифрах можна опускати, вони призначені лише для " "Усі підкреслення у числах можна опускати, вони призначені лише для "
"розбірливості. Отже, `1_000` можна записати як `1000` (або `10_00`), а " "розбірливості. Отже, `1_000` можна записати як `1000` (або `10_00`), а "
"`123_i64` можна записати як `123i64`." "`123_i64` можна записати як `123i64`."
@ -2993,7 +2995,7 @@ msgstr "`()`, `('x',)`, `('x', 1.2)`, ..."
#: src/basic-syntax/compound-types.md:8 #: src/basic-syntax/compound-types.md:8
msgid "Array assignment and access:" msgid "Array assignment and access:"
msgstr "Призначення масиву та доступ:" msgstr "Присвоєння масиву та доступ:"
#: src/basic-syntax/compound-types.md:10 #: src/basic-syntax/compound-types.md:10
msgid "" msgid ""
@ -3032,10 +3034,14 @@ msgid ""
"its type_, which means that `[u8; 3]` and `[u8; 4]` are considered two " "its type_, which means that `[u8; 3]` and `[u8; 4]` are considered two "
"different types." "different types."
msgstr "" msgstr ""
"Значення типу масиву `[T; N]` містить `N` (константа часу компіляції) "
"елементів того самого типу `T`. Зверніть увагу, що довжина масиву є "
"_частиною його типу_, що означає, що `[u8; 3]` і `[u8; 4]` вважаються двома "
"різними типами."
#: src/basic-syntax/compound-types.md:38 #: src/basic-syntax/compound-types.md:38
msgid "We can use literals to assign values to arrays." msgid "We can use literals to assign values to arrays."
msgstr "Ми можемо використовувати літерали для призначення значень масивам." msgstr "Ми можемо використовувати літерали для присвоєння значень масивам."
#: src/basic-syntax/compound-types.md:40 #: src/basic-syntax/compound-types.md:40
msgid "" msgid ""
@ -3047,7 +3053,7 @@ msgstr ""
"У головній функції оператор print запитує реалізацію налагодження за " "У головній функції оператор print запитує реалізацію налагодження за "
"допомогою параметра формату `?`: `{}` дає вихід за замовчуванням, `{:?}` дає " "допомогою параметра формату `?`: `{}` дає вихід за замовчуванням, `{:?}` дає "
"вихід налагодження. Ми також могли використовувати `{a}` і `{a:?}` без " "вихід налагодження. Ми також могли використовувати `{a}` і `{a:?}` без "
"вказівки значення після рядка формату." "вказівки значення після рядку формату."
#: src/basic-syntax/compound-types.md:45 #: src/basic-syntax/compound-types.md:45
msgid "" msgid ""
@ -3074,7 +3080,7 @@ msgid ""
"Fields of a tuple can be accessed by the period and the index of the value, " "Fields of a tuple can be accessed by the period and the index of the value, "
"e.g. `t.0`, `t.1`." "e.g. `t.0`, `t.1`."
msgstr "" msgstr ""
"Доступ до полів кортежу можна отримати за крапкою та індексом значення, " "Доступ до полів кортежу можна отримати після крапки з індексом значення, "
"наприклад. `t.0`, `t.1`." "наприклад. `t.0`, `t.1`."
#: src/basic-syntax/compound-types.md:55 #: src/basic-syntax/compound-types.md:55
@ -3084,17 +3090,17 @@ msgid ""
"value are expressed as `()`. It is used to indicate, for example, that a " "value are expressed as `()`. It is used to indicate, for example, that a "
"function or expression has no return value, as we'll see in a future slide. " "function or expression has no return value, as we'll see in a future slide. "
msgstr "" msgstr ""
"Порожній кортеж `()` також відомий як \"тип одиниці\". Це і тип, і єдине " "Порожній кортеж `()` також відомий як \"тип агрегату\". Це і тип, і єдине "
"дійсне значення цього типу, тобто і тип, і його значення виражаються як " "дійсне значення цього типу, тобто і тип, і його значення виражаються як "
"`()`. Він використовується, наприклад, щоб вказати, що функція або вираз не " "`()`. Він використовується, наприклад, щоб вказати, що функція або вираз не "
"мають значення, що повертається, як ми побачимо на наступному слайді." "мають значення що повертається, як ми побачимо на наступному слайді."
#: src/basic-syntax/compound-types.md:59 #: src/basic-syntax/compound-types.md:59
msgid "" msgid ""
"You can think of it as `void` that can be familiar to you from other " "You can think of it as `void` that can be familiar to you from other "
"programming languages." "programming languages."
msgstr "" msgstr ""
"Ви можете думати про це як про «пустоту», яка може бути знайома вам з інших " "Ви можете думати про це як про `void`, який може бути знайомий вам з інших "
"мов програмування." "мов програмування."
#: src/basic-syntax/references.md:3 #: src/basic-syntax/references.md:3
@ -3122,8 +3128,8 @@ msgid ""
"We must dereference `ref_x` when assigning to it, similar to C and C++ " "We must dereference `ref_x` when assigning to it, similar to C and C++ "
"pointers." "pointers."
msgstr "" msgstr ""
"Ми повинні розіменувати ref_x під час призначення, подібно до покажчиків C і " "Ми повинні розіменувати `ref_x` під час присвоєння, подібно до вказівників C "
"C++." "і C++."
#: src/basic-syntax/references.md:17 #: src/basic-syntax/references.md:17
msgid "" msgid ""
@ -3131,7 +3137,7 @@ msgid ""
"methods (try `ref_x.count_ones()`)." "methods (try `ref_x.count_ones()`)."
msgstr "" msgstr ""
"У деяких випадках Rust виконує автоматичне розіменування, зокрема під час " "У деяких випадках Rust виконує автоматичне розіменування, зокрема під час "
"виклику методів (спробуйте ref_x.count_ones())." "виклику методів (спробуйте `ref_x.count_ones()`)."
#: src/basic-syntax/references.md:19 #: src/basic-syntax/references.md:19
msgid "" msgid ""
@ -3185,11 +3191,11 @@ msgstr ""
#: src/basic-syntax/references-dangling.md:19 #: src/basic-syntax/references-dangling.md:19
msgid "We will talk more about borrowing when we get to ownership." msgid "We will talk more about borrowing when we get to ownership."
msgstr "Про запозичення ми поговоримо більше, коли дійдемо до власності." msgstr "Про запозичення ми поговоримо більше, коли дійдемо до володіння."
#: src/basic-syntax/slices.md:3 #: src/basic-syntax/slices.md:3
msgid "A slice gives you a view into a larger collection:" msgid "A slice gives you a view into a larger collection:"
msgstr "Фрагмент дає змогу переглянути більшу колекцію:" msgstr "Зріз дає змогу переглянути більшу колекцію:"
#: src/basic-syntax/slices.md:5 #: src/basic-syntax/slices.md:5
msgid "" msgid ""
@ -3219,8 +3225,8 @@ msgid ""
"We create a slice by borrowing `a` and specifying the starting and ending " "We create a slice by borrowing `a` and specifying the starting and ending "
"indexes in brackets." "indexes in brackets."
msgstr "" msgstr ""
"Ми створюємо фрагмент, запозичуючи `a` та вказуючи початковий і кінцевий " "Ми створюємо зріз, запозичуючи `a` та вказуючи початковий і кінцевий індекси "
"індекси в дужках." "в дужках."
#: src/basic-syntax/slices.md:23 #: src/basic-syntax/slices.md:23
msgid "" msgid ""
@ -3228,7 +3234,7 @@ msgid ""
"starting index, meaning that `&a[0..a.len()]` and `&a[..a.len()]` are " "starting index, meaning that `&a[0..a.len()]` and `&a[..a.len()]` are "
"identical." "identical."
msgstr "" msgstr ""
"Якщо фрагмент починається з індексу 0, синтаксис діапазону Rust дозволяє нам " "Якщо зріз починається з індексу 0, синтаксис діапазону Rust дозволяє нам "
"відкинути початковий індекс, тобто `&a[0..a.len()]` і `&a[..a.len()]` " "відкинути початковий індекс, тобто `&a[0..a.len()]` і `&a[..a.len()]` "
"ідентичні." "ідентичні."
@ -3237,15 +3243,14 @@ msgid ""
"The same is true for the last index, so `&a[2..a.len()]` and `&a[2..]` are " "The same is true for the last index, so `&a[2..a.len()]` and `&a[2..]` are "
"identical." "identical."
msgstr "" msgstr ""
"Те саме стосується останнього індексу, тому `&a[2..a.len()]` і `&a[2..]` " "Теж саме стосується останнього індексу, тому `&a[2..a.len()]` і `&a[2..]` "
"ідентичні." "ідентичні."
#: src/basic-syntax/slices.md:27 #: src/basic-syntax/slices.md:27
msgid "" msgid ""
"To easily create a slice of the full array, we can therefore use `&a[..]`." "To easily create a slice of the full array, we can therefore use `&a[..]`."
msgstr "" msgstr ""
"Щоб легко створити фрагмент повного масиву, ми можемо використовувати " "Щоб легко створити зріз повного масиву, ми можемо використовувати `&a[..]`."
"`&a[..]`."
#: src/basic-syntax/slices.md:29 #: src/basic-syntax/slices.md:29
msgid "" msgid ""
@ -3253,7 +3258,7 @@ msgid ""
"(`&[i32]`) no longer mentions the array length. This allows us to perform " "(`&[i32]`) no longer mentions the array length. This allows us to perform "
"computation on slices of different sizes." "computation on slices of different sizes."
msgstr "" msgstr ""
"`s` є посиланням на фрагмент `i32`s. Зверніть увагу, що тип `s` (`&[i32]`) " "`s` є посиланням на зріз `i32`s. Зверніть увагу, що тип `s` (`&[i32]`) "
"більше не згадує довжину масиву. Це дозволяє нам виконувати обчислення на " "більше не згадує довжину масиву. Це дозволяє нам виконувати обчислення на "
"зрізах різного розміру." "зрізах різного розміру."
@ -3262,9 +3267,9 @@ msgid ""
"Slices always borrow from another object. In this example, `a` has to remain " "Slices always borrow from another object. In this example, `a` has to remain "
"'alive' (in scope) for at least as long as our slice. " "'alive' (in scope) for at least as long as our slice. "
msgstr "" msgstr ""
"Зрізи завжди запозичуються з іншого об'єкта. У цьому прикладі \"a\" має " "Зрізи завжди запозичуються з іншого об'єкта. У цьому прикладі `a` має "
"залишатися \"живим\" (в області видимості) принаймні стільки ж, скільки наш " "залишатися 'живим' (в області застосування) принаймні стільки ж, скільки наш "
"фрагмент." "зріз."
#: src/basic-syntax/slices.md:33 #: src/basic-syntax/slices.md:33
msgid "" msgid ""
@ -3278,9 +3283,9 @@ msgstr ""
"Питання про модифікацію `a[3]` може викликати цікаву дискусію, але відповідь " "Питання про модифікацію `a[3]` може викликати цікаву дискусію, але відповідь "
"полягає в тому, що з міркувань безпеки пам’яті ви не можете зробити це через " "полягає в тому, що з міркувань безпеки пам’яті ви не можете зробити це через "
"`a` на цьому етапі виконання, але ви можете читати дані з обох `a ` і `s` " "`a` на цьому етапі виконання, але ви можете читати дані з обох `a ` і `s` "
"безпечно. Він працює до того, як ви створили фрагмент, і знову після " "безпечно. Це спрацьовує до того, як ви створили зріз, і знову після "
"`println`, коли фрагмент більше не використовується. Докладніше буде описано " "`println`, коли зріз більше не використовується. Докладніше буде описано у "
"в розділі перевірки запозичень." "розділі перевірки запозичень."
#: src/basic-syntax/string-slices.md:1 #: src/basic-syntax/string-slices.md:1
msgid "`String` vs `str`" msgid "`String` vs `str`"
@ -3314,7 +3319,7 @@ msgstr "Термінологія Rust:"
#: src/basic-syntax/string-slices.md:22 #: src/basic-syntax/string-slices.md:22
msgid "`&str` an immutable reference to a string slice." msgid "`&str` an immutable reference to a string slice."
msgstr "`&str` незмінне посилання на фрагмент рядка." msgstr "`&str` незмінне посилання на зріз рядка."
#: src/basic-syntax/string-slices.md:23 #: src/basic-syntax/string-slices.md:23
msgid "`String` a mutable string buffer." msgid "`String` a mutable string buffer."
@ -3326,8 +3331,8 @@ msgid ""
"encoded string data stored in a block of memory. String literals " "encoded string data stored in a block of memory. String literals "
"(`”Hello”`), are stored in the program’s binary." "(`”Hello”`), are stored in the program’s binary."
msgstr "" msgstr ""
"`&str` представляє фрагмент рядка, який є незмінним посиланням на дані рядка " "`&str` представляє зріз рядка, який є незмінним посиланням на дані рядка в "
"в кодуванні UTF-8, що зберігаються в блоці пам’яті. Рядкові літерали " "кодуванні UTF-8, що зберігаються в блоці пам’яті. Рядкові літерали "
"(`”Hello”`) зберігаються у бінарному файлі програми." "(`”Hello”`) зберігаються у бінарному файлі програми."
#: src/basic-syntax/string-slices.md:30 #: src/basic-syntax/string-slices.md:30
@ -3335,8 +3340,8 @@ msgid ""
"Rust’s `String` type is a wrapper around a vector of bytes. As with a " "Rust’s `String` type is a wrapper around a vector of bytes. As with a "
"`Vec<T>`, it is owned." "`Vec<T>`, it is owned."
msgstr "" msgstr ""
"Тип `String` Rust — це оболонка навколо вектора байтів. Як і у випадку з " "Тип `String` в Rust — це оболонка навколо вектора байтів. Як і у випадку з "
"`Vec<T>`, він належить." "`Vec<T>`, він є власністю."
#: src/basic-syntax/string-slices.md:32 #: src/basic-syntax/string-slices.md:32
msgid "" msgid ""
@ -3344,6 +3349,9 @@ msgid ""
"literal; `String::new()` creates a new empty string, to which string data " "literal; `String::new()` creates a new empty string, to which string data "
"can be added using the `push()` and `push_str()` methods." "can be added using the `push()` and `push_str()` methods."
msgstr "" msgstr ""
"Як і багато інших типів, `String::from()` створює рядок із рядкового "
"літералу; `String::new()` створює новий порожній рядок, до якого дані рядка "
"можна додати за допомогою методів `push()` і `push_str()`."
#: src/basic-syntax/string-slices.md:35 #: src/basic-syntax/string-slices.md:35
msgid "" msgid ""
@ -3359,7 +3367,8 @@ msgid ""
"You can borrow `&str` slices from `String` via `&` and optionally range " "You can borrow `&str` slices from `String` via `&` and optionally range "
"selection." "selection."
msgstr "" msgstr ""
"Ви можете запозичити фрагменти `&str` з `String` через `&` і вибір діапазону." "Ви можете запозичити зріз `&str` з `String` через `&` і, за бажанням, вибіру "
"діапазону."
#: src/basic-syntax/string-slices.md:40 #: src/basic-syntax/string-slices.md:40
msgid "" msgid ""
@ -3372,7 +3381,7 @@ msgstr ""
"той, який завжди вказує на дійсний рядок у пам’яті. Rust `String` — це " "той, який завжди вказує на дійсний рядок у пам’яті. Rust `String` — це "
"приблизний еквівалент `std::string` з C++ (головна відмінність: він може " "приблизний еквівалент `std::string` з C++ (головна відмінність: він може "
"містити лише байти в кодуванні UTF-8 і ніколи не використовуватиме " "містити лише байти в кодуванні UTF-8 і ніколи не використовуватиме "
"оптимізацію за малими рядками)." "оптимізацію малих рядків)."
#: src/basic-syntax/functions.md:3 #: src/basic-syntax/functions.md:3
msgid "" msgid ""
@ -3426,22 +3435,24 @@ msgid ""
"Declaration parameters are followed by a type (the reverse of some " "Declaration parameters are followed by a type (the reverse of some "
"programming languages), then a return type." "programming languages), then a return type."
msgstr "" msgstr ""
"За параметрами оголошення слідує тип (зворотній зв’язок з деякими мовами " "Параметри оголошення супроводжуються типом (у зворотному порядку порівняно з "
"програмування), а потім тип повернення." "деякими мовами програмування), а потім тип повернення."
#: src/basic-syntax/functions.md:37 #: src/basic-syntax/functions.md:37
msgid "" msgid ""
"The last expression in a function body (or any block) becomes the return " "The last expression in a function body (or any block) becomes the return "
"value. Simply omit the `;` at the end of the expression." "value. Simply omit the `;` at the end of the expression."
msgstr "" msgstr ""
"Останній вираз у тілі функції (або будь-якому блоці) стає значенням, що "
"повертається. Просто опустіть `;` в кінці виразу."
#: src/basic-syntax/functions.md:38 #: src/basic-syntax/functions.md:38
msgid "" msgid ""
"Some functions have no return value, and return the 'unit type', `()`. The " "Some functions have no return value, and return the 'unit type', `()`. The "
"compiler will infer this if the `-> ()` return type is omitted." "compiler will infer this if the `-> ()` return type is omitted."
msgstr "" msgstr ""
"Деякі функції не мають значення, що повертається, і повертають «тип одиниці " "Деякі функції не мають значення, що повертається, і повертають 'тип "
"вимірювання», `()`. Компілятор визначить це, якщо тип повернення `-> ()` " "агрегату', `()`. Компілятор визначить це, якщо тип повернення `-> ()` "
"пропущено." "пропущено."
#: src/basic-syntax/functions.md:39 #: src/basic-syntax/functions.md:39
@ -3483,10 +3494,10 @@ msgid ""
"(https://doc.rust-lang.org/rustdoc/what-is-rustdoc.html) tool. It is " "(https://doc.rust-lang.org/rustdoc/what-is-rustdoc.html) tool. It is "
"idiomatic to document all public items in an API using this pattern." "idiomatic to document all public items in an API using this pattern."
msgstr "" msgstr ""
"Вміст розглядається як Markdown. Усі опубліковані ящики бібліотеки Rust " "Вміст розглядається як Markdown. Усі опубліковані крейти бібліотеки Rust "
"автоматично документуються на [`docs.rs`](https://docs.rs) за допомогою " "автоматично документуються на [`docs.rs`](https://docs.rs) за допомогою "
"[rustdoc](https://doc.rust-lang.org/rustdoc/what-is-rustdoc) .html). " "[rustdoc](https://doc.rust-lang.org/rustdoc/what-is-rustdoc.html). Це "
"Ідіоматично документувати всі публічні елементи в API за допомогою цього " "ідіоматично документувати всі публічні елементи в API за допомогою цього "
"шаблону." "шаблону."
#: src/basic-syntax/rustdoc.md:24 #: src/basic-syntax/rustdoc.md:24
@ -3494,8 +3505,8 @@ msgid ""
"Show students the generated docs for the `rand` crate at [`docs.rs/rand`]" "Show students the generated docs for the `rand` crate at [`docs.rs/rand`]"
"(https://docs.rs/rand)." "(https://docs.rs/rand)."
msgstr "" msgstr ""
"Покажіть студентам згенеровані документи для ящика `rand` на [`docs.rs/rand`]" "Покажіть студентам згенеровані документи для крейта `rand` на [`docs.rs/"
"(https://docs.rs/rand)." "rand`](https://docs.rs/rand)."
#: src/basic-syntax/rustdoc.md:27 #: src/basic-syntax/rustdoc.md:27
msgid "" msgid ""
@ -3510,7 +3521,7 @@ msgid ""
"Inner doc comments are discussed later (in the page on modules) and need not " "Inner doc comments are discussed later (in the page on modules) and need not "
"be addressed here." "be addressed here."
msgstr "" msgstr ""
"Коментарі до внутрішнього документа обговорюються пізніше (на сторінці " "Коментарі до внутрішніх документів обговорюються пізніше (на сторінці "
"модулів), і їх тут не потрібно розглядати." "модулів), і їх тут не потрібно розглядати."
#: src/basic-syntax/rustdoc.md:33 #: src/basic-syntax/rustdoc.md:33
@ -3519,7 +3530,7 @@ msgid ""
"`cargo test`. We will discuss these tests in the [Testing section](../" "`cargo test`. We will discuss these tests in the [Testing section](../"
"testing/doc-tests.html)." "testing/doc-tests.html)."
msgstr "" msgstr ""
"Коментарі Rustdoc можуть містити фрагменти коду, які ми можемо запускати та " "Коментарі rustdoc можуть містити фрагменти коду, які ми можемо запускати та "
"тестувати за допомогою `cargo test`. Ми обговоримо ці тести в [розділі " "тестувати за допомогою `cargo test`. Ми обговоримо ці тести в [розділі "
"тестування](../testing/doc-tests.html)." "тестування](../testing/doc-tests.html)."
@ -3528,8 +3539,8 @@ msgid ""
"Methods are functions associated with a type. The `self` argument of a " "Methods are functions associated with a type. The `self` argument of a "
"method is an instance of the type it is associated with:" "method is an instance of the type it is associated with:"
msgstr "" msgstr ""
"Методи — це функції, пов’язані з типом. Аргумент `self` методу є екземпляром " "Методи — це функції, які пов’язані з типом. Аргумент `self` методу є "
"типу, з яким він пов’язаний:" "екземпляром типу, з яким він пов’язаний:"
#: src/basic-syntax/methods.md:6 #: src/basic-syntax/methods.md:6
msgid "" msgid ""
@ -3563,13 +3574,14 @@ msgid ""
"We will look much more at methods in today's exercise and in tomorrow's " "We will look much more at methods in today's exercise and in tomorrow's "
"class." "class."
msgstr "" msgstr ""
"Ми розглянемо методи набагато більше в сьогоднішній вправі та на " "Ми розглянемо методи набагато детальніше в сьогоднішній вправі та на "
"завтрашньому уроці." "завтрашньому уроці."
#: src/basic-syntax/methods.md:34 #: src/basic-syntax/methods.md:34
msgid "Add a static method called `Rectangle::new` and call this from `main`:" msgid "Add a static method called `Rectangle::new` and call this from `main`:"
msgstr "" msgstr ""
"Додайте статичний метод під назвою `Rectangle::new` і викличте це з `main`:" "Додайте статичний метод під назвою `Rectangle::new` і викличте його із "
"`main`:"
#: src/basic-syntax/methods.md:36 #: src/basic-syntax/methods.md:36
msgid "" msgid ""
@ -3587,7 +3599,7 @@ msgid ""
"constructor, `Rectangle { width, height }`, could be called directly. See " "constructor, `Rectangle { width, height }`, could be called directly. See "
"the [Rustnomicon](https://doc.rust-lang.org/nomicon/constructors.html)." "the [Rustnomicon](https://doc.rust-lang.org/nomicon/constructors.html)."
msgstr "" msgstr ""
"Хоча _технічно_, Rust не має спеціальних конструкторів, для ініціалізації " "Хоча _технічно_, Rust не має нестандартних конструкторів, для ініціалізації "
"структур зазвичай використовуються статичні методи (але це не обов’язково). " "структур зазвичай використовуються статичні методи (але це не обов’язково). "
"Фактичний конструктор, `Rectangle { width, height }`, можна викликати " "Фактичний конструктор, `Rectangle { width, height }`, можна викликати "
"безпосередньо. Перегляньте [Rustnomicon](https://doc.rust-lang.org/nomicon/" "безпосередньо. Перегляньте [Rustnomicon](https://doc.rust-lang.org/nomicon/"
@ -3599,7 +3611,7 @@ msgid ""
"static methods can take arbitrary parameters." "static methods can take arbitrary parameters."
msgstr "" msgstr ""
"Додайте конструктор `Rectangle::square(width: u32)`, щоб проілюструвати, що " "Додайте конструктор `Rectangle::square(width: u32)`, щоб проілюструвати, що "
"такі статичні методи можуть приймати довільні параметри." "такі статичні методи можуть приймати будь-яки параметри."
#: src/basic-syntax/functions-interlude.md:1 #: src/basic-syntax/functions-interlude.md:1
msgid "Function Overloading" msgid "Function Overloading"
@ -3635,7 +3647,7 @@ msgstr "Макроси іноді використовуються як альт
#: src/basic-syntax/functions-interlude.md:12 #: src/basic-syntax/functions-interlude.md:12
msgid "However, function parameters can be generic:" msgid "However, function parameters can be generic:"
msgstr "Однак параметри функції можуть бути загальними:" msgstr "Однак параметри функції можуть бути узагальнені:"
#: src/basic-syntax/functions-interlude.md:14 #: src/basic-syntax/functions-interlude.md:14
msgid "" msgid ""
@ -3657,9 +3669,9 @@ msgid ""
"limited polymorphism on argument types. We will see more details in a later " "limited polymorphism on argument types. We will see more details in a later "
"section." "section."
msgstr "" msgstr ""
"При використанні дженериків стандартна бібліотека `Into<T>` може забезпечити " "При використанні узагальнених типів, `Into<T>` зі стандартної бібліотеки "
"певний обмежений поліморфізм типів аргументів. Ми побачимо більше деталей у " "може забезпечити певний обмежений поліморфізм типів аргументів. Ми побачимо "
"наступному розділі." "більше деталей у наступному розділі."
#: src/exercises/day-1/morning.md:1 #: src/exercises/day-1/morning.md:1
msgid "Day 1: Morning Exercises" msgid "Day 1: Morning Exercises"
@ -3675,7 +3687,7 @@ msgstr "Неявні перетворення між типами."
#: src/exercises/day-1/morning.md:7 #: src/exercises/day-1/morning.md:7
msgid "Arrays and `for` loops." msgid "Arrays and `for` loops."
msgstr "Масиви та цикли for." msgstr "Масиви та цикли `for`."
#: src/exercises/day-1/morning.md:11 #: src/exercises/day-1/morning.md:11
msgid "A few things to consider while solving the exercises:" msgid "A few things to consider while solving the exercises:"
@ -3694,7 +3706,7 @@ msgstr ""
#: src/exercises/day-1/morning.md:17 #: src/exercises/day-1/morning.md:17
msgid "Alternatively, use the Rust Playground." msgid "Alternatively, use the Rust Playground."
msgstr "Крім того, скористайтеся ігровим майданчиком Rust." msgstr "Як варіант, скористайтеся Rust Playground."
#: src/exercises/day-1/morning.md:19 #: src/exercises/day-1/morning.md:19
msgid "" msgid ""
@ -3751,10 +3763,10 @@ msgid ""
msgstr "" msgstr ""
"Усі цілі типи Rust реалізують [`From<T>`](https://doc.rust-lang.org/std/" "Усі цілі типи Rust реалізують [`From<T>`](https://doc.rust-lang.org/std/"
"convert/trait.From.html) і [`Into<T>`](https: //doc.rust-lang.org/std/" "convert/trait.From.html) і [`Into<T>`](https: //doc.rust-lang.org/std/"
"convert/trait.Into.html), щоб ми могли конвертувати між ними. Характеристика " "convert/trait.Into.html) трейти, щоб ми могли конвертувати між ними. Трейт "
"`From<T>` має єдиний метод `from()`, а ознака `Into<T>` має один метод " "`From<T>` має єдиний метод `from()`, а трейт `Into<T>` має один метод "
"`into()`. Реалізація цих ознак є тим, як тип виражає, що його можна " "`into()`. Реалізація цих трейтів є тим засобом, яким тип виражає, що його "
"перетворити на інший тип." "можна перетворити на інший тип."
#: src/exercises/day-1/implicit-conversions.md:25 #: src/exercises/day-1/implicit-conversions.md:25
msgid "" msgid ""
@ -3775,9 +3787,9 @@ msgid ""
"it is sufficient to only implement `From` to get a respective `Into` " "it is sufficient to only implement `From` to get a respective `Into` "
"implementation automatically." "implementation automatically."
msgstr "" msgstr ""
"Те саме стосується ваших власних реалізацій `From` для ваших власних типів, " "Те саме стосується і ваших власних реалізацій `From` для ваших власних "
"тому достатньо реалізувати лише `From`, щоб автоматично отримати відповідну " ипів, тому достатньо реалізувати лише `From`, щоб автоматично отримати "
"реалізацію `Into`." "відповідну реалізацію `Into`."
#: src/exercises/day-1/implicit-conversions.md:33 #: src/exercises/day-1/implicit-conversions.md:33
msgid "Execute the above program and look at the compiler error." msgid "Execute the above program and look at the compiler error."
@ -3786,7 +3798,8 @@ msgstr "Виконайте наведену вище програму та по
#: src/exercises/day-1/implicit-conversions.md:35 #: src/exercises/day-1/implicit-conversions.md:35
msgid "Update the code above to use `into()` to do the conversion." msgid "Update the code above to use `into()` to do the conversion."
msgstr "" msgstr ""
"Оновіть код вище, щоб використовувати `in()` для виконання перетворення." "Оновіть код вище таким чином, щоб використовувати `into()` для виконання "
"перетворення."
#: src/exercises/day-1/implicit-conversions.md:37 #: src/exercises/day-1/implicit-conversions.md:37
msgid "" msgid ""
@ -3798,18 +3811,18 @@ msgid ""
msgstr "" msgstr ""
"Змініть типи `x` і `y` на інші речі (наприклад, `f32`, `bool`, `i128`), щоб " "Змініть типи `x` і `y` на інші речі (наприклад, `f32`, `bool`, `i128`), щоб "
"побачити, які типи можна перетворити на інші типи. Спробуйте перетворити " "побачити, які типи можна перетворити на інші типи. Спробуйте перетворити "
"малі типи на великі типи і навпаки. Перевірте [стандартну бібліотечну " "малі типи на великі типи і навпаки. Подивіться [документацію стандартної "
"документацію](https://doc.rust-lang.org/std/convert/trait.From.html), щоб " "бібліотеки](https://doc.rust-lang.org/std/convert/trait.From.html), щоб "
"перевірити, чи реалізовано `From<T>` для пар, які ви перевіряєте." "перевірити, чи реалізовано `From<T>` для пар типів, які ви перевіряєте."
#: src/exercises/day-1/for-loops.md:1 #: src/exercises/day-1/for-loops.md:1
#: src/exercises/day-1/solutions-morning.md:3 #: src/exercises/day-1/solutions-morning.md:3
msgid "Arrays and `for` Loops" msgid "Arrays and `for` Loops"
msgstr "Масиви та цикли for" msgstr "Масиви та цикли `for`"
#: src/exercises/day-1/for-loops.md:3 #: src/exercises/day-1/for-loops.md:3
msgid "We saw that an array can be declared like this:" msgid "We saw that an array can be declared like this:"
msgstr "Ми побачили, що масив можна оголосити так:" msgstr "Ми побачили, що масив можна декларувати так:"
#: src/exercises/day-1/for-loops.md:5 #: src/exercises/day-1/for-loops.md:5
msgid "" msgid ""
@ -3823,8 +3836,8 @@ msgid ""
"You can print such an array by asking for its debug representation with `{:?}" "You can print such an array by asking for its debug representation with `{:?}"
"`:" "`:"
msgstr "" msgstr ""
"Ви можете надрукувати такий масив, запитавши його представлення налагодження " "Ви можете надрукувати такий масив, запитавши його налагоджувальне "
"за допомогою `{:?}`:" "представлення за допомогою `{:?}`:"
#: src/exercises/day-1/for-loops.md:11 #: src/exercises/day-1/for-loops.md:11
msgid "" msgid ""
@ -3892,7 +3905,7 @@ msgid ""
"Copy the code below to <https://play.rust-lang.org/> and implement the " "Copy the code below to <https://play.rust-lang.org/> and implement the "
"functions:" "functions:"
msgstr "" msgstr ""
"Скопіюйте наведений нижче код на <https://play.rust-lang.org/> і застосуйте " "Скопіюйте наведений нижче код до <https://play.rust-lang.org/> та застосуйте "
"функції:" "функції:"
#: src/exercises/day-1/for-loops.md:52 #: src/exercises/day-1/for-loops.md:52
@ -3936,9 +3949,9 @@ msgid ""
"argument and return types? Something like `&[&[i32]]` for a two-dimensional " "argument and return types? Something like `&[&[i32]]` for a two-dimensional "
"slice-of-slices. Why or why not?" "slice-of-slices. Why or why not?"
msgstr "" msgstr ""
"Чи можете ви використати фрагменти `&[i32]` замість жорстко закодованих " "Чи можете ви використати зрізи `&[i32]` замість жорстко закодованих матриць "
"матриць 3 × 3 для ваших аргументів і типів повернення? Щось на зразок " "3 × 3 для ваших аргументів і типів повернення? Щось на зразок `&[&[i32]]` "
"`&[&[i32]]` для двовимірного фрагмента фрагментів. Чому або чому ні?" "для двовимірного зрізу зрізів. Чому так або чому ні?"
#: src/exercises/day-1/for-loops.md:87 #: src/exercises/day-1/for-loops.md:87
msgid "" msgid ""
@ -3946,7 +3959,7 @@ msgid ""
"implementation." "implementation."
msgstr "" msgstr ""
"Перегляньте [`ndarray` ящик](https://docs.rs/ndarray/), щоб дізнатися про " "Перегляньте [`ndarray` ящик](https://docs.rs/ndarray/), щоб дізнатися про "
"якість виробництва." "якісну реалізацію, ака готова до використання."
#: src/exercises/day-1/for-loops.md:92 #: src/exercises/day-1/for-loops.md:92
msgid "" msgid ""