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.1k
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
2
1.6k
1年分のデータが見たいと言われてやったこと/yearly_data_with_note
fromkk
0
790
note iOSチームの自動化 ver.2021/automation_with_iOS_team_on_note_ver2021
fromkk
0
1.8k
Bitrise体験会説明資料/bitrise_explore
fromkk
1
980
noteのiOSアプリで実装したアクセシビリティの全て #iosdc #a /a11y_with_iOS_App_on_note
fromkk
1
2.9k
dSYMのアップロードで SPMを活用する/use_spm_with_upload_dsyms
fromkk
1
2.4k
Bitriseのリモートアクセス機能 #bitrise_meetup/remote_access_of_bitrise
fromkk
1
480
note社でのMagic Pod活用事例 #af_iosdc/magicpod_with_note
fromkk
2
9.8k
iOSには無いmacOS独自機能をCatalystで実装する #iosdc #d/make_macos_apps_with_catalyst
fromkk
9
1.9k
Other Decks in Technology
See All in Technology
DevOpsメトリクスとアウトカムの接続にトライ!開発プロセスを通して計測できるメトリクスの活用方法
ham0215
2
230
本当のAWS基礎
toru_kubota
0
500
ワールドカフェI /チューターを改良する / World Café I and Improving the Tutors
ks91
PRO
0
120
Oracle Cloud Infrastructure:2024年4月度サービス・アップデート
oracle4engineer
PRO
1
190
アクセシビリティを考慮したUI/CSSフレームワーク・ライブラリ選定
yajihum
2
1k
開発パフォーマンスを最大化するための開発体制
ham0215
2
210
Postman v10リリース後を振り返る / Looking back at Postman v10 after release
yokawasa
1
160
Python と Snowflake はズッ友だょ!~ Snowflake の Python 関連機能をふりかえる ~
__allllllllez__
1
110
開発生産性大幅アップ!Postman VS Code拡張機能
nagix
2
370
ここが嬉しいABAC ここが辛いよABAC #再解説+補足編
masahirokawahara
1
270
データベース02: データベースの概念
trycycle
0
150
Azure犬駆動開発の記録/GlobalAzureFukuoka2024_20240420
nina01
1
200
Featured
See All Featured
BBQ
matthewcrist
80
8.8k
Designing on Purpose - Digital PM Summit 2013
jponch
110
6.5k
The Invisible Customer
myddelton
114
12k
Fashionably flexible responsive web design (full day workshop)
malarkey
398
65k
Testing 201, or: Great Expectations
jmmastey
28
6.3k
WebSockets: Embracing the real-time Web
robhawkes
59
7k
5 minutes of I Can Smell Your CMS
philhawksworth
199
19k
Optimizing for Happiness
mojombo
370
69k
KATA
mclloyd
15
12k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
226
51k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3k
A Philosophy of Restraint
colly
197
16k
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