Abstract :
Class characterization is a key step of object design. It serves two purposes: to clarify at a glance some important aspects of a class´s expected behavior and to communicate its design intent to others. Depending on the type of systems we design and build, we naturally find certain characterizations to be more compelling than others. Recognizing and choosing effective characterizations is an essential skill that all class designers should master. In this column, the author introduces several characteristics to classes when trying to understand their nature and purpose.
Keywords :
object-oriented methods; object-oriented programming; class characterization; domain-driven design; object design; Collaborative work; Credit cards; Cyclic redundancy check; Dictionaries; Intelligent structures; Pattern recognition; Process design; Shape; Software design; Yarn; Class; aptronym; role stereotype;