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
A tip for using magical record
Search
Pin-Shih Wang
October 14, 2014
Programming
0
120
A tip for using magical record
Pin-Shih Wang
October 14, 2014
Tweet
Share
More Decks by Pin-Shih Wang
See All by Pin-Shih Wang
iOS Extension
wpsteak
4
460
CI with Git Flow
wpsteak
2
230
Test With Xcode Server
wpsteak
0
74
a lighter reusable cell
wpsteak
0
58
Other Decks in Programming
See All in Programming
MCPを使ってイベントソーシングのAIコーディングを効率化する / Streamlining Event Sourcing AI Coding with MCP
tomohisa
0
160
PicoRuby on Rails
makicamel
2
140
状態遷移図を書こう / Sequence Chart vs State Diagram
orgachem
PRO
2
180
The Niche of CDK Grant オブジェクトって何者?/the-niche-of-cdk-what-isgrant-object
hassaku63
1
510
たった 1 枚の PHP ファイルで実装する MCP サーバ / MCP Server with Vanilla PHP
okashoi
1
280
Porting a visionOS App to Android XR
akkeylab
0
660
20250704_教育事業におけるアジャイルなデータ基盤構築
hanon52_
5
910
PHPで始める振る舞い駆動開発(Behaviour-Driven Development)
ohmori_yusuke
2
430
코딩 에이전트 체크리스트: Claude Code ver.
nacyot
0
880
PHPでWebSocketサーバーを実装しよう2025
kubotak
0
310
Git Sync を超える!OSS で実現する CDK Pull 型デプロイ / Deploying CDK with PipeCD in Pull-style
tkikuc
4
250
生成AI時代のコンポーネントライブラリの作り方
touyou
1
260
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
Become a Pro
speakerdeck
PRO
29
5.4k
Site-Speed That Sticks
csswizardry
10
700
Writing Fast Ruby
sferik
628
62k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Scaling GitHub
holman
460
140k
Designing Experiences People Love
moore
142
24k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Thoughts on Productivity
jonyablonski
69
4.7k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
21k
How to Ace a Technical Interview
jacobian
278
23k
Transcript
A tip for using magical record with Core Data Stack
@wpsteak
Persistent Store Coordinator MR_rootSavingContext NSPrivateQueueConcurrencyType Managed Object Context MR_defaultContext NSMainQueueConcurrencyType
Managed Object Context parent context Magical Record
DataManager Access database Persistent Store Coordinator MR_rootSavingContext NSPrivateQueueConcurrencyType Managed Object
Context MR_defaultContext NSMainQueueConcurrencyType Managed Object Context parent context Magical Record Current Architecture
DataManager NSPrivateQueueConcurrencyType MR_rootSavingContext NSMainQueueConcurrencyType MR_defaultContext Magical Record Current Architecture Main
thread Background Thread Operation Database access
DataManager NSPrivateQueueConcurrencyType MR_rootSavingContext NSMainQueueConcurrencyType MR_defaultContext Magical Record UI Block Main
thread Background Thread Operation > 2x Database access
MR_rootSavingContext NSPrivateQueueConcurrencyType Managed Object Context MR_defaultContext NSMainQueueConcurrencyType Managed Object Context
Nested Managed Object Contexts NSPrivateQueueConcurrencyType Managed Object Context Magical Record MR_context Main thread Background Background
MR_rootSavingContext NSPrivateQueueConcurrencyType Managed Object Context MOC Nested Managed Object Contexts
MOC Magical Record Background Main Background MOC
DataManager MOC MOC NSPrivateQueueConcurrencyType MR_rootSavingContext Magical Record Main thread Background
Thread Background
DataManager NSPrivateQueueConcurrencyType MR_rootSavingContext Magical Record Background Thread operation > 2x
Access in background MOC MOC Main thread Background
DataManager NSPrivateQueueConcurrencyType MR_rootSavingContext Magical Record Background Thread UI MOC Main
thread fetch data Database access
End