Share what we learn

Mobile Apps and Frameworks

Subscribe to Mobile Apps and Frameworks: eMailAlertsEmail Alerts newslettersWeekly Newsletters
Get Mobile Apps and Frameworks: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn

Mobile Apps and Frameworks Authors: Yeshim Deniz, Liz McMillan, Pat Romanski, Elizabeth White, Shelly Palmer

Related Topics: iPhone Developer, Mobile Web Developer, Mobile Apps and Frameworks

Book Review

Book Review | iOS Programming: The Big Nerd Ranch Guide (4th Edition)

Big Nerd Ranch Guides

This book is the perfect place for an experienced developer to start with iOS programming. I say experienced developer because this book does a great job of showing you the basics of developing with iOS, but if you don't understand C and Objective-C, you are probably going to get lost. Maybe not, but I found myself saying, "I am glad I already know what that is" about quite a few topics that were used to explain the subject matter. If you don't know Objective-C, I would recommend starting with Objective-C Programming: The Big Nerd Ranch Guide (2nd Edition).

This book does a great job of showing you what you need to know to get started with iOS. When you are done with it you should be able to easily move into programming iOS applications and learning more advanced topics along the way.

To give you an idea of the high level topics the book cover, I have listed the chapters below.

1. A Simple iOS Application
2. Objective-C
3. Managing Memory with ARC
4. Views and the View Hierarchy
5. Views: Redrawing and UIScrollView
6. View Controllers
7. Delegation and Text Input
8. UITableView and UITableViewController
9. Editing UITableView
10. UINavigationController
11. Camera
12. Touch Events and UIResponder
13. UIGestureRecognizer and UIMenuController
14. Debugging Tools
15. Introduction to Auto Layout
16. Auto Layout: Programmatic Constraints
17. Autorotation, Popover Controllers, and Modal View Controllers
18. Saving, Loading, and Application States
19. Subclassing UITableViewCell
20. Dynamic Type
21. Web Services and UIWebView
22. UISplitViewController
23. Core Data
24. State Restoration
25. Localization
26. NSUserDefaults
27. Controlling Animations
28. UIStoryboard
29. Afterword

With Objective-C Programming: The Big Nerd Ranch Guide (2nd Edition) the authors provided no code samples. Although they still push you very hard to type everything, they do provide code samples with this book. They are very well organized and usable.

One thing I learned from Objective-C Programming: The Big Nerd Ranch Guide (2nd Edition) is that the authors are right, if you type the code instead of read the code, you will learn and retain a lot more of the topics covered.

The reason for this is the way the authors use the samples throughout the book. It goes like this- add this ABC code, and then in the next example delete ABC code and add XYZ code, and then leave XY, but delete Z and add DEF code. You get the final result in the code samples, but going through what it took to get there is just as important.

I have this fourth edition and the third edition. I never got around to reviewing the third edition, but wanted to make sure I reviewed this one because I feel it is an awesome asset to the experienced programmer looking to get into iOS programming.

One thing I think most readers will notice right away is that the book does not use Storyboards until the last chapter of the book, and then the book puts the kibosh on them. I have used Storyboards in almost all my quick and dirty proof of concepts where I wanted simple navigation. In one of those I had to abandon them because of some complex navigation one sections of the application required.

I wouldn't completely discount Storyboards and would use them if the applications functionality allowed for them. It is just like everything else, you need to understand the architecture and the functional needs of the app enough to make an informed decision.

The diagrams in the book are awesome. They are UML-ish and really help by giving a visual representation of the topic at hand. The authors also use the right amount of screenshots. They do a good job of including them when they are needed, and they do not use them as filler.

The book also makes a good reference. Topics are short and to the point. There isn't any filler in this book, so when you need to look something up you have a nice concise explanation at your fingertips.

All in all, if you are looking to get into iOS, this is a great place to start. If you are an experienced iOS developer, it makes a nice reference for the features only used once in a blue moon.

iOS Programming: The Big Nerd Ranch Guide (4th Edition)

iOS Programming: The Big Nerd Ranch Guide (4th Edition)

More Stories By Tad Anderson

Tad Anderson has been doing Software Architecture for 18 years and Enterprise Architecture for the past few.