From c4d8b9d8ad0dc02698fa156f73be25bee4099fe5 Mon Sep 17 00:00:00 2001 From: wooruang Date: Wed, 26 Jun 2019 12:02:02 +0900 Subject: [PATCH 1/6] Translate tuples.md and Modify the 'num' of elements in tour docs --- _ko/tour/case-classes.md | 2 +- _ko/tour/higher-order-functions.md | 2 +- _ko/tour/mixin-class-composition.md | 2 +- _ko/tour/multiple-parameter-lists.md | 2 +- _ko/tour/nested-functions.md | 2 +- _ko/tour/pattern-matching.md | 2 +- _ko/tour/singleton-objects.md | 2 +- _ko/tour/tuples.md | 72 ++++++++++++++++++++++++++-- 8 files changed, 76 insertions(+), 10 deletions(-) diff --git a/_ko/tour/case-classes.md b/_ko/tour/case-classes.md index 6d32c6bac2..5823edd55f 100644 --- a/_ko/tour/case-classes.md +++ b/_ko/tour/case-classes.md @@ -6,7 +6,7 @@ discourse: false partof: scala-tour -num: 10 +num: 11 language: ko next-page: pattern-matching diff --git a/_ko/tour/higher-order-functions.md b/_ko/tour/higher-order-functions.md index 40adfba248..cfd1decc91 100644 --- a/_ko/tour/higher-order-functions.md +++ b/_ko/tour/higher-order-functions.md @@ -6,7 +6,7 @@ discourse: false partof: scala-tour -num: 7 +num: 8 language: ko next-page: nested-functions diff --git a/_ko/tour/mixin-class-composition.md b/_ko/tour/mixin-class-composition.md index e4d2cac40f..0f6f1b8a54 100644 --- a/_ko/tour/mixin-class-composition.md +++ b/_ko/tour/mixin-class-composition.md @@ -6,7 +6,7 @@ discourse: false partof: scala-tour -num: 6 +num: 7 language: ko next-page: higher-order-functions diff --git a/_ko/tour/multiple-parameter-lists.md b/_ko/tour/multiple-parameter-lists.md index 03d6e171ec..49d514be94 100644 --- a/_ko/tour/multiple-parameter-lists.md +++ b/_ko/tour/multiple-parameter-lists.md @@ -6,7 +6,7 @@ discourse: false partof: scala-tour -num: 9 +num: 10 language: ko next-page: case-classes diff --git a/_ko/tour/nested-functions.md b/_ko/tour/nested-functions.md index 9f55347977..8d9126e7ce 100644 --- a/_ko/tour/nested-functions.md +++ b/_ko/tour/nested-functions.md @@ -6,7 +6,7 @@ discourse: false partof: scala-tour -num: 8 +num: 9 language: ko next-page: multiple-parameter-lists diff --git a/_ko/tour/pattern-matching.md b/_ko/tour/pattern-matching.md index 9be1ac47e4..64063ee003 100644 --- a/_ko/tour/pattern-matching.md +++ b/_ko/tour/pattern-matching.md @@ -6,7 +6,7 @@ discourse: false partof: scala-tour -num: 11 +num: 12 language: ko next-page: singleton-objects diff --git a/_ko/tour/singleton-objects.md b/_ko/tour/singleton-objects.md index daff154256..339d05fc1a 100644 --- a/_ko/tour/singleton-objects.md +++ b/_ko/tour/singleton-objects.md @@ -6,7 +6,7 @@ discourse: false partof: scala-tour -num: 12 +num: 13 language: ko next-page: regular-expression-patterns diff --git a/_ko/tour/tuples.md b/_ko/tour/tuples.md index 4463425bee..ee60df2804 100644 --- a/_ko/tour/tuples.md +++ b/_ko/tour/tuples.md @@ -5,13 +5,79 @@ title: Tuples discourse: true partof: scala-tour -num: + +num: 6 language: ko next-page: mixin-class-composition previous-page: traits +topics: tuples +redirect_from: "/tutorials/tour/tuples.html" --- -(this section of the tour has not been translated yet. pull request -with translation welcome!) \ No newline at end of file +스칼라에서 하나의 튜플은 정해진 갯수의 각각 구별된 타입을 갖는 엘리먼트들을 포함하는 하나의 값이다. 튜플은 불변적이다. + +튜플은 특히 메소드로부터 여러개의 값을 리턴하는데 편리하게 사용할 수 있다. + +두개의 엘리먼트를 갖는 튜플은 다음과 같이 생성할 수 있다: + +```tut +val ingredient = ("Sugar" , 25) +``` + +위 코드는 `String`과 `Int` 엘리먼트를 포함하는 튜플을 생성한다. + +`ingredient`의 추론된 타입은 `Tuple2[String, Int]`의 약칭인 `(String, Int)`이다. + +튜플들을 나타내기 위해서 Scala에서는 다음과 같은 형태의 클래스들을 사용한다: `Tuple2`, `Tuple3`, ... ,`Tuple22`. +각 클래스는 파라미터 타입의 갯수 만큼 엘리먼트들을 가지고 있다. + +## 엘리먼트 접근하기 + +튜플의 엘리먼트에 접근하기 위한 한가지 방법은 위치로 접근하는 것이다. 각 개별적인 엘리먼트들은 `_1`, `_2`, ... 이와 같은 방법으로 이름지어진다. + +```tut +println(ingredient._1) // Sugar +println(ingredient._2) // 25 +``` + +## 튜플에서의 패턴 매칭 + +하나의 튜플은 패턴 매칭을 사용하여 분리할 수 있다: + +```tut +val (name, quantity) = ingredient +println(name) // Sugar +println(quantity) // 25 +``` + +여기에서 `name`의 추론된 타입은 `String`이고 `quantity`의 추론된 타입은 `Int`이다. + +여기 튜플을 패턴 매칭한 또 다른 예제가 있다: + +```tut +val planets = + List(("Mercury", 57.9), ("Venus", 108.2), ("Earth", 149.6), + ("Mars", 227.9), ("Jupiter", 778.3)) +planets.foreach{ + case ("Earth", distance) => + println(s"Our planet is $distance million kilometers from the sun") + case _ => +} +``` + +또는 `for` comprehension에서: + +```tut +val numPairs = List((2, 5), (3, -7), (20, 56)) +for ((a, b) <- numPairs) { + println(a * b) +} +``` + +## 튜플과 케이스 클래스 + +사용자들은 때때로 튜플과 케이스 클래스 사이의 선택의 기로에서 무엇을 선택해야할지 힘들어 할지도 모른다. 케이스 클래스는 이름이 있는 엘리먼트들을 갖는다. 그 엘리먼트의 이름들은 어떤 종류의 코드에서 가독성을 향상 시켜줄 수 있다. 위의 planet 예제에서 우리는 튜플을 사용하는 것보다 `case class Planet(name: String, distance: Double)`로 정의 하는 것이 더 나을 수도 있다. + +이한샘 옮김 From 8f671a01185818fe5e6b79cb17f979a4fd63024c Mon Sep 17 00:00:00 2001 From: wooruang Date: Sun, 14 Jul 2019 18:16:29 +0900 Subject: [PATCH 2/6] Update suggestions for tuples.md --- _ko/tour/tuples.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_ko/tour/tuples.md b/_ko/tour/tuples.md index ee60df2804..d8806b1842 100644 --- a/_ko/tour/tuples.md +++ b/_ko/tour/tuples.md @@ -35,7 +35,7 @@ val ingredient = ("Sugar" , 25) ## 엘리먼트 접근하기 -튜플의 엘리먼트에 접근하기 위한 한가지 방법은 위치로 접근하는 것이다. 각 개별적인 엘리먼트들은 `_1`, `_2`, ... 이와 같은 방법으로 이름지어진다. +튜플의 엘리먼트에 접근하기 위한 한가지 방법은 위치로 접근하는 것이다. 각 요소들은 `_1`, `_2`, ... 와 같은 이름을 갖는다. ```tut println(ingredient._1) // Sugar From dfc1f84e2093b714f88615a107542a781cdfbb48 Mon Sep 17 00:00:00 2001 From: wooruang Date: Sun, 14 Jul 2019 18:26:06 +0900 Subject: [PATCH 3/6] Update a suggestion for tuples.md --- _ko/tour/tuples.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_ko/tour/tuples.md b/_ko/tour/tuples.md index d8806b1842..64a6ca0633 100644 --- a/_ko/tour/tuples.md +++ b/_ko/tour/tuples.md @@ -78,6 +78,6 @@ for ((a, b) <- numPairs) { ## 튜플과 케이스 클래스 -사용자들은 때때로 튜플과 케이스 클래스 사이의 선택의 기로에서 무엇을 선택해야할지 힘들어 할지도 모른다. 케이스 클래스는 이름이 있는 엘리먼트들을 갖는다. 그 엘리먼트의 이름들은 어떤 종류의 코드에서 가독성을 향상 시켜줄 수 있다. 위의 planet 예제에서 우리는 튜플을 사용하는 것보다 `case class Planet(name: String, distance: Double)`로 정의 하는 것이 더 나을 수도 있다. +사용자들은 때때로 튜플과 케이스 클래스 사이의 선택의 기로에서 무엇을 선택해야할지 힘들어 할지도 모른다. 케이스 클래스는 이름이 있는 엘리먼트들을 갖는다. 그 엘리먼트의 이름들은 어떤 종류의 코드에서 가독성을 높일 수 있다. 위의 planet 예제에서 우리는 튜플을 사용하는 것보다 `case class Planet(name: String, distance: Double)`로 정의 하는 것이 더 나을 수도 있다. 이한샘 옮김 From 39f9c1b9585cb6a22549424ddaa1d3cdd25f06ea Mon Sep 17 00:00:00 2001 From: wooruang Date: Sun, 14 Jul 2019 18:30:01 +0900 Subject: [PATCH 4/6] Update a suggestion for tuples.md --- _ko/tour/tuples.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_ko/tour/tuples.md b/_ko/tour/tuples.md index 64a6ca0633..259a0ab1a8 100644 --- a/_ko/tour/tuples.md +++ b/_ko/tour/tuples.md @@ -16,7 +16,7 @@ topics: tuples redirect_from: "/tutorials/tour/tuples.html" --- -스칼라에서 하나의 튜플은 정해진 갯수의 각각 구별된 타입을 갖는 엘리먼트들을 포함하는 하나의 값이다. 튜플은 불변적이다. +스칼라에서 튜플은 정해진 요소(element)를 가지는 값으로 각 요소는 고유한 타입을 가진다. 튜플은 불변적이다. 튜플은 특히 메소드로부터 여러개의 값을 리턴하는데 편리하게 사용할 수 있다. From 04919e237832dfe0cfca1118cb2dfcc4229dd5bf Mon Sep 17 00:00:00 2001 From: wooruang Date: Sun, 14 Jul 2019 18:45:49 +0900 Subject: [PATCH 5/6] Update the other suggestion for tuples.md --- _ko/tour/tuples.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_ko/tour/tuples.md b/_ko/tour/tuples.md index 259a0ab1a8..338695372d 100644 --- a/_ko/tour/tuples.md +++ b/_ko/tour/tuples.md @@ -78,6 +78,6 @@ for ((a, b) <- numPairs) { ## 튜플과 케이스 클래스 -사용자들은 때때로 튜플과 케이스 클래스 사이의 선택의 기로에서 무엇을 선택해야할지 힘들어 할지도 모른다. 케이스 클래스는 이름이 있는 엘리먼트들을 갖는다. 그 엘리먼트의 이름들은 어떤 종류의 코드에서 가독성을 높일 수 있다. 위의 planet 예제에서 우리는 튜플을 사용하는 것보다 `case class Planet(name: String, distance: Double)`로 정의 하는 것이 더 나을 수도 있다. +때로는 튜플과 케이스 클래스 중 무엇을 사용할지 힘들 수 있다. 케이스 클래스는 이름이 있는 엘리먼트들을 갖는다. 그 엘리먼트의 이름들은 어떤 종류의 코드에서 가독성을 높일 수 있다. 위의 planet 예제에서 우리는 튜플을 사용하는 것보다 `case class Planet(name: String, distance: Double)`로 정의 하는 것이 더 나을 수도 있다. 이한샘 옮김 From 7bb7101bb172fbfec27b74c84d3626b9126f8853 Mon Sep 17 00:00:00 2001 From: wooruang Date: Sun, 14 Jul 2019 18:47:45 +0900 Subject: [PATCH 6/6] Update title of tuples.md --- _ko/tour/tuples.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_ko/tour/tuples.md b/_ko/tour/tuples.md index 338695372d..476aa69d6b 100644 --- a/_ko/tour/tuples.md +++ b/_ko/tour/tuples.md @@ -1,6 +1,6 @@ --- layout: tour -title: Tuples +title: 튜플 discourse: true