Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
The Power of ReSwift !!
Search
shunsuke sato
May 09, 2016
Programming
1
530
The Power of ReSwift !!
Research ReSwift with creating demo app.
shunsuke sato
May 09, 2016
Tweet
Share
More Decks by shunsuke sato
See All by shunsuke sato
要約 "Add Live Text interaction to your app"
ushisantoasobu
1
1.1k
ANDPAD iOS開発の生態系と課題 - 最近取り組み始めた「マルチモジュール化」について
ushisantoasobu
1
800
Summary of Diagnose unreliable code with test repetitions
ushisantoasobu
1
1k
実践!「みてね」における自動生成活用例
ushisantoasobu
5
6.4k
5 Tips when test fails randomly
ushisantoasobu
2
3.7k
Better Way for Test Data Generation??
ushisantoasobu
1
2.8k
iOS/Androidのサブスクリプション実装における違いをざっと振り返る
ushisantoasobu
2
1.7k
24時間でMacアプリを作ってスベってきた話
ushisantoasobu
0
2.2k
Redirectable in App?
ushisantoasobu
2
950
Other Decks in Programming
See All in Programming
私はどうやって技術力を上げたのか
yusukebe
43
17k
気づいて!アプリからのSOS 〜App Store Connect APIで始めるパフォーマンス健康診断〜
waka12
0
260
大規模アプリにおけるXcode Previews実用化までの道のり
ikesyo
0
990
実践AIチャットボットUI実装入門
syumai
7
2.4k
AIを活用したレシート読み取り機能の開発から得られた実践知 / AI Receipt Scan Practice
rockname
2
1.5k
詳しくない分野でのVibe Codingで困ったことと学び/vibe-coding-in-unfamiliar-area
shibayu36
3
2.6k
(Extension DC 2025) Actor境界を越える技術
teamhimeh
1
200
CI_CD「健康診断」のススメ。現場でのボトルネック特定から、健康診断を通じた組織的な改善手法
teamlab
PRO
0
160
猫と暮らすネットワークカメラ生活🐈 ~Vision frameworkでペットを愛でよう~ / iOSDC Japan 2025
yutailang0119
0
210
Web フロントエンドエンジニアに開かれる AI Agent プロダクト開発 - Vercel AI SDK を観察して AI Agent と仲良くなろう! #FEC余熱NIGHT
izumin5210
2
310
Swiftビルド弾丸ツアー - Swift Buildが作る新しいエコシステム
giginet
PRO
0
1.6k
iOSアプリの信頼性を向上させる取り組み/ios-app-improve-reliability
shino8rayu9
0
130
Featured
See All Featured
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Building Adaptive Systems
keathley
43
2.8k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
KATA
mclloyd
32
14k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
2.6k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
20k
The Language of Interfaces
destraynor
162
25k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
51k
Navigating Team Friction
lara
189
15k
Designing Experiences People Love
moore
142
24k
GitHub's CSS Performance
jonrohan
1032
460k
Transcript
The Power of ReSwift !! ZJEFWୈճษڧձ
ࣗݾհ w !VTIJTBOUPBTPCV w גࣜձࣾϑϯβॴଐ w J04"OESPJE+BWB4DSJQU w ϑοταϧίʔώʔ
֓ཁ 3F4XJGUΛ࣮ϓϩμΫτʹ࠾༻ͨ͠ͱ͖ʹΠέΔͷ͔ ͦͷௐࠪใࠂΈ͍ͨͳײ͡
ൃද͢Δʹ͋ͨͬͯͬͨ͜ͱ w ͦΕͬΆ͍σϞΞϓϦΛͭ͘Δ w ʮૉʯͷͭ͘ΓͰͭ͘Δ w 3F4XJGUͰϦϓϨΠε͢Δ w 3F4XJGUͷύϫʔͱ͔Λײ͡Δ
ΞδΣϯμ w 3F4XJGU֓ཁ w ͭͬͨ͘σϞΞϓϦέʔγϣϯͷ؆୯ͳհ w 3F4XJGUΛ༻͍ͨΞϓϦέʔγϣϯͷ࡞Γํ w 3F4XJGUͷΤίγεςϜ w
ʢࣗͷײͨ͡ʣ3F4XJGUΛͬͯΈͯͷࢥ͏͜ͱ
ʲ൵ใʳҎԼͷࢿྉಡΜͩ΄͏͕ྑ͍ͱࢥΘΕΔ w IUUQOJOKJOLVOIBUFOBCMPHDPNFOUSZ w IUUQTTQFBLFSEFDLDPNOJOKJOLVOSFBDUJWFTXJGUNFFUVQ
w IUUQTHJUIVCDPN3F4XJGU3F4XJGU w 3F4XJGU3FEVYͷ4XJGU൛ 3F4XJGU֓ཁ
3FEVYͱʁʁ w 3FEVY'MVY࣮ͷ͏ͪͷ̍ͭ w 'MVYσʔλϑϩʔʹؔ͢ΔʮΞʔΩςΫνϟʯ w 3FBDU+48FCΞϓϦέʔγϣϯͷʮϏϡʔʯϥΠϒϥϦ
3FEVYͱʁʁ ʢ˞͜ͷਤ3F4XJGUͷϖʔδΑΓʣ
3FEVYͱʁʁ w ొਓ"DUJPO4UPSF3FEVDFS w 6OJEJSFDUJPOBMEBUBqPX w 4JOHMF4UBUF5SFF ʢ˞͜ͷਤ3F4XJGUͷϖʔδΑΓʣ
ొਓ"DUJPO4UPSF3FEVDFS w "DUJPO w 4UPSFʢ˞ਤ͔ΒΘ͔ΓͮΒ͍͚Ͳɺ͜Ε͚ͩγϯάϧτϯʂʂʣ w 3FEVDFS ʢ˞͜ͷਤ3F4XJGUͷϖʔδΑΓʣ
6OJEJSFDUJPOBMEBUBqPX
7JFX͕4UPSFʢ4UBUFʣΛߋ৽ͨ͠Γ͠ͳ͍ 6OJEJSFDUJPOBMEBUBqPX No!!!
ΞϓϦέʔγϣϯͷঢ়ଶ̍ͭͷ4UBUFʹू͞ΕΔ 4JOHMF4UBUF5SFF
ʢཧʣ3F4XJGUͱʁʁ ΞϓϦέʔγϣϯͷʮঢ়ଶʯʹ੍ΛͨΒ͢ϑϨʔϜϫʔΫͰɺ w σʔλϑϩʔ͕୯Ұํ w ΞϓϦέʔγϣϯͷঢ়ଶ͕̍Օॴʹू͞ΕΔ ͱ͍͏ಛΛͭ
ͭͬͨ͘σϞΞϓϦέʔγϣϯͷ؆୯ͳհ w ͦΕͳΓͷنʢ7JFX$POUSPMMFSͷʣ w 5BCMF7JFXΈ͍ͨͳϦετදࣔ w ൚༻తͳ7JFX w ϑΥʔϜΆ͍ͷ w
QVTI7JFX$POUSPMMFSQSFTFOU7JFX$POUSPMMFS w ௨৴ॲཧʢࠓճμϛʔ͚ͩͲʣ w ΞϥʔτɺϩʔσΟϯά
αϯϓϧΞϓϦʹ͍ͭͯ
αϯϓϧΞϓϦʹ͍ͭͯ w 3F4XJGU͕ͲΜͳͷ͔ΛΔʹ͜ΕͰ͍͍ w 3F4XJGUͷΤίγεςϜʢ3F4XJGU3PVUFS3FDPSEFSʣΛΔ ͷ͜ΕͰ͍͍ w ͦΕͳΓͷنʹͳͬͨͱ͖ͷ3F4XJGUͷάουύλʔϯͩͱ͔ ʮπϥϛʯͱ͔Θ͔Βͳͦ͏
3F4XJGUΛ༻͍ͨΞϓϦέʔγϣϯͷ࡞Γํ
σʔλϑϩʔΛҰ௨ΓΈͯΈΔ w 4UBUFΛมߋ͍ͨ͠ w 4UBUF͕ͲͷΑ͏ʹมߋ͞ΕΔ͔ w 4UBUF͕Ϗϡʔʹө͞ΕΔ
σʔλϑϩʔΛҰ௨ΓΈͯΈΔ 4UBUFΛมߋ͍ͨ͠
σʔλϑϩʔΛҰ௨ΓΈͯΈΔ 4UBUF͕ͲͷΑ͏ʹมߋ͞ΕΔ͔
σʔλϑϩʔΛҰ௨ΓΈͯΈΔ 4UBUF͕Ϗϡʔʹө͞ΕΔ
σʔλϑϩʔΛҰ௨ΓΈͯΈΔ w 4UBUFΛมߋ͍ͨ͠ w 4UBUF͕ͲͷΑ͏ʹมߋ͞ΕΔ͔ w 4UBUF͕Ϗϡʔʹө͞ΕΔ
4UBUFΛมߋ͍ͨ͠
4UBUFΛมߋ͍ͨ͠ 4UPSF͕"DUJPOΛEJTQBUDI͢Δ
σʔλϑϩʔΛҰ௨ΓΈͯΈΔ w 4UBUFΛมߋ͍ͨ͠ w 4UBUF͕ͲͷΑ͏ʹมߋ͞ΕΔ͔ w 4UBUF͕Ϗϡʔʹө͞ΕΔ
4UBUF͕ͲͷΑ͏ʹมߋ͞ΕΔ͔
4UBUF͕ͲͷΑ͏ʹมߋ͞ΕΔ͔ 3FEVDFS͕ରԠ͢Δ"DUJPOຖʹ4UBUFΛߋ৽͢Δ
σʔλϑϩʔΛҰ௨ΓΈͯΈΔ w 4UBUFΛมߋ͍ͨ͠ w 4UBUF͕ͲͷΑ͏ʹมߋ͞ΕΔ͔ w 4UBUF͕Ϗϡʔʹө͞ΕΔ
4UBUF͕Ϗϡʔʹө͞ΕΔ
4UBUF͕Ϗϡʔʹө͞ΕΔ 4UPSF͕7JFX$POUSPMMFSΛTVCTDSJCF͢ΔɺϏϡʔͷߋ৽ϦΞΫςΟϒʹ
ͦΕͧΕͷొਓͷதΛΈ͍ͯ͘ w "DUJPO w 4UPSF w 3FEVDFS w 7JFX 7JFX$POUSPMMFS
"DUJPO
"DUJPO w 4UBUFมߋ࣌ʹૹΒΕΔͷ w ͨͩͷʮใʢσʔλʣʯ w ࣗͱͯ͠ͱ͘ʹͳʹ͠ͳ͍ʢʮۭʯͷϓϩτίϧͰ͋Δʣ
4UPSF
4UPSF w 4UPSFΞϓϦέʔγϣϯͷγϯάϧτϯ w 4UPSF͕"DUJPOΛEJTQBUDI͢Δ w 4UPSF͕อ͍࣋ͯ͠Δ4UBUF͕ΞϓϦέʔγϣϯͷঢ়ଶ
3FEVDFS
3FEVDFS w 3FEVDFS4UBUFΛͲͷΑ͏ʹߋ৽͢Δ͔ͷΈΛ୲͏ w 3FEVDFSͨͩͷ'VODUJPO w "DUJPOͷܕʹΑͬͯॲཧ͚
7JFX 7JFX$POUSPMMFS
7JFX 7JFX$POUSPMMFS 4UPSF4VCTDSJCFSϓϩτίϧΛDPOGPSN͢Δ
7JFX 7JFX$POUSPMMFS 4UPSF4VCTDSJCFSϓϩτίϧͰఆٛ͞Ε͍ͯΔOFX4UBUFϝιουΛ࣮͢Δ
7JFX 7JFX$POUSPMMFS OFX4UBUFϝιουʹɺ4UBUFʹରͯ͠7JFX͕ͲͷΑ͏ʹදࣔ͞ΕΔ͔Λએݴతʹॻ͘
7JFX 7JFX$POUSPMMFS 4UPSFͷTVCTDSJCFVOTVCTDSJCFͷॲཧΛॻ͘
7JFX 7JFX$POUSPMMFS 4UBUFΛߋ৽͍ͨ͠ͱ͖ɺͦΕʹରԠͨ͠"DUJPOΛEJTQBUDI͢Δ
7JFX 7JFX$POUSPMMFS 4UPSFͷ4UBUFΛ͍͡Βͳ͍ʂʂ No!!!
3F4XJGUͷΤίγεςϜ w 3F4XJGU3PVUFS w 3F4XJGU3FDPSEFS
3F4XJGU3PVUFS w 3F4XJGUͰΞϓϦέʔγϣϯͷঢ়ଶΛશͯཧ͍ͨ͠ w J04ʹ͓͚ΔʮϧʔςΟϯάʯ4UBUFͷ̍ͭ w ϝϦοτ3F4XJGU3FDPSEJOHͷͱ͜ΖͰ
3F4XJGU3PVUFSద༻֓ཁ ͜͜Ͱ͍ͩͿলུͯ͠EJTQBUDIͷॲཧͷΈʢଞʹઃఆ͕݁ߏखؒͩͬͨΓ͢Δʣ
3F4XJGU3PVUFSద༻֓ཁ ্ͷSPVUFͨͩͷจࣈྻͷྻ63-తͳѻ͍ʢzTPNFIPHFzʣɺ͍ͦͭΛ1BZMPBEʹ͢Δ
3F4XJGU3FDPSEFS w "DUJPOͷཤྺΛه w ͦΕͭ·Γɺͯ͢ͷ࣌Ͱͷ4UBUFΛ࠶ݱͰ͖Δͱ͍͏͜ͱ w λΠϜτϥϕϧʢ6OEP3FEPʣ w ։ൃ࣌ͷঢ়ଶ࠶ݱ w
"DUJPO4UBOEBSE"DUJPO$POWFSUJCMFʹϦϓϨΠε͢Δඞཁ༗ w 4FU3PVUF4QFDJpD%BUB͕བྷΉͱݱঢ়͍͠ʁʁ
w ΞϓϦέʔγϣϯͷঢ়ଶ͕̍Օॴʹू͞ΕΔʂʂ w 3F4XJGUͷ4UBUFͱͯ͠ѻ͑ͳ͍ʮঢ়ଶʯ͕͋Δ w ࠩߋ৽ w 4UBUFͷׂͷํ w ଞίʔυྔ͕૿͑ΔʢʣɺϦηοτॲཧ
3F4XJGU͞ΘͬͯΈͯײͨ͜͡ͱ·ͱΊ
ΞϓϦέʔγϣϯͷঢ়ଶ͕̍Օॴʹू͞ΕΔʂʂ ·ͣʢ͜Ε·Ͱ͓ͦΒ͘ଘࡏͨ͠Ͱ͋Ζ͏ʣ7JFX$POUSPMMFSͷঢ়ଶมҰͳ͘ͳΔ
ΞϓϦέʔγϣϯͷঢ়ଶ͕̍Օॴʹू͞ΕΔʂʂ 4UPSF͕ͯ͢Λ͍ͬͯΔɻ4UPSFʮਆʯ
3F4XJGUͷ4UBUFͱͯ͠ѻ͑ͳ͍ʮঢ়ଶʯ͕͋Δ w Ξχϝʔγϣϯ w 6*"MFSU$POUSPMMFS w ΩʔϘʔυͷදࣔඇදࣔ w αʔυύʔςΟͷϥΠϒϥϦʢྫ͑z471SPHSFTT)6%zʣ
3F4XJGUͷ4UBUFͱͯ͠ѻ͑ͳ͍ʮঢ়ଶʯ͕͋Δ w Ξχϝʔγϣϯ w 6*"MFSU$POUSPMMFS w ΩʔϘʔυͷදࣔඇදࣔ w αʔυύʔςΟͷϥΠϒϥϦʢྫ͑z471SPHSFTT)6%zʣ w
ࠓճͷσϞΞϓϦέʔγϣϯͰɺΧελϜΞϥʔτɺΧελϜϩʔσΟ ϯάΛͭͬͯ͘3F4XJGUΣΠʹͤͨ w ͱ͍͑ɺ6*"MFSU$POUSPMMFSͬͯΔՕॴ͋Δ͠ɺΩʔϘʔυͷॲ ཧͳͲɺ3F4XJGUΣΠʹΒͳ͍ͷ͕͋ͬͯɺؾ࣋ͪతʹগ͠ࣃ ͕Ώ͍͚ͩͰෆศͳ͜ͱͳ͍ͣ
ࠩߋ৽
ࠩߋ৽ ճEJTQBUDI͢Δͱ͍͏͜ͱ
ࠩߋ৽ ճඳըߋ৽͕Δ6*5BCMF7JFXͷSFMPBE%BUBΈ͍ͨͳίετߴͦ͏ͳͷϚζΠͷͰʁʁ
ࠩߋ৽ ճඳըߋ৽͕Δ6*5BCMF7JFXͷSFMPBE%BUBΈ͍ͨͳίετߴͦ͏ͳͷϚζΠͷͰʁʁ w ࠩߋ৽ͷ࣮͕ඞཁʁʁ w 3F4XJGUࣗ͜͜ΒΜʹ͍ͭͯಛʹݴٴͳ͠ͷͣ
4UBUFͷׂͷํ 4UBUFΛͲͷΑ͏ʹׂ͖͢ͳͷ͔ʁʁ
4UBUFͷׂͷํ w ͱΓ͋͑ͣࠓճ7JFX$POUSPMMFSຖͷ4UBUFΛͭͬͯ͘Έͨ w ҟͳΔ7JFX$POUSPMMFSͰಉ͡σʔλΛࢀর͍ͨ͠έʔεʁʁͱ͍͏ ͜ͱΛߟ͑Δͱଟ7JFX$POUSPMMFSͰ͚ͪΌμϝ 4UBUFΛͲͷΑ͏ʹׂ͖͢ͳͷ͔ʁʁ
ଞίʔυྔ͕૿͑ΔʢʣɺϦηοτॲཧ 4UBUFΛͲͷΑ͏ʹׂ͖͢ͳͷ͔ʁʁ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂʂ