본문 바로가기

RX

1. 리액티브 프로그래밍 소개

반응형

리액티브 프로그래밍은 데이터 흐름과 전달에 관한 프로그래밍 패러다임입니다.

데이타 흐름을 먼저 정의하고 데이터가 변경 되었을 때 연관되는 함수나 수식이 업데이트되는 방식입니다.


이벤트 pull 방식에서 이벤트 push 방식으로의 변화


함수형 프로그램은 Side Effect가 적다.

콜백이나 옵저버 패턴이 스레드에 안전하지 않은 이유는 같은 자원에 여러 스레드가 경쟁 조건에 빠지게 되었을 때 예측이 할 수 없는 잘못된 결과가 나온다.

함수형 프로그램은 Side Effect 가 없는 환경을 지향하기 때문에 멀티스레드 환경에서도 안전하다.


RXJava 는 Nexflex의 기술 블로그에서 처음 소개되었다.

만든이유

* 동시성을 적극적으로 끌어안을 필요가 있다.

* 자바 Future를 조합하기 어렵다는 점을 해결해야 한다.

* 콜백 방식의 문제점을 개선해야 한다.



마블다이어그램 이해하기




RxJava 내용 정리

http://www.hanbit.co.kr/store/books/look.php?p_code=B3448548347