Observables와 Promises의 비교 및 선택 기준

많은 프로그래밍 언어에서 비동기 작업을 처리하기 위해 Promises와 Observables를 사용합니다. 이번 글에서는 Observables와 Promises의 차이점과 각각을 선택할 때 고려해야 할 기준에 대해 알아보겠습니다.

Observables vs Promises

1. 기본 개념

2. 사용 방법

// Promise의 사용 예시
const promise = new Promise((resolve, reject) => {
  // 비동기 작업 수행
  if (/* 성공 조건 */) {
    resolve(result);
  } else {
    reject(error);
  }
});

promise
  .then(result => {
    // 성공 처리
  })
  .catch(error => {
    // 실패 처리
  });

// Observable의 사용 예시
const observable = new Observable(observer => {
  try {
    // 값 발행
    observer.next(value);
    observer.complete();
  } catch(error) {
    observer.error(error);
  }
});

observable.subscribe({
  next(value) {
    // 값 처리
  },
  error(error) {
    // 에러 처리
  },
  complete() {
    // 완료 처리
  }
});

3. 다중 값 처리

4. 취소 기능

5. 작업 방식

Observables 또는 Promises 선택 기준

#observables #promises