Framework Design
Frameworks differ from applications
- the level of abstraction is different as frameworks provide a solution for a family of related problems, rather than a single one.
- to accommodate the family of problems, the framework is incomplete, incorporating hot spots and hooks to allow customization
Frameworks must be designed for flexibility, extensibility, completeness and ease of use.