My own progress

software engineering

Webプログラマが理解したいHook(フック)とは

フックとは

フックは、プログラマの中にプログラマが独自の処理をインクルードできる処理のことである。
普段ライブラリを使っている側からしたら、当たり前のように使っている機能であるが、実装にどういう箇所で使われているか、その内部実装に関しても解説していきたいと思う。
(ライブラリを実装する側ではないと、作ることのない機能であるけど)

実際にフックが使われている場面

下記のような場面で実際にフックが使われている。Webエンジニアでもイメージがしやすいようにかいた。

・Vue.jsのインスタンスライフサイクルフック
railsのコールバック関数
wordpressのフック
・CPUの割り込み処理など
RDBMSのトリガー処理等


フック処理は、現在の情報科学の多くの文脈で登場するので、エンジニアは積極的に理解しておきたい概念だと個人的には思う。

フックメソッドを実装する代表的なデザインパターン

TemplateMethod




後日追記