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
builderscon tokyo 2018
Search
Yutaro Muta
September 08, 2018
Programming
0
830
builderscon tokyo 2018
Event:
https://builderscon.io/tokyo/2018
Video:
https://www.youtube.com/watch?v=pVkW9iJuSRw&t=2840s
Yutaro Muta
September 08, 2018
Tweet
Share
More Decks by Yutaro Muta
See All by Yutaro Muta
Swiftの “private” を テストする / Testing Swift "private"
yutailang0119
0
130
Apple Vision Pro購入RTA 1泊3日弾丸ハワイツアー / RTA: Purchase Apple Vision Pro in Hawaii
yutailang0119
0
1.4k
個人開発のたのしみ / Enjoying personal development
yutailang0119
0
900
バックポートして学ぶ新APIの仕組み
yutailang0119
0
2.5k
Backport AsyncImage
yutailang0119
0
660
xcrun Essentials
yutailang0119
6
1.2k
Let's Coding SwiftUI on iPad!
yutailang0119
1
480
Property Wrapperで遊ぼう / Play with Property Wrapper
yutailang0119
2
300
Back of First Screen AB test of Hatena Bookmark iOS app with Firebase AB Testing
yutailang0119
0
290
Other Decks in Programming
See All in Programming
富山発の個人開発サービスで日本中の学校の業務を改善した話
krpk1900
5
390
CDK開発におけるコーディング規約の運用
yamanashi_ren01
2
150
Grafana Loki によるサーバログのコスト削減
mot_techtalk
1
130
Java Webフレームワークの現状 / java web framework at burikaigi
kishida
9
2.2k
DROBEの生成AI活用事例 with AWS
ippey
0
130
仕様変更に耐えるための"今の"DRY原則を考える / Rethinking the "Don't repeat yourself" for resilience to specification changes
mkmk884
5
1.4k
SwiftUI Viewの責務分離
elmetal
PRO
2
240
SpringBoot3.4の構造化ログ #kanjava
irof
3
1k
2024年のWebフロントエンドのふりかえりと2025年
sakito
3
260
GAEログのコスト削減
mot_techtalk
0
120
Lottieアニメーションをカスタマイズしてみた
tahia910
0
130
Honoをフロントエンドで使う 3つのやり方
yusukebe
7
3.4k
Featured
See All Featured
Writing Fast Ruby
sferik
628
61k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
Site-Speed That Sticks
csswizardry
4
380
Bash Introduction
62gerente
611
210k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
Agile that works and the tools we love
rasmusluckow
328
21k
BBQ
matthewcrist
87
9.5k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Navigating Team Friction
lara
183
15k
YesSQL, Process and Tooling at Scale
rocio
172
14k
Transcript
Ξοϓσʔτ͔Γ͍ͯ͠Δݴ͍༁Λͤͯ͘͞Εʂ iOSΞϓϦέʔγϣϯΤϯδχΞΑΓ 2018/09/08 @builderscon tokyo 2018 Yutaro Muta @yutailang0119
• Yutaro Muta @yutailang0119 • Hatena Co., Ltd. @Kyoto •
Conference Staff • builderscon 2017, 2018 • PyCon JP 2016, 2017 • and more • Who am I ?
None
Έͳ͞Μͷձࣾɺ νʔϜɺ पΓʹ iOSΞϓϦέʔγϣϯΤϯδχΞ͍·͔͢ʁ
ԿΛӅͦ͏ɺ ࢲiOSΞϓϦέʔγϣϯΤϯδχΞͰ͢
ͯ͞
Έͳ͞ΜɺҰ͜͏ࢥͬͨ͜ͱͳ͍Ͱ͠ΐ͏͔ʁ
ʮ܅ͨͪɺ͍ͭ όʔδϣϯΞοϓͯ͠ͳ͍ʁʯ
…
……
………
ؾ͍ͮͯ͠·͍·ͨ͠Ͷʁ
Agenda • Swiftͷྺ࢙ͱΞοϓσʔτ ݴ͍༁ • OSSԽͷԸܙ • ͜Ε͔ΒͷSwift
Swiftͷྺ࢙ͱΞοϓσʔτ
Swiftͷྺ࢙ • 2014/06 WWDC 2014Ͱൃද • 2014/09 Swift 1.0 /
iOS 8 • 2015/09 Swift 2.0 / iOS 9 • 2016/09 Swift 3.0 / iOS 10 • 2017/09 Swift 4.0 / iOS 11 • 2018/09 Swift 5.0 / iOS 12
Swiftͷྺ࢙ • 2014/06 WWDC 2014Ͱൃද • 2014/09 Swift 1.0 /
iOS 8 • 2015/09 Swift 2.0 / iOS 9 • 2016/09 Swift 3.0 / iOS 10 • 2017/09 Swift 4.0 / iOS 11 • 2018/09 Swift 5.0 / iOS 12
Swiftͷྺ࢙ • 2014/06 WWDC 2014Ͱൃද • 2014/09 Swift 1.0 /
iOS 8 • 2015/09 Swift 2.0 / iOS 9 • 2016/09 Swift 3.0 / iOS 10 • 2017/09 Swift 4.0 / iOS 11 • 2018/09 Swift 5.0 / iOS 12
Swiftͷྺ࢙ • 2014/06 WWDC 2014Ͱൃද • 2014/09 Swift 1.0 /
iOS 8 • 2015/09 Swift 2.0 / iOS 9 • 2016/09 Swift 3.0 / iOS 10 • 2017/09 Swift 4.0 / iOS 11 • 2018/09 Swift 5.0 / iOS 12
Swiftͷྺ࢙ • 2014/06 WWDC 2014Ͱൃද • 2014/09 Swift 1.0 /
iOS 8 • 2015/09 Swift 2.0 / iOS 9 • 2016/09 Swift 3.0 / iOS 10 • 2017/09 Swift 4.0 / iOS 11 • 2018/09 Swift 5.0 / iOS 12
1ʹҰ iOSͷϝδϟʔΞοϓσʔτͱڞʹ
Swiftͷྺ࢙ • 2014/06 WWDC 2014Ͱൃද • 2014/09 Swift 1.0 /
iOS 8 • 2015/09 Swift 2.0 / iOS 9 • 2016/09 Swift 3.0 / iOS 10 • 2017/09 Swift 4.0 / iOS 11 • 2018/09 Swift 5.0 / iOS 12
Swiftͷྺ࢙ • 2014/06 WWDC 2014Ͱൃද • 2014/09 Swift 1.0 /
iOS 8 • 2015/09 Swift 2.0 / iOS 9 • 2016/09 Swift 3.0 / iOS 10 • 2017/09 Swift 4.0 / iOS 11 • 2018/09 Swift 5.0 / iOS 12
• 2014/06 WWDC 2014Ͱൃද • 2014/09 Swift 1.0 / iOS
8 • 2015/09 Swift 2.0 / iOS 9 • 2016/09 Swift 3.0 / iOS 10 • 2017/09 Swift 4.0 / iOS 11 • 2018/09 Swift 5.0 / iOS 12 • 2014/06 WWDC 2014Ͱൃද • 2014/09 Swift 1.0 • 2015/09 Swift 2.0 • 2016/09 Swift 3.0 • 2017/09 Swift 4.0 • 2018/09 Swift 4.2 Swiftͷྺ࢙
https://github.com/apple/swift-evolution/commit/de7727f7dcf7bbfdea6763a87f4c8c534f27406e https://developer.apple.com/videos/play/wwdc2018/401/ WWDCͷηογϣϯதʹ͠Εͬͱmasterʹpush
SwiftΞοϓσʔτมߋ • 2014/09 Swift 1.0 • 2015/09 Swift 2.0 ->
ഁյతมߋ • 2016/09 Swift 3.0 -> ഁյతมߋ • 2017/09 Swift 4.0 -> มߋܰඍ -> λʔήοτຖʹSwift 4ͱ 3.2ͰͷίϯύΠϧϞʔυΛબͰ͖ΔΑ͏ʹ • Early 2019 Swift 5.0 -> ABI҆ఆԽOwnershipϞσϧͷಋೖ
SwiftΞοϓσʔτมߋ • 2014/09 Swift 1.0 • 2015/09 Swift 2.0 ->
େ͖ͳഁյతมߋ • 2016/09 Swift 3.0 -> େ͖ͳഁյతมߋ • 2017/09 Swift 4.0 -> খ͞ͳഁյతมߋ -> λʔήοτຖʹSwift 4ͱ 3.2ͰͷίϯύΠϧϞʔυΛબͰ͖ΔΑ͏ʹ • Early 2019 Swift 5.0 -> ABI҆ఆԽOwnershipϞσϧͷಋೖ
SwiftΞοϓσʔτมߋ • 2014/09 Swift 1.0 • 2015/09 Swift 2.0 ->
େ͖ͳഁյతมߋ • 2016/09 Swift 3.0 -> େ͖ͳഁյతมߋ • 2017/09 Swift 4.0 -> খ͞ͳഁյతมߋ -> λʔήοτຖʹSwift 4ͱ 3.2ͰͷίϯύΠϧϞʔυΛબͰ͖ΔΑ͏ʹ • Early 2019 Swift 5.0 -> ABI҆ఆԽOwnershipϞσϧͷಋೖ
SwiftΞοϓσʔτมߋ • 2014/09 Swift 1.0 • 2015/09 Swift 2.0 ->
େ͖ͳഁյతมߋ • 2016/09 Swift 3.0 -> େ͖ͳഁյతมߋ • 2017/09 Swift 4.0 -> খ͞ͳഁյతมߋ -> λʔήοτຖʹSwift 4ͱ 3.2ͰͷίϯύΠϧϞʔυΛબͰ͖ΔΑ͏ʹ • Early 2019 Swift 5.0 -> ABI҆ఆԽOwnershipϞσϧͷಋೖ
SwiftΞοϓσʔτมߋ • 2014/09 Swift 1.0 • 2015/09 Swift 2.0 ->
େ͖ͳഁյతมߋ • 2016/09 Swift 3.0 -> େ͖ͳഁյతมߋ • 2017/09 Swift 4.0 -> খ͞ͳഁյతมߋ -> λʔήοτຖʹSwift 4ͱ 3.2ͰͷίϯύΠϧϞʔυΛબͰ͖ΔΑ͏ʹ • Early 2019 Swift 5.0 -> ABI҆ఆԽOwnershipϞσϧͷಋೖ
OSSԽͷาΈ • 2014/06 WWDC 2014Ͱൃද • 2015/06 WWDC 2015ͰOSSԽͷൃද •
2015/12 OSSԽ -> ͜ͷ࣌ͰίϯύΠϥඪ४ϥΠϒϥϦͷ͘͝Ұ෦ͷΈެ։ • ۙͩͱ apple / swift-syntax ͕2िؒ΄Ͳલʹެ։
OSSԽͷาΈ • 2014/06 WWDC 2014Ͱൃද • 2015/06 WWDC 2015ͰOSSԽͷൃද •
2015/12 OSSԽ -> ͜ͷ࣌ͰίϯύΠϥඪ४ϥΠϒϥϦͷ͘͝Ұ෦ͷΈެ։ • ۙͩͱ apple / swift-syntax ͕2िؒ΄Ͳલʹެ։
OSSԽͷาΈ • 2014/06 WWDC 2014Ͱൃද • 2015/06 WWDC 2015ͰOSSԽͷൃද •
2015/12 OSSԽ -> ͜ͷ࣌ͰίϯύΠϥඪ४ϥΠϒϥϦͷ͘͝Ұ෦ͷΈެ։ • ۙͩͱ apple / swift-syntax ͕2िؒ΄Ͳલʹެ։
OSSԽͷาΈ • 2014/06 WWDC 2014Ͱൃද • 2015/06 WWDC 2015ͰOSSԽͷൃද •
2015/12 OSSԽ -> ͜ͷ࣌ͰίϯύΠϥඪ४ϥΠϒϥϦͷ͘͝Ұ෦ͷΈެ։ • ۙͩͱ apple / swift-syntax ͕2िؒ΄Ͳલʹެ։
OSSԽͷԸܙ
OSSԽͷԸܙ • ѹతʹใྔ͕૿͑ͨ • ഁյతมߋ͕ݮ͖ͬͯͨ • apple / swift-coreibs-foundation ʹຊਓίϛολʔଘࡏ
͜Ε͔ΒͷSwift
͜Ε͔ΒͷSwift • Pythonͱͷ࿈ܞ • ABI҆ఆԽ • OwnershipϞσϧͷಋೖ
·ͱΊ
͜Ε͔ΒΞοϓσʔτͰ ۤ͠Ή͜ͱݮΔ (ͣ)
ͱ͍͑ɺ དྷिͷAppleΠϕϯτظෆ҆Ͱ͢
&OKPZCVJMEFSTDPO 5IBOLT w NVUBZVUBSP!HNBJMDPN w IUUQTUXJUUFSDPNZVUBJMBOH w IUUQTHJUIVCDPNZVUBJMBOH