Meaning – The term hook, refers to the location in a computer program where instruction is inserted for invoking a particular function.

A hook is a functionality provided by software for users of that software to have their own code called under certain circumstances. That code can augment or replace the current code.

A callback could be thought of as a specific kind of hook. By implementing callback functionality into a system, that system is letting you call some additional code after an action has completed. However, hooking (as a generic term) is not limited to callbacks.

One usage of hooks is in video game mod development. A game may not allow mod developers to extend base functionality, but hooks can be added by core mod library developers.

Example of usage“The Drupal CMS provides developers with hooks that let them take additional action after a “content node” is created. If a developer doesn’t implement a hook, the node is created per normal.”