# RxJava - [[RxJava] #1 반응형 프로그래밍이란 무엇인가](https://brunch.co.kr/@yudong/33) - [[RxJava] #2 안드로이드에서 처음 Rx코딩하기](https://brunch.co.kr/@yudong/34) - [[RxJava] #3 구구단을 Rx적으로 코딩하기](https://brunch.co.kr/@yudong/35) - [[RxJava] #4 구구예에 UI 연결하기](https://brunch.co.kr/@yudong/36) ## 내용 - 반응형 프로그래밍은 명령형(imperative) 프로그래밍의 반대말이다. - 반응형 프로그래밍은 함수형 프로그래밍을 활용한다. - 반응형 프로그래밍은 데이터의 흐름에서 시작된다. 반응형 프로그래밍은 크게 3부분으로 구성되어 있다. 1. input 부분: 이벤트가 시작되는 부분 2. operators 부분: 이벤트를 가공하고 조합(compose) 하여 결과를 만드는 부분 3. output 부분: 가공한 결과를 출력하는 부분 ```java // 구구단 3단을 출력하는 Rx 코드 int dan = 3; EditText guguEdit = (EditText)findViewById(R.id.guguEdit); EditText guguResult = (EditText)findViewById(R.id.guguResult); guguEdit.setText(Integer.toString(dan)); Observalbe.range(1, 9) .map(row -> dan + " * " + row " = " + (dan * row)) .map(row -> row + row + '\n') .subscribe(guguResult::append); ``` ## 한국어 자료 - [RxJava with Android - 0 - 시작에 앞서](http://gaemi.github.io/android/2015/05/19/RxJava-with-Android-0-%EC%8B%9C%EC%9E%91%EC%97%90-%EC%95%9E%EC%84%9C.html) - [RxJava with Android - 1 - RxJava 사용해보기](http://gaemi.github.io/android/2015/05/20/RxJava-with-Android-1-RxJava-%EC%82%AC%EC%9A%A9%ED%95%B4%EB%B3%B4%EA%B8%B0.html) ## 영어자료 - [[Grokking RxJava, Part 1: The Basics]](http://blog.danlew.net/2014/09/15/grokking-rxjava-part-1/) - [[Grokking RxJava, Part 2: Operator, Operator]](http://blog.danlew.net/2014/09/22/grokking-rxjava-part-2/) - [[Grokking RxJava, Part 3: Reactive with Benefits]](http://blog.danlew.net/2014/09/30/grokking-rxjava-part-3/) - [[Grokking RxJava, Part 4: Reative Android]](http://blog.danlew.net/2014/10/08/grokking-rxjava-part-4/) ## 참고 - http://rxmarbles.com/ - http://reactivex.io/documentation/operators.html ## 추가 - [[Rx적인 사고방식]] - [[선언형 프로그래밍]] - [[함수형 프로그래밍]]