きりかノート 3冊め

おあそびプログラミング

RubyCocoa: CoreData の DSL はどう?

OSC のときの相談してみようリストから。実現可能性とかあんまり検討してないアイディア段階のもの。

るびまあなたの Ruby コードを添削します 【第 3 回】 dbf.rbを見ているときに、CoreData でも DSL があったら便利かなあと考えた。以前から、CoreData と RailsActiveRecord って似てるんじゃないの?と思っていたところで、この記事を見てできそうな予感がしてきた。作るとしたら NSManagedObjectModel のクラスメソッドあたりに置くのがよいのかな。

Xcode でビジュアルな編集ができるのもいいけど、DSL でテキストとして扱えると diff で差異がわかりやすいというメリットも大きいと思う。

それはそれとして、いいかげん CoreData のデモプロジェクトもつくらないとね。

さらに余談だけど、通常 Xcode で CoreData のモデルをつくると、/Library/Application Support/Apple/Developer Tools/Plug-ins/XDCoreDataModel.xdplugin/Contents/Resources/momc というコマンドで plist 形式のデータにコンパイルされて、アプリケーション内に .mom という拡張子のファイルが作成される。