音訳する際に、長音をどうするかというのは、宗教的な問題である。タイガー戦車をティガー戦車と言ったり、マニアは発音にうるさい。ここでの問題は、長音記号である。プログラミングの外で考えても、プリンタなのか、プリンターなのか。非常に迷う。しかし、私の意見では、長音をつけるかどうかという議論自体がナンセンスである。長音記号をつけようがつけまいが、間違っていることにかわりはない。
つまり、コンストラクタと言おうが、コンストラクターと言おうが、関係ない。どちらも間違っているのである。正しくは、Constructorである。これ以外の表記は、皆間違っている。IPA発音記号を使えば、より正しい発音で表記できるという、理想主義的な主張もあるだろうが、通常の単語をIPA発音記号で記述するのは、全くもって現実的ではない。
しかし現実問題として、あるひとつの単語に対しては、どちらかに統一しなければならない事には、かわりはない。一冊の本で、あるところではコンストラクタといい、別のところではコンストラクターというのは、非常にややこしい。つまりこれは、はじめから正解などない問題を解決しなければならないのである。
少なくとも、やコンストラクターやデストラクターに関しては、長音記号をつける方が自然であると、私は考える。もし、最初に日本語でオブジェクト指向の概念を説明した者が、生成子とか、破棄子などという言葉を用いていれば、あるいは、このような問題に悩まされずに住んだのかもしれない。しかし、わかりやすければ(カナで表現しやすければ)、音訳するのも悪くないと考えている。
結局のところ、私は最近、規格にべったりだったので、C++を日本語で考えていないのだ。今、私がC++のコードを書く際は、英語で考えているし、コメントも英語になる。これは注意を要する。なぜならば、私は日本語の本を書かなければならないのだから。
No comments:
Post a Comment
You can use some HTML elements, such as <b>, <i>, <a>, also, some characters need to be entity referenced such as <, > and & Your comment may need to be confirmed by blog author. Your comment will be published under GFDL 1.3 or later license with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.