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
WWDC16のLabで既存プロジェクトをXcode 8対応する方法を聞いてきました
Search
fromkk
June 24, 2016
Technology
2
4.2k
WWDC16のLabで既存プロジェクトをXcode 8対応する方法を聞いてきました
AKIBA.swift 第3回で発表した内容です
fromkk
June 24, 2016
Tweet
Share
More Decks by fromkk
See All by fromkk
note社の全員野球で品質向上活動について / note_qa_challenge #iOS_test_teatime
fromkk
3
1.8k
1年分のデータが見たいと言われてやったこと/yearly_data_with_note
fromkk
0
890
note iOSチームの自動化 ver.2021/automation_with_iOS_team_on_note_ver2021
fromkk
0
1.9k
Bitrise体験会説明資料/bitrise_explore
fromkk
1
1k
noteのiOSアプリで実装したアクセシビリティの全て #iosdc #a /a11y_with_iOS_App_on_note
fromkk
2
3.4k
dSYMのアップロードで SPMを活用する/use_spm_with_upload_dsyms
fromkk
1
2.6k
Bitriseのリモートアクセス機能 #bitrise_meetup/remote_access_of_bitrise
fromkk
1
520
note社でのMagic Pod活用事例 #af_iosdc/magicpod_with_note
fromkk
2
10k
iOSには無いmacOS独自機能をCatalystで実装する #iosdc #d/make_macos_apps_with_catalyst
fromkk
9
2k
Other Decks in Technology
See All in Technology
B2B SaaSから見た最近のC#/.NETの進化
sansantech
PRO
0
750
iOS/Androidで同じUI体験をネ イティブで作成する際に気をつ けたい落とし穴
fumiyasac0921
1
110
OCI Security サービス 概要
oracle4engineer
PRO
0
6.5k
障害対応指揮の意思決定と情報共有における価値観 / Waroom Meetup #2
arthur1
5
470
SREが投資するAIOps ~ペアーズにおけるLLM for Developerへの取り組み~
takumiogawa
1
180
EventHub Startup CTO of the year 2024 ピッチ資料
eventhub
0
110
VideoMamba: State Space Model for Efficient Video Understanding
chou500
0
190
The Role of Developer Relations in AI Product Success.
giftojabu1
0
120
マルチプロダクトな開発組織で 「開発生産性」に向き合うために試みたこと / Improving Multi-Product Dev Productivity
sugamasao
1
300
Why App Signing Matters for Your Android Apps - Android Bangkok Conference 2024
akexorcist
0
120
透過型SMTPプロキシによる送信メールの可観測性向上: Update Edition / Improved observability of outgoing emails with transparent smtp proxy: Update edition
linyows
2
210
Amazon CloudWatch Network Monitor のススメ
yuki_ink
1
200
Featured
See All Featured
Designing for humans not robots
tammielis
250
25k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Agile that works and the tools we love
rasmusluckow
327
21k
Adopting Sorbet at Scale
ufuk
73
9.1k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
840
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
0
89
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
The Art of Programming - Codeland 2020
erikaheidi
52
13k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.2k
Transcript
WWDC16ͷLabͰطଘϓ ϩδΣΫτΛXcode 8ର Ԡ͢Δํ๏Λฉ͍͖ͯ· ͨ͠ (C) fromkk. 2016 1
ࣗݾհ ২Ԭɹ࠸ Timers inc.ͷiOSΤϯδχΞ Twitter: @fromkk Github: fromkk (C) fromkk.
2016 2
એ Χοϓϧ͚ΞϓϦͷPairy ͱ Ո͚ࣸਅڞ༗ΞϓϦͷ Famm ΛӡӦ͍ͯ͠Δ Ͱ ΤϯδχΞΛืू ͍ͯ͠·͢ʂ ڵຯͷ͋Δํֻ͓͚ɺ͘͠
http://timers-inc.com/ ΑΓ͓͍߹ΘͤԼ͍͞ʂ (C) fromkk. 2016 3
એ2 ӳޠ͔Βͳ͍ύεϙʔτ࣋ͬͯͳ͔͕ͬͨ1ਓͰWWDC16 ʹߦͬͨϒϩάΛॻ͖·ͨ͠ɻ http://timers-tech.hatenablog.com/ • WWDC 2016ʹࢀՃ͖ͯ͠·ͨ͠ʢ४උฤʣ • WWDC 2016ʹࢀՃ͖ͯ͠·ͨ͠ʢग़ൃʙલ·Ͱฤʣ
• WWDC 2016ʹࢀՃ͖ͯ͠·ͨ͠ʢWWDCฤʣ (C) fromkk. 2016 4
WWDC16ͷҝʹαϯϑϥϯγείߦͬͯ ͖·ͨ͠ͷͰ؆୯ʹৼΓฦΓ·͢ (C) fromkk. 2016 5
(C) fromkk. 2016 6
(C) fromkk. 2016 7
(C) fromkk. 2016 8
(C) fromkk. 2016 9
(C) fromkk. 2016 10
(C) fromkk. 2016 11
ຊ (C) fromkk. 2016 12
Swift 3ରԠɾiOS 10 ରԠਐΊͯ·͔͢ʁ (C) fromkk. 2016 13
·ͣԿ͔ΒखΛ͚͍ͭͯ ͍ͷ͔͔Βͳ͍ਓʁ (C) fromkk. 2016 14
Ͱ͢ (C) fromkk. 2016 15
ࠓճWWDC16ʹࢀՃͨ͠ͷͰXcode 8 ͷରԠํ๏ΛLabͰฉ͍͖ͯ·ͨ͠ (C) fromkk. 2016 16
લఏ • Swift 2.2Ͱ࡞͞Ε͍ͯΔϓϩδΣΫτΛఆ͍ͯ͠·͢ • CocoaPodsCarthageΛಋೖ͍ͯ͠ΔϓϩδΣΫτΛఆ͠ ͍ͯ·͢ • ϥΠϒϥϦʹΑͬͯϚΠάϨʔγϣϯ͕͏·͘ಈ࡞͠ͳ͍ࣄ ͕͋Γ·͢
(C) fromkk. 2016 17
αϯϓϧϓϩδΣΫτ https://github.com/fromkk/FKCalendarSample ͪ͜ΒͷίʔυΛXcode 8Ͱಈ࡞͢Δ༷ʹͯ͠Έ·͢ ʢରԠࡁΈͷͷΛ swift3 ϒϥϯνͰΞοϓ͍ͯ͠·͢ͷͰݟ ͍ͨํͦͪΒΛݟͯԼ͍͞ʣ (C) fromkk.
2016 18
Agenda • Xcode 8 betaͷμϯϩʔυ • طଘϓϩδΣΫτΛ։͍ͯΈΔ • Swift 2.3ͱʁ
• Swift 3ͷϚΠάϨʔγϣϯ • Ϗϧυ͕ίέΔͷରԠ (C) fromkk. 2016 19
Xcode 8 betaͷμϯϩʔυ https://developer.apple.com/download/ ʹΞΫηεͯ͠ Xcode 8 betaΛμϯϩʔυ μϯϩʔυ͕ྃͨ͠Βల։ͯ͠ Applications
ϑΥϧμʹ Ҡಈ (C) fromkk. 2016 20
طଘϓϩδΣΫτΛ։͍ͯΈΔ ͍͖ͳΓϚΠάϨʔγϣϯ͕ٻΊΒΕΔ͕Ұ୴ Later ΛΫϦοΫ (C) fromkk. 2016 21
Swift 2.3ͱ ࢀߟɿhttps://developer.apple.com/videos/play/wwdc2016/402/ (C) fromkk. 2016 22
Swift 2.3ͷར༻ํ๏ Project -> Build Setting -> Swift Compiler ->
Use Legacy Swift Language Version ͷϑϥάΛ Yes ʹ͢Δ (C) fromkk. 2016 23
͔͠͠ʂʂ (C) fromkk. 2016 24
Ͳ͏ͤͳΒSwift 3ʹό ʔδϣϯΞοϓͨ͠ ͍ʂʂ (C) fromkk. 2016 25
Swift 3ͷϚΠάϨʔγϣϯͷલʹ *.xcworkspace ϑΝΠϧΛ։͍͍ͯΔͱCocoaPodsͷத·ͰϚΠάϨʔγϣϯ͠ ͯ͠·͏ CocoaPodsͷϓϩδΣΫτͰSwift 3ʹରԠ͍ͯ͠Δͷ͕͋ΔͳΒઌʹΞοϓσʔ τ͓͖ͯ͠·͠ΐ͏ platform :ios,
'8.0' use_frameworks! target 'CalendarSample' do pod 'FKValidator', :git => 'https://github.com/fromkk/FKValidator.git', :branch => 'swift3' end pod install (C) fromkk. 2016 26
Swift 3ͷϚΠάϨʔγϣϯํ๏ • Edit -> Convert -> To Current Swift
Syntax... • SwiftͷόʔδϣϯΛબ • λʔήοτΛબ • ϓϨϏϡʔΛ֬ೝ • SaveΛΫϦοΫ • ֬ೝΞϥʔτ͕දࣔ͞Εɺͦͷ··ਐΉͱอଘ͞Ε·͢ɻ (C) fromkk. 2016 27
Ϗϧυͯ͠ΈΔ (C) fromkk. 2016 28
! CarthageͷϓϩδΣΫτϏϧυࡁΈͷͷΛΠϯϙʔτ͢ΔͷͰόʔδϣϯ͕ҧ͏ͱౖΒΕ·͢ (C) fromkk. 2016 29
Ϗϧυ͕ίέΔͷ ରԠํ๏ (C) fromkk. 2016 30
CarthageͷϓϩδΣΫτ͕Swift 3 ʹରԠ͍ͯ͠Δ߹ (C) fromkk. 2016 31
CarthageͷϓϩδΣΫτ͕Swift 3ʹରԠͯ͠ ͍Δ߹ xcode-select ͰTerminalͰར༻͢ΔXcodeͷόʔδϣϯΛ Γସ͑·͢ sudo xcode-select -s /Applications/Xcode-beta.app/
(C) fromkk. 2016 32
Cartfile ʹSwift 3ʹରԠͨ͠ϒϥϯνΛࢦఆ # Cartfile github "fromkk/FKCalendarView" "swift3" CarthageͷΞοϓσʔτ carthage
update --platform iOS (C) fromkk. 2016 33
CarthageͷϓϩδΣΫτ͕Swift 3 ʹରԠ͍ͯ͠ͳ͍߹ (C) fromkk. 2016 34
CarthageͷϓϩδΣΫτ͕Swift 3ʹରԠͯ͠ ͍ͳ͍߹ • $(PROJECT_DIR)/Carthage/Checkouts ԼʹCarthage ͷϓϩδΣΫτ͕͍ΔͷͰXcode 8 betaͰ։͘ •
ઌड़ͨ͠ํ๏ͰϚΠάϨʔγϣϯΛ࣮ߦˍΤϥʔमਖ਼ • Ϗϧυ͢Δ (C) fromkk. 2016 35
Products άϧʔϓͷԼʹ *.framework ͕͍ΔͷͰ Finder Ͱදࣔ (C) fromkk. 2016 36
• *.framework ϑΝΠϧΛίϐʔ • $(PROJECT_DIR)/Carthage/Build/$(PLATFORM)/ *.framework ʹ্ॻ͖ (C) fromkk. 2016
37
࠶Ϗϧυ (C) fromkk. 2016 38
! (C) fromkk. 2016 39
! (C) fromkk. 2016 40
ϋϚΓͲ͜Ζ • CoreDataΛར༻͍ͯ͠Δ߹ɺGenericsΛࢦఆ͢Δඞཁ͕͋ Γ·͢ • GCDͷ༷͕େ෯ʹมΘΓ·ͨ͠ • NS ϓϨϑΟοΫε͕֎ΕͨΓ༷API໊͕มߋʹͳ͍ͬͯΔ ͷͰށ͏ࣄ͕͋Γ·͢
(C) fromkk. 2016 41
·ͱΊ ͦͷ1 • CocoaPodsιʔε͕ϫʔΫεϖʔεʹ͍ΔͷͰϓϩδΣΫτଆ ͕ରԠ͍ͯ͠ͳͯ͘ϚΠάϨʔγϣϯ͕ར༻ग़དྷΔ • CarthageϓϩδΣΫτଆ͕Swift 3ʹରԠ͍ͯ͠ͳ͍߹ผ్ ϏϧυΛͯ͠ *.framework
ϑΝΠϧΛ্ॻ͖͢Δඞཁ͕͋Δ • Swift 3Ͱେ෯ʹߏจ͕มߋʹͳ͍ͬͯΔ߹ϋϚΔՄೳੑ͕͋ ΔͷͰ࠷ѱϥΠϒϥϦଆͷΞοϓσʔτΛͭඞཁ͕͋Δʢ͔ ʁʣ (C) fromkk. 2016 42
·ͱΊ ͦͷ2 • iOS 10ͷ৽ػೳΛࢼ͢ʹ·ͣSwift 3Ͱಈ࡞͔ͤͯ͞Β ͔ͱࢥ͍·͢ • ԾʹͰϏϧυ͕௨ͤ͑͢͞Ε৽͍͠ػೳͷಋೖোนԼ͕ ΔͷͰʁ
(C) fromkk. 2016 43
·ͣϏϧυΛ௨ͯ͠৽ ͍͠ػೳΛͲΜͲΜࢼ͠ ͍͖ͯ·͠ΐ͏ʂ (C) fromkk. 2016 44
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝ ·ͨ͠! (C) fromkk. 2016 45