Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Objective-C programming : the Big Nerd Ranch guide (2nd ed.)
Hillegass A., Ward M., Big Nerd Ranch, Atlanta, GA, 2013. 325 pp. Type: Book (978-0-321942-06-7)
Date Reviewed: Nov 7 2014

In June 2014, Apple introduced Swift, a new programming language for OS X and iOS application development. So, why review a book about Objective-C? There are several reasons:

  • Swift is intended to work side-by-side with Objective-C.
  • If you are enhancing or maintaining existing OS X or iOS applications, you’ll be working with Objective-C.
  • If you plan to develop new applications, before adopting a new language you may want to wait a year or two, until Swift and its environment settle down.
  • If you plan to become a professional developer, you should be acquainted with C. Since Objective-C is C with a thin layer of objective programming added, by learning Objective-C you will learn two essential technologies of the programming craft.

This book implicitly acknowledges that Objective-C is primarily used for OS X and iOS development. It addresses the needs of developers working in the Apple environment of Xcode, the Foundation framework, and Cocoa.

This is a relatively small book, with 357 pages plus ten pages of introductory material--copyright, acknowledgements, and table of contents. The book consists of 42 chapters, one appendix, and a coda. The chapters are gathered into six sections: Section 1, “Getting Started,” spans chapters 1 and 2. This section tells readers how to install the Apple developer tools needed and how to compile a simple command-line display program. Section 2, “How Programming Works,” spans chapters 3 through 12. This section introduces the fundamentals of C and basic programming concepts such as memory, the stack, and the heap. Programming in this section is limited to the command line. Section 3, “Objective-C and Foundation,” spans chapters 13 through 30. This section introduces Objective-C programing using the Foundation framework initially developed by Next Step and enhanced by Apple. Section 4, “Event-Driven Applications,” spans chapters 31 and 32. This section introduces development of iOS and Cocoa applications. Section 5, “Advanced Objective-C,” spans chapters 33 through 37. This section revisits in greater depth concepts previously covered and introduces two new concepts: key-value coding and key-value observing. Section 6, “Advanced C,” spans chapters 38 through 42. This section goes into C details that Section 2 left out in order to allow the reader to get into Objective-C and the Apple development environment as quickly as possible.

The book concludes with an appendix, “The Objective-C Runtime,” and a section entitled “Next Steps.” Here, the authors mention a very important point: this is only an introductory book. The subject matter is vast; to acquire a more thorough and adequate competence developing OS X and iOS applications, the authors strongly recommend following this book with two additional books [1,2].

Each chapter of this excellent book is sharply focused; a single concept or a small number of related concepts are covered by concise explanations and illustrated by code. Both explanations and code are clear and to the point; elaborations and repetitions are totally absent. As new features are introduced, previous code is modified, with code that is being replaced crossed out for clarity. The authors give excellent advice on coding conventions and using the tools provided by Apple. Nearly every chapter concludes with one or more challenges. These are coding exercises that ask the reader to modify the code already shown or to write new code using the material discussed in that chapter. The authors give some hints on how to approach the challenges, but working through them is not trivial.

This book can be used as a college-level textbook in class or for self-study. If the reader has experience with other programming languages, he can proceed at a rapid pace without fear or spending a great deal of time over material that he already knows. If the reader is a novice just learning programming, he will find the pace demanding. In either case, the reader will need concentration and discipline; coding rather than simply reading the examples will be very beneficial, and working through the challenges essential. This book clearly demonstrates that learning a programming language demands hands-on work just as much as intellectual work.

I liked this book a great deal and recommend it.

More reviews about this item: Amazon, B&N, Goodreads

Reviewer:  Edgar R. Chavez Review #: CR142909 (1502-0116)
1) Hillegas, A.; Preble, A. Cocoa programming for Mac OS X (4th ed.). Addison-Wesley Professional, Upper Saddle River, NJ, 2011.
2) Keur, C.; Hillegas, A.; Conway, J. iOS programming: the Big Nerd Ranch Guide (4th ed.). Big Nerd Ranch, Atlanta, GA, 2014.
Bookmark and Share
  Reviewer Selected
Featured Reviewer
 
 
Objective-C (D.3.2 ... )
 
 
Object-Oriented Programming (D.1.5 )
 
Would you recommend this review?
yes
no
Other reviews under "Objective-C": Date
Learn Objective-C for Java developers
Bucanek J., Apress, Berkeley, CA, 2009.  375, Type: Book (978-1-430223-69-6)
Jun 15 2010
Programming in Objective-C 2.0
Kochan S., Addison-Wesley Professional, Upper Saddle River, NJ, 2009.  624, Type: Book (9780321566157), Reviews: (1 of 2)
Aug 24 2010
Programming in Objective-C 2.0
Kochan S., Addison-Wesley Professional, Upper Saddle River, NJ, 2009.  624, Type: Book (9780321566157), Reviews: (2 of 2)
Jan 17 2011
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy