Introduction
This chapter applies OO design principles and the UML to the case studies, to show larger examples of reasonably designed objects with responsibilities and collaborations. Please note that the GRASP patterns by name are not important; they're just a learning aid that helps us think methodically about basic OO design.[View full size image]
Key Point The assignment of responsibilities and design of collaborations are very important and creative steps during design, both while diagraming and while coding. |
The No-Magic Zone
This chapter invites you to learn through detailed explanations how an OO developer might reason while designing by principles. In fact, over a short time of practice, these principles become ingrained, and some of the decision-making happens almost at a subconscious level.But first, I wish to exhaustively illustrate that no "magic" is needed in object design, no unjustifiable decisions are necessaryassignment of responsibilities and the choice of collaborations can be rationally explained and learned. OO software design really can be more science than art, though there is plenty of room for creativity and elegant design.