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