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.2k
限られたリソースで進める段階的な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.7k
プロダクトの成長を支えるKPI / KPIs for growing your product
hedjirog
17
3.8k
UIViewPropertyAnimatorで実現するリッチなアニメーション表現
hedjirog
4
2.2k
ReactorKit at Wantedly
hedjirog
2
950
ReactorKitを利用した緩やかなアーキテクチャの移行
hedjirog
3
1.5k
エンジニア・デザイナーで取り組むグロースハック
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
実は強い 非ViTな画像認識モデル
tattaka
3
1.3k
OPENLOGI Company Profile for engineer
hr01
1
20k
Oracle Database Technology Night #87-1 : Exadata Database Service on Exascale Infrastructure(ExaDB-XS)サービス詳細
oracle4engineer
PRO
1
180
ディスプレイ広告(Yahoo!広告・LINE広告)におけるバックエンド開発
lycorptech_jp
PRO
0
380
急成長する企業で作った、エンジニアが輝ける制度/ 20250227 Rinto Ikenoue
shift_evolve
0
130
EMConf JP 2025 懇親会LT / EMConf JP 2025 social gathering
sugamasao
2
200
エンジニアリング価値を黒字化する バリューベース戦略を用いた 技術戦略策定の道のり
kzkmaeda
6
2.8k
Охота на косуль у древних
ashapiro
0
110
DevinでAI AWSエンジニア製造計画 序章 〜CDKを添えて〜/devin-load-to-aws-engineer
tomoki10
0
140
PHPで印刷所に入稿できる名札データを作る / Generating Print-Ready Name Tag Data with PHP
tomzoh
0
190
【Findy】「正しく」失敗できる チームの作り方 〜リアルな事例から紐解く失敗を恐れない組織とは〜 / A team that can fail correctly by findy
i35_267
5
900
Snowflake ML モデルを dbt データパイプラインに組み込む
estie
0
100
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
12
990
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
1k
Optimizing for Happiness
mojombo
376
70k
Making Projects Easy
brettharned
116
6k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
570
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.1k
A Philosophy of Restraint
colly
203
16k
Typedesign – Prime Four
hannesfritz
40
2.5k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Six Lessons from altMBA
skipperchong
27
3.6k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
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