構文糖
「シンタックスシュガー」を日本語にしたよ
プログラミング言語の話で出てくるよ
構文の省略した書き方だよ
本来の書き方と同じ動きをするよ
どんな書き方ができるかはプログラミング言語によって違うよ
簡単に書くよ
構文糖(読:コウブントウ 英:syntax sugar)とは
「シンタックスシュガー」のこと。
用語の中身としては
プログラミング言語における、やってくれる処理は同じだけど本来の書き方よりも簡単な書き方のこと
です。
詳しく書くよ
最初に留意事項です。
「シンタックスシュガー」と言われて「あぁ、アレのことね」と分かる方は最後まで読む必要ありません。
シンタックスシュガーを無理やり日本語にしたのが「構文糖」です。
以上が「シンタックスシュガー」の意味を知っている人向けの説明です。
「シンタックスシュガーって何?美味しいの?」な人は、このまま読み進めてください。
用語の中身について説明します。
それでは、いってみましょう。
まずは予備知識として「シンタックスシュガー」について結構ガッツリ説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。
シンタックスシュガーは、大胆に端折って一言で言えば「省略した書き方」です。
プログラミング言語の話で出てきます。
例えば、そうですね。
ピヨ太君がケーキ屋さんをやっています。
お店の名前は「ピヨピヨケーキショップ」です。
オススメの商品は「ピヨピヨ苺ショートケーキ ~ 秘密のお花畑で苺とクリームが運命の出会い ~」です。
ピヨ子さんはピヨピヨケーキショップの常連さんです。
週に1回は「ピヨピヨ苺ショートケーキ ~ 秘密のお花畑で苺とクリームが運命の出会い ~」を買っていきます。
ピヨ子さんは「ピヨピヨ苺ショートケーキ ~ 秘密のお花畑で苺とクリームが運命の出会い ~」を注文するとき「苺ショート1つ!」と言います。
くそ長ったらしい名前を全部言うのは大変ですからね。
「苺ショート」と省略して注文します。
ピヨ子さんから注文を受けたピヨ太君は「へい!苺ショート1つね!」と復唱します。
やっぱり、くそ長ったらしい名前を全部言うのは大変ですからね。
「苺ショート」と省略して復唱します。
商品名は「ピヨピヨ苺ショートケーキ ~ 秘密のお花畑で苺とクリームが運命の出会い ~」です。
本来であれば「『ピヨピヨ苺ショートケーキ ~ 秘密のお花畑で苺とクリームが運命の出会い ~』をください」と注文するべきでしょう。
ですが、くそ長ったらしい名前を全部言うのは大変です。
よって、ピヨ太君は「苺ショート」でも受け入れます。
「『苺ショート』だぁ?!このケーキの名前は『ピヨピヨ苺ショートケーキ ~ 秘密のお花畑で苺とクリームが運命の出会い ~』だ!ちゃんと全部言え!」とかケチくさいことは言いません。
この話における「苺ショート」がシンタックスシュガーに相当します。
実際のプログラミング言語でも考え方は同じです。
プログラミング言語には「構文」があります。
構文の意味がイマイチ分からない人は「こんな処理をしたいときは、こんな書き方をしなさい」な決まりだと思ってください。
書き方ルールです。
構文には「え~、こんな長ったらしい書き方をしないとダメなの?」と文句を言いたくなるようなものがあります。
「何回も使うから、もっとサクっと書けないかな?」と横着したくなるものもあります。
いいでしょう。
あなたの望みを叶えましょう。
プログラミング言語を作った人は、本来の書き方とは別に、横着できる省略した書き方を用意してくれました。
省略した書き方をしても、動きは本来の書き方をしたときと同じです。
この
横着できる省略した書き方
がシンタックスシュガーです。
例えば、プログラミング言語「PHP」では、配列を使うときに
$a = array('a', 'b', 'c');
のように書きます。
「array()」の部分が配列を作っているところです。
これがPHPにおける配列を作る際の本来の書き方です。
ただし、PHP5.4以降では、以下のような書き方もできます。
$a = ['a', 'b', 'c'];
「[]」の部分が配列を作っているところです。
いかがでしょう。
「array()」よりも「[]」と書く方が楽チンですよね。
この「[]」がシンタックスシュガーです。
どのようなシンタックスシュガーが使えるかはプログラミング言語の種類やバージョンによって変わってきます。
具体的なことは、プログラミング言語ごとの説明をご覧ください。
以上を踏まえて、上でも書きましたが
シンタックスシュガーを無理やり日本語にしたの
が「構文糖」です。
syntax(シンタックス)の意味は「構文」です。
sugar(シュガー)は、舐めると甘い「砂糖」です。
「砂糖」を「糖」と読み替えて「構文糖」です。
ただ、それだけです。
一言でまとめるよ
まぁ「構文糖」って単語が出てきたら「プログラミング構文の省略した書き方なんだな~」と、お考えください。