ハンガリアン記法について考える。
システムハンガリアン記法と アプリケーションハンガリアン記法。
「間違ったコードは間違って見えるようにする」 をみてみると、なるほどな、と頷きたくなる。 しかし。
私のように、未熟なプログラマが これを実践しようとするとおそらく失敗する。 私の考えるプレフィックスには一貫性が無く おそらく、熟練のプログラマが見てもなんだか分からないだろう。 また、不要なプレフィックスを付けるかもしれない。 何の略語かも分からず 結果として可読性を損ねるだろう。
逆に、熟練のプログラマが書いたソースを 私が見ても上手に解読できないだろう。 知識がなければ、プレフィックスの意味さえ分からない。 言語が分からないのではなく その変数の名前に、 名前を以上の意味を持っていると理解できないのだ。
システムハンガリアン記法が そもそも誤解から生じたと言うのなら。 その人云々ではなく、 仮に未熟なプログラマが見ても同じ間違いをするのではないか。
それと見て分かるようにするプログラムは 誰が見ても分かるプログラムではない。
偉い先生の書いた大学のテキストと同じか。 分かる人には非常に為になる本かも分からないが 大部分の学生にとってそれはなんだか分からない文字の羅列だ。 仮にそれが日本語であっても。
そして、実務に携わる 多くのプログラマは必ずしも熟練者ではなく 市場や年齢層を考えれば、むしろ未熟な人間が多いのではないか。 その多くの人間が誤解しかねないソースとは 本当にすばらしいものになり得るのか?
システムハンガリアン記法が広がったのは 当初の勘違いはともかくとして 「初心者でもわかりやすい」だからであり、 仮に誤解無くアプリケーションハンガリアン記法が 説明されていたとして、それはこれ程一般化したであろうか。
……すみません、分からない私が悪いんス。 勉強しますんで身のない反論だと思ってください。 実際目から鱗は落ちてますから……。
|