$30 off During Our Annual Pro Sale. View Details »
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
720
ドラクエと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
57k
Jest を使って VueコンポーネントとVuexストアの テストコードを書いてみよう!
karamage
3
1.7k
Swiftのクロージャーで苦労じゃ〜
karamage
1
1.2k
Other Decks in Programming
See All in Programming
Navigation 3: 적응형 UI를 위한 앱 탐색
fornewid
1
210
tsgolintはいかにしてtypescript-goの非公開APIを呼び出しているのか
syumai
6
2.1k
なあ兄弟、 余白の意味を考えてから UI実装してくれ!
ktcryomm
11
11k
Why Kotlin? 電子カルテを Kotlin で開発する理由 / Why Kotlin? at Henry
agatan
2
6.9k
AIコーディングエージェント(NotebookLM)
kondai24
0
160
令和最新版Android Studioで化石デバイス向けアプリを作る
arkw
0
370
ZOZOにおけるAI活用の現在 ~モバイルアプリ開発でのAI活用状況と事例~
zozotech
PRO
8
5.4k
AIコーディングエージェント(skywork)
kondai24
0
150
tparseでgo testの出力を見やすくする
utgwkk
1
180
大体よく分かるscala.collection.immutable.HashMap ~ Compressed Hash-Array Mapped Prefix-tree (CHAMP) ~
matsu_chara
1
210
【CA.ai #3】Google ADKを活用したAI Agent開発と運用知見
harappa80
0
290
複数人でのCLI/Infrastructure as Codeの暮らしを良くする
shmokmt
5
2.2k
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Documentation Writing (for coders)
carmenintech
76
5.2k
RailsConf 2023
tenderlove
30
1.3k
Bash Introduction
62gerente
615
210k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
Done Done
chrislema
186
16k
Writing Fast Ruby
sferik
630
62k
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Designing for Performance
lara
610
69k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Being A Developer After 40
akosma
91
590k
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
͝੩ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠