[React] 비동기와 프로미스는 각각 무엇일까요?

이경하·2022년 8월 31일
0

React

목록 보기
8/10
post-thumbnail

프로미스는 정확히 말하면 비동기가 아닙니다. 비동기와 프로미스는 각각 무엇일까요?

동기와 비동기의 구분은 요청받고 응답받는 시간대의 차이
요청하고-응답받는 시간을 하나의 박스(box)로 정의한다면, 동기는 박스 안에서 움직이고, 비동기는 박스를 벗어나 작동되는 원리이다.

  1. 동기요청을 하면 (바로) 응답을 받는다는 의미요청과 응답이 같은 시간대 “안에” 고정되어 있어, 요청에 대해 응답이 완료되기까지 프로그램이 정지한다.

  2. 응답을 받고나서야 비로소 다시 진행되는 특성을 가진다.비동기요청 한 내용을 언젠간 응답해 줄 것이라는 약속을 의미한다.

  3. 요청-응답 간 결합이 자유로워 프로그램이 응답 받기 위해 대기하지 않고 진행되는 특성이 있다. 추후 응답을 받은 후 다음 로직을 수행 한다.

  4. Promise자바스크립트에서 비동기 프로그래밍을 위해 콜백을 사용한다. Promise는 전통적인 콜백 패턴이 가진 단점을 일부 보완하며 동기 처리 시점을 명확하게 표현한다.

  5. Promise는 비동기 처리 로직을 추상화한 객체와 그것을 조작하는 방식을 말한다. Promise 객체에서 제공하는 메서드만 사용해야 하므로 인자가 같은 방식으로 통일된다. 복잡한 비동기 처리를 쉽게 패턴화할 수 있다.

출처
profile
경듀님

0개의 댓글