LoginSignup
45
10

More than 3 years have passed since last update.

「戻り値」か「返り値」か

Last updated at Posted at 2020-10-23

ずっと気になっていたことがある!

「戻り値」か「返り値」か!

「へなちょこ」と「へっぽこ」の違いみたいでどうでもいいといえばどうでもいいのですが、ちょっと調べてみました。

「返り値」と見るたびに「返り血」みたいでどうも不穏な感じで好きじゃなくて気になってしまう。
(武士が切られて血が、ブシャーッ!みたいな映像が勝手に脳内に浮かんじゃうんですよ)

ええ、調べたところで、何の役にも立ちませんがね。
(とりあえず、調べるってのはエンジニアの習慣てことで)

まずは、Google Trend

過去12月間
image.png

※追記 コメントで「復帰値」という言い方もあるということで、12か月間のみですが追加してみました。
image.png

過去5年間
image.png

2004-現在
image.png

なんだ、戻り値がずっと優勢じゃん、なら話はここで終わり?

しかし、他に調べたこともあるので書いておきます。

翻訳としては、

image.png

やっぱり「戻り値」じゃん
下の「返却値」がちょっと気になりますが

引数はどうなのか

英語では、Parameter
Google翻訳では、「パラメータ」と出ます、オイ!

検索するとWikipediaが出てきて、でもこれ数学的な説明だけど

媒介変数

と、あー、なるほどね。これならまーって思いました。
何が言いたいのかっていうと

どちらが主語なのよ

って、以前、講師をしていた時に、なんも考えずに引数、戻り値って教えていてたのですが、どっちのことを言ってるのか分からなくなると言われて・・・え??

つまり、「呼び出し元」からみて言ってるのか、「呼び出し先」から見て言ってるのかと

main() {
  int i = sub(10); // 戻り値iは、mainが主語?
}

int sub(int i) { // ← 引数iは、subが主語?
 return 1;
}

引数っていうとsub()の方が主役になってて、戻り値だとmain()が主役じゃね?
みたいなこと言われて、なるほどーと思いました。

正確に表現するとすれば、main() から見れば、
parameterは、渡し値
return valueは、戻り値(返り値)

sub()から見れば、
parameterは、は引数(渡り値?)
return valueは、戻し値、返し値

かなぁ?なんて話してたのですが、あまりに意表を突いた質問だったので、
その場では、慣れるしかないよ~(アハ,アハハハハ)みたいな説明しかできませんでしたw

私は、特に疑問にも思ったことすら無かったので、とても勉強(参考?)になりました。
初心者の人ってこういうところで、つまずくのかと

つまりそれを思い出して、媒介変数ならどっちが主役で悩まないかもと思ったわけです。
(そもそも引数とか戻り値って誰が訳したんですかね?)

その他諸々

だんだん何を書いてるのか分からなくなってきましたが、

オフィシャルなプログラミング言語のドキュメントの翻訳は、「戻り値」になってる場合が多いようです。(しかし、PHPは、返り値になっている)

IT用語辞典 e-Words

image.png

うーん、返り値も一応、載ってるなぁ・・・

IME関連

Microsoft IMEでは、
かえりちは、返り血しか変換できません。(Windows10)

Google日本語入力では、返り値で変換できます。

ん?Qiitaでは?

image.png

image.png

返り値の方が多いだとぅ!?

広めてるのは、お前か!

ここで記事書いてよかったかもw

まとめ

以前にも何度か調べたことがあるのですが、気になるたびに検索してて
あれ、また検索してる俺、みたいな既視感で記事にしてみました。

言葉なので、伝われば良いといえばいいのですが、システム開発の際は、
クライアントとの用語の齟齬による語弊は、よくあることなので、統一した方がいいのにと思ってます。

個人的には、「戻り値」で統一してほしい!

ので、今まで返り血(ブシャーッ!)と言っていた方は、戻り値に改宗していただきたく存じます。

かしこ

45
10
5

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
45
10