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
Fun with Swift 4 KeyPaths
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
John Estropia
September 17, 2017
Technology
1
650
Fun with Swift 4 KeyPaths
My Lightning Talk at iOSDC 2017 Japan
John Estropia
September 17, 2017
Tweet
Share
More Decks by John Estropia
See All by John Estropia
WWDC Party Intro to CoreStore
johnestropia
0
64
Making an Efficient Deploy Bot
johnestropia
0
450
Creating Keyboard Extensions
johnestropia
0
81
Making Sense of Neural Network Training
johnestropia
0
84
My journey taming Core Data: An intro to the CoreStore library
johnestropia
0
170
Pairs JP Team's iOS Deployment
johnestropia
0
950
Making Slackbots deploy iOS apps for you
johnestropia
2
230
OSSの作法(本題)
johnestropia
0
80
Other Decks in Technology
See All in Technology
広告の効果検証を題材にした因果推論の精度検証について
zozotech
PRO
0
190
クレジットカード決済基盤を支えるSRE - 厳格な監査とSRE運用の両立 (SRE Kaigi 2026)
capytan
6
2.8k
OWASP Top 10:2025 リリースと 少しの日本語化にまつわる裏話
okdt
PRO
3
800
Context Engineeringの取り組み
nutslove
0
360
小さく始めるBCP ― 多プロダクト環境で始める最初の一歩
kekke_n
1
420
会社紹介資料 / Sansan Company Profile
sansan33
PRO
15
400k
StrandsとNeptuneを使ってナレッジグラフを構築する
yakumo
1
120
M&A 後の統合をどう進めるか ─ ナレッジワーク × Poetics が実践した組織とシステムの融合
kworkdev
PRO
1
460
AI駆動PjMの理想像 と現在地 -実践例を添えて-
masahiro_okamura
1
120
Context Engineeringが企業で不可欠になる理由
hirosatogamo
PRO
3
600
Cosmos World Foundation Model Platform for Physical AI
takmin
0
920
登壇駆動学習のすすめ — CfPのネタの見つけ方と書くときに意識していること
bicstone
3
110
Featured
See All Featured
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
240
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
100
GitHub's CSS Performance
jonrohan
1032
470k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.7k
Mind Mapping
helmedeiros
PRO
0
87
Information Architects: The Missing Link in Design Systems
soysaucechin
0
780
Thoughts on Productivity
jonyablonski
74
5k
Producing Creativity
orderedlist
PRO
348
40k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.6k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
53
Transcript
Fun with Swift 4 KeyPaths iOSDC 2017 John Estropia
• @JohnEstropia • Senior Engineer @ • iOS։ൃ • OSS
ࣗݾհ http://github.com/JohnEstropia/CoreStore
Swift 4 Smart Keypaths
KVC: Before vs. After Swift 3 Swift 4
KVC: Before vs. After Swift 3 Swift 4
KVO: After Swift 4
Fun with Swift 4 KeyPaths
Predicates (Before)
͜ͷॻ͖ํ͕Ͱ͖Δͱ࠷ߴͰ͠ΐ͏ʁ
͜ͷॻ͖ํ͕Ͱ͖Δͱ࠷ߴͰ͠ΐ͏ʁ
KeyPath × Generics × Custom Operator
Custom Operator
KeyPath Generics
KeyPath Generics ͕͜͜Smartʂ
KeyPath→String
ൿີຐ๏property KeyPath→String
Nice Predicates
Sample: CoreStore ( prototype/queryBuilders branch )
Sample: CoreStore ( prototype/queryBuilders branch )
Ҏ্ɺThanks!
େืूதʂ