Next: The framework development process
Up: A comparison with other
Previous: Frameworks vs. Abstract Classes
At the first sight, it seems as if framework s were implemented design
patterns. Even a careful analysis of the definitions of design pattern and framework
does not help. A pattern is ``a recognisable way in which something is
done, organised or happens'' [Procter95]. This definition
certainly matches a framework. The definition of design pattern is too broad to be
useful.
- The definition of pattern in the pattern community is based on the
observation that there are reoccurring solution to reoccurring
problems. Thus, the problem a pattern solves is just as much a part of
the pattern as the arrangement of objects that makes up the
solution. A pattern is, therefore, ``a solution to problem in a
context'' [Johnson]. These patterns can not be easily expressed
in object-oriented languages as we know them today.
- On the other side, a framework is more than a design pattern as it is also
code. A framework is an abstract design expressed in abstract classes and,
therefore, in code. A framework contains a model for the object interaction
(collaborative model (see chapter ) ) and defines
the kinds of classes. A framework will
contain several design patterns as they are described in [GHJV95].
- So, both framework s and design pattern s are abstract designs to a given problem or
problem family. But, design pattern s are much smaller and more abstract while
framework s use design pattern s and are expressed in code.
© 1996-97 Ronald Melster