Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

프라미스 API 번역 #313

Merged
merged 5 commits into from
Nov 13, 2019
Merged

Conversation

ieunjung
Copy link
Contributor

Promise API 번역하였습니다.

프라미스 API 수정

프라미스 API 수정

프라미스 API 수정
Copy link
Member

@Violet-Bora-Lee Violet-Bora-Lee left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

안녕하세요. 번역에 참여해주셔서 감사합니다.

원문 없이 번역본만 읽었을때, 이해가 가시는지 다시 검토해주세요.


The new promise resolves when all listed promises are settled and the array of their results becomes its result.
연결된 모든 프라미스가 처리되고 결괏값으로 배열을 반환할 때 새로운 프라미스가 이행됩니다.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

여기서 listed는 연결되었다는 뜻이 아닌, 배열 안에 나열되어있는 프라미스를 의미합니다.(오역)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the array of their results becomes its result도 잘 번역이 안되어있습니다.
해당 문장을 다시 이해해 보신후 다시 번역해주세요

```

Please note that the order of resulting array members is the same as source promises. Even though the first promise takes the longest time to resolve, it's still first in the array of results.
배열 구성원의 순서는 원천 프라미스의 순서와 같다는 것을 유의하세요. 첫 번째 프라미스가 resolve 되는 시간이 길어도 결괏값의 첫 번째 요소입니다.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

first in the array of results에서 array가 번역이 안되어있습니다.


A common trick is to map an array of job data into an array of promises, and then wrap that into `Promise.all`.
주로 작업 데이터를 프라미스 배열로 매핑하고 다시 전체를 `Promise.all`로 감쌉니다.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A common trick이 번역이 안되어있습니다.

Promise.all(requests)
.then(responses => responses.forEach(
response => alert(`${response.url}: ${response.status}`)
));
```

A bigger example with fetching user information for an array of GitHub users by their names (we could fetch an array of goods by their ids, the logic is same):
깃허브 사용자들의 이름 배열하고 사용자 정보를 가져오는 더 큰 예제입니다. (사용자 아이디로 상품 배열을 가져올 수 있습니다. 로직은 같습니다.)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

.then(responses => Promise.all(responses.map(r => r.json())))
// all JSON answers are parsed: "users" is the array of them
// 모든 JSON 응답은 구문 분석됩니다. "users"는 응답의 배열입니다.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

0f를 ~의로 해석하면 번역투가 심해집니다.
영어사전을 참조하셔서 자연스럽게 한국어에 녹여주세요.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'응답의 배열입니다'라는 말을 입으로 읽었을때 자연스러운지 생각해주세요.

```

````smart header="`Promise.all(iterable)` allows non-promise \"regular\" values in `iterable`"
Normally, `Promise.all(...)` accepts an iterable (in most cases an array) of promises. But if any of those objects is not a promise, it's passed to the resulting array "as is".
````smart header="`Promise.all(반복 가능한(iterable, 이터러블) 객체)`는 `반복 가능한 객체`에서 프라미스가 아닌 \"일반\" 값을 허용합니다."
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

반복 가능한 객체는 위에서도 나왔는데, 위에서 한-영 병기해주세요.

````smart header="`Promise.all(iterable)` allows non-promise \"regular\" values in `iterable`"
Normally, `Promise.all(...)` accepts an iterable (in most cases an array) of promises. But if any of those objects is not a promise, it's passed to the resulting array "as is".
````smart header="`Promise.all(반복 가능한(iterable, 이터러블) 객체)`는 `반복 가능한 객체`에서 프라미스가 아닌 \"일반\" 값을 허용합니다."
보통, `Promise.all(...)`는 프라미스의 이러터블 객체(대부분 배열)를 인정합니다. 그러나 그 객체 중 하나라도 프라미스가 아니면, 배열 결과 "그대로" 보냅니다.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • 보통, Promise.all(...)
  • 프라미스의 이터러블 객체를 인정합니다. <-- 이말이 이해가 안가요.

]).then(alert); // 1, 2, 3
```

So we are able to pass ready values to `Promise.all` where convenient.
그래서 준비된 값들을 `Promise.all`로 보낼 수 있습니다.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

where convenient.의 번역이 누락되었습니다.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

where convenient 을 어떻게 번역하면 좋을까요?

````

## Promise.allSettled

[recent browser="new"]

`Promise.all` rejects as a whole if any promise rejects. That's good for "all or nothing" cases, when we need *all* results to go on:
`Promise.all`는 프라미스가 하나라도 거절되면 전체 다 거절됩니다. *모든* 결괏값이 필요한 경우에 "전부냐 아니냐"의 경우에 좋습니다.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

문장을 입으로 소리내어 읽어봐주세요. 자연스럽지 않네요.

@@ -160,7 +160,7 @@ Promise.allSettled(urls.map(url => fetch(url)))
});
```

The `results` in the line `(*)` above will be:
위에서 `(*)` 줄에서 `results`는 다음과 같이 나올 것입니다.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

위에서 별 줄에서 <-- 이상하네요..

@javascript-translate-bot

Please make the requested changes. After it, add a comment "/done".
Then I'll ask for a new review 👻

@ieunjung
Copy link
Contributor Author

ieunjung commented Nov 3, 2019

수정하였습니다. 참고 부탁드립니다.


## Promise.all

Let's say we want to run many promises to execute in parallel, and wait till all of them are ready.
5개의 프라미스를 동시에 실행시키고 모두 준비가 될 때까지 기다린다는 가정을 해봅시다.
Copy link
Member

@Violet-Bora-Lee Violet-Bora-Lee Nov 7, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • 소스 최신으로 업데이트 해주세요.
  • 5개의 프라미스가 아니고, 여러개의 프라미스라고 수정해야 할 것 같습니다.

@Violet-Bora-Lee
Copy link
Member

#379 이슈로 본 페이지에선 리뷰가 불가능한 상황입니다.

ea804f8

develop브랜치 생성하여 리뷰사항이 담긴 커밋 만들었습니다.

주요 리뷰사항

  • resolve는 네이티브 함수일때만 번역하지 않고, 단어로서 쓰일 땐 이행되다로 번역해야할 것 같습니다. 기존에도 그렇게 해왔는데, 용어집에 누락되어있어서 추가하였습니다.
  • line67의 오역에 주의해주세요.
  • 직역하게 될경우 의미가 잘 전달되지 않는 부분들을 의역해보았습니다. 군더더기라도 생각되시면 과감하게 수정해주셔도 될것같습니다. 의견도 있으시면 남겨주세요.

@ieunjung
Copy link
Contributor Author

리뷰 감사합니다! 전체적으로 손보느라 번거롭게 해드린 것 같네요. 리뷰된 내용이 더 이해하기 쉽고 좋습니다.

@Violet-Bora-Lee
Copy link
Member

Violet-Bora-Lee commented Nov 11, 2019

develop브랜치에 제가 한 커밋 체리픽 하셔서, 코멘트 주신 사항 반영하여 다시 푸시 부탁드릴게요~
제가 작업해도 되는데, 연습해보시라는 의미로..ㅎㅎ

Violet-Bora-Lee and others added 2 commits November 13, 2019 02:00
- javascript-tutorial#379 이슈로 인하여 develop 브랜치에 suggestion관련 커밋 남김
@ieunjung
Copy link
Contributor Author

네ㅎㅎ 수정하였습니다!

@Violet-Bora-Lee
Copy link
Member

이제 마지막 작업이 남았습니다~ 커밋을 하나로 합치셔서 force push 해주세요 :)

@Violet-Bora-Lee Violet-Bora-Lee merged commit 0b9c0ac into javascript-tutorial:master Nov 13, 2019
@Violet-Bora-Lee
Copy link
Member

배포 일정으로 인하여 제가 작업 진행하였습니다.
기여해주셔서 감사합니다 👍 👍 👍

@ieunjung
Copy link
Contributor Author

감사합니다!

@ieunjung ieunjung deleted the foo branch November 14, 2019 00:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants