iOS Components and Frameworks: Understanding the Advanced Features of the iOS SDK (2014)
I have been working with the iPhone SDK (now iOS SDK) since the first beta released in 2008. At the time, I was focused on writing desktop apps for the Mac and hadn’t thought much about mobile app development.
If you chose to be an early adopter, you were on your own. In typical Apple fashion, the documentation was sparse, and since access to the SDK required an NDA—and apparently, a secret decoder ring—you were on your own. You couldn’t search Google or turn to StackOverflow for help, and there sure as hell weren’t any books out yet on the SDK.
In the six years (yes, it really has only been six years) since Apple unleashed the original iPhone on the world, we’ve come a long way. The iPhone SDK is now the iOS SDK. There are dozens of books and blogs and podcasts and conferences on iOS development. And ever since 2009, WWDC has been practically impossible to get into, making it even harder for developers—old and new—to learn about the latest features coming to the platform. For iOS developers, there is so much more to learn.
One of the biggest challenges I have as an iOS developer is keeping on top of all the components and frameworks available in the kit. The iOS HIG should help us with that, but it doesn’t go far enough—deep enough. Sure, now I can find some answers by searching Google or combing through StackOverflow but, more often than not, those answers only explain the how and rarely the why, and they never provide the details you really need.
And this is what Kyle and Joe have done with this book—they’re providing the detail needed so you can fully understand the key frameworks that make up the iOS SDK.
I’ve had the pleasure of knowing Kyle and Joe for a number of years. They are two of the brightest developers I have ever met. They have each written some amazing apps over the years, and they continuously contribute to the iOS development community by sharing their knowledge—speaking at conferences and writing other books on iOS development. If you have a question about how to do something in iOS, chances are good that Kyle and Joe have the answer for you.
But what makes these guys so awesome is not just their encyclopedic knowledge of iOS, it’s their willingness to share what they know with everyone they meet. Kyle and Joe don’t have competitors, they have friends.
Kyle and Joe’s in-depth knowledge of the iOS SDK comes through in this book. It’s one of the things I like about this book. It dives into the details for each component covered at a level that you won’t always find when searching online.
I also like the way the book is structured. This is not something that you’ll read cover to cover. Instead, you’ll pick up the book because you need to learn how to implement a collection view or sort out some aspect of running a task in a background thread that you can’t quite wrangle. You’ll pick up the book when you need it, find the solution, implement it in your own code, and then toss the book back on the floor until you need it again. This is what makes iOS Components and Frameworks an essential resource for any iOS developer—regardless of your experience level. You might think you’re a master with Core Location and MapKit, but I reckon you’ll find something here that you never knew before.
Kyle and Joe don’t come with egos. They don’t brag. And they sure don’t act like they are better than any other developer in the room. They instill the very spirit that has made the Mac and iOS developer community one of the friendliest, most helpful in our industry, and this book is another example of their eagerness to share their knowledge.
This book, just like the seminal works from Marks and LaMarche or Sadun, will always be within arm’s reach of my desk. This is the book I wish I had when I first started developing iOS apps in 2008. Lucky you, it’s here now.
Chief Code Monkey at White Peak Software, author of Learning iPad Programming, A Hands on Guide to Building Apps for the iPad, Second Edition (Addison-Wesley Professional), and Cocoa developer community organizer and conference junkie
August 28, 2013