Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Technology (Apple)

Journal cryptochrome's Journal: Anticipation for Tiger's Core Data

I'm really excited about Tiger. Not for the new apps - I'm sure they'll be better. And not so much for Spotlight, which sounds nice but it doesn't sound like it'll replace the indispensible LaunchBar for me just yet. I'm excited about a little technology buried far down the list of improvements - Core Data.

OS X has long pushed the idea of a Model-View-Controller pattern for application design. View is what you see and interact with. Model is the actual data and meaningful code. And Controller is the layer between the View and the Data, helping them work together. Building your View is a task that is handled well by Interface Builder. Building controllers used to be a lot of busywork and boilerplate, until Panther introduced Cocoa Bindings which greatly simplifies the process. That allows you to spend more time on the true guts of the program in the Model.

But Core Data will introduce a new layer of abstraction within the model between data and code. It will allow you to define the structure of your data and then automatically handle much of the infrastructure like reading and saving files, undos and redos, and so forth. All you will really need to program now (in the traditional sense) will be the application logic, the actual processing of data. It's very exciting. I was writing a program recently, and the main problem turned out not to be the logic (which was scientific analysis) but the saving and access of the complex data structures I had created. If I had been using Core Data which is based on SQLite and can save arbitrary classes things would have been much simpler. It even has an XML-based file format (along with binary and database), which would make sharing and using output across platforms a snap.

That, plus some of the new visual-modelling features of Project Builder, will push the barriers for full-fledged programming even lower, and with a little more effort could even put them in reach for laymen. After all, who hasn't found a task or application that available programs couldn't handle?

Hopefully Apple will do the right thing and release free libraries for other platforms allowing them to easily use, make, and modify Core Data files as well. Cross-platform file exchange is too useful a property to ignore, and for multi-platform programs a must. I filed a feature request for it.

This discussion has been archived. No new comments can be posted.

Anticipation for Tiger's Core Data

Comments Filter:

Say "twenty-three-skiddoo" to logout.

Working...