Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ReSwiftでアプリの状態管理 / Reactive Swift Meetup

ReSwiftでアプリの状態管理 / Reactive Swift Meetup

デモ動画を埋め込んだ完全版が http://in.fablic.co.jp/entry/reswift でご覧頂けます

ninjinkun

April 15, 2016
Tweet

More Decks by ninjinkun

Other Decks in Technology

Transcript

  1. 3F4XJGUͰΞϓϦͷঢ়ଶ؅ཧ
    גࣜձࣾ'BCMJD
    OJOKJOLVO

    View Slide

  2. όΠΫϑϦϚΞϓϦ3*%&

    ग़·ͨ͠

    View Slide

  3. 3F4XJGUશ໘࠾༻

    View Slide

  4. ·ͣ͸ΞϓϦΛσϞ

    View Slide

  5. ͜Μͳ͜ͱͳ͍Ͱ͔͢ʁ
    w ΫϥογϡϨϙʔτ͕དྷ͍ͯΔ͚Ͳ

    Ϣʔβʔͷ؀ڥ͕࠶ݱͰ͖ͳ͍
    w ϩάΠϯঢ়ଶΛҙࣝ͠ͳ͕ΒίʔυΛ

    ॻ͘ͷ͕͠ΜͲ͍
    w ىಈϑϩʔ͕ෳࡶ͗ͯ͢վमͰ͖ͳ͍

    View Slide

  6. Ϟνϕʔγϣϯ
    w ϑϦϚΞϓϦ͸ෳࡶ
    w 4/4&$
    w ϩάΠϯঢ়ଶɺ͍͍ͶɺϓϩϑΟʔϧ౳
    w άϩʔόϧͳ಺෦ঢ়ଶΛ؅ཧ͍ͨ͠

    View Slide

  7. 3F4XJGUͱ͸
    w 3FEVYͷ4XJGU࣮૷
    w 3FEVY͸'MVYͷҰ࣮૷

    View Slide

  8. ͳͥ3F4XJGUʁ
    w 'MVYͷྑ͍࣮૷Ͱ͋Ε͹ԿͰ΋ྑ͔ͬͨ

    View Slide

  9. ͳͥ3F4XJGUʁ
    w ڧ͍ͯݴ͑͹ʜ
    w +4ͷ3FEVYͷαϯϓϧ͕۩ମతͰֶͼ
    ΍͔ͬͨ͢
    w 8FCͰݴٴ͕ଟ͍ͷͰ֓೦ͷઆ໌ָ͕
    w ྲྀߦΓ෺ʹ৐Δઓུ

    View Slide

  10. ͳͥ3F4XJGUʁ
    w ։ൃ౰ॳ͸3FEVY,JUΛ࢖͍ͬͯͨ
    w ೥࢝ʹ3F4XJGUʹ౷߹͞Εͯʜ

    View Slide

  11. ࣮૷ͷ۩ମྫ

    View Slide

  12. 3*%&ͷશঢ়ଶ

    View Slide

  13. ϗʔϜͷ4UBUF

    View Slide

  14. ϗʔϜͷ3FEVDFS

    View Slide

  15. ΢ΥονϦετಉظͷσϞ

    View Slide

  16. ΢ΥονϦετಉظͷ࣮૷

    w ϗʔϜ͕΢ΥονϦετͷมߋΛड৴ͯ͠ॲཧ
    w ֤3FEVDFS͸ࣗ෼͕؅ཧ͢Δ4UBUFʹ͚ͩؔ৺Λ
    ͍࣋ͬͯΕ͹ྑ͍

    View Slide

  17. ͳͥ3F4XJGUʁ
    w 'MVYΛΞϓϦશମͰঢ়ଶΛ؅ཧ͢ΔͨΊͷ
    ن໿ͱଊ͑Δ
    w ͦΕΛڧ੍͢ΔͨΊͷΪϒε͕3F4XJGU

    View Slide

  18. ͳͥ3F4XJGUʁ
    w খ͍֓͞೦ͱ࣮૷Ͱେ͖ͳ໰୊Λղܾ͠
    ͍ͯΔ
    w ʢ༨ஊͰ͕͢3Yͬͯղܾ͍ͨ͠໰୊ͷׂ
    ʹ࣮૷͕େ͖͗͢ͳ͍Ͱ͔͢ʁʣ

    View Slide

  19. ࢖ͬͨײ૝

    View Slide

  20. ͱʹ͔͘ؾ͍͍࣋ͪ
    w ঢ়ଶͱ6*͕෼཭͞ΕΔ
    w ಺෦ঢ়ଶͷมߋ͕ಁ໌
    w มߋ͕શͯ௥੻Ͱ͖Δ

    View Slide

  21. 3Y΋ؾ͍͍࣋ͪͧʁ
    w 3Yͷؾ࣋ͪΑ͞͸೉͍͠΋ͷΛ৐Γ͜ͳ
    ͨ࣌͠ͷؾ࣋ͪΑ͞
    w ೉͍͠໰୊Λߴ͍ந৅Ͱஔ͖׵͑ͯ

    ͍Δ
    w 'MVYͷؾ࣋ͪΑ͞͸௿͍ந৅ʹஔ͖׵͑
    Δ͜ͱͰಘΒΕΔݟ௨͠ͷྑ͞

    ׬શʹࢲݟͰ͢ʂੴΛ౤͛ͳ͍Ͱʂ

    View Slide

  22. ಉ྅ͷײ૝

    View Slide

  23. w ঢ়ଶʢ΄΅ը໘ʹରԠʣ͝ͱʹ4UBUFͱ
    3FEVDFSΛ࣮૷͠ͳͯ͘͸͍͚ͳ͍ͷ͕େ
    มͩͬͨ

    View Slide

  24. ࠔͬͨͱ͜Ζ

    View Slide

  25. ࣮૷͕૿͑Δ
    w ೉͍͠໰୊Λ௿͍ந৅Ͱղܾ͍ͯ͠ΔͷͰ
    ࢓ํͳ͍
    w ͋·Γ೰Ή༨஍͸ͳ͍ͷͰɺ൒ࣗಈతʹ
    ॻ͚Δ

    View Slide

  26. ΤϥʔμΠΞϩάͷදࣔ
    w ௨ৗΤϥʔμΠΞϩά͸7JFXଆ͕Ұ࣌త
    ʹදࣔ͢Δͱ͍͏ঢ়ଶΛ͍࣋ͬͯΔ
    w ͦΕΛ4UBUFʹҠ͢ͱ͜Μͳײ͡ʹෳࡶԽ

    ΤϥʔΛද͔ࣔͨ͠Λ؅ཧ͢Δϑϥά͕ඞཁʹͳΔ

    View Slide

  27. 6*5BCMF7JFXͱͷ૬ੑ
    w ঢ়ଶ͕ߋ৽͞ΕΔ౓ʹίʔϧόοΫ͕

    ݺ͹ΕΔ
    w ຖճSFMPBE%BUB͢Δͱը໘͕ͪΒͭ͘
    w ࠩ෼Λݕ஌ͯ͠ߦͣͭ൓ө͢Δ࢓૊ΈΛ
    ࡞ͬͨ
    w 3FBDUతͳ΋ͷ͕ͳ͍J04ͳΒͰ͸ͷ໰୊

    View Slide

  28. ਓ͔Βฉ͔Εͨ2"

    View Slide

  29. ঢ়ଶ͕͘͢͝େ͖͘ͳΔΜ
    ͡Όͳ͍ʁ
    w ͦͷ௨Γ
    w 4UBUFߏ଄ମΛద੾ʹ෼ׂ͢Ε͹໰୊ͳ͍
    w 3FEVDFS΋ͦΕʹରԠͯ͠෼ׂ͞ΕΔ
    w ܕ΋͋Δ͠Ͷʂ

    View Slide

  30. ঢ়ଶ͕ϝϞϦʹ࢒Γଓ͚Δ
    Μ͡Όͳ͍ʁ
    w ͦͷ௨Γ
    w ফ͚ͨ͠Ε͹࡟আ͢Δ"DUJPOͱ3FEVDFSΛ
    ॻ͔͘͠ͳ͍
    w ΞϓϦ͸Ͳ͔͜Ͱࢮ͵͠ɺঢ়ଶͷϑοτ
    ϓϦϯτ͸খ͍͔͞Β໰୊ͳ͍ͬ͠ΐ

    View Slide

  31. ·ͱΊ
    w ͋Δఔ౓ෳࡶͳΞϓϦΛ࡞ΔͳΒঢ়ଶͷ
    ؅ཧ͕ඞཁʹͳΔ
    w 3F4XJGU͸খ͞ͳ֓೦ͱ࣮૷Ͱ͜ͷ໰୊Λ
    ղܾ͢ΔϥΠϒϥϦ

    View Slide