On 平成 17/04/09, at 15:16, Marcel Weiher wrote:
On 9 Apr 2005, at 18:08, アンドレ(Andre) wrote: Of course, there is *one* very specific benefit to this: lock-in. "Thou shalt have no frameworks beside me!" Lock-in into a framework that is Apple proprietary, eschewing the mechanisms already provided in the open-source language that its built on in favor of an Apple-patented mechanism. Yes, KVC is patented, though I can't for the life of me figure out how they got that one through the check for prior art. Or considering the prior art, through the check for non-obviousness. Har har...
Wow.
[Note here: the har har is aimed at the broken state of the world's patent systems, the european patent office seems to be even worse than the US, though that may seem impossible...] Oh, and with *completely* proprietary datastores! So if you base your persistent store on CoreData, your file-format is owned by Apple. Cool! I think I'll pass.
I think thats the whole point isn't it? Besides is XML and SQLite formats aren't exactly proprietary is it?
An important thing to note about all of these formats: Core Data may change the way that it uses them at any time. While it is easy enough to look under the covers and see what is going on with the XML and SQLite data formats, you should never modify the data in these files yourself.
Take home message: CoreData controls how things are stored in those XML/SQLite files, and this may change at any time. So you don't own your data format, if you use CoreData persistence.
OK, but I think the reason is not some kind of lock-in conspiracy and more to do with high level abstraction. IOW, implementation details are something we shouldn't ..necessarily have to deal with because they may radically change in the future, and as long as we don't depend too much on it, then we get all the enhancements for free.
This also makes it much easier to learn and use. IMHO.
I really don't mind as long as the DTD/schema is available to parse it. And there is always XSLT. Besides, when archiving with NSCoding, are you already not saving to an "Apple format," the Property List?
Nope. NSCoding is a protocol, it will work with any style archiver/unarchiver you choose to implement. For example, I use my own MPWXmlCoder, which works just fine with both Apple internal and my own classes via NSCoding. It also works fine under GNUStep...
OK, NSCoder is what I meant.
|