Cocoa Design Patterns
<P style="MARGIN: 0px">“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.†</P> <P style="MARGIN: 0px"> </P> <P style="MARGIN: 0px">–Aaron Hillegass, founder of Big Nerd Ranch, Inc., and author of <I>Cocoa Programming for Mac OS X</I> </P> <P style="MARGIN: 0px"> </P> <P style="MARGIN: 0px"> <B>Unlocking the Secrets of Cocoa and Its Object-Oriented Frameworks</B> </P> <P style="MARGIN: 0px"> </P> <P style="MARGIN: 0px">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.</P> <P style="MARGIN: 0px"> </P> <P style="MARGIN: 0px"> <I>Cocoa Design Patterns</I> 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 <I>enforced</I> by Apple’s tools, it’s important to have a firm grasp of MVC right from the start. </P> <P style="MARGIN: 0px"> </P> <P style="MARGIN: 0px">The book’s midsection is a catalog of the essential design patterns you’ll encounter in Cocoa, including</P> <UL> <LI>Fundamental patterns, such as enumerators, accessors, and two-stage creation</LI> <LI>Patterns that empower, such as singleton, delegates, and the responder chain</LI> <LI>Patterns that hide complexity, including bundles, class clusters, proxies and forwarding, and controllers</LI> </UL> <P style="MARGIN: 0px">And that’s not all of them! <I>Cocoa Design Patterns</I> 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. </P> <P style="MARGIN: 0px"> </P> <P style="MARGIN: 0px"> <I>Cocoa Design Patterns</I> 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.</P>