プログラミング言語の命名規則まとめ

複数のプログラミング言語を使ってると、変数やメソッドの名前の付け方がぐちゃぐちゃになる。
なので、自分流の各言語における命名規則をまとめてみる。
決して模範的な例ではないので、この言語ではこうした方がよくね?という部分があれば遠慮なくツッコミを入れてくれると嬉しいです。

名前の付け方にはいくつかあり、ここで使うのは大きく分けて3つ。

  • スネークケース
    単語間をアンダースコアでつなげる。
    例、foo_bar
  • キャメルケース
    単語の2つ目以降の先頭を大文字で書いてつなげる。
    例、fooBar
  • パスカルケース
    全ての単語の先頭を大文字で書いてつなげる。
    例、FooBar

 

C

ローカル変数:スネークケース
グローバル変数:先頭が “g_” のスネークケース
関数:スネークケース
構造体:スネークケース
列挙体:スネークケース(列挙定数は全て大文字のスネークケース?)
定数(マクロ):全て大文字のスネークケース

参考(コメントありがとうございます.)
http://www.libjingu.jp/trans/bs_faq2-j.html#Hungarian

 

Objective-C

クラス:パスカルケース
変数:キャメルケース
定数:全て大文字のスネークケース
メソッド:キャメルケース

C#

クラス:パスカルケース
変数:キャメルケース
メソッド:パスカルケース
メソッド(戻り値がboolean):先頭が “Is” のパスカルケース

 

Java

クラス:パスカルケース
インタフェース:パスカルケース
変数:キャメルケース
定数:全て大文字のスネークケース
メソッド:キャメルケース
メソッド(戻り値がboolean):先頭が “is” のキャメルケース

 

Perl

変数:スネークケース
定数:全て大文字のスネークケース
サブルーチン:スネークケース

関連記事:


2 thoughts on “プログラミング言語の命名規則まとめ

  1. C言語の命名規則ですが言語の作者に言わせると

    Bjarne StroustrupによるC++のスタイルとテクニックに関するFAQ
    http://www.libjingu.jp/trans/bs_faq2-j.html#Hungarian

    (マクロ以外に)”すべての文字を大文字にした名前(例: BEGIN_TRANSACTION)は、慣例的にマクロでの 使用に予約されているので、絶対に使用しないでください。”

    とのことです。

    ということで、構造体や列挙体または定数が全て大文字というのは間違いです。FILE*の様に、大文字だけの構造体も存在はしますが、歴史的な理由や、マクロで実装される事を意図しているので構造体だから、定数だからという理由で大文字にすべきではありません。

    Microsoftが筆頭となってこの間違いを広めましたが、Microsoftが規格違反を犯すのは昔からなので参考にすべきではありません。

    • ありがとうございます,参考になります.教えていただいたWebページを参考に,正しい記法を使うように心がけたいと思います.

コメントを残す

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <img localsrc="" alt=""> <pre class="" title="" data-url=""> <span class="" title="" data-url="">