혼자 있고 싶네요. 모두 나가주세요.
001. Reactive Programming/RxJava 란? 본문
Reactive Programming이란?
여기에서 이런 문장을 찾았다.
Reactive programming is programming with asynchronous data streams.
Reactive Programming 에서는 변수들, 사용자 입력, 자료구조 등 모든 것들을 Stream으로 여긴다. 그리고 다양한 기능들을 이용하여 Stream을 다음과 같이 조작 할 수 있다.
- 하나 이상의 Stream이 다른 Stream의 입력값이 될 수 있다.
- 두개의 Stream을 Merge 할 수 있다.
- Stream을 Filter하여 내가 관심있는 Stream만 추릴 수 있다.
- 한 Stream을 새로운 것으로 Map 가능하다.
Stream 이해하기
Stream이란 시간순으로 진행되는 이벤트들의 일련의 순서이다. Stream은 또한 다음 세가지를 결과를 뱉어낸다.
- value
- error
- completed
그리고 이러한 Stream이 토해내는 것을 듣는 것을 subscribing한다 고 한다.
우리가 정의하는 함수는 Observer이라고 하고, Stream은 Observe 당하는 대상, 즉 Observable이라고 한다. (옵저버 패턴)
Reactive Programming의 가장 쉬운 예는 엑셀인 것 같다. 엑셀의 한 셀에 함수를 먹여놓으면, 듣고있는 셀의 값이 바뀌는 즉시 결과 셀의 값이 바뀌게 된다.
RxJava란?
RxJava는 ReactiveX를 Java사용하기 위한 Java VM의 implementation이다.
'타닥타닥 > RxJava' 카테고리의 다른 글
006. RxJAVA 연산자 :: Observable 생성 (0) | 2017.07.12 |
---|---|
005. Connectable Observable (0) | 2017.07.05 |
004. RxJava Subject란? (0) | 2017.07.05 |
003. Observable : Hot, Cold? (0) | 2017.07.05 |
002. RxAndroid 준비하기 (0) | 2017.07.05 |
Comments