From 057d50a3bc80a4df93a05325e8dd9bf83e1a2b1a Mon Sep 17 00:00:00 2001 From: Jiyong Park <55639800+jiyongp@users.noreply.github.com> Date: Thu, 16 Feb 2023 16:40:54 +0900 Subject: [PATCH] Refine ko-translation for Day 3 morning (#420) --- po/ko.po | 212 +++++++++++++++++++++++++++---------------------------- 1 file changed, 104 insertions(+), 108 deletions(-) diff --git a/po/ko.po b/po/ko.po index 83e69e4d..dacac0e5 100644 --- a/po/ko.po +++ b/po/ko.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: [ν•œκ΅­μ–΄]Comprehensive Rust πŸ¦€\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-02-16 11:29+0900\n" +"PO-Revision-Date: 2023-02-16 16:17+0900\n" "Last-Translator: keispace \n" "Language-Team: \n" "Language: ko\n" @@ -8047,24 +8047,23 @@ msgstr "# 3일차 κ°œμš”" #: src/welcome-day-3.md:3 msgid "Today, we will cover some more advanced topics of Rust:" -msgstr "μ˜€λŠ˜μ€ 러슀트의 λͺ‡κ°€μ§€ κ³ κΈ‰ 주제λ₯Ό λ‹€λ£Ήλ‹ˆλ‹€:" +msgstr "μ˜€λŠ˜μ€ λͺ‡ 가지 κ³ κΈ‰ 주제λ₯Ό λ‹€λ£Ήλ‹ˆλ‹€:" #: src/welcome-day-3.md:5 msgid "" "* Traits: deriving traits, default methods, and important standard library\n" " traits." -msgstr "* 트레이트: 트레이트 νŒŒμƒ(derive), κΈ°λ³Έ λ©”μ„œλ“œ, μ£Όμš” ν‘œμ€€λΌμ΄λΈŒλŸ¬λ¦¬ 트레이트" +msgstr "* 트레이트: 트레이트 상속(derive), λ””ν΄νŠΈ λ©”μ„œλ“œ, ν‘œμ€€ λΌμ΄λΈŒλŸ¬μ— μžˆλŠ” μ€‘μš”ν•œ 트레이트 λ“€" #: src/welcome-day-3.md:8 msgid "" "* Generics: generic data types, generic methods, monomorphization, and trait\n" " objects." -msgstr "" -"* μ œλ„ˆλ¦­: μ œλ„ˆλ¦­ 데이터 νƒ€μž…, μ œλ„ˆλ¦­ λ©”μ„œλ“œ, λ‹¨ν˜•ν™”(monomorphization), 그리고 트레이트 객체" +msgstr "* μ œλ„ˆλ¦­: μ œλ„ˆλ¦­ 데이터 νƒ€μž…, μ œλ„ˆλ¦­ λ©”μ„œλ“œ, λ‹¨ν˜•ν™”(monomorphization), 트레이트 객체" #: src/welcome-day-3.md:11 msgid "* Error handling: panics, `Result`, and the try operator `?`." -msgstr "* 였λ₯˜μ²˜λ¦¬(μ—λŸ¬ 핸듀링): νŒ¨λ‹‰, Result, ?μ—°μ‚°μž(μ‹œν–‰ μ—°μ‚°μž)" +msgstr "* 였λ₯˜μ²˜λ¦¬(μ—λŸ¬ 핸듀링): νŒ¨λ‹‰, `Result`, `?` μ—°μ‚°μž" #: src/welcome-day-3.md:13 msgid "* Testing: unit tests, documentation tests, and integration tests." @@ -8074,7 +8073,7 @@ msgstr "* ν…ŒμŠ€νŠΈ: λ‹¨μœ„ ν…ŒμŠ€νŠΈ, λ¬Έμ„œ ν…ŒμŠ€νŠΈ 및 톡합 ν…ŒμŠ€νŠΈ" msgid "" "* Unsafe Rust: raw pointers, static variables, unsafe functions, and extern\n" " functions." -msgstr "* μ•ˆμ „ν•˜μ§€ μ•Šμ€ 러슀트: μ›μ‹œ(raw) 포인터, 정적 λ³€μˆ˜, μ•ˆμ „ν•˜μ§€ μ•Šμ€ ν•¨μˆ˜, μ™ΈλΆ€ ν•¨μˆ˜" +msgstr "* μ•ˆμ „ν•˜μ§€ μ•Šμ€ 러슀트: μ›μ‹œ(raw) 포인터, 정적 λ³€μˆ˜, μ•ˆμ „ν•˜μ§€ μ•Šμ€ ν•¨μˆ˜, μ™ΈλΆ€ ν•¨μˆ˜" #: src/traits.md:1 msgid "# Traits" @@ -8082,7 +8081,7 @@ msgstr "# 트레이트(Trait)" #: src/traits.md:3 msgid "Rust lets you abstract over types with traits. They're similar to interfaces:" -msgstr "λŸ¬μŠ€νŠΈλŠ” μΈν„°νŽ˜μ΄μŠ€ 처럼 νŠΈλ ˆμ΄νŠΈκ°€ μžˆλŠ” νƒ€μž…μ„ 좔상화 ν•  수 μžˆμŠ΅λ‹ˆλ‹€: " +msgstr "νŠΈλ ˆμ΄νŠΈλŠ” νƒ€μž…μ„ 좔상화 ν•˜λŠ”λ° μ‚¬μš©λ©λ‹ˆλ‹€. μΈν„°νŽ˜μ΄μŠ€μ™€ λΉ„μŠ·ν•©λ‹ˆλ‹€:" #: src/traits.md:5 msgid "" @@ -8101,7 +8100,7 @@ msgstr "" #: src/traits.md:14 msgid "struct Cat; // No name, cats won't respond to it anyway." -msgstr "struct Cat; // 이름속성이 μ—†μŠ΅λ‹ˆλ‹€. κ³ μ–‘μ΄λŠ” μ–΄μ¨Œλ“  λ°˜μ‘ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€:)" +msgstr "struct Cat; // 이름이 μ—†μŠ΅λ‹ˆλ‹€. 이름이 μžˆλ”λΌλ„ κ³ μ–‘μ΄λŠ” μ–΄μ°¨ν”Ό λΆˆλŸ¬λ„ λ°˜μ‘ 없을 κ²λ‹ˆλ‹€." #: src/traits.md:16 msgid "" @@ -8136,7 +8135,6 @@ msgid "" msgstr "" #: src/traits.md:41 -#, fuzzy msgid "" "* Traits may specify pre-implemented (default) methods and methods that users are required to " "implement themselves. Methods with default implementations can rely on required methods.\n" @@ -8148,11 +8146,13 @@ msgid "" "consists of two components, a pointer to the actual object and a pointer to the virtual method " "table for the `Greet` implementation of that particular object." msgstr "" -"* νŠΈλ ˆμ΄νŠΈλŠ” μ‚¬μš©μžκ°€ 직접 κ΅¬ν˜„ν•΄μ•Όν•˜λŠ” λ©”μ„œλ“œμ™€ 사전 κ΅¬ν˜„λœ(κΈ°λ³Έ) λ©”μ„œλ“œλ₯Ό 지정할 수 μžˆμŠ΅λ‹ˆλ‹€. κΈ°" -"λ³Έ κ΅¬ν˜„λœ λ©”μ„œλ“œλŠ” (λ‹€λ₯Έ)ν•„μˆ˜ λ©”μ„œλ“œλ₯Ό μ˜μ‘΄ν•  수 μžˆμŠ΅λ‹ˆλ‹€.\n" -"* 주어진 트레이트λ₯Ό κ΅¬ν˜„ν•˜λŠ” νƒ€μž…μ€ 크기가 λ‹€λ₯Ό 수 μžˆμŠ΅λ‹ˆλ‹€. μ΄λŠ” μœ„μ˜ μ˜ˆμ‹œμ—μ„œ `Vec`와 κ°™" -"은 것을 κ°€μ§ˆ 수 μ—†κ²Œ ν•©λ‹ˆλ‹€.\n" -"* `dyn Greet`λŠ” μ»΄νŒŒμΌλŸ¬μ—κ²Œ `Greet`을 κ΅¬ν˜„ν•˜λŠ” 동적 μ‚¬μ΄μ¦ˆ νƒ€μž…μ„ μ•Œλ €μ£ΌλŠ” ν‘œκΈ°μž…λ‹ˆλ‹€." +"* νŠΈλ ˆμ΄νŠΈλŠ” μ‚¬μš©μžκ°€ 직접 κ΅¬ν˜„ν•΄μ•Ό ν•˜λŠ” λ©”μ„œλ“œμ™€ 사전 κ΅¬ν˜„λœ(λ””ν΄νŠΈ) λ©”μ„œλ“œλ₯Ό 지정할 수 μžˆμŠ΅λ‹ˆλ‹€. " +"κΈ°λ³Έ κ΅¬ν˜„λœ λ©”μ„œλ“œλŠ” (λ‹€λ₯Έ)ν•„μˆ˜ λ©”μ„œλ“œλ₯Ό μ˜μ‘΄ν•  수 μžˆμŠ΅λ‹ˆλ‹€.\n" +"* μ—¬λŸ¬ νƒ€μž…μ΄ 같은 트레이트λ₯Ό κ΅¬ν˜„ν•˜λ”λΌλ„ κ·Έ ν¬κΈ°λŠ” μ„œλ‘œ λ‹€λ₯Ό 수 μžˆμŠ΅λ‹ˆλ‹€. κ·Έλž˜μ„œ `Vec`κ°™" +"은 것은 λΆˆκ°€λŠ₯ν•©λ‹ˆλ‹€. μ™œλƒν•˜λ©΄ `Greet`트레이트λ₯Ό κ΅¬ν˜„ν•˜λŠ” νƒ€μž…λ“€ 쀑 μ–΄λ–€ 크기의 νƒ€μž…μ΄ μ‹€μ œλ‘œ μ‚¬μš©" +"될 지, 컴파일 μ‹œμ— μ•Œ 방법이 μ—†λŠ” 반면, `Vec<>`λŠ” νƒ€μž…μ˜ 크기λ₯Ό 컴파일 μ‹œμ— μ•Œκ³ μž ν•˜κΈ° λ•Œλ¬Έμž…λ‹ˆ" +"λ‹€.\n" +"* `dyn Greet`λŠ” `Greet`을 κ΅¬ν˜„ν•˜λŠ”, κ°€λ³€ 크기의 νƒ€μž…μ„ μ˜λ―Έν•©λ‹ˆλ‹€." #: src/traits.md:46 msgid "" @@ -8179,8 +8179,8 @@ msgstr "# 트레이트 μƒμ†ν•˜κΈ°(Deriving Traits)" #: src/traits/deriving-traits.md:3 msgid "You can let the compiler derive a number of traits:" msgstr "" -"μ»΄νŒŒμΌλŸ¬κ°€ μ—¬λŸ¬κ°€μ§€ 트레이트λ₯Ό 상속(derive)ν•˜λ„λ‘ ν•  수 μžˆμŠ΅λ‹ˆλ‹€:\n" -"* _μ—­μ£Ό: derive 메타주석 이야기 μž…λ‹ˆλ‹€._" +"μ»΄νŒŒμΌλŸ¬κ°€ μ—¬λŸ¬κ°€μ§€ 트레이트λ₯Ό 상속(derive)ν•˜λ„λ‘ ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 이 경우 μ»΄νŒŒμΌλŸ¬κ°€ 트레이트λ₯Ό 자" +"λ™μœΌλ‘œ κ΅¬ν˜„ν•©λ‹ˆλ‹€." #: src/traits/deriving-traits.md:5 msgid "" @@ -8206,17 +8206,11 @@ msgstr "" #: src/traits/default-methods.md:1 msgid "# Default Methods" -msgstr "# κΈ°λ³Έ λ©”μ„œλ“œ" +msgstr "# λ””ν΄νŠΈ λ©”μ„œλ“œ" #: src/traits/default-methods.md:3 msgid "Traits can implement behavior in terms of other trait methods:" -msgstr "" -"νŠΈλ ˆμ΄νŠΈλŠ” λ‹€λ₯Έ 트레이트 λ©”μ„œλ“œμ—μ„œμ˜ λ™μž‘μ„ κ΅¬ν˜„ν•  수 μžˆμŠ΅λ‹ˆλ‹€.\n" -"* μ—­μ£Ό: \n" -" * Equals νŠΈλ ˆμ΄νŠΈμ—μ„œ equal은 μ„ μ–Έλ§Œ λ˜μ–΄μžˆκ³  not_equalμ—μ„œ 이λ₯Ό ν˜ΈμΆœν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. (좔상 λ©”" -"μ„œλ“œ)\n" -" * implμ—μ„œ equal λ©”μ„œλ“œλ₯Ό μ •μ˜ν•˜κ³  μžˆμ–΄μ„œ Centimeterμ—μ„œμ˜ equal λ©”μ„œλ“œλ₯Ό κ΅¬ν˜„λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€." -"(좔상 λ©”μ„œλ“œ κ΅¬ν˜„)" +msgstr "트레이트의 λ””ν΄νŠΈ λ©”μ„œλ“œμ—μ„œ λ‹€λ₯Έ(κ΅¬ν˜„λ˜μ§€ μ•Šμ€) λ©”μ†Œλ“œλ₯Ό μ΄μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€:" #: src/traits/default-methods.md:5 msgid "" @@ -8257,11 +8251,11 @@ msgstr "" #: src/traits/important-traits.md:1 msgid "# Important Traits" -msgstr "# μ€‘μš” 트레이트" +msgstr "# μ€‘μš”ν•œ νŠΈλ ˆμ΄νŠΈλ“€" #: src/traits/important-traits.md:3 msgid "We will now look at some of the most common traits of the Rust standard library:" -msgstr "러슀트 ν‘œμ€€ 라이브러리의 자주 μ‚¬μš©ν•˜λŠ” λͺ‡κ°€μ§€ 트레이트 μ˜ˆμ‹œμž…λ‹ˆλ‹€:" +msgstr "러슀트 ν‘œμ€€ λΌμ΄λΈŒλŸ¬λ¦¬μ—λŠ” λ‹€μŒκ³Ό 같은 λ²”μš© νŠΈλ ˆμ΄νŠΈλ“€μ΄ μ •μ˜λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€:" #: src/traits/important-traits.md:5 #, fuzzy @@ -8274,7 +8268,7 @@ msgid "" "* [`Default`][10] used to construct a default instance of a type." msgstr "" "* `Iterator`와 `IntoIterator` νŠΈλ ˆμ΄νŠΈλŠ” `for` λ£¨ν”„μ—μ„œ μ‚¬μš©λ©λ‹ˆλ‹€.\n" -"* `From`κ³Ό `Into` νŠΈλ ˆμ΄νŠΈλŠ” νƒ€μž…λ³€ν™˜μ‹œ μ‚¬μš©λ©λ‹ˆλ‹€.\n" +"* `From`κ³Ό `Into` νŠΈλ ˆμ΄νŠΈλŠ” 값을 λ³€ν™˜ν•  λ•Œ μ‚¬μš©λ©λ‹ˆλ‹€.\n" "* `Read`와 `Write` νŠΈλ ˆμ΄νŠΈλŠ” I/O에 μ‚¬μš©λ©λ‹ˆλ‹€.\n" "* `Add`, `Mul` λ“±μ˜ νŠΈλ ˆμ΄νŠΈλ“€μ€ μ—°μ‚°μž μ˜€λ²„λ‘œλ”©(overloading)에 μ‚¬μš©λ©λ‹ˆλ‹€.\n" "* `Drop` νŠΈλ ˆμ΄νŠΈλŠ” μ†Œλ©Έμž μ •μ˜μ— μ‚¬μš©λ©λ‹ˆλ‹€." @@ -8298,9 +8292,8 @@ msgid "# Iterators" msgstr "# Iterators" #: src/traits/iterator.md:3 -#, fuzzy msgid "You can implement the [`Iterator`][1] trait on your own types:" -msgstr "`Iterator`λ₯Ό μ»€μŠ€ν…€ νƒ€μž…μ— κ΅¬ν˜„ν•  수 μžˆμŠ΅λ‹ˆλ‹€: " +msgstr "`Iterator`트레이트λ₯Ό μ—¬λŸ¬λΆ„μ΄ μ •μ˜ν•œ νƒ€μž…μ—μ„œ κ΅¬ν˜„ν•΄ λ³΄κ² μŠ΅λ‹ˆλ‹€: " #: src/traits/iterator.md:5 msgid "" @@ -8354,12 +8347,12 @@ msgid "" "" msgstr "" "* `IntoIterator`λŠ” 루프가 μž‘λ™ν•˜λ„λ‘ λ§Œλ“œλŠ” νŠΈλ ˆμ΄νŠΈμž…λ‹ˆλ‹€.\n" -" `Vec`와 같은 μ»¬λ ‰μ…˜ νƒ€μž…κ³Ό 그에 λŒ€ν•œ μ°Έμ‘° νƒ€μž…(`&Vec`, `&[T]`)으둜 κ΅¬ν˜„λ©λ‹ˆλ‹€.\n" -" Range μ—­μ‹œ 이λ₯Ό κ΅¬ν˜„ν•©λ‹ˆλ‹€.\n" -"* `Iterator` νŠΈλ ˆμ΄νŠΈλŠ” μ»¬λ ‰μ…˜μ— λŒ€ν•΄ 일반적인 ν•¨μˆ˜ν˜• ν”„λ‘œκ·Έλž˜λ° λ™μž‘ (`map`, `filter`, `reduce` " -"λ“±)을 κ΅¬ν˜„ν•©λ‹ˆλ‹€. \n" -" κ΄€λ ¨ λ¬Έμ„œμ—μ„œλ„ ν•΄λ‹Ή κΈ°λŠ₯듀을 확인 ν•  수 μžˆμŠ΅λ‹ˆλ‹€.\n" -" λŸ¬μŠ€νŠΈμ—μ„œ μ΄λŸ¬ν•œ ν•¨μˆ˜λ“€μ€ λͺ…λ Ήν˜•μœΌλ‘œ κ΅¬ν˜„λœ μ½”λ“œμ™€ λ™λ“±ν•˜κ²Œ λ™μž‘ν•©λ‹ˆλ‹€.\n" +" `Vec`와 같은 μ»¬λ ‰μ…˜ νƒ€μž…κ³Ό 그에 λŒ€ν•œ μ°Έμ‘° νƒ€μž…(`&Vec`, `&[T]`)λ“€ λͺ¨λ‘ 이 트레이트λ₯Ό κ΅¬ν˜„ν•©" +"λ‹ˆλ‹€. Range μ—­μ‹œ 이λ₯Ό κ΅¬ν˜„ν•©λ‹ˆλ‹€.\n" +"* `Iterator` νŠΈλ ˆμ΄νŠΈλŠ” μ»¬λ ‰μ…˜μ— λŒ€ν•΄ λ‹€μ–‘ν•œ ν•¨μˆ˜ν˜• ν”„λ‘œκ·Έλž˜λ° μ—°μ‚° (`map`, `filter`, `reduce` λ“±)" +"을 κ΅¬ν˜„ν•©λ‹ˆλ‹€. \n" +"이 연산듀에 λŒ€ν•œ μžμ„Έν•œ μ„€λͺ…은 `Iterator` 트레이트의 API λ ˆνΌλŸ°μŠ€μ—μ„œ 찾을 수 μžˆμŠ΅λ‹ˆλ‹€.\n" +"λŸ¬μŠ€νŠΈμ—μ„œ μ΄λŸ¬ν•œ ν•¨μˆ˜ν˜• 연산듀은 μ ˆμ°¨ν˜•μœΌλ‘œ κ΅¬ν˜„λœ μ½”λ“œμ™€ λ™μΌν•œ μ„±λŠ₯을 λ³΄μ—¬μ€λ‹ˆλ‹€.\n" " \n" "" @@ -8372,9 +8365,10 @@ msgid "# FromIterator" msgstr "# FromIterator" #: src/traits/from-iterator.md:3 -#, fuzzy msgid "[`FromIterator`][1] lets you build a collection from an [`Iterator`][2]." -msgstr "`FromIterator` λŠ” `Iterator`λ‘œλΆ€ν„° μ»¬λ ‰μ…˜μ„ λ§Œλ“€ 수 μžˆμŠ΅λ‹ˆλ‹€." +msgstr "" +"μ–΄λ–€ μ»¬λ ‰μ…˜μ΄ `[FromIterator`][1]λ₯Ό κ΅¬ν˜„ν•˜κ³  μžˆλ‹€λ©΄ [`Iterator`][2]λ‘œλΆ€ν„° κ·Έ μ»¬λ ‰μ…˜μ„ λ§Œλ“€ 수 있슡" +"λ‹ˆλ‹€." #: src/traits/from-iterator.md:5 msgid "" @@ -8475,10 +8469,10 @@ msgid "" msgstr "" "
\n" " \n" -"* κ·Έλ ‡κΈ° λ•Œλ¬Έμ— μ‚¬μš©μžκ°€ 직접 νƒ€μž…μ„ κ΅¬ν˜„ν•˜λŠ” κ²½μš°μ—λ„ `From` 만 κ΅¬ν˜„ν•˜λŠ” 것이 μΌλ°˜μ μž…λ‹ˆλ‹€.\n" -"* \"`String`으둜 λ³€ν™˜ν•  수 μžˆλŠ” λͺ¨λ“  것\"κ³Ό 같은 ν•¨μˆ˜μ˜ 인수 νƒ€μž…μ„ μ„ μ–Έν•  λ•Œ κ·œμΉ™μ€ λ°˜λŒ€λ‘œ 적용되" -"λ―€λ‘œ `Into`λ₯Ό μ‚¬μš©ν•΄μ•Ό ν•©λ‹ˆλ‹€. ν•¨μˆ˜λŠ” `From`을 κ΅¬ν˜„ν•œ νƒ€μž…κ³Ό _였직_ `Into`만 κ΅¬ν˜„ν•œ νƒ€μž…μ„ μ‚¬μš©ν•  " -"수 μžˆμŠ΅λ‹ˆλ‹€.\n" +"* κ·Έλ ‡κΈ° λ•Œλ¬Έμ— μ‚¬μš©μž μ •μ˜ νƒ€μž…μ˜ κ²½μš°μ—λ„ `From` 만 κ΅¬ν˜„ν•˜λŠ” 것이 μΌλ°˜μ μž…λ‹ˆλ‹€.\n" +"* \"`String`으둜 λ³€ν™˜ν•  수 μžˆλŠ” λͺ¨λ“  것\"κ³Ό 같은 ν•¨μˆ˜μ˜ 인수 νƒ€μž…μ„ μ„ μ–Έν•  λ•Œμ—λŠ” `Into`λ₯Ό μ‚¬μš©ν•΄" +"μ•Ό 함을 μ‘°μ‹¬ν•˜μ„Έμš”. κ·Έλž˜μ•Όλ§Œ, ν•¨μˆ˜λŠ” `From`을 κ΅¬ν˜„ν•œ νƒ€μž…κ³Ό `Into` _만_ κ΅¬ν˜„ν•œ νƒ€μž… λͺ¨λ‘λ₯Ό 인자둜 " +"받을 수 μžˆμŠ΅λ‹ˆλ‹€.\n" " \n" "
" @@ -8496,9 +8490,8 @@ msgid "# `Read` and `Write`" msgstr "# `Read`와 `Write`" #: src/traits/read-write.md:3 -#, fuzzy msgid "Using [`Read`][1] and [`BufRead`][2], you can abstract over `u8` sources:" -msgstr "`Read`와 `BufRead`λ₯Ό μ‚¬μš©ν•˜λ©΄ `u8` μ†ŒμŠ€λ‘œλΆ€ν„° 읽을 수 μžˆμŠ΅λ‹ˆλ‹€:" +msgstr "[`Read`][1]와 [`BufRead`][2]λ₯Ό μ‚¬μš©ν•˜λ©΄ `u8` νƒ€μž…μ˜ 데이터 μŠ€νŠΈλ¦Όμ„ 읽을 수 μžˆμŠ΅λ‹ˆλ‹€:" #: src/traits/read-write.md:5 msgid "" @@ -8531,9 +8524,8 @@ msgid "" msgstr "" #: src/traits/read-write.md:23 -#, fuzzy msgid "Similarly, [`Write`][3] lets you abstract over `u8` sinks:" -msgstr "μœ μ‚¬ν•˜κ²Œ `Write`λ₯Ό 톡해 `u8`μ†ŒμŠ€λ‘œ 좜λ ₯ν•  수 μžˆμŠ΅λ‹ˆλ‹€:" +msgstr "이와 λΉ„μŠ·ν•˜κ²Œ, `Write`λ₯Ό μ‚¬μ˜Ήν•˜λ©΄ `u8` νƒ€μž…μ˜ 데이터λ₯Ό μ“Έ 수 μžˆμŠ΅λ‹ˆλ‹€:" #: src/traits/read-write.md:25 msgid "" @@ -8576,9 +8568,8 @@ msgid "# `Add`, `Mul`, ..." msgstr "# `Add`, `Mul`, ..." #: src/traits/operators.md:3 -#, fuzzy msgid "Operator overloading is implemented via traits in [`std::ops`][1]:" -msgstr "μ—°μ‚°μž μ˜€λ²„λ‘œλ“œλŠ” `std::ops` νŠΈλ ˆμ΄νŠΈμ„ 톡해 κ΅¬ν˜„λ©λ‹ˆλ‹€:" +msgstr "μ—°μ‚°μž μ˜€λ²„λ‘œλ“œλŠ” `std::ops`에 μžˆλŠ” λ‹€μ–‘ν•œ νŠΈλ ˆμ΄νŠΈλ“€μ„ 톡해 κ΅¬ν˜„λ©λ‹ˆλ‹€:" #: src/traits/operators.md:5 msgid "" @@ -8613,7 +8604,7 @@ msgstr "" #: src/traits/operators.md:26 src/traits/drop.md:34 msgid "Discussion points:" -msgstr "λ…Όμ˜μ : " +msgstr "λ…Όμ˜μ :" #: src/traits/operators.md:28 msgid "" @@ -8627,13 +8618,13 @@ msgid "" " associated types (like `Output`) are controlled by the implementor of a\n" " trait." msgstr "" -"* μ–Έμ œ `&Point`에 `Add`λ₯Ό κ΅¬ν˜„ν•˜λŠ” 것이 μ’‹μŠ΅λ‹ˆκΉŒ?\n" -" * λ‹΅λ³€: `Add:add`은 'self'λ₯Ό μ†Œλͺ¨(consume)ν•©λ‹ˆλ‹€. λ§Œμ•½ `Copy`트레이트 μ—†λŠ” νƒ€μž… `T`κ°€ μ—°μ‚°μž 였" -"λ²„λ‘œλ”© ν•˜λŠ” 경우 `&T`에 λŒ€ν•œ μ—°μ‚°μž μ˜€λ²„λ‘œλ”©λ„ κ³ λ €ν•΄μ•Ό ν•©λ‹ˆλ‹€. μ΄λ ‡κ²Œ ν•˜λ©΄ ν˜ΈμΆœλΆ€μ—μ„œμ˜ λΆˆν•„μš”ν•œ " -"볡제λ₯Ό 방지할 수 μžˆμŠ΅λ‹ˆλ‹€.\n" -"* μ™œ `Output`이 μ—°κ΄€ νƒ€μž…(associated type)μž…λ‹ˆκΉŒ? νƒ€μž… λ§€κ°œλ³€μˆ˜λ₯Ό λ§Œλ“€ 수 μžˆμŠ΅λ‹ˆκΉŒ?\n" -" * λ‹΅λ³€: νƒ€μž… λ§€κ°œλ³€μˆ˜λŠ” ν˜ΈμΆœμžκ°€ μ œμ–΄ν•˜μ§€λ§Œ μ—°κ΄€ νƒ€μž…(associated type)은 트레이트의 κ΅¬ν˜„μžκ°€ 제" -"μ–΄ν•©λ‹ˆλ‹€." +"* `&Point`κ°€ `Add`λ₯Ό κ΅¬ν˜„ν•˜λ„λ‘ ν•  μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€. 이게 μ–΄λ–€ κ²½μš°μ— μœ μš©ν• κΉŒμš”?\n" +" * λ‹΅: `Add:add`λŠ” `self`λ₯Ό μ†Œλͺ¨ν•©λ‹ˆλ‹€. λ§Œμ•½ νƒ€μž… `T`κ°€ `Copy`트레이트λ₯Ό κ΅¬ν˜„ν•˜κ³  μžˆμ§€ μ•Šλ‹€λ©΄ `&T`" +"에 λŒ€ν•΄μ„œλ„ μ—°μ‚°μž μ˜€λ²„λ‘œλ”©μ„ κ³ λ €ν•΄μ•Ό ν•©λ‹ˆλ‹€. μ΄λ ‡κ²Œ ν•˜λ©΄ ν˜ΈμΆœλΆ€μ—μ„œ λΆˆν•„μš”ν•œ 볡사λ₯Ό ν”Όν•  수 있슡" +"λ‹ˆλ‹€.\n" +"* μ™œ `Output`이 μ—°κ΄€λœ νƒ€μž…μΈκ°€μš”? νƒ€μž… νŒŒλΌλ©”ν„°λ‘œ λ§Œλ“€ 수 μžˆμ„κΉŒμš”?\n" +" * λ‹΅: νƒ€μž… νŒŒλΌλ©”ν„°λ₯Ό ν˜ΈμΆœν•˜λŠ” μͺ½μ—μ„œ κ²°μ •ν•©λ‹ˆλ‹€. 반면 μ—°κ΄€λœ νƒ€μž…(`Output`같은) 은 트레이트λ₯Ό ꡬ" +"ν˜„ν•˜λŠ” μͺ½μ—μ„œ μ œμ–΄ κ°€λŠ₯ν•©λ‹ˆλ‹€." #: src/traits/operators.md:40 msgid "[1]: https://doc.rust-lang.org/std/ops/index.html" @@ -8644,9 +8635,9 @@ msgid "# The `Drop` Trait" msgstr "# `Drop` 트레이트" #: src/traits/drop.md:3 -#, fuzzy msgid "Values which implement [`Drop`][1] can specify code to run when they go out of scope:" -msgstr "`Drop`νŠΈλ ˆμ΄νŠΈλŠ” 값이 μŠ€μ½”ν”„ λ°–μœΌλ‘œ λ‚˜κ°ˆλ•Œ μ‹€ν–‰ν•˜λŠ” μ½”λ“œλ₯Ό μž‘μ„±ν•  수 μžˆμŠ΅λ‹ˆλ‹€:" +msgstr "" +"[`Drop`][1]트레이트λ₯Ό κ΅¬ν˜„ν•˜λ©΄, κ·Έ 값이 μŠ€μ½”ν”„ λ°–μœΌλ‘œ λ‚˜κ°ˆ λ•Œ 싀행될 μ½”λ“œλ₯Ό μž‘μ„±ν•  수 μžˆμŠ΅λ‹ˆλ‹€:" #: src/traits/drop.md:5 msgid "" @@ -8692,7 +8683,7 @@ msgid "" " overflow!\n" "* Try replacing `drop(a)` with `a.drop()`." msgstr "" -"* `Drop::drop`은 μ™œ `self`λ₯Ό 가지지 μ•ŠμŠ΅λ‹ˆκΉŒ?\n" +"* `Drop::drop`은 μ™œ `self`λ₯Ό 인자둜 받지 μ•ŠμŠ΅λ‹ˆκΉŒ?\n" " * 짧은 λŒ€λ‹΅: λ§Œμ•½ κ·Έλ ‡κ²Œ λœλ‹€λ©΄ `std::mem::drop`이 λΈ”λ‘μ˜ λμ—μ„œ 호좜되고, λ‹€μ‹œ `Drop::drop`을 호" "μΆœν•˜κ²Œλ˜ μŠ€νƒ μ˜€λ²„ν”Œλ‘œκ°€ λ°œμƒν•©λ‹ˆλ‹€.\n" "* `drop(a)`λ₯Ό `a.drop()`둜 λ³€κ²½ν•΄ λ³΄μ‹œκΈ° λ°”λžλ‹ˆλ‹€." @@ -8817,7 +8808,9 @@ msgstr "# μ œλ„ˆλ¦­" msgid "" "Rust support generics, which lets you abstract an algorithm (such as sorting)\n" "over the types used in the algorithm." -msgstr "λŸ¬μŠ€νŠΈλŠ” μ œλ„ˆλ¦­μ„ μ§€μ›ν•˜μ—¬ μ •λ ¬κ³Ό 같은 μ•Œκ³ λ¦¬μ¦˜μ— μ μš©λ˜λŠ” νƒ€μž…μ„ 좔상화 ν•  수 μžˆμŠ΅λ‹ˆλ‹€." +msgstr "" +"λŸ¬μŠ€νŠΈλŠ” μ œλ„ˆλ¦­μ„ μ§€μ›ν•©λ‹ˆλ‹€. 이λ₯Ό μ΄μš©ν•˜λ©΄ μ•Œκ³ λ¦¬μ¦˜(μ •λ ¬κ³Ό 같은)을 좔상화 ν•˜μ—¬ νŠΉμ • νƒ€μž…μ— μ˜μ‘΄ν•˜" +"지 μ•Šλ„λ‘ ν•  수 μžˆμŠ΅λ‹ˆλ‹€." #: src/generics/data-types.md:1 msgid "# Generic Data Types" @@ -8825,7 +8818,7 @@ msgstr "# μ œλ„ˆλ¦­ 데이터 νƒ€μž…" #: src/generics/data-types.md:3 msgid "You can use generics to abstract over the concrete field type:" -msgstr "μ œλ„ˆλ¦­μ„ μ‚¬μš©ν•˜μ—¬ ꡬ체적인 νƒ€μž…μ„ 좔상화할 수 μžˆμŠ΅λ‹ˆλ‹€:" +msgstr "μ œλ„ˆλ¦­μ„ μ‚¬μš©ν•˜μ—¬ ν•„λ“œμ˜ νƒ€μž…μ„ 좔상화 ν•  수 μžˆμŠ΅λ‹ˆλ‹€:" #: src/generics/data-types.md:5 msgid "" @@ -8895,12 +8888,12 @@ msgid "" " * `Point` is still generic and you can use `Point`, but methods in this block will only " "be available for `Point`." msgstr "" -"* *의문:* `impl Point {}`μ—μ„œ `T`κ°€ μ™œ λ‘λ²ˆ μ§€μ •λ©λ‹ˆκΉŒ?\n" -" * μ œλ„ˆλ¦­ νƒ€μž…μ— λŒ€ν•œ μ œλ„ˆλ¦­ κ΅¬ν˜„ 이기 λ•Œλ¬Έμž…λ‹ˆλ‹€. 이듀을 일반적으둜 λ…λ¦½μ μž…λ‹ˆλ‹€.\n" -" * μ΄λŠ” μ΄λŸ¬ν•œ λ°©λ²•μœΌλ‘œ λͺ¨λ“  `T`에 λŒ€ν•΄ μ •μ˜ λœλ‹€λŠ” 것을 λœ»ν•©λ‹ˆλ‹€.\n" +"* *질문:* `impl Point {}`μ—μ„œ `T`κ°€ μ™œ 두 번 μ‚¬μš©λ©λ‹ˆκΉŒ?\n" +" * μ œλ„ˆλ¦­ νƒ€μž…μ— λŒ€ν•œ μ œλ„ˆλ¦­ κ΅¬ν˜„ 이기 λ•Œλ¬Έμž…λ‹ˆλ‹€. 이 두 μ œλ„ˆλ¦­μ€ μ„œλ‘œ λ…λ¦½μ μž…λ‹ˆλ‹€.\n" +" * μ΄λŠ” μž„μ˜μ˜ λͺ¨λ“  `T`에 λŒ€ν•΄μ„œ 이 λ©”μ†Œλ“œλ“€μ΄ μ •μ˜λœλ‹€λŠ” 것을 μ˜λ―Έν•©λ‹ˆλ‹€.\n" " * `impl Point { .. }`와 같이 μž‘μ„±ν•˜λŠ” 것도 κ°€λŠ₯ν•©λ‹ˆλ‹€.\n" -" * `Point`λŠ” μ—¬μ „νžˆ μ œλ„ˆλ¦­μ΄λ©° `Point`λ₯Ό μ‚¬μš©ν•  μˆ˜λ„ μžˆμ§€λ§Œ 이 λΈ”λ‘μ˜ λ©”μ„œλ“œλŠ” " -"`Point`만 μ“Έ 수 μžˆμŠ΅λ‹ˆλ‹€." +" * `Point`λŠ” μ—¬μ „νžˆ μ œλ„ˆλ¦­μ΄λ©° `Point`λ₯Ό μ‚¬μš©ν•  μˆ˜λ„ μžˆμ§€λ§Œ 이 λΈ”λ‘μ˜ λ©”μ„œλ“œλŠ” `Point`" +"만 μ“Έ 수 μžˆμŠ΅λ‹ˆλ‹€." #: src/generics/trait-bounds.md:1 msgid "# Trait Bounds" @@ -8957,7 +8950,6 @@ msgid "" msgstr "" #: src/generics/trait-bounds.md:35 -#, fuzzy msgid "" "Show a `where` clause, students will encounter it when reading code.\n" " \n" @@ -8970,7 +8962,7 @@ msgid "" "}\n" "```" msgstr "" -"`where`문법을 μ‚¬μš©ν•˜λŠ” 것도 κ³ λ € ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 학생듀도 μ΄λŸ¬ν•œ μ½”λ“œ ν‘œν˜„μ„ λ§ˆμ£Όν•  수 μžˆμŠ΅λ‹ˆλ‹€.\n" +"`where` 문법을 μ‚¬μš©ν•  μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€. μˆ˜κ°•μƒλ“€λ„ μ½”λ“œλ₯Ό 읽닀가 κ·Έ 문법을 λ§ˆμ£Όν•  수 μžˆμŠ΅λ‹ˆλ‹€.\n" " \n" "```rust,ignore\n" "fn duplicate(a: T) -> (T, T)\n" @@ -8990,9 +8982,9 @@ msgid "" " \n" "" msgstr "" -"* λ§€κ°œλ³€μˆ˜κ°€ λ§Žμ€ 경우 ν•¨μˆ˜ μ‹œκ·Έλ‹ˆμ²˜μ„ μ •λ¦¬ν•©λ‹ˆλ‹€.\n" -"* μ’€ 더 κ°•λ ₯ν•œ μΆ”κ°€ κΈ°λŠ₯을 μ œκ³΅ν•©λ‹ˆλ‹€.\n" -" * μΆ”κ°€ κΈ°λŠ₯은 `Option`와 같이 \":\" μ™Όμͺ½μ— μžˆλŠ” νƒ€μž…μ΄ μž„μ˜μ μΌ 수 μžˆλ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€.\n" +"* 이λ₯Ό μ΄μš©ν•˜λ©΄ νƒ€μž… νŒŒλΌλ©”ν„°κ°€ λ§Žμ€ 경우 ν•¨μˆ˜ μ‹œκ·Έλ‹ˆμ²˜λ₯Ό κ°„κ²°ν•˜κ²Œ μ •λ¦¬ν•˜λŠ”λ° 도움이 λ©λ‹ˆλ‹€.\n" +"* μ’€ 더 κ°•λ ₯ν•œ μΆ”κ°€ κΈ°λŠ₯도 μ œκ³΅ν•©λ‹ˆλ‹€.\n" +" * `\":\" μ™Όμͺ½μ— μž„μ˜μ˜ νƒ€μž…(예λ₯Ό λ“€μ–΄ `Option`)을 μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.\n" " \n" "" @@ -9004,7 +8996,7 @@ msgstr "# 트레이트 κ΅¬ν˜„ν•˜κΈ°(`impl Trait`)" msgid "" "Similar to trait bounds, an `impl Trait` syntax can be used in function\n" "arguments and return values:" -msgstr "트레이트 λ°”μš΄λ“œμ™€ μœ μ‚¬ν•˜κ²Œ `impl`트레이트 문법은 ν•¨μˆ˜μ˜ μΈμžμ™€ λ°˜ν™˜κ°’μ— 적용 κ°€λŠ₯ν•©λ‹ˆλ‹€:" +msgstr "트레이트 λ°”μš΄λ“œμ™€ μœ μ‚¬ν•˜κ²Œ `impl Trait` 문법은 ν•¨μˆ˜μ˜ μΈμžμ™€ λ°˜ν™˜κ°’μ—λ„ 적용 κ°€λŠ₯ν•©λ‹ˆλ‹€:" #: src/generics/impl-trait.md:6 src/generics/trait-objects.md:5 src/generics/trait-objects.md:28 msgid "" @@ -9033,12 +9025,12 @@ msgid "" "* `impl Trait` cannot be used with the `::<>` turbo fish syntax.\n" "* `impl Trait` allows you to work with types which you cannot name." msgstr "" -"* `impl` νŠΈλ ˆμ΄νŠΈλŠ” 터보피쉬문법(`::<>`)μ—λŠ” μ‚¬μš©ν•  수 μ—†μŠ΅λ‹ˆλ‹€.\n" -"* `impl` νŠΈλ ˆμ΄νŠΈλŠ” 읡λͺ…νƒ€μž…κ³Ό μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€." +"* `impl Trait`λ₯Ό 터보피쉬문법(`::<>`)κ³Ό ν•¨κ»˜ μ‚¬μš©ν•  μˆ˜λŠ” μ—†μŠ΅λ‹ˆλ‹€.\n" +"* `impl Trait`λ₯Ό μ΄μš©ν•˜λ©΄ 이름이 μ—†λŠ” νƒ€μž…μ„ λ‹€λ£° 수 μžˆμŠ΅λ‹ˆλ‹€." #: src/generics/impl-trait.md:24 msgid "The meaning of `impl Trait` is a bit different in the different positions." -msgstr "`impl Trait`λŠ” μž…μž₯에 따라 μ˜λ―Έκ°€ μ‘°κΈˆμ”© λ‹€λ¦…λ‹ˆλ‹€." +msgstr "`impl Trait`λŠ” 어디에 μ‚¬μš©λ˜μ—ˆλŠλƒμ— 따라 μ˜λ―Έκ°€ μ‘°κΈˆμ”© λ‹€λ¦…λ‹ˆλ‹€." #: src/generics/impl-trait.md:26 msgid "" @@ -9049,9 +9041,11 @@ msgid "" "a\n" " public API." msgstr "" -"* λ§€κ°œλ³€μˆ˜(parameter) μž…μž₯μ—μ„œλŠ” 트레이트 경계(bound)κ°€ μžˆλŠ” 읡λͺ… μ œλ„ˆλ¦­ λ§€κ°œλ³€μˆ˜μ™€ κ°™μŠ΅λ‹ˆλ‹€.\n" -"* λ°˜ν™˜ νƒ€μž… μž…μž₯μ—μ„œλŠ” 이름을 μ§€μ •ν•˜μ§€ μ•Šκ³  트레이트λ₯Ό κ΅¬ν˜„ν•œ ꡬ체적인 νƒ€μž…μž„μ„ μ˜λ―Έν•©λ‹ˆλ‹€. μ΄λŠ” 곡" -"개된 APIμ—μ„œ ꡬ체적은 νƒ€μž…μ„ λ…ΈμΆœν•˜μ§€ μ•ŠμœΌλ €λŠ” 경우 μœ μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€." +"* ν•¨μˆ˜ 인자의 νƒ€μž…μœΌλ‘œ μ‚¬μš©λ˜μ—ˆμ„ κ²½μš°μ—λŠ” `impl Trait`λŠ” 트레이트 경계가 μžˆλŠ” 읡λͺ…μ˜ μ œλ„ˆλ¦­ νƒ€μž…" +"을 μ˜λ―Έν•©λ‹ˆλ‹€.\n" +"* 리턴 νƒ€μž…μœΌλ‘œ μ‚¬μš©λ˜μ—ˆμ„ κ²½μš°μ—λŠ”, κ·Έ 트레이트λ₯Ό κ΅¬ν˜„ν•˜λŠ” ꡬ체적인 νƒ€μž…μΈλ°, νƒ€μž… 이름을 ν”„λ‘œκ·Έλž˜" +"λ¨Έκ°€ 짓지 μ•Šμ•˜λ‹€λŠ” 것을 μ˜λ―Έν•©λ‹ˆλ‹€. μ΄λŠ” κ·Έ ꡬ체적인 νƒ€μž… 이름을 API둜 κ³΅κ°œν•˜κ³  싢지 μ•Šμ€ κ²½μš°μ— 유" +"μš©ν•©λ‹ˆλ‹€." #: src/generics/impl-trait.md:31 msgid "" @@ -9065,12 +9059,12 @@ msgid "" " \n" "" msgstr "" -"이 μ˜ˆμ‹œλŠ” `impl Display`κ°€ λ‘λ²ˆ μ‚¬μš© λ˜μ—ˆλ‹€λŠ” μ μ—μ„œ ν›Œλ₯­ν•©λ‹ˆλ‹€.\n" -"μ΄λŠ” 두 μ‚¬μš©μ²˜μ—μ„œ λ™μΌν•œ `impl Display` νƒ€μž…μ˜ μ‚¬μš©μ„ κ°•μ œν•˜μ§€ μ•ŠλŠ” 것을 μ„€λͺ…ν•˜λŠ”λ° 도움이 λ©λ‹ˆ" -"λ‹€. 만일 `T: Display`λ₯Ό μ‚¬μš©ν•œλ‹€λ©΄ μž…λ ₯κ³Ό λ°˜ν™˜ 값이 동일 ν•œ `T` νƒ€μž…μ΄μ–΄μ•Ό ν•œλ‹€λŠ” μ œμ•½μ΄ μƒκΉλ‹ˆλ‹€. " -"μ—¬κΈ°μ—μ„œ μž…λ ₯λ˜λŠ” μœ ν˜•μ€ `format!`으둜 λ°˜ν™˜λ˜λŠ” νƒ€μž…κ³Ό λ™μΌν•˜μ§€ μ•Šμ„ κ°€λŠ₯성이 λ†’κΈ° λ•Œλ¬Έμ— `T: " -"Display`의 지정은 νŠΉμ • κΈ°λŠ₯μ—λŠ” λ™μž‘ν•˜μ§€ μ•Šμ„ 수 μžˆμŠ΅λ‹ˆλ‹€. λ§Œμ•½ `: Display` ν˜•νƒœλ‘œ μ‚¬μš©ν•˜κ³  μ‹Άλ‹€λ©΄ " -"독립적인 μ œλ„ˆλ¦­ λ§€κ°œλ³€μˆ˜κ°€ 2개 ν•„μš”ν•©λ‹ˆλ‹€.\n" +"이 μ˜ˆμ‹œλŠ” `impl Display`κ°€ λ‘λ²ˆ μ‚¬μš© λ˜μ—ˆλ‹€λŠ” μ μ—μ„œ ν›Œλ₯­ν•©λ‹ˆλ‹€. μ—¬κΈ°μ„œ μ€‘μš”ν•œ 것은 이 두 `impl " +"Display`κ°€ μ‹€μ œλ‘œ 같은 νƒ€μž…μΌ ν•„μš”κ°€ μ—†λ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€. λ§Œμ•½ `T: Display`둜 트레이트 경계λ₯Ό μ •ν•˜κ³  μž…" +"λ ₯ νŒŒλΌλ©”ν„°μ™€ 리턴 κ°’μ˜ νƒ€μž…μ„ λͺ¨λ‘ `T`둜 ν–ˆλ‹€λ©΄, μ΄λŠ” μž…λ ₯κ³Ό 리턴값이 같은 νƒ€μž…μž„μ„ κ°•μ œν•©λ‹ˆλ‹€. 이" +"λ ‡κ²Œ ν–ˆλ‹€λ©΄ μœ„μ˜ μ˜ˆμ œλŠ” λ™μž‘ν•˜μ§€ μ•Šμ•˜μ„ κ²ƒμž…λ‹ˆλ‹€. μ™œλƒν•˜λ©΄, μž…λ ₯ κ°’μ˜ νƒ€μž…μ΄ `format!`이 λ¦¬ν„΄ν•˜λŠ” " +"νƒ€μž…κ³Ό 같지 μ•Šμ„ κ°€λŠ₯성이 λ†’κΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€. λ§Œμ•½ `: Display` 문법을 μ‚¬μš©ν•˜κ³  μ‹Άλ‹€λ©΄ 독립적인 μ œλ„ˆλ¦­ " +"λ§€κ°œλ³€μˆ˜κ°€ 두 κ°œκ°€ ν•„μš”ν•©λ‹ˆλ‹€.\n" " \n" "" @@ -9085,10 +9079,9 @@ msgid "" "[`FnMut`](https://doc.rust-lang.org/std/ops/trait.FnMut.html), and\n" "[`FnOnce`](https://doc.rust-lang.org/std/ops/trait.FnOnce.html) traits:" msgstr "" -"ν΄λ‘œμ € ν˜Ήμ€ λžŒλ‹€ν‘œν˜„μ‹μ€ 읡λͺ…νƒ€μž…μž…λ‹ˆλ‹€. 이듀은 \n" -"[`Fn`](https://doc.rust-lang.org/std/ops/trait.Fn.html),\n" -"[`FnMut`](https://doc.rust-lang.org/std/ops/trait.FnMut.html), \n" -"[`FnOnce`](https://doc.rust-lang.org/std/ops/trait.FnOnce.html) λΌλŠ” νŠΉλ³„ν•œ 트레이트λ₯Ό κ΅¬ν˜„ν•©λ‹ˆλ‹€." +"ν΄λ‘œμ € ν˜Ήμ€ λžŒλ‹€ν‘œν˜„μ‹μ€ 읡λͺ…νƒ€μž…μž…λ‹ˆλ‹€. 이듀은 [`Fn`](https://doc.rust-lang.org/std/ops/trait.Fn." +"html),[`FnMut`](https://doc.rust-lang.org/std/ops/trait.FnMut.html), [`FnOnce`](https://doc.rust-" +"lang.org/std/ops/trait.FnOnce.html) λΌλŠ” νŠΉλ³„ν•œ 트레이트λ₯Ό κ΅¬ν˜„ν•©λ‹ˆλ‹€." #: src/generics/closures.md:8 msgid "" @@ -9130,8 +9123,8 @@ msgid "" "can\n" "be called multiple times concurrently." msgstr "" -"`Fn`은 캑처된 값을 μ†Œλͺ¨λ„ 변경도 ν•  수 μ—†κ±°λ‚˜ μ–΄λ–€ 것도 μΊ‘μ²˜ν•˜μ§€ μ•ŠμœΌλ―€λ‘œ λ™μ‹œμ— μ—¬λŸ¬λ²ˆ 호좜 ν•  수 " -"μžˆμŠ΅λ‹ˆλ‹€." +"`Fn`은 캑처된 값을 μ†Œλͺ¨λ„ 변경도 ν•˜μ§€ μ•Šκ³ , ν˜Ήμ€ μ–΄λ–€ 것도 μΊ‘μ³ν•˜μ§€ μ•Šμ•˜μ„ μˆ˜λ„ 있기 λ•Œλ¬Έμ— λ™μ‹œμ— " +"μ—¬λŸ¬λ²ˆ ν˜ΈμΆœν•  수 μžˆμŠ΅λ‹ˆλ‹€." #: src/generics/closures.md:32 msgid "" @@ -9140,13 +9133,13 @@ msgid "" "`FnOnce`\n" "is called for." msgstr "" -"`FnMut` λŠ” `FnOnce`의 ν•˜μœ„νƒ€μž…μž…λ‹ˆλ‹€. `Fn`은 `FnMut`κ³Ό `FnOnce`의 ν•˜μœ„ νƒ€μž…μž…λ‹ˆλ‹€.즉, `FnMut`λŠ” " +"`FnMut` λŠ” `FnOnce`의 ν•˜μœ„νƒ€μž…μž…λ‹ˆλ‹€. `Fn`은 `FnMut`κ³Ό `FnOnce`의 ν•˜μœ„ νƒ€μž…μž…λ‹ˆλ‹€. 즉, `FnMut`λŠ” " "`FnOnce`κ°€ ν˜ΈμΆœλ˜λŠ” 곳이면 μ–΄λ””μ„œλ‚˜ μ‚¬μš© ν•  수 있고 `Fn`은 `FnMut`와 `FnOnce`κ°€ ν˜ΈμΆœλ˜λŠ” 곳이면 μ–΄" "λ””λ“  μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€." #: src/generics/closures.md:36 msgid "`move` closures only implement `FnOnce`." -msgstr "ν΄λ‘œμ €μ—μ„œ μ„ μ–Έλ˜λŠ” `move`λŠ” 였직 `FnOnce`만 κ΅¬ν˜„ν•©λ‹ˆλ‹€." +msgstr "ν΄λ‘œμ €κ°€ `move`와 ν•¨κ»˜ μ„ μ–Έλ˜μ—ˆλ‹€λ©΄ κ·Έ ν΄λ‘œμ €λŠ” 였직 `FnOnce`만 κ΅¬ν˜„ν•©λ‹ˆλ‹€." #: src/generics/monomorphization.md:1 msgid "# Monomorphization" @@ -9201,8 +9194,8 @@ msgid "" "This is a zero-cost abstraction: you get exactly the same result as if you had\n" "hand-coded the data structures without the abstraction." msgstr "" -"이것은 (λŸ°νƒ€μž„)μ½”μŠ€νŠΈκ°€ 듀지 μ•ŠλŠ” μΆ”μƒν™”μž…λ‹ˆλ‹€: 좔상화 없이 직접 μ½”λ”©ν•œ 것과 μ •ν™•νžˆ 같은 κ²°κ³Όμž…λ‹ˆ" -"λ‹€." +"이것이 λ°”λ‘œ λΉ„μš©μ΄ 듀지 μ•ŠλŠ” (zero-cost) 좔상화 μž…λ‹ˆλ‹€: 러슀트의 μ œλ„ˆλ¦­μ€ 좔상화λ₯Ό κ±°μΉ˜μ§€ μ•Šκ³  직" +"μ ‘ ꡬ체적인 νƒ€μž…μ„ μ¨μ„œ μ½”λ”©ν•œ 것과 μ •ν™•νžˆ λ™μΌν•œ κ²°κ³Όλ₯Ό λ³΄μ—¬μ€λ‹ˆλ‹€." #: src/generics/trait-objects.md:1 msgid "# Trait Objects" @@ -9210,7 +9203,7 @@ msgstr "# 트레이트 객체" #: src/generics/trait-objects.md:3 msgid "We've seen how a function can take arguments which implement a trait:" -msgstr "트레이트λ₯Ό κ΅¬ν˜„ν•  λ•Œ 인수λ₯Ό μ·¨ν•˜λŠ” 방법:" +msgstr "ν•¨μˆ˜κ°€ νŠΉμ • 트레이트λ₯Ό κ΅¬ν˜„ν•˜λŠ” 인자λ₯Ό μž…λ ₯으둜 받도둝 ν•˜λŠ” 방법에 λŒ€ν•΄ μ„€λͺ…ν–ˆμ—ˆμŠ΅λ‹ˆλ‹€:" #: src/generics/trait-objects.md:8 msgid "" @@ -9230,7 +9223,9 @@ msgstr "" #: src/generics/trait-objects.md:18 msgid "However, how can we store a collection of mixed types which implement `Display`?" -msgstr "μ•„λž˜μ™€ 같이 μ—¬λŸ¬κ°€μ§€ νƒ€μž…μ„ ν˜Όν•©ν•˜μ—¬ 인수둜 λ°›λ €λ©΄ μ–΄λ–»κ²Œ ν•΄μ•Ό ν•©λ‹ˆκΉŒ?" +msgstr "" +"그런데, μ•„λž˜μ™€ 같이 `Display`λ₯Ό κ΅¬ν˜„ν•˜λŠ” μ„œλ‘œ λ‹€λ₯Έ νƒ€μž…λ“€μ˜ μ½œλ ‰μ…˜μ„ μ €μž₯ν•˜κ³  μ‹Άλ‹€λ©΄ μ–΄λ–»κ²Œ ν•΄μ•Ό ν• " +"κΉŒμš”?" #: src/generics/trait-objects.md:20 msgid "" @@ -9243,7 +9238,7 @@ msgstr "" #: src/generics/trait-objects.md:26 msgid "For this, we need _trait objects_:" -msgstr "이λ₯Ό μœ„ν•΄μ„œ _트레이트 객체가_ ν•„μš”ν•©λ‹ˆλ‹€:" +msgstr "이λ₯Ό μœ„ν•΄μ„œλŠ” _트레이트 객체_κ°€ ν•„μš”ν•©λ‹ˆλ‹€:" #: src/generics/trait-objects.md:31 msgid "" @@ -9292,11 +9287,12 @@ msgid "" msgstr "" #: src/generics/trait-objects.md:69 -#, fuzzy msgid "" "Similarly, you need a trait object if you want to return different types\n" "implementing a trait:" -msgstr "λ§ˆμ°¬κ°€μ§€λ‘œ 트레이트λ₯Ό κ΅¬ν˜„ν•œ λ‹€λ₯Έ 값을 λ°˜ν™˜ν•  λ•Œλ„ 트레이트 객체가 ν•„μš”ν•©λ‹ˆλ‹€:" +msgstr "" +"λ§ˆμ°¬κ°€μ§€λ‘œ, 같은 트레이트λ₯Ό κ΅¬ν˜„ν•˜λŠ” μ„œλ‘œ λ‹€λ₯Έ νƒ€μž…μ˜ 값을 리턴할 λ•Œμ—λ„ 트레이트 객체가 ν•„μš”ν•©λ‹ˆ" +"λ‹€:" #: src/generics/trait-objects.md:72 msgid "" @@ -9325,7 +9321,7 @@ msgstr "# 3일차 μ˜€μ „ μ—°μŠ΅λ¬Έμ œ" #: src/exercises/day-3/morning.md:3 msgid "We will design a classical GUI library traits and trait objects." msgstr "" -"이번 μ—°μŠ΅λ¬Έμ œμ—μ„œλŠ” νŠΈλ ˆμ΄νŠΈμ™€ 트레이트 객체λ₯Ό 톡해 고전적인 GUI라이브러리λ₯Ό 섀계할 κ²ƒμž…λ‹ˆλ‹€." +"이번 μ—°μŠ΅λ¬Έμ œμ—μ„œλŠ” νŠΈλ ˆμ΄νŠΈμ™€ 트레이트 객체λ₯Ό 톡해 고전적인 GUI 라이브러리λ₯Ό 섀계할 κ²ƒμž…λ‹ˆλ‹€." #: src/exercises/day-3/simple-gui.md:1 msgid "# A Simple GUI Library" @@ -9336,12 +9332,12 @@ msgid "" "Let us design a classical GUI library using our new knowledge of traits and\n" "trait objects." msgstr "" -"이번 μ—°μŠ΅λ¬Έμ œμ—μ„œλŠ” νŠΈλ ˆμ΄νŠΈμ™€ 트레이트 객체 지식을 ν™œμš©ν•˜μ—¬ 고전적인 GUI라이브러리λ₯Ό 섀계할 κ²ƒμž…" -"λ‹ˆλ‹€." +"이번 μ—°μŠ΅λ¬Έμ œμ—μ„œλŠ” νŠΈλ ˆμ΄νŠΈμ™€ 트레이트 객체에 λŒ€ν•΄ λ°°μš΄κ²ƒμ„ ν™œμš©ν•˜μ—¬ 고전적인 GUI 라이브러리λ₯Ό μ„€" +"계할 κ²ƒμž…λ‹ˆλ‹€." #: src/exercises/day-3/simple-gui.md:6 msgid "We will have a number of widgets in our library:" -msgstr "λΌμ΄λΈŒλŸ¬λ¦¬μ—λŠ” λͺ‡κ°€μ§€ μœ„μ ―μ΄ μžˆμŠ΅λ‹ˆλ‹€:" +msgstr "λΌμ΄λΈŒλŸ¬λ¦¬μ—λŠ” λͺ‡ 가지 μœ„μ ―μ΄ μžˆμŠ΅λ‹ˆλ‹€:" #: src/exercises/day-3/simple-gui.md:8 msgid "" @@ -9350,13 +9346,13 @@ msgid "" " button is pressed.\n" "* `Label`: has a `label`." msgstr "" -"* `Window`: `title` 속성과 λ‹€λ₯Έ μœ„μ ―μ΄ ν¬ν•¨λ©λ‹ˆλ‹€.\n" -"* `Button`: `label`μœ„μ ―κ³Ό λ²„νŠΌμ΄ λˆŒλ Έμ„λ•Œ μ‹€ν–‰λ˜λŠ” 콜백 ν•¨μˆ˜κ°€ μžˆμŠ΅λ‹ˆλ‹€.\n" -"* `Label`: `label` μœ„μ ― μž…λ‹ˆλ‹€." +"* `Window`: `title` 속성을 가지고 있으며, λ‹€λ₯Έ μœ„μ ―λ“€μ„ 포함할 수 μžˆμŠ΅λ‹ˆλ‹€.\n" +"* `Button`: `label` 속성을 가지고 있으며, λ²„νŠΌμ΄ λˆŒλ Έμ„λ•Œ μ‹€ν–‰λ˜λŠ” 콜백 ν•¨μˆ˜κ°€ μžˆμŠ΅λ‹ˆλ‹€.\n" +"* `Label`: `label` 속성을 가지고 μžˆμŠ΅λ‹ˆλ‹€." #: src/exercises/day-3/simple-gui.md:13 msgid "The widgets will implement a `Widget` trait, see below." -msgstr "μœ„μ ―μ€ `Widget` 트레이트λ₯Ό κ΅¬ν˜„ν•©λ‹ˆλ‹€. μ•„λž˜ μ½”λ“œλ₯Ό μ°Έμ‘°ν•˜μ„Έμš”" +msgstr "μœ„μ ―λ“€μ€ λͺ¨λ‘ `Widget` 트레이트λ₯Ό κ΅¬ν˜„ν•©λ‹ˆλ‹€. μ•„λž˜ μ½”λ“œλ₯Ό μ°Έμ‘°ν•˜μ„Έμš”" #: src/exercises/day-3/simple-gui.md:15 msgid "" @@ -9538,7 +9534,7 @@ msgid "" "formatting operators. In particular, notice how you can pad with different\n" "characters (here a `'/'`) and how you can control alignment:" msgstr "" -"μ •λ ¬λœ κΈ€μžλ₯Ό 그리기 μœ„ν•΄μ„œλŠ” [fill/alignment](https://doc.rust-lang.org/std/fmt/index." +"ν…μŠ€νŠΈλ₯Ό μ€„λ§žμΆ€ ν•΄μ„œ 그리렀면 [fill/alignment](https://doc.rust-lang.org/std/fmt/index." "html#fillalignment)λ₯Ό μ°Έμ‘°ν•˜μ‹œκΈ° λ°”λžλ‹ˆλ‹€. \n" "특수 문자(μ—¬κΈ°μ„œλŠ” '/')둜 νŒ¨λ”©μ„ μ£ΌλŠ” 방법과 정렬을 μ œμ–΄ν•˜λŠ” 방법을 ν™•μΈν•˜μ‹œκΈ° λ°”λžλ‹ˆλ‹€."