Flutter 개발 상자

[Flutter Stream①] Rective Programing과 Stream 본문

Flutter

[Flutter Stream①] Rective Programing과 Stream

망고상자 2023. 11. 11. 19:14
728x90

Reactive Programing

 

Rective Programing 이란?

비동기적인 데이터의 흐름(Stream) 을 관찰(Obverse) 하고 반응(React) 하여 실시간으로 데이터 처리하는 프로그래밍

 

Rx(ReactiveX) 란?

Rx는 이벤트기반 프로그래밍 라이브러리로 Reactive Programing을 손쉽게 구현하기 위한 API

각 언어별로 Rx 라이브러리가 대부분 존재한다. RxJava, RxSwift, RxJS 등등...

- Rx 시리즈 전체보기 : https://reactivex.io/languages.html

 

그렇다면 Stream과 무슨 관계가 있나?

위에서 보이듯이 대부분의 언어는 Rx 라이브러리가 존재하고 사용법 또한 거의 유사하다. Dart 또한 RxDart라는 라이브러리가 존재한다. 하지만 Dart가 비교적 최근에 나온 언어라서 그런지 Rx라이브러리와 별개로 Rective Programing을 도와주는 기본 API가 존재하는데 그것이 Stream이다.

기본적으로 Stream이 존재하기 때문에 RxDart는 Stream을 기반으로 만들어져서 기존의 Rx 라이브러리들과는 약간 다른 특성을 가지고 있다.

- RxDart의 다른 특성 정리: https://github.com/ReactiveX/rxdart#rx-observables-vs-dart-streams

 

 

요약

Dart의 Stream은 Rective Programing을 도와주는 기본 API

그 Stream을 확장한것이 RxDart다.

 

728x90