The design of object-oriented software is more difficult, and the design can be more difficult to object-oriented software. You must find related objects to classify them, and then define the interfaces and inheritance hierarchies to establish the basic relationship between objects. Your design should be targeted against the problem of your head, and also has sufficient versatility for future issues and needs.
You also want to avoid duplicate design or do your designs as little as possible. Experienced object-oriented designers will tell you that you have to get a reuse and flexible design, even if it is not unlikely to be very difficult. A design is often reused several times before the final completion, and it has been modified every time.
Experienced object-oriented designers can indeed make a good design, and novices face many choices, always call for non-proportional object technology used. Novice takes a long time to understand how the object-oriented design is going. Experienced designers obviously know what some novices don't know, what is this?
The in-line designer knows: not to solve any problems, you have to start with your head. They are more willing to reuse the previously used solutions. When you find a good solution, they will be used over and over again. These experiences are part of their way. Thus, you will see an object (c o m m u n i c a t i n go b j e c t) and the repeating pattern classes communicate with each other in many object-oriented systems. These patterns solve specific design problems, making the object-oriented design more flexible, elegant, and final reuse. They help designers have established new design on the previous work, multiplexing the designs of previous success.
A designer familiar with these modes does not need to discover them again, and they can immediately apply them in design issues. The following categories can help indicate this. Novelists and script writers rarely start designing plots. They always follow some models that have existing models, like the "Tragic Hero" model ("Mike White", "Hamlet", "Romantic Novel" model (there is countless romantic novel). Similarly, object-oriented designers also follow some modes, like "object representation status" and "modified objects to facilitate you can easily add / delete properties". Once you know the pattern, many design decisions have naturally occurred.
We all know the importance of design experience. How many times have you been have to have this feeling - you have already solved a problem but is not exactly what is it or how to solve it? If you can remember the details of the previous problem and how to solve it, you can multiplex the previous experience without re-discovered it. However, we don't have a good record of software design experience that can be used by others.