안녕하세요 태태입니다. 💜
이번 포스팅은 RxSwift에 대해 학습해보려합니다. 👀
- RxSwift란?
RxSwift is a library for composing asynchronous and event-based code by using observable sequences and functional style operators, allowing for parameterized execution via schedulers.
관찰 가능한 시퀀스와 기능적인 스타일 연산자를 사용하여 비동기식 그리고 이벤트 기반의 코드를 구성하기 위한 라이브러리, 스케줄러를 통해 매개변수화된 실행을 허용한다.
라고 하는데요 음... 🤔 키워드를 뽑아보자면 Asynchronous, Observable, Operator, Schedulers 정도 일 것 같아요.
조금 더 읽어보니..
RxSwift, in its essence, simplifies developing asynchronous programs by allowing your code to react to new data and process it in a sequential, isolated manner.
본질적으로 RxSwift는 코드가 데이터에 반응하고 순차적이고 격리된 방식으로 처리 할 수 있도록 하여 비동기식 프로그램 개발을 단순화한다.
Apple은 iOS SDK내에서 비동기식 코드를 작성할 수 있도록 API를 제공하고 있는데요.
- Notification Center
- Delegate Pattern
- Grand Central Dispatch (GCD)
- Closures
- Combine
Delegate 패턴이나 Notification Center와 같은 이전 API 중 일부를 사용하는 경우 주어진 시간에 앱의 상태를 일관적으로 유지하려면 많은 노력이 필요하죠.
어떤 코드를 작성했을 때 매번 어떤 순서로 작동하는지 가정하는것은 불가능하고 사용자의 입력, 네트워크 상태 같은 다양한 외부 요인에 따라 완전히 다른 순서로 실행 될 수도 있어요.
Combine을 사용한다면, 이미 반응형 프로그래밍에 정통했다고 하네요.
= RxSwift 와 Combine 중에 선택하여 사용하시면 될 것 같아요. 👀
다음 포스팅에서는 Observable 과 Operator에 대해서 알아보겠습니다 😊
참고 링크)
RxSwift: Reactive Programming with Swift
'RxSwift' 카테고리의 다른 글
[RxSwift] Subject 예시 코드와 결과 (0) | 2023.12.02 |
---|---|
[RxSwift] Observable (0) | 2022.03.03 |