質の高いプログラムを書くためのアドバイス

ホーム > 芸術的なプログラマ > 関数や変数の名前をローマ字にしない

芸術的なプログラマ

:: artistic programmer ::

関数や変数の名前をローマ字にしない

あなたは、関数(またはメソッド)や変数の名前を「英語」と「ローマ字」のどちらにしていますか?

もし、「ローマ字」の名前にしているのでしたら、やめた方が賢明です。

なぜならそれは、「同じ読み方の名前に対応できない」からです。
この理由について、詳しく説明しましょう。

ローマ字といえば、通常は「ヘボン式」です。

ヘボン式ローマ字では長音(のばす音)は無視されます。
たとえば、「数字」は suji になります。

しかし、suji だと「すじ」(筋)にもなってしまいます。

suji という変数があった場合、「数字」に関する値なのか、「すじ」に関する値なのか、区別がつきません。

「数字」を suuji にする解決策はありますが、ヘボン式でなくなってしまい、統一性が失われます。

結果として、ローマ字の名前では「数字」と「すじ」を同時に扱えないことになります。

一般的に「数字」と「すじ」を同時に扱うことはありませんので、私の経験からもう一つの例をご紹介しましょう。

私はある「就業管理システム」の開発に携わっていました。
働く人の勤務時間を管理するシステムです。

扱っているデータの中に「就業」と「終業」とがありました。
どちらとも読み方は「しゅうぎょう」です。

ヘボン式ローマ字で表せば syugyo になります。

この場合、ヘボン式でなくても同じになってしまいます。
変数 syugyo もまた、「就業」と「終業」の区別がつきません。

もうおわかりですね。

これが要するに、「ローマ字では同じ読み方の名前に対応できない」ということです。

英語であれば、読み方に関係なく「1 対 1」または「多 対 多」で対応するので、問題ありません。

そのため、関数や変数の名前は、英語にするのが望ましいのです。

また、「ファイル名」や「テーブルの列名(データベース)」なども英語にしておけば、後で困らなくて済みます。

なお、英語の名前をつけるときは、辞書サイトを利用することをおすすめします。
実際の辞書で調べるときに比べて断然速さが違います!

次の3サイトは、私が命名によく利用している辞書/翻訳サイトです。
ご参考までに。

goo 辞書
英和辞典と和英辞典があるので、ほとんどはここで用が足ります。 通常は和英辞典しか利用しませんが、単語のつづりがなんとなくわかっている場合は英和辞典も利用しています。(つづりを確認するため)
スペースアルク
ここも英和辞典と和英辞典があります。 単語の読み方をカタカナで表示するので、それを確認するときに利用しています。
Exicite 翻訳
日本語の文章をまるごと英文に翻訳できます。 もちろんその逆も可。 かなりの精度で翻訳できるので、名前が熟語の場合に利用しています。

ホーム > 芸術的なプログラマ > 関数や変数の名前をローマ字にしない

Copyright (C) 2005-2007 Noto Watabe. All rights reserved.
e-mail:wmh@always-pg.com