$30 off During Our Annual Pro Sale. View Details »

RxSwift on iOS

RxSwift on iOS

Slides from talk at dotSwift 2017. More discussion about the sample code at http://rx-marin.com

Marin Todorov

January 27, 2017
Tweet

More Decks by Marin Todorov

Other Decks in Programming

Transcript

  1. RxSwift on iOS
    dotSwift, Paris
    Marin Todorov
    [email protected]

    View Slide

  2. View Slide

  3. View Slide

  4. [email protected]
    NSNotificationCenter
    closures
    delegates
    Grand Central Dispatch
    Selector(:)
    Dependency Injection

    View Slide

  5. Array
    [email protected]
    0 first
    1 second
    2 third

    View Slide

  6. [email protected]
    0 first
    1 second
    2 third
    3 fourth

    View Slide

  7. [email protected]
    0 first
    1 second
    2 third
    3 fourth

    View Slide

  8. [email protected]
    0 first
    1 second
    2 third
    Image Credit: NASA Goddard Space Flight Center

    View Slide

  9. [email protected]
    Observable>
    0 first
    1 second
    2 third
    0 first
    1 second
    2 third
    3 fourth
    0 first
    1 second
    2 third
    3 fourth
    4 fifth

    View Slide

  10. [email protected]
    0 first
    1 second
    2 third
    0 first
    1 second
    2 third
    3 fourth
    0 first
    1 second
    2 third
    3 fourth
    4 fifth

    View Slide

  11. [email protected]
    Observable>
    0 first
    1 second
    2 third
    0 first
    1 second
    2 third
    3 fourth
    0 first
    1 second
    2 third
    3 fourth
    4 fifth

    View Slide

  12. [email protected]
    Observable
    130 301 17

    View Slide

  13. [email protected]
    Observable
    ClickData {
    pt: CGPoint(10, 200)
    nrOfClicks: 1
    }
    ClickData {
    pt: CGPoint(20, 160)
    nrOfClicks: 1
    }
    ClickData {
    pt: CGPoint(100, 13)
    nrOfClicks: 2
    }

    View Slide

  14. [email protected]
    marin
    Observable
    filter
    length > 2
    Observable
    debounce
    interval > 0.5s
    Observable
    flatMapLatest
    Any
    Observable
    map
    Array
    Observable>
    map
    URLRequest()
    Observable
    subscribe or
    bindTo
    orEmpty

    View Slide

  15. View Slide

  16. View Slide

  17. View Slide

  18. RxSwift
    1. Sync-like async code
    2. With a functional aspect
    3. Cross platform, tried and tested framework
    [email protected]

    View Slide

  19. We’re hiring
    [email protected]
    • Distributed Systems Eng.
    • JavaScript Engineer
    • Product Manager
    • Sales Engineer
    • Account Executive
    • and much more!
    realm.io/jobs

    View Slide

  20. [email protected]
    Sample Code & Credits
    http://rx-marin.com
    Thanks:

    ɾAsh Furrow
    ɾFlorent Pillet
    ɾJunior Bontognali
    ɾKrunoslav Zaher

    View Slide

  21. [email protected]
    Questions?
    Marin Todorov
    [email protected]
    www.realm.io
    @icanzilb

    View Slide