프로미스는 정확히 말하면 비동기가 아닙니다. 비동기와 프로미스는 각각 무엇일까요?
- 동기와 비동기의 구분은 요청받고 응답받는 시간대의 차이라고 생각합니다.
- 요청하고-응답받는 시간을 하나의 박스(box)라로 정의한다면,동기는 박스 안에서 움직이고, 비동기는 박스를 벗어나 작동되는 원리 라고 생각합니다.
- 동기 : 요청을 하면 (바로) 응답을 받는다는 의미요청과 응답이 같은 시간대 “안에” 고정되어 있어, 요청에 대해 응답이 완료되기까지 프로그램이 정지합니다.
- 응답을 받고나서야 비로소 다시 진행되는 특성을 가집니다.
- 비동기 : 요청 한 내용을 언젠간 응답해 줄 것이라는 약속을 의미.
- 요청-응답 간 결합이 자유로워 프로그램이 응답 받기 위해 대기하지 않고 쿨하게?! 자기 갈길?! 가는 특성입니다.
- 언젠간 응답을 받을테고 다음 로직을 수행 합니다.
- Promise자바스크립트에서 비동기 프로그래밍을 위해 콜백을 사용한다.
- Promise는 전통적인 콜백 패턴이 가진 단점을 일부 보완하며 동기 처리 시점을 명확하게 표현한다.
- Promise는 비동기 처리 로직을 추상화한 객체와 그것을 조작하는 방식을 말한다.
- Promise 객체에서 제공하는 메서드만 사용해야 하므로 인자가 같은 방식으로 통일된다.
- 복잡한 비동기 처리를 쉽게 패턴화할 수 있다.
- 동기 : 요청을 하면 (바로) 응답을 받는다는 의미요청과 응답이 같은 시간대 “안에” 고정되어 있어, 요청에 대해 응답이 완료되기까지 프로그램이 정지합니다.
'항해99' 카테고리의 다른 글
[항해99] TIL D+32 (0) | 2022.08.12 |
---|---|
[항해99] TIL D+31 (0) | 2022.08.11 |
[항해99] TIL D+29 (0) | 2022.08.11 |
[항해99] TIL D+28 (0) | 2022.08.08 |
[항해99] TIL D+27 (0) | 2022.08.08 |