- Full Description
The power of Core Data allows iOS developers to efficiently store and retrieve application data using familiar object-oriented paradigms. Pro Core Data for iOS explains both how and why to use Core Data for data storage, from simple to advanced techniques. Covering common and advanced persistence patterns, this book prepares any iOS developer to store and retrieve data accurately and proficiently.
Lots of iOS development books touch on Core Data, taking you through a few mainstream use cases for storing and retrieving data in your iOS applications. In Pro Core Data for iOS, however, we take you further into Core Data and show you how to leverage the power of this data framework.
After reading this book, youll be able to answer all of these questions:
- What are all the parts of Core Data, and how do they interact?
- How do I create my own custom store?
- Should I use plain NSManagedObject instances or custom classes?
- How do I undo and redo Core Data actions?
- How do I filter, sort, and aggregate data?
- What is faulting, and why should I care?
- Suppose I want to change my data model; how do I migrate my users data?
What youll learn
- Organize data appropriately
- Persist data efficiently
- Use Apples tools effectively
- Build Core Data applications
- Use Core Data in advanced settings
- Version and migrate data as your applications evolve
Who this book is for
All iPhone, iPad, and iPod touch developers whose applications manage any amount of data.
- Table of Contents
Table of Contents
- Getting Started
- Understanding Core Data
- Storing Data: SQLite and Other Options
- Creating a Data Model
- Working with Data Objects
- Refining Result Sets
- Tuning Performance and Memory Usage
- Versioning and Migrating Data
- Using Core Data in Advanced Applications
- Source Code/Downloads
Please Login to submit errata.On page Kindle location 1341, Listing 5-8:Listing 5-8 does not seem to follow the typeface conventions used in the book for added code. Consequently, it's unclear from the text that the user must add the category: "it is necessary to create a category and list the methods for the relationships, as shown in Listing 5-8." If Listing 5-8 showed the category in bold type, it would be more understandable.
On page 9:space between persistentStore and Coordinator in figure 1-6. Should be persistentStoreCooridnator.
On page 68 and 70:For TeamViewController.m on page 68 you say:
"add release calls for team and rootController to the dealloc: method."
but the dealloc: method on page 70 only calls super.
On page 85:cannot assign self outside of the init family.
- (id)initWithMasterController:(MasterViewController *)aMasterController team:
On page 94:On the prior page, you state that the metadata file is a plist, which would use the ".plist" file extension, and that in this example, our data file will point to the .txt file.
So on page 94 in the metadataForPersistentStoreWithURL:error: method, if the metadata doesn't exist, we need to create the new store. However, the new store file is being written to the file path created at the top of the method using the ".plist" extension. Shouldn't this be ".txt" ?
I downloaded the sample code, but its the same.
On page 145:In Shapes application, in method -(void)createShapeAt:(CGPoint)point, in a case of creating a new polygon, there is no relationship made from each new generated vertex object, to a correlating shape object.
The problem surfaces after one or more polygon objects are created, and application is closed. After relaunching application, there is no any polygon objects displayed on the screen, and when screen orientation is changed application crashes.
I solved this problem by inserting line of code that creates relationship from each newly created vertex object to the correlating shape(polygon) object.
[vertex setValue:shape forKey:@"polygon"];