When writing one, you focus on internal reuse, maintainability, and extension
Toolkits
A toolkit is probably just an oo way to say "library"
Could be a class library or a component library
Toolkits are all about code reuse between applications
Different applications can use the same toolkit
Good toolkits are pretty general, not application-specific at all
Frameworks
A framework is pretty-much the structure of an application
Usually implemented as a set of cooperating classes making up a reusable design for a specific class of software
The framework "dictates the architecture" of your application.
You build an application by filling in the holes in the framework
Frameworks encourage plug-ins
Frameworks emphasize design reuse over code reuse.
In a way, this is kind of inverting the usual relationship between the application and the software on which it's based.Applications call toolkits but frameworks call applications
Differences between design patterns and frameworks
Design patterns are more abstract than frameworks.
Design patterns are smaller architectural elements than frameworks.
Design patterns are less specialized than frameworks.