자바스크립트 비동기 제어 흐름 패턴
업데이트:
비동기 제어 패턴 비교
해결책 | 장점 | 단점 |
---|---|---|
일반 javascript | - 추가적인 라이브러리나 기술이 필요하지 않음 - 최고의 성능을 제공함 - 다른 라이브러리들과 최상의 호환성을 제공 - 즉석에서 고급 알고리즘의 생성이 가능 |
- 많은 코드와 비교적 복잡한 알고리즘이 필요할 수 있음 |
Async (라이브러리) |
- 가장 일반적인 제어 흐름 패턴들을 단순화 - 여전히 콜백 기반의 솔루션 - 좋은 성능 |
- 외부 종속성 - 복잡한 제어 흐름에 충분하지 않을 수 있음 |
Promise | - 일반적인 제어 흐름의 패턴을 크게 단순화 - 강력한 오류 처리 - onFulfilled 및 onRejected 의 지연 호출 보장 |
- promise화 콜백 기반 api가 필요 - 다소 낮은 성능 |
Generator | - non-blocking API를 blocking과 유사하게 사용 - 오류 처리의 단순화 |
- 보완적인 제어 흐름 라이브러리가 필요 - 비순차적 흐름을 구현할 콜백 또는 promise가 필요 - 썽크화 또는 프라미스화가 필요 |
Async Await | - non-blocking API를 blocking과 유사하게 사용 - 깨끗하고 직관적인 구문 |
- Promise에 대한 이해가 필요 |
댓글남기기