Learning iPad Programming: A Hands-On Guide to Building iPad Apps, Second Edition Book Review
|As I started to read this book my plan was to skim through the first 6 chapters and then really dig in starting with chapter 7 App Design. I figured with a year of iOS programming under my belt the first few chapters would just be regurgitating a bunch of stuff I already knew.|
To some degree I was correct, but I did not count on the book's awesome layout and the authors' great writing style to keep pulling me into the chapter's topics, making this a much longer read than I had planned on. By the time I reached chapter 4 I had given up on skimming, since I wasn't really skimming anyway. I took 4 books on a weeklong dive trip, and found myself still reading this book when the plane bringing us home landed.
The book is massive, it covers a ton of topics, and it covers them in depth. The book is broken down into three parts. Part I Getting Started includes seven introductory chapters. The author does a great job in these beginning chapters getting programmers that are not familiar with iOS development up to speed on Xcode, interface builder, objective-C, Cocoa, the developer program (provisioning your iPad), and application design.
I have listed all three parts along with the chapters that they contain below to give you an idea of how many topics are covered in this book.
Part I: Getting Started
1. Your First App
2. Getting Started with Xcode
3. Get Started with Interface Builder
4. Getting Started with Objective-C
5. Getting Started with Cocoa
6. Provisioning Your iPad
7. App Design
Part II: Building PhotoWheel
8. Creating a Master-Detail App
9. Using Table Views
10. Using Collection and Custom Views
11. Using Touch Gestures
12. Adding Photos
13. Data Persistence
14. Storyboarding in Xcode
15. View Controllers and Segues
16. Building the Main Screen
17. Creating a Photo Browser
18. Supporting Device Rotation
19. Printing with AirPrint
20. Sharing with Others
21. Web Services
22. Syncing with iCloud
23. Producing a Slideshow with AirPlay
24. Visual Effects with Core Image
25. Going Universal
Part III: The Finishing Touches
27. Distributing Your App
28. The Final Word
A. Installing the Developer Tools
The thing I like best about this book is the thing I thought I would dislike the most. That is Part II: Building PhotoWheel which is the meat and potatoes of the book, builds one application throughout the 18 chapters. I find most books that do that spend way too much time on explaining the purpose of the application and the business reasons for its modules and all the chatter gets to be too much. They lose their technical context and cross over to teaching you about a certain domain.
That is not the case with this book. The author did a great job of selecting an application that has a purpose that is simple to explain, but has a lot of technical needs to implement. The author does a great job of staying focused on technology. Throughout the process of building the application the authors cover Master-Detail Apps, Table Views, Collection Views, Custom Views, Touch Gestures, UIImagePickerController, Core Data, SQLite, Storyboarding, Segues, Printing, using web services and iCloud, and how to make your app a universal app.
That is a ton of topics! The best part of all the topics they cover is that they cover them in-depth, and then show you how they are used in a real-world application.
I liked how the authors introduced Core Data by showing you how to add it to an application that already exists. This is something I find myself doing a lot.
All the image manipulation in this book also came in very handy. One of the apps I am building needs to do a lot with images and this book was my lone source of getting done what I need to get done.
The book ends with a chapter on using the debugging tools, a chapter on disturbing your application , and a short appendix on how to install the development tools.
The book is in full color which makes it really nice to read and like I said in the begin the authors' great writing style makes it an easy read.
The downloadable code is organized by chapter. It is very usable and it is bug free. It just work which is really nice. The one thing you will have to do is load some photos onto the iPad simulator. To do that all you have to do is open Safari on the simulator and drag some photos onto safari. Once there you just hold down a click on the image and click save when the context menu comes up.
Although this book is written for iPad development, iPhone developers will benefit from reading it too. Almost all the core topics touched on apply both iPad and iPhone development. I highly recommend it to both.
Learning iPad Programming: A Hands-On Guide to Building iPad Apps (2nd Edition)