Cocoa Design Patterns (Developer's Library) and over one million other books are available for Amazon Kindle. Learn more



or
Sign in to turn on 1-Click ordering
Sell Us Your Item
For a $4.13 Gift Card
Trade in
More Buying Choices
Have one to sell? Sell yours here
Start reading Cocoa Design Patterns (Developer's Library) on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.
Sorry, this item is not available in
Image not available for
Color:
Image not available

To view this video download Flash Player

 

Cocoa Design Patterns [Paperback]

Erik M. Buck , Donald A. Yacktman
4.8 out of 5 stars  See all reviews (29 customer reviews)

List Price: $54.99
Price: $29.51 & FREE Shipping. Details
You Save: $25.48 (46%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
Only 17 left in stock (more on the way).
Ships from and sold by Amazon.com. Gift-wrap available.
Want it tomorrow, May 24? Choose One-Day Shipping at checkout. Details
Free Two-Day Shipping for College Students with Amazon Student

Formats

Amazon Price New from Used from
Kindle Edition $19.80  
Paperback $29.51  
Rent Your Textbooks
Save up to 70% when you rent your textbooks on Amazon. Keep your textbook rentals for a semester and rental return shipping is free.

Book Description

September 11, 2009 0321535022 978-0321535023 1

“Next time some kid shows up at my door asking for a code review, this is the book that I am going to throw at him.”

 

–Aaron Hillegass, founder of Big Nerd Ranch, Inc., and author of Cocoa Programming for Mac OS X

 

Unlocking the Secrets of Cocoa and Its Object-Oriented Frameworks

 

Mac and iPhone developers are often overwhelmed by the breadth and sophistication of the Cocoa frameworks. Although Cocoa is indeed huge, once you understand the object-oriented patterns it uses, you’ll find it remarkably elegant, consistent, and simple.

 

Cocoa Design Patterns begins with the mother of all patterns: the Model-View-Controller (MVC) pattern, which is central to all Mac and iPhone development. Encouraged, and in some cases enforced by Apple’s tools, it’s important to have a firm grasp of MVC right from the start.

 

The book’s midsection is a catalog of the essential design patterns you’ll encounter in Cocoa, including

  • Fundamental patterns, such as enumerators, accessors, and two-stage creation
  • Patterns that empower, such as singleton, delegates, and the responder chain
  • Patterns that hide complexity, including bundles, class clusters, proxies and forwarding, and controllers

And that’s not all of them! Cocoa Design Patterns painstakingly isolates 28 design patterns, accompanied with real-world examples and sample code you can apply to your applications today. The book wraps up with coverage of Core Data models, AppKit views, and a chapter on Bindings and Controllers.

 

Cocoa Design Patterns clearly defines the problems each pattern solves with a foundation in Objective-C and the Cocoa frameworks and can be used by any Mac or iPhone developer.


Frequently Bought Together

Cocoa Design Patterns + iOS Programming: The Big Nerd Ranch Guide (3rd Edition) (Big Nerd Ranch Guides) + Objective-C Programming: The Big Nerd Ranch Guide (Big Nerd Ranch Guides)
Price for all three: $88.82

Buy the selected items together


Editorial Reviews

Review

Praise for Cocoa Design Patterns

 

“This long-needed book is a great resource for Cocoa newcomers and veterans who want to get the why behind the what. The list of patterns gives historical perspective and answers many developer questions and the last three chapters–covering Core Data, AppKit, and Bindings–are a must-read; they reveal insights that might otherwise require hours of discussion with Apple engineers or access to source code.”

Tim Burks, Software Developer and Creator of the Nu Programming Language, www.programming.nu

 

“This book is a comprehensive and authoritative treatment of design patterns and their practical applications in Cocoa projects. I recommend this book to anyone who wants to advance from intermediate to expert proficiency as a Macintosh developer.”

John C. Randolph, Vice President Engineering, Stealth Imaging, Inc.

 

Cocoa Design Patterns is a fantastic book that will show you the ins and outs of software design patterns, how Cocoa makes use of them, and how to apply them to your own applications for better, more robust, and more maintainable software.”

August Trometer, Owner of FoggyNoggin Software

 

Cocoa Design Patterns is superb! It is highly readable, thoroughly enjoyable, and filled to the brim with wisdom that will make you a more efficient and effective programmer. The authors utilize a consistent and self-contained approach to each chapter, making it easy to return to use as a reference. However, the material is so interesting and vital to Cocoa programmers that you’ll want to read it from cover to cover.”

David Mandell, Independent Developer

 

“Erik and Donald’s book really helped me out with the conceptual side of programming. It caused me to realize where I was going wrong in my code and helped me sort out my design issues.”

Eoin Houlihan

 

“This book is recommended for any programmer interested in a deeper understanding of Cocoa. Reading it might have helped me become a better software engineer in any object-oriented language. I’ll keep it handy as a constant reference and look forward to reading it again more carefully.”

Daryl Spitzer

About the Author

Erik M. Buck founded EMB & Associates, Inc. in 1993 and built the company into a leader in the aerospace and entertainment software industries by leveraging the NeXT/Apple software technology that would later become Apple’s Cocoa frameworks. Mr. Buck has also worked in construction, taught science to 8th graders, exhibited oil on canvas portraits, and developed alternative fuel vehicles. Mr. Buck sold his company in 2002 and currently holds the title of Senior Staff at Northrop Grumman Corporation. Mr. Buck received a B.S. degree in computer science from the University of Dayton in 1991 and is a frequent contributor to Cocoa mailing lists and technical forums.

 

Donald A. Yacktman has been using Cocoa and its predecessor technologies, OpenStep and NextStep, professionally since 1991. He coauthored the book Cocoa Programming and has contributed to the Stepwise website as both author and editor. He has worked for Verio/iServer and illumineX in the past. At present he works as an independent consultant assisting in the design and implementation of Cocoa and iPhone applications. Mr.Yacktman received B.S. and M.S. degrees in electrical and computer engineering from Brigham Young University in 1991 and 1994, respectively.

 

 


Product Details

  • Paperback: 456 pages
  • Publisher: Addison-Wesley Professional; 1 edition (September 11, 2009)
  • Language: English
  • ISBN-10: 0321535022
  • ISBN-13: 978-0321535023
  • Product Dimensions: 7.1 x 0.9 x 9 inches
  • Shipping Weight: 1.3 pounds (View shipping rates and policies)
  • Average Customer Review: 4.8 out of 5 stars  See all reviews (29 customer reviews)
  • Amazon Best Sellers Rank: #81,384 in Books (See Top 100 in Books)

More About the Author

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

Most Helpful Customer Reviews
75 of 78 people found the following review helpful
5.0 out of 5 stars Unlocking Cocoa Programming October 28, 2009
Format:Paperback|Amazon Verified Purchase
This superb book has finally unlocked Cocoa programming! Let me explain.

In most subjects we learn by acquiring a little bit of knowledge and, once that bit has been understood, we move on to the next little bit, until the bigger topic is understood. First we learn A then we learn B. Unfortunately, this method of learning does not work well with application frameworks such as Cocoa. These frameworks usually consist of a number of complex idea that are strongly interrelated. You cannot learn A then B, since A requires B and B requires A. Instead you must learn topics A..Z all at the same time! Cocoa is especially difficult for most programmers since it is based on using Objective C, and Objective C is based on Smalltalk. Smalltalk is an extremely dynamic language whose principles are significantly different than those of current popular languages. Thus, most programmers must learn zilllions of elements of the Cocoa framework and also the unusual ideas behind Objective C (Smalltalk). These are essential since Cocoa works differently than other popular frameworks and cannot be understood without understanding Objective C's dynamic approach to programming.

Up until now we have had Objective C books which help learning Objective C, and the excellent Hillegass book (Cocoa Programming for Mac OS X) which is a tutorial on Cocoa. The Hillegass book does help the reader understand many principals behind Cocoa, but it stops short of giving in depth knowledge of the design patterns that Cocoa uses. Thus when the user tries to go beyond the Hillegass book he/she is frustrated because they were not taught the full idea behind each element of Cocoa and their connections to other elements. There is not enough information for the reader to branch out to develop their own programs.

Cocoa Design Patters, on the other hand, presents, in a very professional manner, the most important Cocoa patterns, in depth, and how they are all inter-related. Furthermore, it presents details how how to use the patterns, examples of where they are used in Cocoa, and includes extremely valuable and unbiased information on the pro's and con's and pitfalls of using each pattern. Although this is certainly not tutorial/beginner information, the book is extremely well written and enjoyable to read (especially for those of us who loved Smalltalk and other dynamic languages). It is one of the best written highly technical books I have ever read (and I have been programming since 1970).

In my opinion this book will save the prospective Cocoa programmer many, many, many hours of frustration. I only wish it had been available several years ago when I first tried to learn Cocoa (I did not succeed then, but I am succeeding now).

One final note. The authors could do the Mac Developer Community, and the wider developer community, an enormous favor. In this book they demonstrate an impressive depth of knowledge about Cocoa, Objective C, the Mac development world, and the XCode tools. It would be fabulous if they were to develop a professional unbiased critique and comparison of the pro's and con's of the Objective-C/Cocoa approach to development with other framework/development environments (e.g. Microsoft's). I think this is especially important since the dynamic language approach to programming has fallen out of favor, yet I think it has many benefits that are seriously under appreciated. This document would:
Clearly show programmers the benefits of the dynamic language / Cocoa approach to programming. Perhaps it would reawaken interest in dynamic languages!
Point out the areas where Objective C/Cocoa/XCode has weakness and should be improved. This may inspire Apple to improve their development tools at a brisker pace.'
The development world has had few breakthrough improvements over the last decade or two. I think that much can be learned from Cocoa/Objective C, and I hope That Cocoa Design Patters is just the beginning of a renewal of interest in this too-long-neglected approach to software development.
Was this review helpful to you?
28 of 28 people found the following review helpful
5.0 out of 5 stars Develops a good foundational understanding October 26, 2009
Format:Paperback|Amazon Verified Purchase
This book is not for beginners to Cocoa. I would only recommend it folks that have a reasonable amount of experience with Cocoa / Objective-C. Don't take this the wrong way; I'm only defining the target audience. This book details the patterns at work in Cocoa's architecture. While this text may confuse those new to Obj-C or Cocoa, it provides valuable insight into Cocoa usage patterns.

Cocoa Design Patterns explains techniques commonly used throughout the Cocoa architecture (Model-View-Controller, Release/Retain Counting, Delegates, etc.), and provides concrete implementation examples in the frameworks. For each pattern it also describes the scenario that you may use it in, and the consequences, good and bad, to using the pattern. I would recommend this book to anyone after they've cut their teeth on Cocoa, after writing their first couple simple applications. This book shines light on some of the design decisions Apple made with Cocoa, and helps the reader understand how to best leverage the patterns utilized in the Cocoa frameworks.
Was this review helpful to you?
32 of 36 people found the following review helpful
5.0 out of 5 stars If Cocoa is Your Thing, This Book is Essential September 14, 2009
Format:Paperback
It was the iPhone that finally brought me into the world of Cocoa programming. I quickly fell in love with the Cocoa & Cocoa Touch frameworks, finding them to be elegant, consistent and truly useful. I've read several books on Cocoa, Objective-C and Mac / iPhone development, but this one stands alone in its quest to fill the gaps, to cement a deep and thorough understanding of one of the best frameworks ever written.

Simply stated, this book is a joy to read. It answered many questions that I had about the "why" behind the evolution of Cocoa and has left me feeling better able to make the most of its power. Cocoa Design Patterns is written in a style that is extremely accessible. It is almost like a detective novel as each chapter unravels the secrets of Cocoa. The most fun I've had reading a technical book in a long while.
Comment | 
Was this review helpful to you?
Most Recent Customer Reviews
5.0 out of 5 stars A must for any cocoa programmer
I'm relatively new to Cocoa and the iOS frameworks. This book goes a long way in making clear why many of the language features are the way they are and the design principles... Read more
Published 7 days ago by Michael Koukoullis
5.0 out of 5 stars So far so good
I'm not done with this yet but I don't think I will be for a while (because I think I'll be re-reading it a few times over). Read more
Published 1 month ago by A. Iredale
5.0 out of 5 stars Excellent book
Very well detailed explanation of Cocoa patterns including understandable examples and sample code.
A must read to any serious iOS or Mac developer. Read more
Published 3 months ago by Lucas Pereira
2.0 out of 5 stars Very old
I am puzzled this very interesting topic did not get extended to also encompass the iOS world. I understand that the "Design patterns" remain crucial after 20 years, but the Cocoa... Read more
Published 4 months ago by Bartolomucci Fabrizio
5.0 out of 5 stars One of the best programing books I've ever read
I'm enjoying every page of it. It's a masterpiece of clarity and elegance. It's an eye-opener, a guide to good programming style, an invitation to build your code over the work of... Read more
Published 5 months ago by Antonio Parra Silvestre
5.0 out of 5 stars Get to Know Cocoa from the Inside Out
This is one very cool book. If you want to get to know Cocoa from the inside out, this is the book to pickup. Read more
Published 9 months ago by T. Anderson
5.0 out of 5 stars This book belongs in every Cocoa programmer's library
This is a very strong book. It's best for those who have been programming in Cocoa for at least a little while, since the concepts are a little abstract. Read more
Published 16 months ago by Duncan Champney
5.0 out of 5 stars Great book for stepping up your Objective-C game to the next level.
If you understand the basics of Objective-C / Cocoa programming for iPhone and OS X, this book will help you a lot in getting to the next level. Read more
Published 16 months ago by Marlborough
5.0 out of 5 stars Best book for learning iPhone programming
Even though it isn't iPhone focused, learning the patterns and concepts of Cocoa will make you a better Mac and iOS program. The best book available for that purpose.
Published on March 30, 2011 by Ross K Sharrott
5.0 out of 5 stars Just Plain Excellent
This is a great book for those building their knowledge of Cocoa. Perhaps not the first book you should get when learning Cocoa, but definitely the second or third. Read more
Published on March 15, 2011 by Craig Howlett
Search Customer Reviews
Only search this product's reviews


Forums

Have something you'd like to share about this product?
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Search Customer Discussions
Search all Amazon discussions


So You'd Like to...


Create a guide


Look for Similar Items by Category