First of all, let us briefly discuss what a Software Library is
A software library is a collection of resources used to develop software.
Programmers write functions and classes, these are sets of instructions and defined behaviours. They range from the simple to the complex, and each is a resource that can be repeatedly used to build something bigger. Such a collection of resources is a Software Library.
A Software Framework is a software library with certain goals in mind:
- The framework code itself is not meant to be edited or changed.
- Frameworks are extensible. Resources can be specialised or overridden.
- Frameworks have a default behaviour.
- The framework dictates how it’s set of resources is used.
- Don’t edit core files (your changes will get wiped in the next release).
- WordPress has filters, hooks and pluggable functions.
- WordPress comes out of the box as a full working CMS.
- Use action and filter hooks inside plugins and themes, using codex standards.