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
ドラクエとFFで学ぶRxSwiftのすすめ
Search
柿本匡章 Masaaki Kakimoto@kara_mage
September 30, 2016
Programming
2
710
ドラクエとFFで学ぶRxSwiftのすすめ
RxSwiftについて、ドラクエとFFにたとえて楽しく説明しました。
柿本匡章 Masaaki Kakimoto@kara_mage
September 30, 2016
Tweet
Share
More Decks by 柿本匡章 Masaaki Kakimoto@kara_mage
See All by 柿本匡章 Masaaki Kakimoto@kara_mage
個人開発とANDPAD開発との相乗効果
karamage
1
180
何者にもなれなかった自分のための「個人開発のすすめ」
karamage
7
55k
Jest を使って VueコンポーネントとVuexストアの テストコードを書いてみよう!
karamage
3
1.6k
Swiftのクロージャーで苦労じゃ〜
karamage
1
1.2k
Other Decks in Programming
See All in Programming
[DevinMeetupTokyo2025] コード書かせないDevinの使い方
takumiyoshikawa
2
170
テスト駆動Kaggle
isax1015
1
890
レトロゲームから学ぶ通信技術の歴史
kimkim0106
0
130
チームで開発し事業を加速するための"良い"設計の考え方 @ サポーターズCoLab 2025-07-08
agatan
1
490
slogパッケージの深掘り
integral0515
0
130
「テストは愚直&&網羅的に書くほどよい」という誤解 / Test Smarter, Not Harder
munetoshi
1
220
Understanding Kotlin Multiplatform
l2hyunwoo
0
170
「次に何を学べばいいか分からない」あなたへ──若手エンジニアのための学習地図
panda_program
3
640
Hack Claude Code with Claude Code
choplin
8
2.8k
テスターからテストエンジニアへ ~新米テストエンジニアが歩んだ9ヶ月振り返り~
non0113
2
240
CDK引数設計道場100本ノック
badmintoncryer
2
570
Startups on Rails in Past, Present and Future–Irina Nazarova, RailsConf 2025
irinanazarova
0
300
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.7k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
The Cost Of JavaScript in 2023
addyosmani
51
8.6k
Typedesign – Prime Four
hannesfritz
42
2.7k
Speed Design
sergeychernyshev
32
1k
Balancing Empowerment & Direction
lara
1
500
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Testing 201, or: Great Expectations
jmmastey
43
7.6k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
47
9.6k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Transcript
υϥΫΤͱFFͰֶͿ RxSwiftͷ͢͢Ί ͔Β·͛ˏ͏·͏·ͩΑΜ
RxSwift͍͍ͧɻ
ࣗݾհ ໊લɹ֟ຊڡষˏ͔Β·͛ ৬ۀɹϑϦʔϥϯεɾΤϯδχΞ WebΞϓϦiOSΞϓϦΛ࡞ΔࣄΛ͍ͯ͠·͢ɻ ग़ɹԬ Swift, Ruby,JS, AWS Lambda https://www.facebook.com/karamage.umauma
ࣗ༝ͳελΠϧͰࣄͯ͠·͢ ;;͠ͳ͕Βϓϩάϥϛϯά
ࣄͰɺ৽͍͠ఔௐπʔϧ࡞Γ·ͨ͠ʂ http://www.zigenchosei.com ϫʔϧυϏδωεαςϥΠτͷ τϨͨ·Ͱհ͞Ε·ͨ͠
“Rx” ϦΞΫςΟϒϓϩάϥϛϯά ͯ͠·͔͢ʁ
ෳࡶͳঢ়ଶذ ॻ͍ͯ·ͤΜ͔ʁ
RxSwift SwiftͰRx (ϦΞΫςΟϒϓϩάϥϛϯά) ͢ΔͨΊͷϥΠϒϥϦ
RxITઓ࢜Λٹ͏ͷ͔?
RxSwiftΛ͢͢ΊΔཧ༝ ɾ࣮ࡍʹࣄͰͬͯΈͯɺരͰ։ൃͰ͖ ͨ ɾόά͕ۃʹݮͬͨ ɾ͋ͨΒ͍ٕ͠ज़Λ·ͳͿͷָ͕͍͠
RxSwiftͱʁ ɾRxͳSwift ɾRxͱ”Reactive Extensions” ɾΦϒδΣΫτࢦΛϦΞΫςΟϒʹ֦ு ɾRxͱɺඇಉظॲཧΛએݴతʹهड़Ͱ͖ΔϥΠϒϥϦͷ ͜ͱ
ϦΞΫςΟϒϓϩάϥϛϯά ैདྷͷखଓ͖ܕϓϩάϥϛϯάͱ Ͳ͏ҧ͏ͷʁ
υϥΫΤͱFFͷҧ͍ ίϚϯυܕઓಆ(υϥΫΤ) VS ΞΫςΟϒλΠϜότϧ(FF)
खଓ͖ܕϓϩάϥϛϯά ɾίϚϯυΛೖྗ ɾλʔϯΛ࣮ߦ ɾຯํͱఢ͕ಈ࡞͢Δ ɾ࣍ͷλʔϯͷίϚϯυೖྗ
ϦΞΫςΟϒϓϩάϥϛϯά ɾλʔϯ͕ଘࡏ͠ͳ͍ ɾ࣌ؒ(ඇಉظͳϑϩʔ)͕ྲྀΕ͍ͯΔ ɾήʔδ͕ຬλϯʹͳΔͱͦͷΩϟϥ͕ߦಈ
ͳͥ”Rx”͕ඞཁͳͷ͔? ɾiOSΞϓϦΛ࡞͍ͬͯΔͱɺ ɾUI ɾσʔλͷঢ়ଶ ɾඇಉظॲཧ ͕ෳࡶʹ͔ΒΈ͍͖͋ͬͯ·͢
ඇಉظʹAPIୟ͘ܥͷॲཧ ɾAPI͔ΒσʔλΛऔ͖ͬͯͯɺ ඇಉظʹԿ͔͢ΔܥͷΞϓϦɺ ίʔυ͕ෳࡶʹͳΓ͕ͪ
ྫ͑ ɾϘλϯॳظঢ়ଶඇ׆ੑ ɾςΩετϘοΫεʹͳΜ͔ೖྗ ɾϘλϯ׆ੑԽ ɾϘλϯΛ͓ͨ͠Β ɾϘλϯΛඇ׆ੑʹͯ͠ ɾඇಉظʹAPI 1, API2Λୟ͘ ɾAPI1ͱAPI2྆ํΛͪ߹Θ͔ͤͯ͠ΒϨεϙϯεσʔλΛςʔϒϧϏϡʔʹදࣔ
ɾϨεϙϯεσʔλΛݩʹAPI 2ΛඇಉظͰୟ͘ ɾAPI2 ͷϨεϙϯεσʔλΛ͝ʹΐ͝ʹΐ ɾλΠϚʔ͕ൃಈ ɾXඵ͓͖ʹAPI 3Λୟ͘ ɾAPI3 ʹϨεϙϯεσʔλ͕͋Δͱ͖ɺUIͷ௨ཝʹදࣔ ɾϘλϯ׆ੑԽ(ͨͩ͠ࡾճ·Ͱ͔͠ԡͤͳ͍)
“ͳ͢”͚ͩͳͷʹ݅ذ ͱ͔ɺ͋Γ͑ͳ͍ʂ
“ηʔϒ”͚ͩͳͷʹ ̔ճೖྗͱ͔ɺ͋Γ͑ͳ͍ʂ
ذ͕ෳࡶʹͳΔͱ σόοάେม
Θ͔ΒΜɺϝϯςෆೳ ɾঢ়ଶ͕ෳࡶԽ ifจذ ࠈ ɾΠϕϯτͷίʔϧόοΫ ࠈ
None
None
RxSwiftͳΒ ඇಉظϑϩʔΛ؆ܿʹ੍ޚ ɾඇಉظॲཧΛͯ͠ɺσʔλͷঢ়ଶʹଈͯ͠ UIʹө͢ΔॲཧɺෳࡶʹͳΓ͕ͪ ɾRxSwiftͰඇಉظॲཧΛUIʹө͢ΔॲཧΛ ͔ΜͨΜʹॻ͖·͠ΐ͏ʂ
ೋͭҎ্ͷ)551ϦΫΤετΛͪड͚Δ MFUJOU0C1VCMJTI4VCKFDU4USJOH MFUJOU0C1VCMJTI4VCKFDU*OU @0CTFSWBCMFDPNCJOF-BUFTU JOU0C JOU0C \ a
a ^ TVCTDSJCF\ QSJOU ^
APIඇಉظॲཧͷ ࡾछͷਆث ɾRxSwift ɾAlamofire ɾRealm+ObjectMapper
[Swift] RxSwift + Alamofire + ObjectMapper + Realm ͷجຊతͳ͍ํ http://qiita.com/syou007/items/
60e84366a97ee28757bc
͝੩ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠