[ 通常表示 ]  [ 簡易表示 ]  [ シンプル表示 ]

「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

フック (hook)

pointこの用語のポイント

pointプログラム関連で出てくるよ

pointプログラムの中に独自の処理を割り込ませるための仕組みだよ

pointあるいは、本来の処理を横取りして独自の処理を割りこませることだよ

スポンサーリンク

簡単に書くよ

フック (hook)とは

プログラムの中に独自の処理を割りこませるために用意されている仕組み。
もしくは

プログラムにおいて、本来の処理を横取りして独自の処理を割りこませること
です。

image piyo

詳しく書くよ

正直言って、よく分かりませんでした。自信を持って「これがフックだ!」と言える程、理解はしていません。
以下は現時点の私なりの解釈です。

例えばプログラムの作りとして、処理1→処理2→処理3と流れるとします。

フック

この流れにおいて、処理2から処理3へのつながりを横取りします。

フック2

そんで、横取りした先に独自の処理4をくっつけます。

フック3

処理4の戻りを処理3にくっつけます。

フック4

処理4が処理2に対しては処理3っぽく振る舞い、処理3に対しては処理2っぽく振る舞えば、おかしなことにはならないはずです。

あるいは、プログラムの作りとして、処理1→処理2→処理3と流れるとします。

フック5

処理2の中身は空っぽです。
処理1と処理3が直接つながっているのと変わりません。

フック6

プログラムを作る人は後から処理2の中身を追加することができます。

フック7

処理2に独自の処理を書けば、処理1と処理3の間に実行されます。

フック8

これは処理1と処理3の間に独自の処理を割り込ませたと言えます。

このように「本来の処理を横取りして独自の処理を割り込ませること」あるいは「独自の処理を割り込ませるにあらかじめ用意されている仕組み」が「フック」です。
ぐいっと横取りして、知らん顔してつないで、何もなかったかのように戻します。

個人的には「処理を横取りする」「独自の処理を割り込ませる」「仕組み」がポイントだと思っています。

image piyo2

一言でまとめるよ

まぁ「フック」って単語が出てきたら「独自の処理を割り込ませるための仕組みなんだな~」と、お考えください。

一番上に戻るよ
スポンサーリンク