Core Data is intricate, powerful, and necessary. Discover the powerful capabilities integrated into Core Data, and how to use Core Data in your iOS and OS X projects. All examples are current for OS X El Capitan, iOS 9, and the latest release of Core Data. All the code is written in Swift, including numerous examples of how best to integrate Core Data with Apple's newest programming language.Core Data expert Marcus Zarra walks you through a fully developed application based around the Core Data APIs. You'll build on this application throughout the book, learning key Core Data elements such as NSPredicate, NSFetchRequest, thread management, and memory management.Start with the basics of Core Data and learn how to use it to develop your application. Then delve deep into the API details. Explore how to get Core Data integrated into your application properly, and work with this flexible API to create convenience methods to improve your application's maintainability. Reduce your migration difficulties, integrate your Core Data app with iCloud and Watch Kit, and use Core Data in a queue-based environment. By the end of the book, you'll have built a full-featured application, gained a complete understanding of Core Data, and learned how to integrate your application into the iPhone/iPad platform.This book is based on Core Data in Objective-C, Third Edition . It focuses on Swift and adds an additional chapter on how to integrate Core Data with an efficient network implementation, with best practices on how to load and pre-load data into your Swift application.What You Mac OS X El Capitan and iOS 9 and a basic working knowledge of Swift
I've been thinking that the Pragmatic Bookshelf is dramatically declining in quality over the last few years and this book is very consistent with that trend.
It has two major problems.
First, its code examples are just hard to comprehend – they are verbose and full with pointless error handling (seems like the author is religiously against force unwrapping for some reason and always doubles the size of the code with guard stamements that call preconditionFailed like it's better) which makes them very hard to read. The variable naming is awful – either it's full of abbreviations that make you scan back to figure out what this variable was or they are just lazy.
Second, they are very unfocused on Core Data and tend to scope creep with complicated setups and sample use cases that are unnecessary – all the code could have been presented in a simpler context that would just showcase core data. It's extremely hard to play with anything there without downloading the example source code, which should really not be the case. I wouldn't have minded some of the "real world hairiness" if it actually tipped you of to a good solution "in the real world", but I even doubt that this is the case – every bit seemed that could either be designed better or have some major flow.
While I think I got the gist of Core Data, this is certainly NOT the book to learn it from. I'll try another to find another, before I jump into Apple's documentation.