今日こそ理解するHot / Cold @社内RxSwift勉強会

Post on 16-Apr-2017

901 Views

Category:

Engineering

0 Downloads

Preview:

Click to see full reader

Transcript

Hot / Cold@ RxSwift

Rx

Hot / Cold

Hot / Cold

• Hot / Cold

• Hot / Cold

• Hot / Cold

• Rx … Rx …

( ^o^)

( ^o^)

※ Bond

• Hot / Cold

RxSwift

• Hot

• Hot / Cold

• ( ) Hot / Cold

1

Hot / Cold Observable

Observable

Observable

• Subject • PublishSubject, BehaviorSubject, ReplaySubject …

Observable

• Subject • PublishSubject, BehaviorSubject, ReplaySubject …

• Operator • map, filter, flatMap …

• create, of, just, error …

Observable

• Subject • PublishSubject, BehaviorSubject, ReplaySubject …

• Operator ← !? • map, filter, flatMap …

• create, of, just, error …

2

Operator ( ) Observable

filter

filter

Observable

filter

filter operator

Filter

just

just

Observable

just

Just

• Hot / Cold Observable

• Subject Observable

• Operator ( ) Observable

Hot / Cold

1

Subject Hot

Subject

• PublishSubject

• BehaviorSubject

• ReplaySubject

Hot

2

Operator Cold

Hot

Hot

Hot

• multicast / publish

• replay / replayAll

• connect / refCount

• share / shareReplay

• shareReplayLatestWhileConnected

Subject Hot

Map Operator Cold

Filter Operator Cold

Subject Map Filter

• Subject Hot

• Operator Cold

• publish Operator Hot ( )

Hot / Cold

Hot / Cold

Question1

Answer …

A.

Cold 1

Cold Observable subscribe

Cold subscribe

Sequence

Cold subscribe

Sequence Map

Cold subscribe

subscribe →

subscribe

subscribe

Hot 1

Hot Observable subscribe

Question2

Answer …

A.

Subject Map

Subject Map

• =

Cold subscribe

Subject Map

Subject

Question3

Answer …

A. 1, 2, 3

Subject Map Hot

Hot Cold

Hot Observable subscribe

Subject Map Hot

subscribe

• Cold Observable subscribe

• Hot Observable subscribe

• Hot Observable Cold

Hot

Hot 2

Hot Observable

Cold 2

Cold Observable

• = Observer

• Cold Observable Observer 1

• Hot Observable Observer

※ Observer

Observable

Sequence Map

Sequence Map Observer

1 subscribe

Sequence Map Observer

Map Observer

2 subscribe

1 …

Sequence Map Observer

Map Observer

Sequence Map Observer

Sequence Map Observer

Sequence Map Observer

Sequence Map Observer

2 !!

Sequence Map Observer

Sequence Map Observer

2

Hot

Hot ( )( Hot )

Hot

Hot

( Hot )

Hot

Sequence Map Hot

Hot

Sequence Map Hot Observer

1 subscribe

Hot

Sequence Map Hot Observer

Observer

2 subscribe

Hot

Sequence Map

Observer

HotObserver

Hot

Sequence Map

Observer

HotObserver

!!!

Sequence Map

Observer

HotObserver

print

• Cold Observable

• Hot Observable

Hot

Question4

( Hot )

Hot ( )

Answer …

A. 2, 4, 6

2 subscribe

Hot 3

Hot Observable Observer

• Observer

Cold (

)

• (Next)

subscribe

observer 1

2,4,6

Next

Cold

Cold

Sequence Map Observer

Sequence Map Observer

Cold

2

Observer

Sequence Map Observer

Sequence Map Observer

Cold

Cold 1

Cold Observable subscribe

Hot 1

Hot Observable subscribe

Hot 2

Hot Observable

Cold 2

Cold Observable

Hot 3

Hot Observable Observer

(

)

• Hot

top related