2011年7月27日水曜日

語学における冠詞と、クラス/インスタンス

英語にせよ、フランス語にせよ、語学を学ぶ上で日本人がつまずきやすい箇所の一つが、冠詞である。

なぜ、この単語に"the"がついて、こっちは"a"なの? とか、なんで名詞そのままじゃなく"a piece of"とか付けなきゃならないの? とか思ったことはないだろうか。特に理系はなぜか英語が苦手な人が多く、こう言うところが英語嫌いに拍車をかけていることもあるだろう。私は、この冠詞についての考え方を、プログラムのクラス/インスタンスでうまく説明出来るのではないかと思ったので、試しに書いてみる次第。

まず、言語的な説明から行くと、不定冠詞"a"というのは、不特定のもの、初出のものを指し、一方、定冠詞"the"はある特定のものを指す。さあ、これで英語が苦手な人、逃げ出したくなったでしょう。これをプログラミング的に説明してみると、以下のようになる。

クラスからインスタンスを生成するには宣言が必要だが、その宣言する際にインスタンス(=名詞)付けるのが不定冠詞"a"なのだ。例文を見てみよう。
This is a pen
上の例文はまさに "pen"というクラスから、1つのインスタンスを生成したのだ。ちなみに複数形の名詞の場合には、冠詞無しで名詞の後ろに"s"を付ける。さて、このインスタンスをこれ以降使う場合、定冠詞(又は所有格)を付ける。
This is a pen.
The pen is blue.
"pen"というのはクラスの名前でもあるし、他のインスタンスでも"pen"という名前が有るかもしれない。それを区別するために定冠詞や所有格を付けるのである。

ではここでインスタンスではなく、クラス自体のことを語りたいときどうすればいいか。その場合にも定冠詞を用いる。あれ? インスタンスとごっちゃにならないか? と思うかもしれない。それは、文脈に由来する。インスタンス宣言をした後だと、"the"がついた"pen"は、そのインスタンスことだと相手が勘違いしてしまうかもしれない。でも、いきなり最初から定冠詞を付けた状態で話すと、それはクラスのことを指すのである。
The pen is an objet which is used for write letters.
(ペンは文字を書くために使うモノです)
なお、一部例外として、必ず定冠詞を付ける名詞が存在する。それは、この世の中に1つしか存在し得ないモノ、つまりインスタンスが1つしか作れないクラスと言う訳。たとえば、
The earth turns around the sun.*1
地球も太陽も一つしかないから、必ず定冠詞が付くのである。

というわけで、不定冠詞と定冠詞を、プログラムにおけるクラスとインスタンスに結びつけて説明するのはおしまい。本当は、英語よるもフランス語などの方が冠詞が厳密で、もっときちんとプログラムに例えて説明出来るが、本日はこのぐらいで。では。

*1 本当はthe earth revolves...だが、簡単な単語を使いたかったので。念のため。

0 件のコメント:

コメントを投稿

ロバート・フリップがジョー・ザヴィヌルと話している写真

DGMからのニュースで知りましたが、キング・クリムゾンのロバート・フリップが、ウェザー・リポートのジョー・ザヴィヌルと話している貴重な写真を発見しました。90年代半ばのラジオ番組でのことで、フリップはクリムゾンのリハーサル音源を放送したとのこと。 記事はスペイン語のた...