TIL

[RxSwift] RxSwift에서 얘기하는 시퀀스

Kim Roks 2025. 1. 9. 19:08

RxSwift(이하 Rx) 공식문서에 도배된 시퀀스란 단어, 계속해서 시퀀스에 대입하여 뭔가를 설명하는데 이해가 되지 않아 알아보기로 함

시퀀스란?

사전적인 의미: 연속적인 사건들이나 사건이나

행동 등의 순서

프로그래밍적 의미: 일련의 값이나 객체들이 특정 순서에 따라 나열되어 있는 구조

단순한 예로 array,string, int 등이 모두 시퀀스이다.

Rx에서 얘기하는 시퀀스란?

비동기적으로 일련의 이벤트를 생성하는 스트림 또는 연속적인 데이터 흐름에 대해 이야기 하고 있는것으로 해석했다.

계속 언급되는 이유?

결국 Observerbal Sequence에 대한 이야기를 하고 싶었기 때문

특히 RX에선 Observable Sequence(이하 옵저버블) 에 관한 차이점에 대해 특히 언급되는데

RX의 옵저버블은 Swift의 시퀀스와 유사한 역할을 하며, 둘 다 일련의 요소들을 순차적으로 처리한다는 것,

가장 큰 차이점은,

옵저버블은 비동기적으로 요소를 받을 수 있다는 점이며 Swift의 시퀀스는 그렇지 못하다.

비동기적으로 요소를 받을 수 있다는것은

데이터나 이벤트가 발생하는 대로 즉시 그 시점에 요소를 처리할 수 있다는것이고,

일반적인 시퀀스는 이미 결정된 데이터 순서대로 동기적으로 요소를 처리한다.

결론

RxSwift의 Observable은 Swift의 시퀀스와 유사하다.

하지만 비동기적으로 요소를 처리 할 수 있는 능력이 있으며 , 이는 데이터 스트림이나 이벤트 처리에 매우 유용하다는것