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
限られたリソースで進める段階的なSwit移行
Search
Jiro Nagashima
May 31, 2017
Technology
2
5.1k
限られたリソースで進める段階的なSwit移行
2017.05.31 Wantedly 技術見学会 〜iOS編〜
https://wantedly.connpass.com/event/56920/
での発表内容です。
Jiro Nagashima
May 31, 2017
Tweet
Share
More Decks by Jiro Nagashima
See All by Jiro Nagashima
グロースを加速するLooker活用 / Leveraging Looker to accelerate growth
hedjirog
3
2.6k
プロダクトの成長を支えるKPI / KPIs for growing your product
hedjirog
17
3.7k
UIViewPropertyAnimatorで実現するリッチなアニメーション表現
hedjirog
4
2.1k
ReactorKit at Wantedly
hedjirog
2
920
ReactorKitを利用した緩やかなアーキテクチャの移行
hedjirog
3
1.4k
エンジニア・デザイナーで取り組むグロースハック
hedjirog
6
2.3k
iOS 10 時代のアニメーション / Introduction to UIViewPropertyAnimator
hedjirog
3
3k
How we use fastlane at Wantedly
hedjirog
9
11k
fastlaneとCircleCIではじめるアプリ配布の定期実行 / Continuous Deployment with fastlane and CircleCI
hedjirog
10
23k
Other Decks in Technology
See All in Technology
これまでの計測・開発・デプロイ方法全部見せます! / Findy ISUCON 2024-11-14
tohutohu
3
370
TanStack Routerに移行するのかい しないのかい、どっちなんだい! / Are you going to migrate to TanStack Router or not? Which one is it?
kaminashi
0
600
10XにおけるData Contractの導入について: Data Contract事例共有会
10xinc
6
650
Evangelismo técnico: ¿qué, cómo y por qué?
trishagee
0
360
AGIについてChatGPTに聞いてみた
blueb
0
130
【Startup CTO of the Year 2024 / Audience Award】アセンド取締役CTO 丹羽健
niwatakeru
0
1.2k
Platform Engineering for Software Developers and Architects
syntasso
1
520
IBC 2024 動画技術関連レポート / IBC 2024 Report
cyberagentdevelopers
PRO
1
110
RubyのWebアプリケーションを50倍速くする方法 / How to Make a Ruby Web Application 50 Times Faster
hogelog
3
940
AIチャットボット開発への生成AI活用
ryomrt
0
170
iOSチームとAndroidチームでブランチ運用が違ったので整理してます
sansantech
PRO
0
140
複雑なState管理からの脱却
sansantech
PRO
1
150
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
Teambox: Starting and Learning
jrom
133
8.8k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
Adopting Sorbet at Scale
ufuk
73
9.1k
Building an army of robots
kneath
302
43k
Done Done
chrislema
181
16k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
370
Building a Scalable Design System with Sketch
lauravandoore
459
33k
Designing Experiences People Love
moore
138
23k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
We Have a Design System, Now What?
morganepeng
50
7.2k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
Transcript
Ӭౡ ࣍࿕ʗJIRO NAGASHIMA ݶΒΕͨϦιʔεͰਐΊΔ ஈ֊తͳSwitҠߦ - Wantedly ٕज़ݟֶձ 2017.05.31 -
None
γΰτͰίίϩΦυϧ SwitͷҠߦͱฒߦͯ͠ ղܾ͖͢՝
γΰτͰίίϩΦυϧ Wantedly Visit ͷΞϓϦ։ൃʹ͓͚Δ՝ ݶΒΕͨϦιʔε 1 2 3 ωοτϫʔΫͷ࠶ઃܭͷඞཁੑ Ϧετදࣔͷ࠶ઃܭͷඞཁੑ
γΰτͰίίϩΦυϧ Wantedly Visit ͷΞϓϦ։ൃʹ͓͚Δ՝ ݶΒΕͨϦιʔε 1 2 3 ωοτϫʔΫͷ࠶ઃܭͷඞཁੑ Ϧετදࣔͷ࠶ઃܭͷඞཁੑ
γΰτͰίίϩΦυϧ ݶΒΕͨϦιʔε 2016.09 2017.04 ৽نࣄۀͷྗ ৽نϝϯόʔՃ ৽نࣄۀͷྗͰҰ࣌ظ1ਓͰ։ൃ
γΰτͰίίϩΦυϧ ݶΒΕͨϦιʔε άϩʔενʔϜͷΤϯδχΞͷۀ୯७ͳ։ൃ͚ͩͰͳ͍ ΤϯδχΞɾσβΠφʔͰऔΓΉάϩʔεϋοΫ // Speaker Deck - https://speakerdeck.com/hedjirog/ensiniatesainatequ-rizu-mugurosuhatuku
γΰτͰίίϩΦυϧ Wantedly Visit ͷΞϓϦ։ൃʹ͓͚Δ՝ ݶΒΕͨϦιʔε 1 2 3 ωοτϫʔΫͷ࠶ઃܭͷඞཁੑ Ϧετදࣔͷ࠶ઃܭͷඞཁੑ
γΰτͰίίϩΦυϧ ωοτϫʔΫͷ࠶ઃܭͷඞཁੑ RestKit ΛΞϓϦͷϦϦʔε͔࣌Βར༻ ΣϒαʔϏεͷΫϥΠΞϯτ࣮͚ͷϑϨʔϜϫʔΫ ʢ ௨৴ / Ϛοϐϯά /
ӬଓԽ ʣ 2014.02 (3લ)
γΰτͰίίϩΦυϧ RestKit ͷ՝ • Objective-Cͷ࣮ͰϢʔβʔ͕ݮΓϝϯςφϯεස͕͘ • AFNetworking 1.xܥʢNSURLConnectionΛ෦ར༻ʣʹґଘ • Ұ෦ͷΫϥογϡͷཁҼʹ
ωοτϫʔΫͷ࠶ઃܭͷඞཁੑ → ґଘΛͳͯ͘͠ ସͷ࣮ Λཱ֬͢Δඞཁ͕͋Δ
γΰτͰίίϩΦυϧ Wantedly Visit ͷΞϓϦ։ൃʹ͓͚Δ՝ ݶΒΕͨϦιʔε 1 2 3 ωοτϫʔΫͷ࠶ઃܭͷඞཁੑ Ϧετදࣔͷ࠶ઃܭͷඞཁੑ
γΰτͰίίϩΦυϧ Ϧετදࣔ • ืू • ϑΟʔυ • ϒϩάهࣄɺࣾһΠϯλϏϡʔͳͲ • ࡢ͔ΒΞϓϦಋೖ
Ϧετදࣔͷ࠶ઃܭͷඞཁੑ
γΰτͰίίϩΦυϧ Ϧετදࣔ ͷ՝ • ίϯςϯπͷଟ༷ԽͱෳࡶԽ • RestKitʹґଘͨ͠جఈΫϥε (View Controller) Λܧঝ࣮ͯ͠
• εΫϩʔϧͷύϑΥʔϚϯεԼ Ϧετදࣔͷ࠶ઃܭͷඞཁੑ → ෳࡶੑʹରॲ͠ಘΔ ସͷ࣮ ͰύϑΥʔϚϯε্Λࢦ͢
γΰτͰίίϩΦυϧ SwiftҠߦͷ͠͞ ݶΒΕͨϦιʔε 1 2 3 ωοτϫʔΫͷ࠶ઃܭͷඞཁੑ Ϧετදࣔͷ࠶ઃܭͷඞཁੑ SwiftҠߦ ͱฒߦͯ͠
ସͷ࣮ ͷཱ֬ͱద༻ඞཁ ※ ϦιʔεݶΒΕ͍ͯΔ…
γΰτͰίίϩΦυϧ ஈ֊తʹ SwiftҠߦΛਐΊΔ
γΰτͰίίϩΦυϧ ஈ֊తͳSwiftҠߦ ϑΣʔζ 2ɿସͷ࣮ͷద༻ʢαϒը໘ʣ ϑΣʔζ 3ɿସͷ࣮ͷద༻ʢϝΠϯը໘ʣ ϑΣʔζ 1ɿSwiftͷॳظಋೖ
γΰτͰίίϩΦυϧ ஈ֊తͳSwiftҠߦ ϑΣʔζ 2ɿସͷ࣮ͷద༻ʢαϒը໘ʣ ϑΣʔζ 3ɿସͷ࣮ͷద༻ʢϝΠϯը໘ʣ ϑΣʔζ 1ɿSwiftͷॳظಋೖ
γΰτͰίίϩΦυϧ ஈ֊తͳSwiftҠߦ ϑΣʔζ 1ɿSwiftͷॳظಋೖ • Objective-CͷϓϩδΣΫτͷSwiftͷ෦ಋೖ • ϢʔβʔͷӨڹ͕খ͍͞ൣғ Ͱ࢝ΊΔ •
Apple WatchΞϓϦ • A/Bςετج൫ • σΟʔϓϦϯΫʹΑΔΞϓϦىಈ࣌ͷը໘੍ޚ • طଘͷ࣮Λେ͖͘ม͑Δ͜ͱ·ͩ͠ͳ͍
γΰτͰίίϩΦυϧ ஈ֊తͳSwiftҠߦ ϑΣʔζ 2ɿସͷ࣮ͷద༻ʢαϒը໘ʣ ϑΣʔζ 3ɿସͷ࣮ͷద༻ʢϝΠϯը໘ʣ ϑΣʔζ 1ɿSwiftͷॳظಋೖ
γΰτͰίίϩΦυϧ ஈ֊తͳSwiftҠߦ ϑΣʔζ 2ɿସͷ࣮ͷద༻ʢαϒը໘ʣ • ϢʔβʔͷӨڹ͕ݶఆతͳը໘ ͰҠߦΛਐΊΔ • ձࣾը໘ •
ݕࡧը໘ • ϝοηʔδը໘ • ସͷ࣮ ͷཱ֬ਐΊͯطଘͷ࣮Λஔ͖͍͑ͯ͘
γΰτͰίίϩΦυϧ ஈ֊తͳSwiftҠߦ ϑΣʔζ 2ɿସͷ࣮ͷద༻ʢαϒը໘ʣ ձࣾը໘ • ը໘ʹෳͷαϒίϯςϯπ͕ଘࡏ • ෳͷ௨৴ϦΫΤετΛॲཧ •
৽نը໘ͳͷͰθϩϕʔεͰઃܭ • APIΫϥΠΞϯτ • ืूͷϦετදࣔ
γΰτͰίίϩΦυϧ ݕࡧը໘ • ืूͱձࣾΛಉ࣌ݕࡧ • ෳͷ௨৴ϦΫΤετΛॲཧ • ΠϯΫϦϝϯλϧαʔν • طଘը໘ͷஔ͖͑ͱ࣮ͯ͠
• ߴͳRxSwiftͷར༻ • ืूͷϦετදࣔͷϒϥογϡΞοϓ ஈ֊తͳSwiftҠߦ ϑΣʔζ 2ɿସͷ࣮ͷద༻ʢαϒը໘ʣ
γΰτͰίίϩΦυϧ ϝοηʔδը໘ • ΑΓߴͳϦετදࣔ • ঢ়ଶʹԠͨ͡ηϧͷද੍ࣔޚ͕ඞཁ • طଘ༷ʹԊ࣮ͬͨͷஔ͖͑ • ϖʔδϯάͷ࣮
• “Pull to Refresh” ͷ࣮ • ஔ͖͑ͷίετײͷѲʹ ஈ֊తͳSwiftҠߦ ϑΣʔζ 2ɿସͷ࣮ͷద༻ʢαϒը໘ʣ
γΰτͰίίϩΦυϧ ओʹ࠾༻ͨ͠ϥΠϒϥϦ • RxSwift • MVVMͷσʔλόΠϯσΟϯάɺෳࡶͳඇಉظॲཧ • Moya • ωοτϫʔΫͷ࣮ɺRxSwiftͱͷ࿈ܞՄೳ
• Unbox • JSONͷσίʔυ • YYText • ߴͳςΩετॲཧɺϨΠΞτܭࢉΛඇಉظͰߦͳ͏͜ͱՄೳ ஈ֊తͳSwiftҠߦ ϑΣʔζ 2ɿସͷ࣮ͷద༻ʢαϒը໘ʣ
γΰτͰίίϩΦυϧ ஈ֊తͳSwiftҠߦ ϑΣʔζ 2ɿସͷ࣮ͷద༻ʢαϒը໘ʣ ϑΣʔζ 3ɿସͷ࣮ͷద༻ʢϝΠϯը໘ʣ ϑΣʔζ 1ɿSwiftͷॳظಋೖ
γΰτͰίίϩΦυϧ ஈ֊తͳSwiftҠߦ ϑΣʔζ 3ɿସͷ࣮ͷద༻ʢϝΠϯը໘ʣ • ϢʔβʔͷӨڹͷେ͖͍ը໘ Ͱͷద༻ • ΞϓϦىಈ࣌ͷืूͷϦετදࣔ •
Comming Soon… • ϑΟϧλʔݕࡧΛେ͖͘มߋͯ͠ϦϦʔε
γΰτͰίίϩΦυϧ SwiftҠߦʹ͓͚Δ
γΰτͰίίϩΦυϧ SwiftҠߦʹ͓͚Δ • ஈ֊తʹ ਐΊΔ • ϢʔβʔͷӨڹ͕খ͍͞ൣғ͔Β • ઃܭํཱ͕֬͢Δ·ͰԿεςοϓΛ౿Ή •
৽نػೳ ৽نը໘ Ͱ࣮Λࢼ͢ • ※ ΤϯδχΞͰࢪࡦͷݕ౼ΛਐΊ͍ͯΔͷͰ࣮ࢪ͢Δࢪࡦͷίϯτϩʔϧ͕Մೳ • θϩϕʔεͰઃܭΛߟ͑ΒΕΔΑ͏ʹ • طଘ࣮ͷஔ͖͑ Λҙࣝͯ͠ݒ೦Λ௵͓ͯ͘͠
γΰτͰίίϩΦυϧ ͓·͚
Wantedly Ͱ iOSΤϯδχΞ Λืू͍ͯ͠·͢ʂʂ https://www.wantedly.com/projects/102790
None