Basic data is good when your application data is very structured, while just serializing things in the file system is useful when you just shuffle semi-structured data (like NSDictionary with some arbitrary keys and values).
Another advantage of Core Data is that you can (when using the NSSQLiteStoreType storage type) store (and efficiently query) more data that can fit into the deviceโs memory, which can be a problem for manual serialized objects.
So, I would recommend Core Data if one of the following statements is true:
- You may have more data than can conveniently be installed in the deviceโs memory.
- You need to efficiently request data
- Your data is well structured.
I would recommend using serialized data only when you have small amounts of loosely structured data, such as a user preferences dictionary.
In any case, you should take the Core Data tutorials if you haven't already. Even if you do not stop using Core Data, it is very useful to understand the concepts for other reasons (for example, because they are related to the Undo / Redo system).
source share