티스토리 뷰

카테고리 없음

01. RxSwift 맛보기

밀쿄 2019. 9. 11. 12:30

안녕하세요 밀쿄입니다.

오늘은 드디어 Rx입니다...

오늘은 맛만 볼 예정입니다.

제가 Rx포스팅을 다루기 전에

미리 말씀드리고 싶은 점은..

소스 규모가 적으면 

Rx의 진가가 잘 드러나지 않는다는 점 입니다.

자 그러면 시작하겠습니다.

 

RxSwift는 기본적으로

Observer 라는 놈이 Observable를 subscribe 하고

Observable라는 놈이 무언가를 방출 Observer가 반응하는게 젤 기본입니다.

 

어디서 본 패턴 아닌가요?

https://milyo-codingstories.tistory.com/28

 

KVO로 MVVM을 짜본다면?

안녕하세요. 밀쿄입니다. 요새 MVVM 포스팅이 많아지네요. 아무래도 Rx포스팅을 준비 단계에 있어서 더 그런것 같습니다 오늘은 KVO로 MVVM을 만들어볼려고 합니다. 일단 그럴려면 KVO가 무엇인가 대해서 알아봅시..

milyo-codingstories.tistory.com

이거랑 느낌이 비슷하죠?

( 잘 모르겠다면 죄송합니다. )

 

그래서 예제를 바로보겠습니다.

이런 코드가 있습니다.

우리가 볼 껀

지금 rx가 Observable<String> 타입의 "Hello RxSwift"를 내뿜고 있고

rx함수에서 testFunc를 subscribe해서 출력하고 있죠?

 

Observable<?>타입이 방출되고

그걸 어디서 subscribe놈이 반응해서

어떤 특정 작업을 해주고

 

이런 메커니즘으로 거의 다 돌아가신다고 

생각하시면 됩니다

 

KVO입장에서 보면

@objc var dynamic 붙은 값이 변경되고

그걸 어디서 observe하고 있는 놈이 반응해서

어떤 특정 작업을 수행하고

 

왜 비슷하다고 했는지 아시겠니요??

 

물론 Rx에서

@objc var dynamic랑 비슷한 걸 찾으면

subject란 게 있습니다만..

차차 뒤에 가면 설명하겠습니다

 

마지막으로...

시작하기라서 규모를 어느정도로 잡을까 하다가...

저 끝에 있는 dispose 까지 한 번 보겠습니다.

 

저기 저 subscribe는 Return 값이 Disposable입니다.

subscribe하고 있는 걸 캔슬할 때 사용하죠.

그래서 사실 원래는 이렇게 사용합니다.

하지만 매번 이렇게 사용하면 번거롭고

subscribe가 늘어나면

disposeable, disposeable2, disposeable3...라고 쓰거나

이렇게 써야겠죠.

 

그치만 RxSwift엔 가방이 있습니다(?)

이렇게 사용하면 훨씬 간단하죠?

 

이렇게 맛보기는 끝났습니다.

아마 이 맛보기만 보면

뭔지 잘 모르실꺼 같은데

앞으로 오퍼레이터나 서브젝트 같은 것들을 소개할테니

조금만 기다려주세요.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함