プログラムの命名規則について

変数や関数名は見易さやメンテナンス性を良くするために決められたルールに従って命名される必要があります。

私はプロのプログラマではないので命名規則について気にしたことはありません。しかし、成果物をネットに上げるのなら話は別です。

他人が見やすいものを作る必要があります。

というわけでよく見かける規則、スネークキャメルハンガリアンについてまとめてみました。

大きな特徴

スネーク記法は単語と単語をつなげる際に_(アンダースコア)を付け、キャメル記法は単語の最初の文字を大文字にします。ハンガリアン記法は変数の型を接頭に付けます。

int snake_case;       //スネーク記法の場合
int camelCase;        //キャメル記法の場合
int iHungarian;       //ハンガリアンの場合 (int型変数)
double dHungarian;    //ハンガリアンの場合 (double型)

1.スネーク記法

1.1 メリット

日本のネットでちやほやされている記法。

_は空白に似ている?ので早く読める。

定数は全部大文字で書くというルールを導入した場合親和性が高い

1.2 デメリット

アンダースコアの分入力する量が増える。

2.キャメル記法

2.1 メリット

アンダースコアが無い分入力量が減る。

2.2 デメリット

うねうねして見にくい。

lとiが続いたりすると読みにくい文が出てくる。

3.ハンガリアン記法

ハンガリアン記法はアプリケーションハンガリアンとシステムハンガリアンの2種類がありますが、ここではシステムハンガリアンだけ取り上げます。

3.1 メリット

変数の型がわかりやすいので型を間違えた時わかりやすい。

グローバル変数とローカル変数などスコープが違う変数を区別しやすい。

3.2 デメリット

最近ではコンパイラが警告をだすので変数の型の間違いは起こりにくい、故に必要ない。

データ型を後から変更すると名前を全て変更しなければならないので面倒。

命名規則によって型は推測できるようにできる。

不人気。

まとめ

個人的には法則性があればどちらでもいいと考えています。これから各プログラムは素早く読めると言う観点からスネーク記法を採用したいと思います。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)