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
SwiftData をiOSでためす
Search
高橋政明
December 09, 2023
Programming
0
260
SwiftData をiOSでためす
DevSapで発表したSwiftDataの概要と記事へのリンク
高橋政明
December 09, 2023
Tweet
Share
More Decks by 高橋政明
See All by 高橋政明
自分のiOSアプリを作ろう
masaakittakahashi
0
200
とことん楽しむプログラミング発表スライド
masaakittakahashi
0
190
Swift Playgroundsによるプログラミング コードを学ぼう3前半
masaakittakahashi
0
810
Swift Playgroundsによるプログラミング コードを学ぼう3後半
masaakittakahashi
0
690
アクセシビリティの仕組みと実装(のさわり)
masaakittakahashi
0
490
Swift Playgrounds体験会その3
masaakittakahashi
0
200
Swift Playgrounds体験会その2
masaakittakahashi
0
490
Swift Playgrounds体験会その1
masaakittakahashi
0
540
Swift Playgroundsによるプログラミング コードを学ぼう2前半
masaakittakahashi
0
170
Other Decks in Programming
See All in Programming
Automatic Grammar Agreementと Markdown Extended Attributes について
kishikawakatsumi
0
200
Oxlint JS plugins
kazupon
1
980
Package Management Learnings from Homebrew
mikemcquaid
0
230
LLM Observabilityによる 対話型音声AIアプリケーションの安定運用
gekko0114
2
430
CSC307 Lecture 01
javiergs
PRO
0
690
CSC307 Lecture 07
javiergs
PRO
1
550
OCaml 5でモダンな並列プログラミングを Enjoyしよう!
haochenx
0
140
AIと一緒にレガシーに向き合ってみた
nyafunta9858
0
250
360° Signals in Angular: Signal Forms with SignalStore & Resources @ngLondon 01/2026
manfredsteyer
PRO
0
130
【卒業研究】会話ログ分析によるユーザーごとの関心に応じた話題提案手法
momok47
0
200
今から始めるClaude Code超入門
448jp
8
9k
フロントエンド開発の勘所 -複数事業を経験して見えた判断軸の違い-
heimusu
7
2.8k
Featured
See All Featured
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
60
42k
Become a Pro
speakerdeck
PRO
31
5.8k
How GitHub (no longer) Works
holman
316
140k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
330
Optimizing for Happiness
mojombo
379
71k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
140
Mobile First: as difficult as doing things right
swwweet
225
10k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
130
BBQ
matthewcrist
89
10k
Designing for humans not robots
tammielis
254
26k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
So, you think you're a good person
axbom
PRO
2
1.9k
Transcript
SwiftDataΛiOSͰͨΊ͢ շٕ҇ɹߴڮ໌ɹɹ 𝕏 @houheiɹɹhttps://note.com/kaigian 202312݄9ɹDevSapൃදࢿྉ
noteͷهࣄ • SwiftDataΛiOSͰͨΊ͢ લΛࢼಡͰ͖Δ༗ྉهࣄ • ߪಡํ๏ • ϚΨδϯɹߪಡͰશهࣄߪಡɹࠓޙͷՃ͕͋ΕͦΕಡΊΔ •
هࣄ୯ҐɹʮSNSϓϩϞʔγϣϯػೳʯͰɹׂҾߪಡ • 𝕏 ʢچTwitterʣ@houheiͷهࣄΛݟ͚ͭͯϙετΛϦϙετ͢Δ
ϚΨδϯURL https://note.com/kaigian/m/m4350f04fed f b • ֤هࣄʹϦϯΫ͍ͯ͠·͢ • લࢼಡͰ͖·͢
SwiftData • ͬͯ·͢ʁ • iOS 17Ҏ߱ɹWWDC2023ͰൃදɹSwiftઐ༻ • SwiftUIͱҰॹʹ͏ͱগͳ͍ίʔυͰࡁΉ • υΩϡϝϯτ͕·ͩগͳ͍ɹʢWWDCޙΑΓ͍ͩͿϚγʹͳͬͨʣ
• αϯϓϧͷղઆϖʔδ͕ྑ͍ࢿྉʹͳ͍ͬͯΔ • σϑΥϧτͰӬଓԽσʔλ͕Ͳ͜ʹอଘ͞ΕΔ͔ͳͲ͕ॻ͔Ε͍ͯͳ͍
SwiftDataΛγϯϓϧʹͨΊ͢ • WWDCޙͱঢ়گมΘ͍ͬͯΔ • υΩϡϝϯτͱαϯϓϧ͕Ճ͞Εͨ • Query͕ϚΫϩʹมߋ • XcodeͷςϯϓϨʔτ •
ςϯϓϨʔτͷίʔυDateσʔλΛొ͢Δɹొը໘ෆཁͰγϯϓϧ • ςϯϓϨʔτՃ͚ͩͰͳ͘আؚΉ • Xcode ࣮ߦ࣌ʹ Debug navigatorɹDisk > Files ʢҰ൪Լʣ
CSVϑΝΠϧσʔλΛಡΈSwiftDataͰ͏ • SwiftDataͷςϯϓϨʔτ͔Β গ͠ͷมߋͰӬଓԽσʔλ࡞ઐ༻πʔϧΛ࡞Δ͜ͱ͕Ͱ͖Δ • ΞϓϦͷӬଓԽσʔλΛ࡞͢Δαϯϓϧɹஶऀͱ࡞σʔλͳͲͰ͑Δ • CSV࠷খݶͷίʔυͰಡΈࠐΊΔɹҾ༻ූॲཧͳͲҙඞཁ
ΞϓϦىಈ࣌ͷදࣔใʹSwiftDataΛ͏ • ӬଓԽ.store ModelCon f iguration ͷΠχγϟϥΠβͰࢦఆ͢Δ • URL
εΩʔϜ໊ʮ f ileʯͷ໌͕ࣔඞཁ • ॳճىಈ࣌ʹσʔλՃɺΈ୯७͕ͩҙඞཁ • URLࢦఆ͕ਖ਼͘͠ͳ͍ͱCoreDataͷΤϥʔ͕දࣔ͞ΕΔ
ϚΫϩ ͱ Φϒβϕʔγϣϯ • ͲͪΒ iOS 17Ҏ߱ • ϚΫϩͷதͰϚΫϩΛ͑Δɹల։Ͱ͖Δ •
Observation • ޮ͕ྑ͍͕ͣͩWWDCͰࣃΕ͕ѱ͔ͬͨ • SwiftUIઐ༻Ͱͳ͍ • ObservableObjectͰൃੜ͢ΔෆཁͳϏϡʔߋ৽ͷ৺ͳ͘ͳΔ ➡Observationඞཁͳ߹ͷΈߋ৽
None
SwiftDataͷݕࡧɾߜΓࠐΈͱฒସ͑ • ϏϡʔΠχγϟϥΠβ Λ͏ͱ ಈతʹݕࡧฒସ͑Ͱ͖Δ • ݕࡧߜΓࠐΈ݅ʹରԠͨ͠ɹPredicateΛฦؔ͢ɹΛϞσϧʹΈࠐΉ ɹෳͷϏϡʔͰಉ݅͡ʹͰ͖ศར • PredicateΛฦؔ͢ɹར༻͢ΔϏϡʔ͕Ұ͚ͭͩͰ
ɹ݅Ͱ༻͢ΔϓϩύςΟ͕֬ೝ͘͢͠ɹϞσϧʹஔ͘ͷ͕ݟ͍͢
ݕࡧ݁Ռͷදࣔॱͱ݁Ռͳ͠ • දࣔॱɹ୯७ʹΩʔύεࢦఆ͚ͩͰ Finderॱ ʹͳΒͳ͍ • ࣈΛؚΉ߹ Finderॱ ͕·͍͠ɹSortDescriptorΛ͏ •
SwiftUI ʹ ContentUnavailableView ͳͲ৽͍͠Ϗϡʔ͕Ճ͞Ε͍ͯΔ • ContentUnavailableView ͓͢͢Ί • μΠφϛοΫλΠϓͱμʔΫϞʔυʹରԠࡁΈ • ContentUnavailableView.search ϩʔΧϥΠζෆཁͰڞ௨ͷද͕ࣔՄೳ ͳλΠϓϓϩύςΟ
ContentUnavailableView.search ContentUnavailableView
࠷ޙʹ • SwiftData SwiftUI ͱͷΈ߹ΘͤͰศརʹ͑Δ • υΩϡϝϯτ·ͩগͳ͍ • αϯϓϧίʔυͱͦͷղઆϖʔδوॏͳ࣮ྫͰʹͨͭ
• ςϯϓϨʔτ͔Βελʔτ͢Δͷ͕ྑ͍ • ࠓޙʹظ • SwiftDataΛiOSͰͨΊ͢ɹΛࢀߟʹ͍ͯͩ͘͠͞