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.3k
限られたリソースで進める段階的な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.9k
プロダクトの成長を支えるKPI / KPIs for growing your product
hedjirog
17
3.8k
UIViewPropertyAnimatorで実現するリッチなアニメーション表現
hedjirog
4
2.3k
ReactorKit at Wantedly
hedjirog
2
980
ReactorKitを利用した緩やかなアーキテクチャの移行
hedjirog
3
1.5k
エンジニア・デザイナーで取り組むグロースハック
hedjirog
6
2.4k
iOS 10 時代のアニメーション / Introduction to UIViewPropertyAnimator
hedjirog
3
3.1k
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
データ駆動経営の道しるべ:プロダクト開発指標の戦略的活用法
ham0215
1
110
20250718_ITSurf_“Bet AI”を支える文化とコストマネジメント
helosshi
0
100
CDK Toolkit Libraryにおけるテストの考え方
smt7174
1
550
組織内、組織間の資産保護に必要なアイデンティティ基盤と関連技術の最新動向
fujie
0
280
How to Quickly Call American Airlines®️ U.S. Customer Care : Full Guide
flyaahelpguide
0
240
ソフトウェアQAがハードウェアの人になったの
mineo_matsuya
3
210
推し書籍📚 / Books and a QA Engineer
ak1210
0
140
データ戦略部門 紹介資料
sansan33
PRO
1
3.3k
P2P通信の標準化 WebRTCを知ろう
faithandbrave
1
140
Copilot coding agentにベットしたいCTOが開発組織で取り組んだこと / GitHub Copilot coding agent in Team
tnir
0
200
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
3
18k
VS CodeとGitHub Copilotで爆速開発!アップデートの波に乗るおさらい会 / Rapid Development with VS Code and GitHub Copilot: Catch the Latest Wave
yamachu
3
460
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.4k
Site-Speed That Sticks
csswizardry
10
700
The Cost Of JavaScript in 2023
addyosmani
51
8.6k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
54k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
Designing for humans not robots
tammielis
253
25k
Gamification - CAS2011
davidbonilla
81
5.4k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.7k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
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