티스토리 뷰

반응형

리액티브 프로그래밍?

 

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

 

구조는 데이터의 종류와 데이터의 흐름을 먼저 정의하고, 처리합니다.

 

 

Rxjava?

 

RxJava는 넷플릭스에서 동시성, Future, 콜백 문제 때문에 만들게 되었습니다.

 

 

동기 vs 비동기

 

동기 프로그래밍 - 작업을 하나 수행할 때, 그 작업이 끝나기 전까지 다른 작업을 수행하지 못하는 방식

비동기 프로그래밍 - 작업을 요청한 후, 결과가 나오지 않더라도 다른 작업을 수행할 수 있는 방식

 

 

장점

 

  • 명령형 프로그래밍이 아닌 함수형 프로그래밍
  • 스레드 간의 전환의 쉬움
  • 연쇄적인 API 호출에서 유연
  • 코드가 간결

 

 

단점

 

  • 진입장벽, 학습비용이 높고 많이 듬
  • 함수형 프로그래밍

 

 

사용

 

  • 연쇄, 평행 API 호출
  • 테스팅 및 UI 로직
  • 비동기 통신을 하고 싶을 때
  • 이벤트 중복 실행을 막을 때
반응형

'알려주는 이야기 > RxJava' 카테고리의 다른 글

6. RxJava - Cold & Hot Observable  (0) 2020.07.07
5. RxJava - Maybe  (0) 2020.07.07
4. RxJava - Single  (0) 2020.07.07
3. RxJava - Observable  (0) 2020.07.06
2. RxJava - 마블 다이어그램  (0) 2020.07.06
댓글