Home > Store

Cocoa Design Patterns

Register your product to gain access to bonus material or receive a coupon.

Cocoa Design Patterns


  • Sorry, this book is no longer in print.
Not for Sale

eBook (Watermarked)

  • Your Price: $35.19
  • List Price: $43.99
  • Includes EPUB, MOBI, and PDF
  • About eBook Formats
  • This eBook includes the following formats, accessible from your Account page after purchase:

    ePub EPUB The open industry format known for its reflowable content and usability on supported mobile devices.

    MOBI MOBI The eBook format compatible with the Amazon Kindle and Amazon Kindle applications.

    Adobe Reader PDF The popular standard, used most often with the free Adobe® Reader® software.

    This eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.


  • Copyright 2010
  • Dimensions: 7" x 9-1/8"
  • Pages: 456
  • Edition: 1st
  • Book
  • ISBN-10: 0-321-53502-2
  • ISBN-13: 978-0-321-53502-3

“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.



Download the sample code

Sample Content

Online Sample Chapters

Cocoa Design Patterns: Bindings and Controllers

Cocoa Design Patterns: Controllers

Cocoa Design Patterns: Model-View-Controller

Cocoa Design Patterns: Two-Stage Creation

Sample Pages

Download the sample pages (includes Chapter 29, 32, and Index)

Table of Contents

Preface     xix

Part I: One Pattern to Rule Them All     1

Chapter 1: Model View Controller     2

Chapter 2: MVC Analyzed and Applied     17

Part II : Fundamental Patterns     28

Chapter 3: Two-Stage Creation     29

Chapter 4: Template Method     43

Chapter 5: Dynamic Creation     53

Chapter 6: Category     63

Chapter 7: Anonymous Type and Heterogeneous Containers     77

Chapter 8: Enumerators     85

Chapter 9: Perform Selector and Delayed Perform     99

Chapter 10: Accessors     107

Chapter 11: Archiving and Unarchiving     123

Chapter 12: Copying     135

Part III: Patterns That Primarily Empower by Decoupling     147

Chapter 13: Singleton     148

Chapter 14: Notifications     159

Chapter 15: Delegates     175

Chapter 16: Hierarchies     191

Chapter 17: Outlets, Targets, and Actions     206

Chapter 18: Responder Chain     220

Chapter 19: Associative Storage     232

Chapter 20: Invocations     242

Chapter 21: Prototype     255

Chapter 22: Flyweight     263

Chapter 23: Decorators     268

Part IV: Patterns That Primarily Hide Complexity     274

Chapter 24: Bundles     275

Chapter 25: Class Clusters     282

Chapter 26: Façade     302

Chapter 27: Proxies and Forwarding     312

Chapter 28: Managers     328

Chapter 29: Controllers     337

Part V : Practical Tools for Pattern Application     364

Chapter 30: Core Data Models     365

Chapter 31: Application Kit Views     379

Chapter 32: Bindings and Controllers     393

Appendix: Resources     404

Index     407


Submit Errata

More Information

Unlimited one-month access with your purchase
Free Safari Membership