nDiki : 命名規則
命名規則 - naming convention, naming rules
コンピュータでの識別子の形式的な命名規則としては、先頭を大文字にした単語を連結する CamelCase や、アンダースコアで単語を連結する方法がある。
アンダースコア派
GNU Coding Standards
GNU Coding Standardsでは iCantReadThis と(CamelCase は読みづらいと)述べ、アンダースコアで連結する方法を推奨している。
CamelCase よりもアンダースコアで連結する形式の方が(特に英語がネイティブでない人にとって)読み易いとしている。 また、全て大文字である単語であってもアンダースコアで連結する方法は首尾一貫している事を述べている。
Perl
Perl style guide では、アンダースコアで単語を連結する方法を採用している(パッケージ名を除く)。
プライベートな名前
Java
Code Conventions For The Java Programming Language では特に決まりなし。
ちなみにアンダースコアで始まる変数名は 「9. Naming Conventions」 で禁止している。
Perl
Perl style guide ではアンダースコアで始まる変数や関数はパッケージ内で使用するものとすることを推奨している。 Private モジュールを使用すると、実行時にこれらを隠すことができる。
スポンサード リンク
Related term
Naney インデント幅 ファイル名 Naney Coding Standards Naney Java Coding Standards Naney Perl Coding Standards C++ 検索 Naney メソッド命名規則 チェックリスト NEWS ChangeLog インストール アクセサ Google C++ コーディング規約 インストーラ ビルド バージョン番号 perltidy Naney ディレクトリ命名規則 メモ Naney 変数命名規則 Perl モジュールの作り方 C# Naney C++ Coding Standards Module::Install charset DoctorJ h2xs
2000年11月6日 (月)
■ 計算機の名前を選ぶには……

新しくコンピュータを手にいれて Linux をインストールする中で、時間がかかる作業は、
だ。少なくとも私の場合。 結局一旦決めたら変えない事が多いので、やはり最初かなり悩む。 まあ、へなちょこな名前で落ちつく事の方が多いのだが。
そんなときには、ちょっと古いけど RFC1178。 先週他の RFC 調べていた時に日本語訳が目についたのでチェック。
読んでも名前は決められないけれど、少なくとも悪い名前は避けやすくなるだろう。
- RFC1178 日本語訳 中里 武志氏による邦訳。
@ 追記
RFC2100 'The Naming of Hosts' というのもあり。
- 冗談RFC O.K.U.氏のページ。
2001年7月2日追記。 中里 武志氏による邦訳の URL を http://www.nn.iij4u.or.jp/... から、http://www.goto.info.kanagawa-u.ac.jp/... に変更。
[ 命名規則 ]
- 今日のさえずり - 勢いあまって NCSA Mosaic 3.0 for ... (2007-11-08)
- 今日のさえずり - GDrive ずっと待っています (2009-02-26)
- Evernote 使用開始 (2009-03-03)
- 今日のさえずり - ミニパトに男性警官が乗っているとガッカリする (2009-11-26)
- フォト イメージング エキスポ 2005 (2005-03-18)
2005年10月10日 (月)
■ [ WiKicker ] WRI まわりの整理

WRIに関して、private method、protected method がごちゃごちゃしてわかりにくくなってきたので整理。
今まではプライベートメソッドも、プロテクトメソッドも
_private_method
のようにアンダースコアをつけていたのだがこれだと区別しにくい。 プライベートメソッドについては、
__private_method
のように、__ を前置するようにした。 区別は容易になるが、コードが繁雑になるのが問題。
[ 命名規則 ]
- [ WiKicker ] WiKicker へ脚注機能追加 (2004-02-10)
- [ WiKicker ] 複数のキーワード集合による、AutomaticLink (2004-02-07)
- WiKicker に Flickr 関連機能追加 (2005-02-11)
- [ WiKicker ] SpeedyCGI (2003-10-17)
- [ WiKicker ] CGI.pm の依存度減らし (2004-05-15)
2009年8月20日 (木)
■ アクセサは foo と set_foo にしたい

オブジェクト指向プログラミングではほとんどの場合に必要となるアクセサについては命名規則にいくつかのパターンがある。
- 属性名に対して getter に get (get_)、setter に set (set_) をプレフィックスとしてつける。
- getter も setter も同じ名前とし属性名にする。
- setter のみ set (set_) を属性名にプレフィックスとしてつける。
1 番目は Java プログラミングでよく使われる。 またそれ以外でも広く使われている形式だ。 get と set 命名規則的に対になっていて規則的には美しい。 getter と setter を別々に検索するのも用意だし、プログラミング時にも誤解を招きにくい。
ただし例えば x、y、z のような短い名前の属性の取得の場合 obj->get_x などと、うるさい感じになってしまう。また obj->get_foo->get_var なども obj->foo->var などに比べてすっきり感がない。
2 番目は Perl でよく使われる。C# のプロパティへのアクセサは getter と setter が同じ名前になる。 呼び出し側ではコードが短くなりすっきりする。
ただし Perl の場合は引数の数を動的にチェックするために効率が若干犠牲になるのと、setter の機能が無いアクセサに引数を渡してもエラーにならないため見逃しやすいバグが潜んでしまう可能性があるなどの問題もある。Perl ベストプラクティスではこの形式ではなく1番目の形式を勧めている。
3 番目はあまり多くないかな。 getter に get がついていると個人的には重い印象を感じる。 getter を属性名だけにすることですっきりするとともに、setter は set_ と動詞がつくことでオブジェクトに働きかけるという印象を残すことができる。
命名規則が非対称なのでちょっと気持ち悪いといえば気持ち悪い。
Google C++ スタイルガイドではこの形式を採用している。
個人的には3番目がコードの見た感じにもすっきりしていて読みやすく、また getter と setter の区別も(1番目ほどではないにせよ)つきやすいので良いのではないかと思う。 2番目もよく使っていたのだが、しばらく3番目にしてみようかと思った今日このごろ。
- 久しぶりの C++ は GNU Automake + CppUnit で (2009-03-13)
- [ WiKicker ] 無記名時のバグ修正 (2003-09-20)
- [ WiKicker ] キャッシュまわりにバグ (2004-06-05)
- assertion (2004-05-16)
- Perl v5.8.8 の CGI.pm の PATH_INFO 処理の問... (2006-07-08)
■注目キーワード
購入 買った 発売日 フリー 無料 価格 値段 作り方 選び方 使い方 方法 設定 サンプル ダウンロード 限定 在庫 予約 穴場 比較 検証 レビュー 感想 評価 評判 使用感 使ってみた 口コミ 噂 最新 MP3 動画 意味 お薦め お勧め おすすめ 便利 Blog ブログ mixi 修理 デザイン ビックカメラProcess Time: 0.024714s / load averages: 0.11, 0.09, 0.08
nDiki by WATANABE Yoshimasa (profile)
Powered by DiKicker
Base theme by Nana (for tDiary)




■ Twitter やってます。この記事が気にいったらぜひ twitter.com/Naney の follower になってください。
■ Google Buzz はよろしければ Naney の Google プロフィールからどうぞ。