Home > Store

Cocoa Design Patterns, Rough Cuts

Cocoa Design Patterns, Rough Cuts

Rough Cuts

  • Available to Safari Subscribers
  • About Rough Cuts
  • Rough Cuts are manuscripts that are developed but not yet published, available through Safari. Rough Cuts provide you access to the very latest information on a given topic and offer you the opportunity to interact with the author to influence the final publication.

Not for Sale


  • Copyright 2008
  • Dimensions: 7" x 9"
  • Pages: 456
  • Edition: 1st
  • Rough Cuts
  • ISBN-10: 0-321-56233-X
  • ISBN-13: 978-0-321-56233-3

This is a working draft of a pre-release book. It is available before the published date as part of the Rough Cuts service.

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

Sample Content

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