FROM : Ondra Cada
DATE : Wed Apr 06 12:21:00 2005
Paul,
do you know EOF? You may want to check its documentation until the
CoreData one is available... I kind of fear you don't have a proper
idea of the complexity of such a thing. My comment of NSArchiver was
not meant to be precise, but just to put the things into a proper
perspective :)) CoreData is definitely *not* just some kind of
archiving/unarchiving on steroids, it is *much much* more.
On 6.4.2005, at 8:22, Paul Szego wrote:
> Many other frameworks face the same problem - and there's usually two
> approaches. The first, and most restrictive, is to force you to extend
> a specific base class with a bunch of behaviour built in. Another is
> to define the responsibilities of a class that wants to "play ball"
> (e.g. in Java via an interface, in ObjC via a protocol) and let it
> decide how to best achieve those.
If you do insist... given the ObjC dynamic behaviour, it actually is a
reasonably safe presumption you still, in principle, *can* do this
(=create a non-managed object class which would be able to participate
in the Core Data persistent object graph). Perhaps you would have to
hack-out some undocumented APIs, but it would be pretty strange if
impossible.
> The latter approach doesn't preclude providing a base or mixin class.
> The former approach is often too restrictive to be useful, especially
> when you want to make use of the framework for existing code.
That said, there seems to be -- at the very least in some 99.99% of
situations -- absolutely no sensible reason to do anything remotely
like that.
The managed object behaviour (well, the EOF enterprise object behaviour
for sure, and it seems CoreData in this regard would not differ
terribly from EOF) is *very considerably* specific and different from
other ones. I fear you could argue just the same way that, say,
NSString should not be a class apart, but that there should be an
explicit protocol which would allow any NSObject to behave as one :)
Even if you currently have a E/R-based network of data objects in some
app, you would have to make *considerable* changes to switch to
CoreData for them: you'd have to define entities, and provide for each
data object to know which one it belongs to; you'd have to change the
application logic to use (and properly at that!) the managed context
instead of whatever services you use currently; you'd have to change
the data storage methods considerably to be fully KVC/KVO compliant,
and who knows what else. To change the base class would be a completely
negligible task in all that.
---
Ondra Čada
OCSoftware: <email_removed> http://www.ocs.cz
private <email_removed> http://www.ocs.cz/oc
DATE : Wed Apr 06 12:21:00 2005
Paul,
do you know EOF? You may want to check its documentation until the
CoreData one is available... I kind of fear you don't have a proper
idea of the complexity of such a thing. My comment of NSArchiver was
not meant to be precise, but just to put the things into a proper
perspective :)) CoreData is definitely *not* just some kind of
archiving/unarchiving on steroids, it is *much much* more.
On 6.4.2005, at 8:22, Paul Szego wrote:
> Many other frameworks face the same problem - and there's usually two
> approaches. The first, and most restrictive, is to force you to extend
> a specific base class with a bunch of behaviour built in. Another is
> to define the responsibilities of a class that wants to "play ball"
> (e.g. in Java via an interface, in ObjC via a protocol) and let it
> decide how to best achieve those.
If you do insist... given the ObjC dynamic behaviour, it actually is a
reasonably safe presumption you still, in principle, *can* do this
(=create a non-managed object class which would be able to participate
in the Core Data persistent object graph). Perhaps you would have to
hack-out some undocumented APIs, but it would be pretty strange if
impossible.
> The latter approach doesn't preclude providing a base or mixin class.
> The former approach is often too restrictive to be useful, especially
> when you want to make use of the framework for existing code.
That said, there seems to be -- at the very least in some 99.99% of
situations -- absolutely no sensible reason to do anything remotely
like that.
The managed object behaviour (well, the EOF enterprise object behaviour
for sure, and it seems CoreData in this regard would not differ
terribly from EOF) is *very considerably* specific and different from
other ones. I fear you could argue just the same way that, say,
NSString should not be a class apart, but that there should be an
explicit protocol which would allow any NSObject to behave as one :)
Even if you currently have a E/R-based network of data objects in some
app, you would have to make *considerable* changes to switch to
CoreData for them: you'd have to define entities, and provide for each
data object to know which one it belongs to; you'd have to change the
application logic to use (and properly at that!) the managed context
instead of whatever services you use currently; you'd have to change
the data storage methods considerably to be fully KVC/KVO compliant,
and who knows what else. To change the base class would be a completely
negligible task in all that.
---
Ondra Čada
OCSoftware: <email_removed> http://www.ocs.cz
private <email_removed> http://www.ocs.cz/oc
| Related mails | Author | Date |
|---|---|---|
| mmalcolm crawford | Apr 5, 17:33 | |
| Philip Mötteli | Apr 5, 23:49 | |
| Guy English | Apr 6, 00:29 | |
| Scott Stevenson | Apr 6, 01:14 | |
| Dustin Voss | Apr 6, 02:18 | |
| James Duncan David… | Apr 6, 02:27 | |
| Jake Macmullin | Apr 6, 02:31 | |
| John C. Randolph | Apr 6, 02:55 | |
| James Duncan David… | Apr 6, 03:01 | |
| Ondra Cada | Apr 6, 04:04 | |
| Will Mason | Apr 6, 04:48 | |
| Rogelio M.Serrano… | Apr 6, 06:05 | |
| Rogelio M.Serrano… | Apr 6, 06:06 | |
| mmalcolm crawford | Apr 6, 07:46 | |
| Paul Szego | Apr 6, 08:22 | |
| mmalcolm crawford | Apr 6, 09:52 | |
| ?????Andre? | Apr 6, 09:55 | |
| Ondra Cada | Apr 6, 12:21 | |
| oplus | Apr 6, 12:32 | |
| Mont Rothstein | Apr 6, 12:36 | |
| Philip Mötteli | Apr 6, 14:47 | |
| Scott Stevenson | Apr 6, 18:00 | |
| mmalcolm crawford | Apr 6, 18:39 | |
| Nat! | Apr 6, 22:35 | |
| mmalcolm crawford | Apr 6, 23:47 | |
| Timothy Reaves | Apr 7, 00:25 | |
| mmalcolm crawford | Apr 7, 00:50 | |
| Shawn Erickson | Apr 7, 01:05 | |
| James Duncan David… | Apr 7, 01:28 | |
| Todd Blanchard | Apr 7, 06:37 | |
| Todd Blanchard | Apr 7, 06:41 | |
| Scott Stevenson | Apr 7, 06:59 | |
| Philip Mötteli | Apr 7, 08:32 | |
| Marcel Weiher | Apr 7, 11:59 | |
| Charlton Wilbur | Apr 7, 15:11 | |
| Mike Ferris | Apr 7, 16:53 | |
| Marcel Weiher | Apr 7, 16:55 | |
| Marco Scheurer | Apr 7, 17:55 | |
| Marcel Weiher | Apr 7, 19:13 | |
| Scott Stevenson | Apr 7, 19:55 | |
| Marcel Weiher | Apr 7, 21:03 | |
| Mike R. Manzano | Apr 7, 21:21 | |
| Timothy Reaves | Apr 7, 22:03 | |
| Evan DiBiase | Apr 7, 22:28 | |
| Marcel Weiher | Apr 7, 22:35 | |
| mmalcolm crawford | Apr 7, 23:05 | |
| ttempel | Apr 8, 01:50 | |
| Paul Szego | Apr 8, 11:50 | |
| Johnny Deadman | Apr 8, 14:10 | |
| Philippe Mougin | Apr 8, 16:52 | |
| Shawn Erickson | Apr 8, 17:07 | |
| Shawn Erickson | Apr 8, 17:17 | |
| Ralph Scheuer | Apr 8, 17:28 | |
| Ralph Scheuer | Apr 8, 17:32 | |
| John Brownlow | Apr 8, 17:47 | |
| Charlton Wilbur | Apr 8, 18:34 | |
| Scott Stevenson | Apr 8, 18:43 | |
| Ralph Scheuer | Apr 8, 19:03 | |
| Philippe Mougin | Apr 8, 20:37 | |
| Scott Ellsworth | Apr 8, 21:46 | |
| Scott Ellsworth | Apr 8, 21:48 | |
| Evan DiBiase | Apr 8, 22:16 | |
| mmalcolm crawford | Apr 8, 22:30 | |
| mmalcolm crawford | Apr 8, 23:13 | |
| Marcel Weiher | Apr 9, 02:20 | |
| Marcel Weiher | Apr 9, 02:46 | |
| Scott Ellsworth | Apr 9, 09:39 | |
| Marcel Weiher | Apr 9, 09:44 | |
| Byron Ellis | Apr 9, 10:37 | |
| Marcel Weiher | Apr 9, 14:03 | |
| Charlton Wilbur | Apr 9, 16:01 | |
| ?????Andre? | Apr 9, 18:08 | |
| Scott Stevenson | Apr 9, 18:24 | |
| Scott Stevenson | Apr 9, 18:27 | |
| Marcel Weiher | Apr 10, 00:06 | |
| Marcel Weiher | Apr 10, 00:16 | |
| Marcel Weiher | Apr 10, 00:38 | |
| ?????Andre? | Apr 10, 01:03 | |
| Charlton Wilbur | Apr 10, 01:13 | |
| mmalcolm crawford | Apr 10, 01:53 | |
| Scott Stevenson | Apr 10, 01:58 | |
| Todd Blanchard | Apr 10, 08:32 | |
| mmalcolm crawford | Apr 10, 08:52 | |
| mmalcolm crawford | Apr 10, 09:25 | |
| PA | Apr 10, 12:08 | |
| mmalcolm crawford | Apr 30, 10:18 |






Cocoa mail archive

