In answering some private email about the forthcoming "Cocoa Design Patterns" 
book, I made the following observations.
   
   
  Design patterns describe high quality practical solutions to recurring 
programming problems and can sometimes be quite abstract.  Design patterns 
state how to solve problems and why some solutions are preferred over others.  
There are programming examples of patterns, but it is assumed that the patterns 
will be adapted as necessary on a case by case basis.  In other words, Design 
Patterns are not tutorials.
   
   
  The right time to introduce design patterns depends on the learning style of 
the individual programmer.  Some programmers are uncomfortable until they can 
see the "big picture".  Design patterns help show the big picture and provide 
rationale.  Other programmers are frustrated by theory and abstract ideas until 
they have mastered the details of a specific implementation.  For specific 
details, tutorials and focused sample programs are more satisfying than design 
patterns.
   
   
  To use an analogy, design patterns for construction/architecture describe the 
rationale for having more than one external door – e.g. for emergency egress.   
Design patterns for construction/architecture identify and contrast the 
different styles of architecture such as Queen Ann Victorian or Prairie Style 
or Neo-Classical.  A design patterns book for construction/architecture might 
provide a few sample floor plans to illustrate the application of a pattern, 
but you won't find a complete design for your specific house in the book.  Nor 
will you find instructions for how to nail two boards together.
   
   
  Why Focus on Design Patterns?
   
   
  I wrote “Cocoa Design Patterns” to help satisfy your intellectual curiosity.  
It’s easy to lose sight of the overall architecture and rationale of Cocoa. 
Many programmers comment that they feel lost in the multitude of classes, 
functions, and data structures that Cocoa provides. They can’t see the forest 
because they‘re concentrating too much on individual trees. The patterns used 
in Cocoa provide a structure and organization that will help you find your way. 
The patterns show how to reuse groups of cooperating classes even when the 
relationships between the classes are not fully explained in the documentation 
for individual classes.
   
   
  So, will programmers new to Cocoa benefit from a Cocoa Design Patterns Book ? 
 I think all programmers will benefit from understanding design patterns at 
some point whether they use Cocoa or not.  How soon a new programmer should 
tackle design patterns depends a lot on the programmer.
   
   
  Any programmer who is familiar with the famous Design Patterns book by the 
Gang of Four and enjoyed that book will enjoy "Cocoa Design Patterns".
   
_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to