Combine은 비동기 프로그래밍을 더 쉽고 안전하게 해준다.

애플은 이미 비동기 프로그래밍을

Notification Center, Delegate pattern, GCD, Closures 등에서 사용중이다.

비동기 프로그래밍이란 해야 할 일을 위임하고 기다리는 방식의 프로그래밍

Combine

비동기 일 처리를 비교적 간편하게 처리 할 수 있도록 해주는 애플의 새로운 프레임 워크

컴바인의 3가지 핵심요소

  1. Publisher
  2. Operator
  3. Subscriber

간단히 표현하면 Subscriber가 Pubilsher를 구독하고 request하면 Publisher가 응답해주는 방식이다

Combine 쓰는 이유

비동기 프로그래밍을 할 때는 재현이나 추적 및 수정이 어렵다. 이유는 각각이 교유한 인터페이스를 가지는 비동기 api를 사용하기 때문이다.

콤바인을 사용하면 비동기로 동작하는 모든 유형을 통합해서 사용할 수 있다.

비동기 이벤트의 핵심은 백그라운드에서 돌고 있는 함수의 완료 순간을 인지하는 것이다.

그 완료 순간을 캐치할 수 있는 수단이 바로 콤바인에서 제공하는 publisher이다.

Publisher

publisher는 어떠한 요소를 시간 흐름에 따라 방출합니다.