0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

コールバック関数を理解する

0
Last updated at Posted at 2020-04-28

CALLBACKと言われても、その名前から一体何なのかも想像がつかない。

これはハッキリ言うと、CALLBACKでは無くて、CALLBYNAMEの方がしっくりくると思っている。

どんな時に使うのか、その例を考えてみる。

一般的な場合

コンピュータに命令する場合、まず常識的には人間の言葉が通じないので、
間接的に指示することが一般的になる。

例えばであるが、番号の書いたボタンか何かがあった場合は、

1(話をする)
2(動く)
3(止まる)

という風なものを介在させて、Actionという指示を伝えることになる。

Action(番号)

IF 番号=1 THEN 話をする
IF 番号=2 THEN 動く
IF 番号=3 THEN 止まる

Function 話をする:
Function 動く:
Function 止まる:

コールバイネームの場合

コールバイネームの場合は、指示自体を直接的に実行させるイメージ

ACTION( 命令 )

Function 話をする:
Function 動く:
Function 止まる:

この命令の部分に、直接的に「話をする」、「動く」、「止まる」
などというものが入る。

そもそも関数の名前を、そのまま引数に与えてしまうところが、
このコールバック関数の概念が理解しにくのだと思う。

引数には、関数の名前をそのまま直接入れるのである。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?