$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Fun with Swift 4 KeyPaths
Search
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
80
Making Sense of Neural Network Training
johnestropia
0
83
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
Lambdaの常識はどう変わる?!re:Invent 2025 before after
iwatatomoya
1
540
Sansanが実践する Platform EngineeringとSREの協創
sansantech
PRO
2
860
AWSセキュリティアップデートとAWSを育てる話
cmusudakeisuke
0
280
[CMU-DB-2025FALL] Apache Fluss - A Streaming Storage for Real-Time Lakehouse
jark
0
120
Lookerで実現するセキュアな外部データ提供
zozotech
PRO
0
110
エンジニアとPMのドメイン知識の溝をなくす、 AIネイティブな開発プロセス
applism118
4
1.3k
20251209_WAKECareer_生成AIを活用した設計・開発プロセス
syobochim
7
1.6k
re:Invent 2025 ~何をする者であり、どこへいくのか~
tetutetu214
0
220
AWS Bedrock AgentCoreで作る 1on1支援AIエージェント 〜Memory × Evaluationsによる実践開発〜
yusukeshimizu
6
400
Haskell を武器にして挑む競技プログラミング ─ 操作的思考から意味モデル思考へ
naoya
6
1.5k
Reinforcement Fine-tuning 基礎〜実践まで
ch6noota
0
190
Kubernetes Multi-tenancy: Principles and Practices for Large Scale Internal Platforms
hhiroshell
0
120
Featured
See All Featured
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
7.9k
Designing for humans not robots
tammielis
254
26k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Build The Right Thing And Hit Your Dates
maggiecrowley
38
3k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.8k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Bash Introduction
62gerente
615
210k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
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!
େืूதʂ