クラス名・変数名に迷ったら書き込むスレ。Part5at TECH
クラス名・変数名に迷ったら書き込むスレ。Part5 - 暇つぶし2ch1:デフォルトの名無しさん
05/02/25 20:16:44
クラス名、変数名のつけ方に悩んだら書き込むスレです。

質問する人は、その変数に何を格納するのか(クラスだったらその役割)
プログラミング言語は何なのかを、それぞれ書いて、
いい変数名を思いついた人は、それに答えてあげましょう。

命名規則や設計の善し悪しについて議論するのは基本的に禁止。

>>2 英和・和英・英英など各国語辞書と翻訳サイト。
>>3 専門用語辞書、類義語(シソーラス)辞書、図形・数式・数学用語の英単語。
>>4 関連スレと、いろいろな言語規約。
>>2-10 諸事情によりリンクがずれた場合。

前スレ。
◆ネーミング倶楽部◆
URLリンク(pc3.2ch.net)
Part1
URLリンク(pc5.2ch.net)
Part2
URLリンク(pc5.2ch.net)
Part3
スレリンク(tech板)
Part4(間違って3として進行)
スレリンク(tech板)

2:デフォルトの名無しさん
05/02/25 20:18:29
英和・和英など各国語辞書と、翻訳サイト。

英和・和英辞典。
URLリンク(dictionary.goo.ne.jp)
URLリンク(eiwa.excite.co.jp)

英英辞典のリンク集。
外国語広場: 英語: オンラインで使える英英辞典 英和・和英辞典
URLリンク(www.gaikoku.info)

英語←→各国語辞典。(英語)
Dictionaries
URLリンク(www.freedict.com)

日英・英日、日中・中日翻訳。
URLリンク(www.excite.co.jp)

3:デフォルトの名無しさん
05/02/25 20:19:17
専門語、類語辞書。

専門語辞書参照サービス
URLリンク(wwwd.nova.co.jp)

シソーラス(類語)検索
URLリンク(www.gengokk.co.jp)
Thesaurus - Yahoo! Reference (英語)
URLリンク(education.yahoo.com)


図形や数式などの英単語。

すうがく探検隊・数式と図形の英語
URLリンク(i.lekton.co.jp)
リスコレ No.24 図形の名前を英語で……
URLリンク(homepage1.nifty.com)

4:デフォルトの名無しさん
05/02/25 20:20:30
関連スレ。

変数名って、どの位こだわりますか?
URLリンク(pc.2ch.net)
ローマ字変数を使う奴は馬鹿
スレリンク(prog板)l50
ゲーム内で使う長い変数を縮めてあげるスレ
スレリンク(gamedev板)l50
★★★コーディングマナー★★★
スレリンク(tech板)l50
ちょっと待て!ハンガリアン
スレリンク(tech板)l50
Cのマナーいろいろ
スレリンク(tech板)l50
Cのマナー
スレリンク(prog板)l50
バカなコーディング規約
URLリンク(pc.2ch.net)


いろいろな言語規約。

Hungarian Notation(英語)
URLリンク(msdn.microsoft.com)

Java言語規定。6.8 名前付け規約
URLリンク(www.y-adagio.com)

5:デフォルトの名無しさん
05/02/25 20:21:23
備考

翻訳に役立つGoogle活用テクニック
URLリンク(www.amazon.co.jp)

6:デフォルトの名無しさん
05/02/25 20:23:30
以上。
リンク切れ等あればご容赦頂くとともにご指摘下さい。

7:デフォルトの名無しさん
05/02/25 20:34:23
Part4じゃないの?

8:デフォルトの名無しさん
05/02/26 11:54:06
>>1よめ

9:デフォルトの名無しさん
05/03/03 08:19:59
ある処理が完了したかどうかをあらわす関数に名前をつけようと思っているのですが、
isCompletedとisCompleteのどっちがいいでしょうかね。
どっちが文法的に合ってますか?

10:デフォルトの名無しさん
05/03/03 09:38:38
>>1におつかれとささやくクラス名は、何がよろしいでしょうか?

11:デフォルトの名無しさん
05/03/03 09:45:33
ツリー構造で、親のパラメータを変更するだけのノードのクラス名は、何がよろしいでしょうか?
できれば、英単語一個でおねがいします。



12:デフォルトの名無しさん
05/03/03 15:56:35
>>9
完了したなら完了形にすればいいだろ

13:デフォルトの名無しさん
05/03/03 18:09:59
ファイルポインタを2つも3つも宣言する時、
ひとつ目を fp にしてしまうと、次が続きません。かと言って、どういう風にネーミングすべきか
思いつかないです。

14:デフォルトの名無しさん
05/03/03 18:13:31
何のファイルかが分かるようにしたら

15:デフォルトの名無しさん
05/03/03 18:15:20
fp1
fp2
fp3

か、

fp_mona
fp_morara
fp_giko
fp_sixi
fp_hiroyuki


16:デフォルトの名無しさん
05/03/03 18:16:15
>>13
alter
changer


17:16
05/03/03 18:18:35
×>>13
>>11

18:デフォルトの名無しさん
05/03/03 18:18:58
f_a_txt
fp_a_txt
fPa_txt

案外見やすいかもしれないですね うーん・・・

19:デフォルトの名無しさん
05/03/03 22:04:30
fp1, fp2よりは配列を使った方がマシだと思う。

20:デフォルトの名無しさん
05/03/04 00:50:14
添字が全部定数なら配列にする意味なし

21:デフォルトの名無しさん
05/03/04 02:59:12
>>9
Owaringでいいだろ

22:デフォルトの名無しさん
05/03/05 00:02:15
それなわOwarriedの方が

23:デフォルトの名無しさん
05/03/06 05:15:22
shine

24:デフォルトの名無しさん
05/03/06 13:23:05
>>23
社員?

25:デフォルトの名無しさん
05/03/06 14:04:42
>>24
社員って何のことか分からないけど、
「輝け」って言いたいんだよ。…きっと。

26:デフォルトの名無しさん
05/03/06 17:19:27
C++でmp3などの音楽ファイルを再生する
audioPlayerというクラス(audioPlayer.h)を作ったのですが、
C言語のみをサポートしている環境でも使えるようにとラッパーをかまして
Cからも呼べるようにしました。
そのファイル名が思い浮かばなくて・・。

27:デフォルトの名無しさん
05/03/06 17:31:56
>>26
C++版をaudioPlayer.hppにしてC版をaudioPlayer.hにすればいいだろう。

28:デフォルトの名無しさん
05/03/06 17:38:03
ifdefで区切って同一ファイルに突っ込んだら

29:デフォルトの名無しさん
05/03/06 17:54:13
26です。
27さん、28さんありがとうございます。

残念なのですがコーディングルールで
ヘッダファイルはxxx.h にしないとならないので
ファイル名を変えないといけなくて。。

今のところ、Cからしか使われないので、
そちらをメイン?にして、audioPlayer.h
C++版のヘッダファイル(及びクラス名)は audioPlayerMain.h
としているのですが、へんだなと。。

28さん、なるほどその方法もあるのですね。

30:デフォルトの名無しさん
05/03/09 19:24:55
言語Java。

XMLで書いた定義からJToolBar/JMenuBar/JPopupMenuを生成する
クラスToolBarBuilder/MenuBarBuilder/PopupMenuBuilderがあります。
これらのスーパークラス名を考えてください。

MenuBuilderは普通にJMenuを作るクラスと誤解してしまうので避けたいです。


31:デフォルトの名無しさん
05/03/09 20:13:57
自作IDEでも作る気かな?
JConponentMLとかじゃダメ?
データ=JConponentならそれでいい気がする


32:デフォルトの名無しさん
05/03/09 20:37:10
hoge

foo bar

pin pon pan

33:デフォルトの名無しさん
05/03/09 21:31:56
IDEというよりアプリケーションのフレームワークですね(ありがち)。

あらゆるComponentにそういう定義ファイルを用意する気はないのですが、
ひとまず、ComponentBuilderとしてみます。


34:デフォルトの名無しさん
05/03/10 21:55:25
英語力に乏しくてすみません。

とある値を記憶し、格納する処理を put と名付けました。
引き出す時、なんて名前付けたらいいのか分かりません。

put の逆の言葉とかあります?



35:デフォルトの名無しさん
05/03/10 22:18:43
どっかにそれらの対応が載ってるページがあったな・・・
push/popとかcreate/destroyとか。

36:デフォルトの名無しさん
05/03/10 22:19:34
ぬるぽ/ガッ

37:デフォルトの名無しさん
05/03/10 22:22:42
get/put
load/store
start/select

38:デフォルトの名無しさん
05/03/10 22:24:58
>>37
俺の中ではget/setなんだが。

39:デフォルトの名無しさん
05/03/10 22:26:24
BASICer的にはGET/PUTだべ。

40:デフォルトの名無しさん
05/03/10 22:26:36
と思ったけどgetchar/putcharとか忘れていた。 ○| ̄|_

41:デフォルトの名無しさん
05/03/10 23:07:53
put自体使わない。

設定-取得-削除
set-get-remove:単数
add-get-delete:複数

42:デフォルトの名無しさん
05/03/10 23:09:38
置くでPUTなら取るでTAKEというのはどうか?

43:デフォルトの名無しさん
05/03/10 23:15:30
removeって取り除くだぞ
なんで単数なんだよ

44:デフォルトの名無しさん
05/03/10 23:25:11
>>43
コールバック用のオブジェクトを登録する場合なんかに
登録するオブジェクトが一つだけの場合、setで設定し
てremoveで解除。
複数のオブジェクトを登録できる場合は、addで登録し
てdeleteで解除という風に使ってる。

他にお勧めがあればぜひ教えてほしい。

45:44
05/03/10 23:26:04
ちょっと訂正
×:登録するオブジェクトが
○:登録できるオブジェクトが

46:デフォルトの名無しさん
05/03/10 23:29:34
設定 set
取得 get
変換して取得 to
後片付け destroy, close

コレクションするなら以下を加える
追加 add
除去 remove
全除去 clear

Javaは統一されてて勉強になるぞ

47:デフォルトの名無しさん
05/03/10 23:32:37
>>44
単数なら attach/detach とか。

48:デフォルトの名無しさん
05/03/10 23:33:37
>>46
て事は、「コールバック用のオブジェクトを登録する場合なんかに
登録できるオブジェクトが一つだけの場合」、setで登録してclear
で解除するのが一般的?

49:デフォルトの名無しさん
05/03/10 23:37:01
>>47
なるほど、文字数的にも合うし、それもいいな。

attachHogeEvent、detachHogeEvent
attachHogeListener、detachHogeListener
attachHogeObserver、detachHogeObserver

うん、違和感はない感じ。

50:デフォルトの名無しさん
05/03/10 23:38:29
単数なら
setHoge(data), resetHoge()
複数なら
addHoge(obj), setHoge(key, data), clearHoge(), removeHoge(key)

登録というか引っ掛ける・外すという関係なら>>47じゃない?

51:デフォルトの名無しさん
05/03/10 23:40:55
>>50
引っ掛けるだと hook/unhook じゃない?

52:デフォルトの名無しさん
05/03/10 23:43:40
hookってプログラム的に聞かないな
switchに対するselectみたいな印象

53:デフォルトの名無しさん
05/03/10 23:43:41
addとdeleteを対にするのはDelphiな人?
確かDelphiのTStringがadd-deleteだったと思う。
Javaはadd-removeなんだね。

54:デフォルトの名無しさん
05/03/10 23:49:16
C++だって複数の参照外しはdelete[]だったと思うよ
[]を付けるってことはdeleteそのものは単数だ

FlashのActionScriptのdeleteは配列を丸ごと消すけど
実は配列=Arrayオブジェクトだから、暗黙のデストラクトで処理してることが分かる

55:デフォルトの名無しさん
05/03/10 23:51:46
DelphiのVCLでは、
Addで末尾に追加、
Insertでインデックス指定して挿入、
Deleteはインデックス指定して削除、
Removeは値とかインスタンスを渡して、勝手に探索して削除してくれる。
Clearで全削除。

という感じで統一になってるみたい。

56:デフォルトの名無しさん
05/03/10 23:53:41
>>52
グローバルフックとかで使ってる。
割り込む感じ?

57:デフォルトの名無しさん
05/03/10 23:58:05
>>55
そうすると、add-remove、insert-deleteの関係だね。
add-deleteの関係は考え直す事にするorz

58:デフォルトの名無しさん
05/03/11 00:07:49
FlashのActionScriptだとattachはあるけどdetachはないんだよな
attachしたやつが自分でremoveしなきゃいけない
removeって普通オブジェクトを破棄しちゃ行けないから、何か腑に落ちない

59:デフォルトの名無しさん
05/03/11 01:02:07
ぢゃばの場合、
Collection風味だとadd/removeだが、
Map風味(キーと値のペア)だと
put/get (JComponent.put/getClientPropertyとかPreferencesとか)だなぁ。


60:デフォルトの名無しさん
05/03/11 02:59:48
こんなの見つけた。
URLリンク(homepage1.nifty.com)

引用するとこんな感じ。
add/remove begin/end create/destroy
insert/delete first/last get/release
put/get up/down lock/unlock
min/max next/previous old/new
open/close show/hide source/destination
source/target start/stop


61:34
05/03/11 04:36:47
すんません、いきなりあんな時間に「仕事すれ」とか電話かかってきて、
今レス確認しました。

おおいに参考にさせてもらいます。ありが㌧

62:デフォルトの名無しさん
05/03/11 08:50:18
>>34
例えば、java.nio.ByteBuffer などのクラスには put と get のメソッドがあります。

63:デフォルトの名無しさん
05/03/11 10:48:08
#define XXX_TYPE_WITH_FRAMESHIFT_COMPRESSION 0x0123
#define XXX_TYPE_WITH_HUFFMAN_OR_BWT 0x4567
#define XXX_TYPE_WITH_COLOR_DEPTH_OTHER_THAN_8 0x8901

これもっと短くなりませんか?

64:デフォルトの名無しさん
05/03/11 13:29:57
>>63
それでいいんじゃない。
長くて入力するのが大変という問題は
dabbrev みたいな仕組みのあるエディタを使うべき。

65:デフォルトの名無しさん
05/03/11 15:30:42
そうだそうだ
メモ帳から卒業しろ

66:Rubyist!
05/03/11 15:42:17
メモ帳ってのはどこから出てきたのだろう。
阿呆の考えることはよく分からんな。

67:デフォルトの名無しさん
05/03/11 15:59:20
だからよぉ…叩きたいときはネタ持って来いっつってんだろうが
何度も言わせんなよ無能新参


68:デフォルトの名無しさん
05/03/11 17:44:36
>>63
コーディングの時は適当に丸めておいて後でリファクタリング。

69:デフォルトの名無しさん
05/03/11 18:51:22
プッ

70:デフォルトの名無しさん
05/03/11 18:55:01
>>68
いいこといった。

71:デフォルトの名無しさん
05/03/11 19:04:33
Javaです。

BufferedReader に似たクラスを作ったのですが、なんと言う名前にしたらいいか…。
あと、文中に出てくるメソッドの名前についても、アドバイス頂きたく。

以下、このクラスの説明。

コンストラクタのパラメータとして、InputStream を取ります。

BufferedReader と同じように、「一行読み込む」というメソッドがあります。
戻り値は String ではなく byte[] です。このメソッドは、BufferedReader と同じように、
ストリームから「CR」か「LF」か「CRLF」のどれかが出てくるを探して、その改行文字
も含んだ byte の配列を一行として返してくれます。(異なる種類の改行文字が混在
しているストリームを、勝手に変換することなく読み取れる。)

Encoding を使った変換は一切しません。
(だから「Reader」って名前は使わないほうがいいような気はする。)

72:デフォルトの名無しさん
05/03/11 19:08:07
そのクラスはInputStreamとして扱えるの?
(=Decolatorパターンを崩さない)

それによって名前も変わりそうな気がする。


73:デフォルトの名無しさん
05/03/11 19:18:11
>>72

今のところは InputStream として扱える実装ではないですが、
たしかにそうしておくべきですね。

今のところ extends 節は無いし(=extends java.lang.Object )
extends InputStream することも簡単そうなので、既にこのクラスが
InputStream の一種であるという前提で考えていただけたらありがたいです。


74:デフォルトの名無しさん
05/03/11 23:28:00
LineSplitter
LineOrientedInputStream
LineBreakAwareInputStream

長いかなぁ。


75:デフォルトの名無しさん
05/03/12 02:50:29
デリミタに改行以外を指定できるようにすればすっきりする希ガス

76:デフォルトの名無しさん
05/03/13 14:36:50
LinewiseInputStream

-wise って、「~に関して」「~の方向で」みたいな、
なんかOrientedと同じような雰囲気だから・・・どぉ?

77:デフォルトの名無しさん
05/03/14 01:26:00
>>74
>>75
>>76
たくさん候補を頂きましてありがとうござます。

>>75 さんの案のような一般化はすごく興味がありますが、「私がやりたかったこと」
のレベルを遥かに超えてしまいますので >>76 さんの案、LinewiseInputStream に決めました。

>>74 さんの案の中では、LineOriented が気に入りました。
「LineSplitter」は、個人的には、ストリームを全部読んで、行の配列を返してくれそうな感じがした。

あと、>>73 で私、InputStream の下位クラスにするべきであると書きましたが、
厳密には、FilterInputStream の直接的下位クラスにするべき事を発見。
BufferedInputStream もそうなってるし。

ということで、こうなりました。
InputStream <--- FilterInputStream <--- LinewiseInputStream

ありがとうーみんな。

78:デフォルトの名無しさん
05/03/18 02:45:24
特定のファイルをXML・HTML変換するために、
パラメータファイルを生成メソッドがあります。

// XML変換用メソッド
createParameterFileOfXML()

// HTML変換用メソッド
createParameterFileOfHTML()

上記のように命名しましたが、
長すぎてやる気がなくなります。
しっくりくる命名をお願いいたします。

ただし、設計が悪いとか、createParamFileOfXML()などのように、
単純に略しただけの命名はご勘弁下さい。

79:デフォルトの名無しさん
05/03/18 04:10:55
{ save, make, generate, create, output, write } +
{ paramaters, settings, configuration, paramaterFile, arguments } +
{ for, of, as } +
{ XML, HTML }

saveParamatersForXML とか

つーか後でリファクタリングってのはどうなの?

80:デフォルトの名無しさん
05/03/18 04:35:22
>>78
戻り値はStringとかStream?
makeConfigOf(ConfigType.XML)
makeConfigOfXML
makeProfileOf(ProfileType.XML)
makeProfileOfXML

XMLだけ出力してXSLT使えば迷わんのにね。

81:78
05/03/18 09:15:34
>>79 >>80
レスthx。

戻り値はvoid、もしくはbooleanです。
説明不足で申し訳ないのですが、
XML・HTMLを生成するのではなく、
XML・HTMLを作るためのプログラムへの引数パラメータファイルを生成します。
感覚的にはjava.io.File#createNewFile()に近いような気がします。

82:デフォルトの名無しさん
05/03/18 15:18:39
兄貴たちに質問、C言語です。

キュー(先入れ先出し)を操作する関数について、
QueueIn
QueueOut
の2つを、動詞もしくは動詞から始まる名前にしたいと思います。

いくつかの資料を見たのですが、見事に QueueIn / Out ばかり… orz
直訳すれば、Do~なんですが何となくカッコ悪い気もします。
push/popはスタック操作っぽいですし。

データ自体はアドレス渡しでやり取りし、
関数の返り値はエラーチェック用を想定しています。


83:デフォルトの名無しさん
05/03/18 15:29:31
キューもpush/popっていうだろ

84:デフォルトの名無しさん
05/03/18 15:36:38
enqueue/dequeue かな

85:デフォルトの名無しさん
05/03/18 16:09:51
Perl だと、

  unshift → ARRAY → pop
  shift ← ARRAY ← push

です。

  @arr = ("abc", "def", "ghi");
  print shift @arr;

ってやると、abc が表示される。

ご参考まで。

86:デフォルトの名無しさん
05/03/18 16:14:38
>>84
それだ!

87:デフォルトの名無しさん
05/03/18 16:54:36
Obaqueue/Ojirou

88:デフォルトの名無しさん
05/03/18 18:29:07
>>87
それだ!

89:デフォルトの名無しさん
05/03/18 23:06:55
>>81
createの戻り値は基本的にクラスや構造体参照などの、メモリ上の実体を返すものだよ。

> プログラムへの引数パラメータファイルを生成します。
コマンドラインパラメータ?
makeOrder(Of)XML order from 注文書
makeIndent(Of)XML indent 注文書(英)


90:デフォルトの名無しさん
05/03/19 12:31:47
>>87
オブジェクトの消滅はDorompaだな?

91:デフォルトの名無しさん
05/03/19 12:37:39
>>89
やりたいことは、

c:\>foo.exe file.prm
      ~~~~~~~~
上記の、file.prmというファイルを生成することです。
やはりインスタンスなど返さない場合は、createではなくmakeを使うべきなのでしょうか。
説明が不十分ですいません。

92:デフォルトの名無しさん
05/03/20 13:50:53
客がそうしろって言ってるんじゃない。
お前の好みで選べ。

93:デフォルトの名無しさん
05/03/20 16:22:15
>>91
file.prmの仕様がよくわからない
XMLやHTMLに変換するための元データは一緒に渡さないの?
file.prmの中に一緒にデータが混ざってるならそれこそ設計が・・ってなる

元データ+スタイル書式で整形するなら
makeStyleOfXMLとか、makeProfileOfXMLとかさ

94:デフォルトの名無しさん
05/03/21 09:35:02
何ていうか、ある仕事頼まれたんだけど、
char a = 'b';
char b = 'c';
char c = 'a';
みたいなプログラムソースになってて発狂しそうだったから、
char a = 'a';
char b = 'b';
char c = 'c';
になるように頑張って直してたら、
おまえ何でそんな 「 ど う で も い い こ と 」 に労力かけるんだ?
そんなことしてたら時間ばっかりかかって儲からないだろ。利益を追求しる!
なんて上司に言われちゃって、プログラマの端くれとして抵抗した方がいいのか
素直に従った方が良いのか迷ってます。


95:デフォルトの名無しさん
05/03/21 09:38:54
>>94
char_a char_b char_bとかのがよくなくない?
保守考えろやカスって言っとけ

96:デフォルトの名無しさん
05/03/21 10:25:21
リファクタリングってやつですな。

97:デフォルトの名無しさん
05/03/21 18:10:36
>>94
つまり時間掛けて直してる所に文句いってんじゃないの?
頑張って直すって、数分で終わる作業だろうに。
きっとさぼってると認識したんだよ。

98:94
05/03/21 20:43:39
>>97
いえ、あそこに挙げたのはあくまで例でして、
実際はもっとひどい状況なんでつ。 つ'д`)


99:デフォルトの名無しさん
05/03/21 21:38:07
>>98
まぁでも、納期が近いならそんなことをするよりは
先に必要な部分を優先させるべきだわな
リファクタリングはまた別の機会にでも。。

100:デフォルトの名無しさん
05/03/21 21:45:31
char a = 'b';
char b = 'c';
char c = 'a';

char a = 'a';
char b = 'b';
char c = 'c';
に変更することは「リファクタリング」とは呼ばない気がするのは私だけ?
(あきらかに挙動変わるんじゃない?)

101:デフォルトの名無しさん
05/03/21 21:47:13
a,b,cの使われ方込みできっちりリネームしてればリファクタリング。
単にa,b,cの中身を変更しただけならリファクタリングじゃない。
つうかスレ違い。

102:デフォルトの名無しさん
05/03/22 18:36:30
>>94
こんなゴミみたいなコードを書いたのは貴様か、と問い詰めてやれ

103:デフォルトの名無しさん
05/03/22 18:51:40
STL の vector の拡張として、状態を保持しておいて、
必要なときに状態を元に戻せるものを作りたいのですが
どんな名前がいいでしょか。
状態の保持には store、元に戻すときには restore としていますが、
これについてもいい名前があったら教えてください。

xx_vector<int> v;

v.push_back(1);
v.push_back(5);

v.store(); //{1,5}の状態を保持

v.push_back(2);
v.push_back(3);

v.restore(); //{1,5}に戻す

104:デフォルトの名無しさん
05/03/22 19:37:49
Mementoパターンの出番のような気がするけど、
それはこのスレ的には禁句なので……

storable_vectorとかでいいんじゃないのかなー。

# 2回storeしたらrestore時に何回目の状態に戻るんだろう。

105:103
05/03/23 03:44:48
とりあえず storable_vector でいってみます。

Mementoパターンについても考慮してみますですよ。ありがとです。

# restoreすると、最後にstoreしたときの状態に戻る、って設計です。
 今のところそれで十分なので。

106:デフォルトの名無しさん
05/03/23 18:20:42
遅レスだが、俺なら save/restore を使う

107:デフォルトの名無しさん
05/03/23 18:21:31
スマン、あげちまった

108:103
05/03/24 06:10:21
自分的には save - load で対なイメージがあります・・

109:デフォルトの名無しさん
05/03/24 07:35:24
>>103
漏れもstore/restoreかな。

でもエディタみたいにredoコマンド相当も作る気なら、
store/undo/redoかな。
エディタのstoreは暗黙的だから>>103の用途とは違うかもしれないけど。

110:106
05/03/24 10:53:42
>>108
自分的には load <-> store が対なイメージです
機械語見てるときはほとんどこれ
ゲームやってる時は save <-> load だが...
ただ、状態を保持する、っていう意味ではsaveが一番近いとは思う



111:デフォルトの名無しさん
05/03/24 11:00:37
機械語のload <-> storeはレジスタと記憶装置の関係だからこそあってるんだと思う



112:デフォルトの名無しさん
05/03/24 11:40:34
>>111
確かにその通りですね。
ただ真っ先にピンと来てしまうのがこれだったもので...
失礼しました
ちなみにスタックの反対語をヒープと言ってしまうようなダメ人間です

113:デフォルトの名無しさん
05/03/27 00:32:30
bool callBack(int a, int b);

時間のかかる処理にこのコールバック関数を呼び出してもらい進捗状況をa/bでパーセント表示します。
aは0からbまで増えていきます。
a, bの名前はどうすればいいでしょうか?

114:デフォルトの名無しさん
05/03/27 00:45:55
Progress / ProgressMax

115:デフォルトの名無しさん
05/03/27 02:27:14
current*** / max***

116:デフォルトの名無しさん
05/03/29 16:06:39
UltraSuperNantokaKantokaHogeというモノ(クラスとは限らない)があった時に、
これにFooという処理をするクラスを命名したいのですが、
UltraSuperNantokaKantokaHogeFooerなどとすると凄い長いですよね
USNKHFooerなどとすべきでしょうか?
言語はJavaです

117:デフォルトの名無しさん
05/03/29 16:16:40
>>116

アホくさ。それでいうならFooerでいいじゃん。
Javaなら引数型で暗に処理する対象を示せるからなおさら。

118:デフォルトの名無しさん
05/03/29 16:26:30
>>116

UltraSuperNantokaKantokaHoge に関する全てを、
それ用のパッケージに隔離したら?

そしたら、パッケージの中では短い名前でいけるでしょ?

119:デフォルトの名無しさん
05/03/30 00:29:02
テキストの本文 FTextBody と同じ長さの配列を作り、
この文字は太字だ、打ち消しだ、
ルビの先端だなどといった属性を格納したいのですが、
よい名前が思いつきません。
言語は Delphi です。
よかったらどなたか意見ください。


120:デフォルトの名無しさん
05/03/30 00:36:34
CharactorAttribute

121:デフォルトの名無しさん
05/03/30 00:48:47
>>120
ありがとうございます!それでいきます。
すっきりして先に進めそうです。

122:デフォルトの名無しさん
05/03/30 02:20:12
charactErじゃないか?


123:デフォルトの名無しさん
05/03/30 11:39:50
TextAttributesとかでもよかったんじゃないかな
CharacterじゃなくてCharactersが対象なんだし

124:デフォルトの名無しさん
05/03/30 19:30:58
いや、配列を作る、と書いてるから、
char 配列に対応する形で、書式の配列を作るってことで、
聞いてるのは書式の配列の要素の型の名前でしょ。

125:デフォルトの名無しさん
05/04/05 00:03:05
Delphi でシミュレーションゲーム作ってるんですが、
Character (ゲーム内のキャラクタークラス)のメソッドで、

isHOGE(Character) : bool
指定したキャラクターが、仲間なら True を返す

isHUGE(Character) : bool
指定したキャラクターが、敵なら True を返す

のそれぞれ HOGE と HUGE に、いい名前ないですか?

126:デフォルトの名無しさん
05/04/05 00:04:52
>>125
Friend
Enemy

127:デフォルトの名無しさん
05/04/05 15:25:31
>>125
isHOGEとisHUGEはどっちか1つあればいいような……。
敵でもあり味方でもあるキャラクターが存在するのならともかく。

128:デフォルトの名無しさん
05/04/05 15:56:17
>>127
どちらにも属さない、「村人」的なキャラクターがあるのかも知れない。

129:デフォルトの名無しさん
05/04/05 16:02:03
GetType()で仲間/敵/村人/屍を返せばよろし。

130:デフォルトの名無しさん
05/04/05 16:25:33
>>129
屍は返事をしないけどな。

131:デフォルトの名無しさん
05/04/05 16:49:39
しかし壁に落書きを見つけた!

132:デフォルトの名無しさん
05/04/05 17:16:03
>>125
Party/Enemyとか。

133:デフォルトの名無しさん
05/04/05 17:42:26
>>132
Partyは違うべ。

134:デフォルトの名無しさん
05/04/05 18:00:06
>>133
URLリンク(www2.alc.co.jp)

135:デフォルトの名無しさん
05/04/05 18:14:50
>>134
そのページをよく嫁。
partyは組織全体を指してもその一員であることを意味しない。

敵か味方かという判別なら>>126のFriend/Enemyのほうが適切。

136:デフォルトの名無しさん
05/04/05 18:36:04
辞書引き代行スレはここですか?

137:デフォルトの名無しさん
05/04/05 19:27:17
PartyとParty Memberの違いなんだが、
たぶん134は分かっていないと思う。


138:125
05/04/05 21:00:02
皆様ご意見ありがとうございました。

やはり対義語が理想という事で、>>126 の案をお借りしたいと思います。
敵が Enemy というのはすぐに思いついたのですが、
仲間をどう訳せばよいものか、悩んでいました。Friend は妙案ですね。

仰る通り、敵でも味方でもない、中立キャラクターもいたので
このようなメソッドを考えたのですが、>>129 のような方法もありですね。

139:デフォルトの名無しさん
05/04/06 07:47:38
friendは妙案つーか、friend - enemy は普通の対義語だ

140:デフォルトの名無しさん
05/04/07 00:29:39
対義語がすぐわかるサイトない?

141:デフォルトの名無しさん
05/04/07 00:45:41
ここは?
URLリンク(www.synonym.com)

142:デフォルトの名無しさん
05/04/07 00:49:43
URLリンク(dictionary.reference.com)
URLリンク(dictionary.reference.com)


143:デフォルトの名無しさん
05/04/07 00:59:47
文字数や要素数のような「~の数」はどう表せばいいですか?
「NumberOf...」だとなんだか冗長。

144:デフォルトの名無しさん
05/04/07 01:17:40
文字数ならLength、要素数ならCountだなぁ。(Delphi)
Java だと両方 length だね。C++ だと size とかもある。

あと、HogeOfHuge っていう名前は
HugeHoge でわかる場合が多いと思う。名詞の場合。

145:デフォルトの名無しさん
05/04/07 01:31:35
言語とかコーディング規約によるけど、nHugaってのもあるな

146:デフォルトの名無しさん
05/04/07 03:20:13
行頭禁則文字、行末禁則文字の配列について、
何か良い案、ないでしょうか?
すっきり短くまとめたいのですが。

147:デフォルトの名無しさん
05/04/07 03:34:21
ご参考に。

「Understanding Japanese Information Processing」の 目次。
URLリンク(www.oreilly.com)

6-8 Characters Prohibited From Beginning Lines
6-9 Characters Prohibited From Terminating Lines



148:デフォルトの名無しさん
05/04/07 03:51:14
>>147
なるほど、英語ではそう表現すればいいんですね。
現在テキストリーダーを作成中なので、
リンク先はこれからも役に立ちそうです。
夜分遅くに、ぴったりの情報をありがとうございました!

149:デフォルトの名無しさん
05/04/07 10:35:02
>>143 num_characters, num_elements, num_~s を慣用句としている。

150:デフォルトの名無しさん
05/04/07 10:43:23
nnz(Number of Non-Zeros)とか慣用句みたいのもあるね


151:デフォルトの名無しさん
05/04/07 11:29:37
>>143

文字数は length かな。
要素数は elements にしてます。

elements は (number_of_) を省略してるんだけど、要素全部を指しそうで、
ちょっとキモい? と思いつつ。

>>144
あぁ Java は両方 length でしたっけ。これはこれでスッキリするかしら?


152:デフォルトの名無しさん
05/04/07 12:43:41
elements は要素そのものをあらわす hash だったり array だったりするから
要素数を elements とするのはかなり抵抗ある

hoge.elements['abc'] とか
hoge.elements[2] とか



153:デフォルトの名無しさん
05/04/07 15:03:02
Javaでは、

配列は ary.length (メソッドではない)
文字列は str.length(), str.codePointCount() (用途による)
コレクションは col.size()

などとなっているな。

他のクラスだと、getXxxCount() というのが多いような気がする。
(Container#getComponentCount()みたいな)ので、そういうときは
xxxCount みたいな名前にするのがいいかも。


154:デフォルトの名無しさん
05/04/12 01:04:48
WindowsのLPITEMIDLISTを引数に取り、それが最後の要素を指すなら(ITEMIDLIST::mkid::cbが0)
真を返す関数の名前はどうしたらいいでしょうか?

155:デフォルトの名無しさん
05/04/12 16:00:54
template<typename T> T* ほげほげ(T* p, int n);

上記のようなT型のポインタを取りnバイト(要素単位ではなくbyte単位で)加算したアドレスをT型で返す
という関数の名前で悩んでます。
何か良い名前はないでしょうか?

156:デフォルトの名無しさん
05/04/12 16:06:03
>155
advance_by_bytes


157:156
05/04/12 16:06:28
advance_in_bytes


158:155
05/04/12 16:11:57
>>156-157
なるほどadvanceですか。
excite翻訳でそれらしい結果が出たadvance_by_bytesで行こうと思います。
ありがとうございました。

159:デフォルトの名無しさん
05/04/13 01:42:54
advance~ だと「進める」になってしまう。
この場合は「進めた値」なので advanced~ のほうが良くないかな?

160:デフォルトの名無しさん
05/04/13 02:03:53
>159
基本的に、関数名は引数を目的語とする動詞でいいんじゃないの。

161:デフォルトの名無しさん
05/04/13 02:29:26
>>160
例えば std::advance() みたいに、目的語となった引数に副作用を残す関数ならそれでいい。

引数に作用せず、戻り値が結果である関数は名詞にすると
より自然言語に近い記述になり、プログラムが読みやすくなる。

if( size() >= 10 ) // 脳内:もしサイズが10以上なら
if( get_size() >= 10 ) // 脳内:もし、サイズを取得してその値が10以上なら

162:デフォルトの名無しさん
05/04/13 03:13:21
>if( size() >= 10 ) // 脳内:もしサイズが10以上なら
>if( get_size() >= 10 ) // 脳内:もし、サイズを取得してその値が10以上なら
やめてくれ~

163:デフォルトの名無しさん
05/04/13 03:55:49
>161
むしろstd::advance()の副作用を持つ構造がおかしいと言ってみる。
it = std::advance(it,n);
こうしなかったのはイテレータのコピーが無駄だから?

自然言語うんぬんは、それが読みやすいと言うのであれば、あとは個人の判断に任せるだけ。

164:デフォルトの名無しさん
05/04/16 13:43:37
URLから拡張子を抜き出す関数の名前はどのようにしたらよいでしょうか?
現在はgetExtです。これだとURLからというのが分からないので。

165:デフォルトの名無しさん
05/04/16 13:46:57
FromURLでもつけとれ

166:デフォルトの名無しさん
05/04/16 21:22:40
蒸し返して悪いけど
>advance_by_bytes
こんなんなら30年以上の伝統がある由緒正しい俺様省略表記の方がいいと思う。
どうせ説明されないと書いた本人以外意味わからないんだから。

俺ならもっと明示的な命名をするね。例えば
GetByteOffsettedXXPtrとか、AddOffsetToXXPtrInByteOrderとか。

っていうか>>155のような処理が必要になるケースって想像がつかないんだけど。

167:デフォルトの名無しさん
05/04/16 23:56:35
>>166
スレリンク(tech板:35番)

168:デフォルトの名無しさん
05/04/17 00:35:42
>>167
答えになってないと思うけど。。
っていうか君は構造体って概念が本当にわかっているのかと小一時間

169:デフォルトの名無しさん
05/04/17 01:36:30
>>168
あれだろ。PNGのチャンクのような構造になってんだろ。

170:デフォルトの名無しさん
05/04/17 01:37:51
ITEMIDLISTか?

171:デフォルトの名無しさん
05/04/20 00:15:37
品詞を表す英単語って何になりますか?

172:デフォルトの名無しさん
05/04/20 00:23:49
品詞
part of speech // word class

173:171
05/04/20 01:11:18
>>172
品詞で調べるとpart of speechになるのですが長いんですよね。
word classは良い感じなのですが品詞という意味になるのでしょうか?

174:デフォルトの名無しさん
05/04/20 12:14:12
>>173
w_rd cl_ss
_n. 【文法】 語類, 品詞.

175:デフォルトの名無しさん
05/04/20 20:40:43
>>174
最高でーす!

176:デフォルトの名無しさん
05/04/22 23:07:20
みんなnamespace名は迷わないのか…?
漏れはあれ考えるたび頭痛がしてくるんだが…
ちょっと長すぎるとうっとうしいし、短いと何を表してるのか分からないし

177:デフォルトの名無しさん
05/04/23 01:11:29
>>176
長いのがうっとおしい問題は、使う側でローカルに using なり別名なり選んで解決できる。
意味がわからないほうの被害が重大なので、しっかり意味がわかるようにつけるべし。

178:デフォルトの名無しさん
05/04/23 15:56:33
>>177
リョーカイ。やっぱりusingとかでやりくりするべきか。ありがとう。


179:デフォルトの名無しさん
05/04/23 23:47:03
ループカウンター用の変数に i を使ってるけど
2つ必要なときは ii とかにしてる。
極稀にどうしても同時にいくつもの変数が必要になって
iiiii とか成ってくると後から混乱する・・・・

180:デフォルトの名無しさん
05/04/24 00:07:55
>2つ必要なときは
jにしとけ

181:デフォルトの名無しさん
05/04/24 08:24:01
kまでは使ったことある。

182:デフォルトの名無しさん
05/04/24 14:09:40
なるほど j か・・・今度からそれにしよ

183:デフォルトの名無しさん
05/04/24 18:57:57
i,j,kは定石だと思ってたんだけど違うのか…

184:デフォルトの名無しさん
05/04/24 19:21:47
なぜかそこでnを使う俺。

185:デフォルトの名無しさん
05/04/24 20:52:21
i と j は見分けが付きにくいから最近 ii の方が好きになった。

186:デフォルトの名無しさん
05/04/24 21:29:20
うちでは、i、j、kではなく、c010、c020、c030を使うという規則がある。
正直、非常に気持ち悪い。
元々はC010、C020、C030だったらしんだけど、JAVAの推奨命名
規則に従って先頭が小文字化されてキモさ倍増orz

187:デフォルトの名無しさん
05/04/24 21:48:07
>>186
JAVAの推奨命名規則ではi, j, kですよ、とか適当に言えばおk。
んなわけないよな。

188:デフォルトの名無しさん
05/04/24 21:50:18
>>187
i, j, k だったような気がする。局所変数は可能ならば短い名前を使うようになってたかも。

189:デフォルトの名無しさん
05/04/24 22:41:27
2段程度ならともかく、3段以上になる場合はファンクターやクロージャー
で置き換えられないか、考えてみた方がいいと思う。

190:デフォルトの名無しさん
05/04/25 00:04:33
もしもし、皆さん、盛り上がってるとこ悪いですが

> 命名規則や設計の善し悪しについて議論するのは基本的に禁止。

191:デフォルトの名無しさん
05/04/25 15:42:38
別にいいだろ

192:デフォルトの名無しさん
05/04/25 19:38:08
なんの為のスレッド形式なんだ。と、一応言っておく。

193:デフォルトの名無しさん
05/04/28 00:13:49
頭文字だけ大文字or小文字にするメソッド名で良いやつ募集。

調べたら、

toLowerCaseInitial
toUpperCaseInitial

がありましたが…。

お願いします。

194:デフォルトの名無しさん
05/04/28 00:27:25
orz // 頭だけ小文字に
Orz // 頭だけ大文字に

195:デフォルトの名無しさん
05/04/28 00:30:45
toAaa
toaAA

196:デフォルトの名無しさん
05/04/28 00:37:02
Capitalize / Decapitalize

197:デフォルトの名無しさん
05/04/28 02:08:09
まぁ、よく見かけるのはcapitalizeだね。
逆は196にあるようにDe-か、Un-か、
結果は同じってコトでtoLowerCaseを使ってしまうか。


198:デフォルトの名無しさん
05/04/28 02:12:49
Capitalize / cAPITALIZE

199:デフォルトの名無しさん
05/04/28 11:44:22
頭文字大

200:デフォルトの名無しさん
05/04/28 12:02:14
ToBigHeadCharactor

201:デフォルトの名無しさん
05/04/28 22:00:26
bigよりlarge

202:デフォルトの名無しさん
05/04/29 15:05:00
iMacとか接頭語小文字で付けるのってハンガリアンの影響?
世間的にはiMacで馬鹿受けしたわけだが

203:デフォルトの名無しさん
05/04/29 15:40:09
>iMacとか接頭語小文字で付けるのってハンガリアンの影響?
ワロス

204:デフォルトの名無しさん
05/04/29 15:55:27
double型のプレフィックスって何にしてる?


205:デフォルトの名無しさん
05/04/29 16:27:18
double_i

206:デフォルトの名無しさん
05/04/29 17:40:11
ハンガリアンを撲滅する会を結成しました。

207:デフォルトの名無しさん
05/04/29 18:01:54
ハンガリアンを撲滅する会を撲滅する会を結成しました。

208:デフォルトの名無しさん
05/04/29 18:09:08
ハンガリアンを撲滅する会を撲滅する会を撲滅しました。

209:デフォルトの名無しさん
05/04/29 18:12:00
問1
ハンガリアンを撲滅する会はどうなったのでしょう。

210:デフォルトの名無しさん
05/04/29 18:26:53
問2
俺は童貞でしょうか

211:デフォルトの名無しさん
05/04/29 22:27:26
>>210
YES!YES!YES!YES!YES!YES!YES! OH, MY GOD!

212:デフォルトの名無しさん
05/04/29 22:32:03
メモ帳もどきをC言語+WIN32APIで作っています
そこで、以下の機能を実現するための関数の名前を考えていただきたい

新規作成
開く
上書き保存
名前を付けて保存
保存確認
HTMLソース読み込み

お願いします

213:デフォルトの名無しさん
05/04/29 22:39:40
>>212
new() open() save_as() save_check() read_html()

214:デフォルトの名無しさん
05/04/30 00:08:01
newって予約語と被らないかな?
confirm_save load_html

215:デフォルトの名無しさん
05/04/30 00:25:37
>>214
C言語なら大丈夫じゃない?

216:デフォルトの名無しさん
05/04/30 02:28:57
>>213
抜けてる

217:デフォルトの名無しさん
05/04/30 04:34:00
>209
「撲滅する会を撲滅する会」の行動結果が返ってこないうちに「撲滅する会を撲滅する会」を撲滅した場合、「撲滅する会」の状態は不定。
多分、会員全員で鼻から悪魔を出してたりするんじゃないかな。

218:デフォルトの名無しさん
05/04/30 05:10:03
オブジェクト「撲滅する会」が作成された状態。以後の行動は何も行われていない。

ほっとくと撲滅する会がメモリリーク要因になるから、スレを安定させるためには
撲滅する会をきちんと撲滅しておかなければならない。

219:デフォルトの名無しさん
05/04/30 20:49:26
>>218
お前がレスしなければGCされるはずだったのに・・・・・・
お前なんてスコープの外へ出ちゃえ!

220:218
05/05/01 01:49:40
{

}    ('A`) < メンゴ

221:デフォルトの名無しさん
05/05/01 01:53:24
ワロタ

222:デフォルトの名無しさん
05/05/01 21:01:55
鼻から悪魔フイタ

223:212
05/05/02 12:04:34
みんなありがとー

224:デフォルトの名無しさん
05/05/03 04:48:59
「相手、対象」は、どう名前つけてますか?英語で

225:デフォルトの名無しさん
05/05/03 10:16:42
dest

226:デフォルトの名無しさん
05/05/03 10:17:38
target

227:デフォルトの名無しさん
05/05/03 12:33:05
object

228:デフォルトの名無しさん
05/05/03 12:53:20
enemy

229:デフォルトの名無しさん
05/05/03 15:45:15
あとは対戦相手ならopponentとかな。

複数の候補が出たが、つまり「どういう相手」という意味かで
適切な単語は変わるということだ。どれでもいいというわけで
はないぞ。


230:デフォルトの名無しさん
05/05/03 15:48:08
partner

231:デフォルトの名無しさん
05/05/03 15:52:03
操作対象なら target か operand だろうな。


232:デフォルトの名無しさん
05/05/03 16:35:35
通信相手はpeer


233:デフォルトの名無しさん
05/05/04 17:50:25
一番近いのがTargetっぽい。
参考になりました。m(__)m
実際には別の形で組みましたが...

234:デフォルトの名無しさん
05/05/04 17:51:18
↑224

235:デフォルトの名無しさん
05/05/04 20:47:20
やってる人多いとは思うけど、順番を表す変数はxxxNo、
数を表す変数はxxxNumとかに統一してたほうがいいよ。
同じものにしちゃうと後でワケワケメよ。

236:デフォルトの名無しさん
05/05/05 01:01:02
前者をIndex、後者をCountにしているDelphi厨な俺。
Noだと、なんだかYes/NoのNoに見えて気持ち悪い(個人的に)
Numだと、略しているので気持ち悪い(個人的に)

237:デフォルトの名無しさん
05/05/05 22:08:37
マンドクセからa,b,c,dってやっちゃいける?

238:デフォルトの名無しさん
05/05/05 23:12:46
止めはしないがそのうち後悔するだろう。

239:デフォルトの名無しさん
05/05/05 23:20:59
そうなるともはや変数に名前さえいらないわけだが。

240:デフォルトの名無しさん
05/05/06 05:59:01
普段Java風に phoneBook などと名前を付けているのですが、
これにグローバル変数を表す言葉をつけたいのですが何か
いいアイディアはないですか?
g_phoneBook
g_PhoneBook
gphoneBook
gPhoneBook
↑こんなの思いついたんですが…

241:デフォルトの名無しさん
05/05/06 07:37:47
g~以上にエコロジーでわかりやすい表記はないと思うが。
っていうか言語と型名(か用途)くらい書いてくれ。

その型のグローバルな変数が1個しかないなら
PhoneBook::instance()
でもいいかと。

242:デフォルトの名無しさん
05/05/06 08:08:35
言語はC++で、phoneBook は電話帳(std::multimap)です。
メンバだと phoneBook_ みたいにスタイルを崩さずに
書けるんだけど、グローバル変数だとgのプリフィクス
だけで上の四つのパターンが思い浮かんで、どれが
いいものかと…。

243:デフォルトの名無しさん
05/05/06 09:11:52
>>240のなかでは1か4だな。

244:デフォルトの名無しさん
05/05/06 14:46:10
>>240は規約の問題だと思われ。

245:デフォルトの名無しさん
05/05/07 00:21:04
なんか他人のゴミ捨て監視してる近所の変なオバサンみたいな人がいるなあ。。

別に荒らしているわけでもないわけだし、
問題なのは脱線しているかどうかってことじゃなく有意義かどうかってことだと思うんだが。
有益な脱線もダメだっていうのかなあ。

246:デフォルトの名無しさん
05/05/07 00:36:51
>>245
スレタイ付けてスレッド分けてるのは意味がないと申すか?

まぁ文句だけいって適切なスレに誘導しないのは良くないな。
規約の話なら、このへんでどうぞ。
スレリンク(tech板)

247:デフォルトの名無しさん
05/05/07 01:53:36
例え有益な情報でも、分散していたら意味ないし、無益でしょ。
その情報を知りたい人が行く場所に書かれてないんだから。
脱線しやすいのは、スレッドの切り方が悪いだけっしょ。

248:デフォルトの名無しさん
05/05/07 08:10:43
スレ違いを開き直るやつがいるスレはここですか。

249:デフォルトの名無しさん
05/05/07 08:13:41
議論できないノータリンはすっ込んでろ

250:デフォルトの名無しさん
05/05/07 10:10:16
変数名を決めるのとコーディング規約は切り離せないだろ

251:デフォルトの名無しさん
05/05/07 21:36:53
グレーゾーンの問題ならともかく、>>240は100%規約の話じゃん。
どれでも好きなやつ使えよとしか言いようがない。

252:デフォルトの名無しさん
05/05/08 05:26:43
gじゃ意味不明だからちゃんと書かないと。
GLOBAL_____phonBook
がおすすめ!

253:デフォルトの名無しさん
05/05/08 07:25:40
漏れなら
g_phoneBook

gPhoneBook
のどちらかだが確かに微妙だな…
前者の g_ プリフィクスはよく見るけど Java っぽくない
後者は Java っぽいけどあんまり見ない

254:デフォルトの名無しさん
05/05/11 21:29:58
gやめれば?
とかいってみるてすと

255:デフォルトの名無しさん
05/05/12 08:24:20
おいらの法則

グローバル
PhoneBook

ローカル
phone_book

256:デフォルトの名無しさん
05/05/12 10:01:25
>PhoneBook

クラス名っぽくて気持ち悪い

257:デフォルトの名無しさん
05/05/12 10:51:01
クラス名だったら CPhoneBook とか頭に何かつけるかな。

258:デフォルトの名無しさん
05/05/12 10:58:00
クラス名にCを付けるなんてキモイ

259:デフォルトの名無しさん
05/05/12 10:59:09
じゃあ変数名にVariableのVをつけよう。
PhoneBook VPhoneBook;

260:デフォルトの名無しさん
05/05/12 11:21:36
ハゲキモスw

261:デフォルトの名無しさん
05/05/12 12:03:18
g_phoneBookがいい希ガス

262:デフォルトの名無しさん
05/05/12 18:28:46
グローバル変数は大抵シングルトンでよくね?
PhoneBook が2冊も3冊も必要なのか? と、スレ違いになっちゃうのか。

thePhoneBook ってのはどう?
「PhoneBook っていったらコレ!」みたいな雰囲気がでる。あと、ユニーク性も強調。

263:デフォルトの名無しさん
05/05/12 22:38:03
Theを付けると映画のタイトルっぽくなるw

ThePhoneBook.prelude();
ThePhoneBook.theme();
ThePhoneBook.episode();
ThePhoneBook.finale();


264:デフォルトの名無しさん
05/05/12 22:44:15
大作のようなB級映画のような。

265:デフォルトの名無しさん
05/05/12 23:28:59
>>262
そんなこと言ってるとマルチスレッドで破綻しないか?
逆に面倒だろ

266:デフォルトの名無しさん
05/05/13 00:00:37
>>265
プリミティブ型ならマルチスレッドで問題が起きないのかと

267:デフォルトの名無しさん
05/05/15 01:17:27
くだらないことなのですが、DBのフィールド名で
作成日をCREATE_DATEにしようかと思うのですが、
更新日をどうしようかと悩んでおります。
CHANGE_DATEというのを考えたのですが何か違うような。

268:デフォルトの名無しさん
05/05/15 02:54:34
UPDATE_DATE なんかかっこ悪いな。
renew(renewed)とかmodify(modified)とか

某フレームワークだと、
作成日 created_on
更新日 updated_on
だな。


269:デフォルトの名無しさん
05/05/15 02:58:00
REFRESH_DATE

270:デフォルトの名無しさん
05/05/15 03:31:27
LAST_UPDATE

271:デフォルトの名無しさん
05/05/15 03:40:53
FILETIME ftCreateTime; // 作成日時
FILETIME ftLastAccessTime; // 最終アクセス日時
FILETIME ftLastWriteTime; // 最終更新日時


272:デフォルトの名無しさん
05/05/15 13:02:02
a for accessed
c for created
c for changed
m for modified
t for touched
u for used

273:デフォルトの名無しさん
05/05/15 14:43:13
HTTPだと Last-Modified だな

274:267
05/05/16 00:56:52
皆さんレスありがとうございました。
色々参考にさせていただきまして、
作成日=CREATED_DATE
更新日=UPDATED_DATE
にすることにしました。

275:デフォルトの名無しさん
05/05/16 11:02:17
updateは微妙に違う気もするが。いいけど

276:デフォルトの名無しさん
05/05/16 21:54:38
頭に特定なものをつけておかないと、後で変数名だか定数だかクラス名だか混乱するぜ。

277:デフォルトの名無しさん
05/05/16 21:56:19
微妙に違うってセンスが理解不能。
こういうのをまさにupdateって言うわけだが。
これがupdateじゃなきゃ、何が(以下略

278:デフォルトの名無しさん
05/05/17 00:05:16
「内容的に目新しくなくて、ちょっと誤字を修正しただけ」みたいなのは
update ではないという脳内定義を持つ人は「微妙」に感じるのかも。


279:デフォルトの名無しさん
05/05/17 00:21:02
更新日のカラム名がUPDATE_DATE以外だったらコロヌ(・*・)

280:デフォルトの名無しさん
05/05/17 11:02:20
ウェ━━━━(0w0)━━━━イ!!!

281:デフォルトの名無しさん
05/05/17 20:29:29
版と刷の違いみたいな

282:デフォルトの名無しさん
05/05/17 20:56:55
UPDATE_DATE ってなんとなく HTML 言語と同じニュアンスを受ける

283:デフォルトの名無しさん
05/05/17 21:21:24
HTM言語よりはよいだろう

284:デフォルトの名無しさん
05/05/17 21:22:07
H 文章記述言語

285:デフォルトの名無しさん
05/05/17 21:25:06
藁田

286:デフォルトの名無しさん
05/05/17 21:52:08
官能小説業界標準規格

287:デフォルトの名無しさん
05/05/17 23:26:01
bool型変数ないし、戻り値がブーリアン風な関数の名前について質問です。

言語または命名規約によっては、よく 「isXXX」 という名前が使われるみたいですが、
機能説明した疑問形の文章をそのまま英訳すると、
are、have、canなどの、is以外の単語が使われることってありますよね?

もちろん、ちょっと形を変えれば isXXX になるときは別ですが
この場合、ちょっと違和感があっても canXXX、haveXXX といった名前にするべきでしょうか?
それとも英語的におかしくても isXXX にするべきでしょうか?

288:デフォルトの名無しさん
05/05/17 23:32:15
areとかhaveとかcan使うに決まってるだろ
馬鹿なこと聞いてんじゃねえよ

289:デフォルトの名無しさん
05/05/17 23:42:13
>>287
おかしいと分かっているにもかかわらず、isにこだわる理由は?
isStockとか?

URLリンク(www.objectclub.jp)
コーディング規約 第2条
スレリンク(tech板)

290:287
05/05/18 00:03:18
自分はアマグラマなんで、社内共通の命名規約などとは縁が無い環境です。

いくつかの入門書やウェブサイトをあたってみましたが、それらには
「ブーリアンの場合は isXXX にしよう!」とは書いてあるんですが、
他の単語になる場合などは書かれていないようでした。

そもそも、C言語でJava風の変数名を使うのがおかしいのかもしれませんが(笑)


>>288
常識でしたか。ありがとうございます。

>>289
理由は3つあります。
 ・標準関数とかがそうなっていた
 ・haveXXXとかだと、多くの場合変数名が長くなる
 ・最近Javaの入門書を立ち読みして、ちょっと影響された(笑)
こんなところです。



291:デフォルトの名無しさん
05/05/18 00:51:14
規約にあるからといって意味も考えずに isHaveXXX なんて書く奴がいる。
本来の「英語(自然言語)に近い状態でソースが読めるようにする」という目的を忘れないで欲しい。

292:デフォルトの名無しさん
05/05/18 08:16:36
常識ってバカかこいつ
これでも読んどけ
URLリンク(www.shos.info)

293:デフォルトの名無しさん
05/05/18 12:39:01
have~ は見たこと無いけど、has~ とか contains~ とかは見たことある

294:デフォルトの名無しさん
05/05/18 13:24:22
その前に英語を勉強しろ

295:デフォルトの名無しさん
05/05/18 15:33:55
まぁisを使う一方でhaveはおかしいよな。

Rubyの標準クラスは
anInstance.is_a?(Class) (三人称単数現在)
aHash.has_key?(key) (ditto)
anArray.include?(element) (原型不定詞)
のように不統一で(一応ルールはあるらしい)、慣れるまで混乱する。


296:デフォルトの名無しさん
05/05/19 00:09:42
エラトステネスのふるいの関数名を考えてください。
適当に、hurui(int *,int)にしちゃったんだけど、
もっとシャキーンとした名前がほしいです。
なんかありませんか??

297:デフォルトの名無しさん
05/05/19 00:13:51
old

298:デフォルトの名無しさん
05/05/19 00:17:42
void Shakeen();

299:デフォルトの名無しさん
05/05/19 00:18:43
EratsnetesSieve

300:デフォルトの名無しさん
05/05/19 00:21:03
filter

301:デフォルトの名無しさん
05/05/19 00:28:47
>>298
採用したいが見送り。残念。

>>299
EratosthenesSieve
これを採用します。


レスThx!

302:デフォルトの名無しさん
05/05/19 14:27:43
定数の列挙に
namespace HOGE {
  enum {
    TEISUU_1,
    TEISUU_2,
  };
};

とよくやるんですが、(VC.netならHOGE::と打てば定数がリストアップされるから)
ここでHOGEのネーミング規約として何かいい案はないでしょうか?
namespaceの頭文字をつけてn_HOGE::とするか、
STLは小文字でstd::だからhoge::にするか
結局定数だからHOGEにするか・・・。
毎度悩んでます。

303:デフォルトの名無しさん
05/05/19 14:40:45
constants
長いならk


304:302
05/05/19 15:10:18
役割ごとに別の名前空間にしようと思うんですね。
通信プロトコル、動作フラグ、設定データ等等・・・。


305:デフォルトの名無しさん
05/05/19 15:13:08
Namespace.Class.Method
別に区別しなくていいって言うかスレ違い。

306:デフォルトの名無しさん
05/05/20 00:32:44
>>302
.NETでやるんなら.NETの流儀(全部Pascal)でやるべきなよーな

307:デフォルトの名無しさん
05/05/20 08:26:13
.NETっていうか、MSご推奨の流儀ね。

でもあれ合理性が感じられないんだよね。
例えばクラスや構造体にCとかSとかプリフィクスするの止めろって言うんだけど
やっぱりプリフィクスないと混乱するときあるよ。

インテリセンスでわかるって言うけど、ソース読み直してるときにそんな
面倒なこといちいちやってられるか。

それ以上に、プリフィクスには命名のバッティングを防ぐ効果があって、
これが案外重要だったりすると思うんだけど。

308:デフォルトの名無しさん
05/05/20 08:29:39
スレ違い

309:デフォルトの名無しさん
05/05/20 10:47:26
ハンガリアンは名前に実装が現れるのが酷すぎる。
それに型を変えると名前も変えなきゃいけないし、
そもそもnDataってあったとしてもそれが本当に
int型かどうか分からないし。
意味を反映した名前を付けたほうがいいでしょ。
バッティングなんて起こる方がおかしいんだし。

310:デフォルトの名無しさん
05/05/20 12:24:56
>>309
なんでいきなりハンガリアンの話になるわけ?

311:デフォルトの名無しさん
05/05/20 16:08:22
>>310
>>307の「MS」「プリフィクス」で脊髄反射したんだろ。

312:デフォルトの名無しさん
05/05/22 23:28:01
グラフを描画するのに以下の二種類のペンを使います。
これらの名前を考えてください。
1.普通のペン
2.視点から実際には見ることのできない部分を書くペン

お願いします

313:デフォルトの名無しさん
05/05/22 23:31:51
Pen
InvisiblePen

314:デフォルトの名無しさん
05/05/22 23:32:49
>>313
やっぱりそうですよね
白身がなかったもので…

ありがとう

315:デフォルトの名無しさん
05/05/23 15:21:47
C++で文字列化できることを表すインターフェース名が決まらないのですが
何か良い案ありますか?

class I???
{
  virtual std::string ToString() const = 0;
  friend inline std::ostream& operator <<(std::ostream& lhs, const I???& rhs)
  {
    return lhs << rhs.ToString();
  }
}

こんな感じの???が思いつきません。

316:315
05/05/23 15:25:01
ちなみにバイナリデータへのSerializerは既にあって、
シリアライズできるクラスはISerializableを継承するようになってます

317:デフォルトの名無しさん
05/05/23 15:41:41
ITextSerializable

318:デフォルトの名無しさん
05/05/23 15:45:13
IStringize


319:315
05/05/23 17:03:46
良くやる事なのかと思ったけどあんまり例が無いですね…

>>317氏のはすこし冗長な気がします
Deserializeには対応しないのでSerializeと冠するのも不適格な気が

>>318氏のSrtingizeは違う意味でBOOSTなどが使っているので紛らわしいかなぁ
でもJavaとかだと想定した挙動みたいですね

とりあえずIStringizableで行こうと思います ありがとうございました

320:デフォルトの名無しさん
05/05/23 17:30:38
>>307
> 例えばクラスや構造体にCとかSとかプリフィクスするの止めろって言うんだけど
> やっぱりプリフィクスないと混乱するときあるよ。

混乱するわけがないでしょ。
大文字で始まる名詞があれば、クラスや構造体でしかありえない。

321:デフォルトの名無しさん
05/05/23 17:33:46
スレ違い

322:デフォルトの名無しさん
05/05/23 20:05:45
>>315
stringifyってのがあるから
stringifiable…?

323:デフォルトの名無しさん
05/05/23 22:04:41
>>320
MSはプロパティもPascal形式にしろっていってるよね?
プロパティは通常名詞であることが多いと思うんだけど。

第一、例えばプログラム中でインスタンスが一つしかないような場合でも(こういうの
シングルトンパターンっていうんだっけ?)、MSのアホな指針に従わなければ、
例えばクラス名をCGod(あるいはcGod)、そのクラスの唯一の自分自身のインスタンスを
保持する静的フィールドをm_God(またはmGod)、その唯一のインスタンスを
他のクラスから参照する静的プロパティをGodと、すっきり機械的に命名できるのに。

それにキャメル形式って読み難くてイライラするんだよね個人的に。
慣れの問題かとも思ったがそうじゃない気がする。

324:デフォルトの名無しさん
05/05/23 22:06:45
>>323
>>321

>それにキャメル形式って読み難くてイライラするんだよね個人的に。
>慣れの問題かとも思ったがそうじゃない気がする。
2レス前も読めない読解力の問題。

325:デフォルトの名無しさん
05/05/23 22:07:24
>>323
完全に慣れの問題だな。

326:315
05/05/24 01:15:26
>>322
それです!まさにそれ。Stringifiableとも言うみたいです。
Perlは4で止まってたのでその単語をまったく知りませんでした…ありがとう
とはいえだいぶマニアックで直感的じゃなくなってきたなぁ(笑)

327:デフォルトの名無しさん
05/05/24 10:23:13
void xxx(struct tagABC *edge){
free(edge->ptInt);
free(edge->ptLong);
free(edge->ptShort);
}

ある構造体の変数にポインタがあり、そのポインタには
メモリ確保した時のアドレスが格納されています。
このメモリを一気に解放する関数の名称を、命名して下さい。


328:デフォルトの名無しさん
05/05/24 10:32:10
ABCInitialize/ABCFinalize

329:327
05/05/24 10:36:50
なるほど。どうもです
いただきました

330:デフォルトの名無しさん
05/05/24 15:41:14
freeABCでいいような。
本体は解放するけどメンバーのデータは解放しない
っていう関数が別に必要ならそっちに使いそうな名前
ではあるが。

331:デフォルトの名無しさん
05/05/25 19:53:17
以下の3つを区別する必要があるとき、それぞれどのような名前を付けたらよいでしょうか?
よろしくお願いします。

 ・日時両方: 2005/05/24(火) 15:41:14
 ・日付だけ: 2005/05/24(火)
 ・時刻だけ: 15:41:14

332:デフォルトの名無しさん
05/05/25 19:54:21
DateTimeFormat

333:デフォルトの名無しさん
05/05/25 20:09:38
DateTime
Date
Time

334:デフォルトの名無しさん
05/05/25 20:47:04
ありがとうございます。
あちこちで頻繁に参照する名前なので、もっと短くて混同しづらい名前はないものかと悩んでいたのですが
やはり DateTime のように Date と Time を引き摺り続けるしかないのでしょうか。
まずは Date, Time, DateTime で命名しようと思います。
が、もしもっと見分けやすい名前を思いついた方がいらっしゃいましたら、どうか宜しくお願い致します。

335:デフォルトの名無しさん
05/05/25 21:06:27
>>334
日付時刻をDateTimeとするのは割と一般的だと思うけどなあ。

336:デフォルトの名無しさん
05/05/26 02:30:31
姿勢(基底行列)と位置(3次ベクトル)を
メンバに持つクラスを作りたいんですが
名前が決まらず困ってます。お助けを。

337:デフォルトの名無しさん
05/05/26 02:59:24
何をするクラスかが分からんと…

338:デフォルトの名無しさん
05/05/26 03:17:17
>>337
へぼい3Dのプログラムなんですけど
3Dオブジェの位置姿勢を担当するクラスを
作ろうと思いまして。
でも全然名前が浮かばないんです。

339:デフォルトの名無しさん
05/05/26 04:52:41
>>338
設計ミスな希ガス
3Dオブジェのベースクラスで管理するんじゃまずいの?
クラスを便利な構造体として使ってない?

340:デフォルトの名無しさん
05/05/26 08:04:45
たしかにそうかもしれません。
設計を見直してみます。
しかし、いろいろ調べたんですが
位置姿勢を一言で表す良い言葉・表現が
みつけられなかったのは残念です。

341:デフォルトの名無しさん
05/05/26 08:27:46
position で位置姿勢の両方の意味はあるみあいだけどな…

342:デフォルトの名無しさん
05/05/26 08:46:17
数学(物理学)用語なんだから専門辞書かWikipediaかを当たればわかるんじゃない?

343:デフォルトの名無しさん
05/05/26 09:39:25
姿勢というか向きならorientation

344:デフォルトの名無しさん
05/05/26 09:40:51
ああ、両方をひと言で、なのね。
日本語でも位置姿勢でフタコトだし、無理に一語にしないということでどうよ。

345:デフォルトの名無しさん
05/05/26 10:22:32
コマンドラインオプションを解析する関数名はどうすればいいですか。
言語はC++です。

346:デフォルトの名無しさん
05/05/26 10:24:43
parse

347:デフォルトの名無しさん
05/05/26 10:46:35
parse_arguments (オプションしかないなら _options でも)

UNIX APIに倣うとgetopt(解析すると言うよりオプション取り出しだが)


348:デフォルトの名無しさん
05/05/26 10:50:59
parse_argumentsと
parseArgumentsってどっちが主流なの?

349:デフォルトの名無しさん
05/05/26 10:53:10
parseOption
parseCommandLine(Option)

350:デフォルトの名無しさん
05/05/26 12:21:57
parseCommandLine ってのしか見たことない

351:デフォルトの名無しさん
05/05/26 16:54:54
>>340
>位置姿勢を一言で表す良い言葉・表現がみつけられなかった(ry
これが設計ミスじゃないかな?と疑うきっかけ。
オブジェクト指向の場合、クラスは事象の抽象化なので
必ずぴたっとハマる名前があるはず。

352:345
05/05/26 18:18:31
㌧クス。
getoptを使わせていただきます。

353:デフォルトの名無しさん
05/05/26 21:37:10
>>348
言語による。
C++やJavaなら後者が主流、だと思う

354:デフォルトの名無しさん
05/05/26 21:38:02
主流とか何かが意味があるかと思うのか?

355:デフォルトの名無しさん
05/05/26 21:39:16
>>354
自分以外が見るんならあるんじゃね?

356:デフォルトの名無しさん
05/05/27 00:24:24
Standard C++ Libraryだと _ で繋ぐ方式だね。


357:デフォルトの名無しさん
05/05/27 00:25:06
スレ違い

358:デフォルトの名無しさん
05/05/27 05:29:02
>>355
見る時に必要なのは文字列を同定する能力
_も2語目語頭大文字化も
どちらも他と区別できるくらいの能力が
読むものになければそもそもその人間は
コードを読む資格がないとさえ言えよう

359:デフォルトの名無しさん
05/05/27 06:32:25
>>358
いや単純に気持ち悪いじゃん。
二つが混在してるようだと。

360:デフォルトの名無しさん
05/05/27 07:44:43
>>359
混在?どちらでもいいから統一しておけば問題ないだろう
主流もなにもないコーダの好みで決めればいい

361:デフォルトの名無しさん
05/05/27 07:49:25
STLとWin32APIを同時に使うとなると否応無しに混在させられてしまう罠。

362:デフォルトの名無しさん
05/05/27 08:39:36
STLは"_"派、
出来ればこれに合わせたいんだけど
名前が無駄に長くなるんだよね・・

363:______________
05/05/27 09:33:16
無駄とはなんだ!

364:デフォルトの名無しさん
05/05/27 11:10:48
2つの配列を比移動やコピーを行う際、
送り側の配列へのポインタ変数と、受け取り側の配列へのポインタ変数名
どんなのがよろしいでしょうか?

int A[10], B[10];
int *pXXX = A;
int *pYYY = B;

for (i = 0; i < 5; i++)
pXXX[i] = pYYY[i + 2];

※こんな感じで使用予定です



365:デフォルトの名無しさん
05/05/27 11:11:34
pDest,pSource

366:デフォルトの名無しさん
05/05/27 11:15:05
ディレクトリを再帰的に巡って消費ファイルサイズを多い順にソートするクラス名(というかツール名)って何がいいですか。

367:364
05/05/27 11:17:34
>>365
それです!
ソースは思いついたんですが、受け手の方が思いつかなくて(英語力ないもんで・・・)
Dest ← ちなみにこれのフルスペスってどんなんですか?

368:デフォルトの名無しさん
05/05/27 11:21:36
>>367
もしかして distribute か?


369:364
05/05/27 11:23:53
>>368
destinationっぽいです
ありがとうございました m(_ _)m

370:デフォルトの名無しさん
05/05/27 11:41:08
蛇足だが、DestならSourceもSrcでもいいような気がする。

371:デフォルトの名無しさん
05/05/27 12:09:37
>364
p, q


372:デフォルトの名無しさん
05/05/27 13:20:07
ディスティネーションはつづりが覚えられないから、
from, to, でやってる。

373:デフォルトの名無しさん
05/05/27 13:24:00
toは予約語だから,
tinko, manko, でやってる。

374:デフォルトの名無しさん
05/05/27 13:32:52
mankoは予約語だから,
bou, ana, でやってる。

375:デフォルトの名無しさん
05/05/27 14:17:35
>>366
ディレクトリを再帰的に巡って消費ファイルサイズを多い順にソートするクラス名(というかツール名


class dsmsfsojs


376:デフォルトの名無しさん
05/05/27 14:50:47
見るだけならls -RS か ls -lRS

ListFilesRecursiveOrderedBySizeDescending

こっから先は命名でなく設計の話になっちゃうけど、順序を
決める部分は比較関数として別に引数として渡すようにする
と後ろの長ったらしい部分はその引数の方に吸収できるね。


377:デフォルトの名無しさん
05/05/27 20:50:57
>>362
変数名を無駄に短く略して暗号化するのは脳内だけにしてほしいよね・・・

378:デフォルトの名無しさん
05/05/29 18:44:28
>>366
>ディレクトリを『再帰的に巡って』『消費ファイルサイズを』『多い順にソート』する
……ってだけで俺は少なくとも3つのクラスが必要だと思った

379:デフォルトの名無しさん
05/05/29 21:48:29
>>366
それは機能の説明でクラスの説明じゃないな。
その機能を使って何をするのか、を考えればそれがクラス名。

380:デフォルトの名無しさん
05/05/30 10:52:18
STLの<functional>にあるlessの大文字小文字を区別しないバージョンを作ろうと思うのですが
どういう名前にしたらよいでしょうか?

381:デフォルトの名無しさん
05/05/30 11:25:10
>>380
caselessでいいじゃん

382:デフォルトの名無しさん
05/05/30 11:29:10
あぁcaseですか。なんで思いつかなかったかな>自分
ありがとうございました。

383:デフォルトの名無しさん
05/05/30 11:57:36
普通はilessにすると思うが…

384:デフォルトの名無しさん
05/05/30 12:00:48
_stricmpやlstrcmpiのiって何の略なんでしょうね?

385:デフォルトの名無しさん
05/05/30 12:02:06
ignorecase

386:デフォルトの名無しさん
05/05/30 12:09:08
あ、な~る

387:デフォルトの名無しさん
05/05/30 17:55:19
配列の名前に、適当な名前が見つからないときは要素の型の複数
を使うという俺ルールを採用していて、

Data

の配列を作ろうとして手が止まったことがある。

ほんとはたぶんDataっていう要素型名自体がよくないんだけど。

388:デフォルトの名無しさん
05/05/30 17:56:54
Datumでいいやん

389:デフォルトの名無しさん
05/05/30 17:58:52
>>387
C/C++なら型名と変数名は同じでも平気だよ。良いスタイルとは言えないだろうけど。
もちろんintとかの組み込み型は予約語だから駄目だけど。

390:デフォルトの名無しさん
05/05/30 18:21:14
>>388
要素の方を datum ってことよね。

それ以前に、dataとかinfoとかいう漠然とした名前はよくないわけで。

あり得ない話だけど sheep とか fish とか carp の配列を作ろうとすると
悩みそうだな。

391:デフォルトの名無しさん
05/05/30 18:28:24
俺なら sheeps, fishes, childs って堂々と書くなw

392:デフォルトの名無しさん
05/05/30 21:03:14
DataArrayとか。
配列が名前に表れるのをきらうならDataCollectionとか。

393:デフォルトの名無しさん
05/05/30 22:27:31
英文法的に正しいかどうかより意味がわかるかどうか、簡潔かどうかを
優先した方がいいと思うけどね俺は。英文法なんて全然一貫性がないんだからさ。

別にDatasとかでいいじゃん。
setの過去分詞をsetedって記述するでしょ?(っていうと必ずシネーヨって
奴が出てくるんだが。ググッてみろよNativeだってそうしてる)

394:デフォルトの名無しさん
05/05/30 22:28:38
ボタン描画に関する関数なんですが、
・通常時
・ボタン上にマウスカーソルがある時
・ボタンが押されている時

でなにか良い関数名ありますでしょうか?


395:デフォルトの名無しさん
05/05/30 22:38:39
>393
Googleでsetedを検索しても、Nativeらしき使用例が見あたらないんだが。


396:デフォルトの名無しさん
05/05/30 22:46:04
すまんsettedね

397:デフォルトの名無しさん
05/05/30 22:54:14
>>394
慣例に従えば

OnIdle
OnMouseHover
OnPress

ついでに言うと

OnMouseEnter>OnMouseHover>OnMouseLeave
OnPress>OnRelease

398:デフォルトの名無しさん
05/05/30 23:03:25
>>397
すばらしいです。
ありがとうございました!

399:デフォルトの名無しさん
05/05/30 23:27:22
Onってのはエッジ検出的な語感だと思うんだけど。。変化が起きたその時、って感じ。
だからイベント処理のメソッド名に使われるわけだよねえ。

だとしたら
>・ボタン上にマウスカーソルがある時
この描画処理がOnMouseHoverってのはちょっと違うと思う。

400:デフォルトの名無しさん
05/05/31 08:18:18
「~のとき」はいつも変化を表すわけじゃなくて

401:デフォルトの名無しさん
05/05/31 09:16:34
>>399
その理論でいくとOnIdleもダメなわけだが

402:デフォルトの名無しさん
05/05/31 09:54:58
つまりOnじゃなくてWhileにしろと?

403:デフォルトの名無しさん
05/05/31 10:49:59
bsNone, bsMouseOver, bsDown

404:デフォルトの名無しさん
05/05/31 12:09:19
bsって何?

405:デフォルトの名無しさん
05/05/31 13:41:09
たぶん、Button State


406:デフォルトの名無しさん
05/05/31 16:40:03
明らかにdata自体がよくない。
だいたいすべての変数はデータじゃんかよ。

407:デフォルトの名無しさん
05/05/31 19:27:48
>>406
個人的には、info, manager あたりも使いたくない。

408:デフォルトの名無しさん
05/06/01 00:42:23
datum

409:デフォルトの名無しさん
05/06/03 11:43:00
Javascrip/DOM

変数名(かプロパティ名)で、「開始時間」と「所要時間」をつけたいんですが、
var startTime, time;
だと、timeが抽象的で分かりにくいかなぁと思いまして、
何かしっくりくる1単語ありませんかね?

使い方は、
obj[i+1].startTime = obj[i].startTime + obj[i].time;
若しくは
var searchingTime = obj[i].startTime + obj[i].time;
とかやって、使うつもりです。

良い名をお願いします。


410:デフォルトの名無しさん
05/06/03 11:52:28
所要時間については、elapsedTime とか。

411:デフォルトの名無しさん
05/06/03 13:40:49
ネットワーク先へのファイル書き込みの際、アプリケーションがネットワーク通信速度の
遅さに影響されないよう、書き込み処理だけバックグラウンドで動作するモジュール
(関数名も含む)の名前はどんなのが最適でしょうか?

モジュール名は FsDelay か、FsBackground。
関数名なら WriteDelayData か、WriteBackgroundData という感じのが思い付きました。
(用語の使い方以前に命名規則(文法)も変な気もしますが)

なにか良い案がありましたらご意見下さい。

412:デフォルトの名無しさん
05/06/03 13:46:45
出会い系サイト 一覧ホームページ作りました

全部無料でしかもフリーメールでも登録できるサイトばかりです

URLリンク(www.geocities.jp)

413:デフォルトの名無しさん
05/06/03 13:49:01
AsynchronousTransmitter
AsynchronousWriter

AsynchronousWrite
WriteAsynchronously


414:413
05/06/03 14:04:47
>>413
Async…なるほど、ずばりですね。
ありがとうございました!

415:411
05/06/03 14:05:19
スマソ。名前間違いorz

416:デフォルトの名無しさん
05/06/03 17:26:36
Registerの反対語はなんでしょうかね?
ちなみに、Register==登録の解釈です。

417:デフォルトの名無しさん
05/06/03 17:39:12
unregister の検索結果 約 891,000 件中 1 - 10 件目 (0.24 秒)
deregister の検索結果 約 90,400 件中 1 - 10 件目 (0.03 秒)


418:デフォルトの名無しさん
05/06/03 17:40:01
>>416
Register/Unregisterでよく対で使われてる

419:デフォルトの名無しさん
05/06/03 17:42:20
ゴメン。そうだった。
頭にFreeがはこびっていた。unregします。オレモナー

420:デフォルトの名無しさん
05/06/03 17:42:50
unregistered は登録していないのニュアンスもある。
deregister は、明らかな「登録解除」の意味。


421:デフォルトの名無しさん
05/06/03 17:51:12
unregisterとunregisteredではニュアンスが違う気が

422:デフォルトの名無しさん
05/06/03 18:05:02
unregister 登録抹消する
unregistered 登録抹消されている状態
not registered 登録 ( し | され ) ていない

423:デフォルトの名無しさん
05/06/03 18:32:26
unregistered 登録抹消されている状態または未登録の状態


424:デフォルトの名無しさん
05/06/03 18:36:06
intialize の反対で一番しっくりくるのはどれだろうか。

uninitialize
deinitialize
finalize
terminate
exit

これ以外にも何かある?

425:デフォルトの名無しさん
05/06/03 18:56:29
>424
たまに cleanup を使うことがある。


426:デフォルトの名無しさん
05/06/03 18:58:47
finzlize
次点がexit

427:デフォルトの名無しさん
05/06/03 19:03:09
>>424
initializeにはfinalizeしかないだろう
uninitializeとは初期化に失敗した場合呼び出すメソッドに思える
「初期化されてない」という意味でuninitializedとは言う
ただライブラリなどでuninitialize、deinitialize、cleanup、release
といった命名がされているのを見たことはある
しかしdeというprefixは「逆」を意味するから、方向性のないinitializeには
いまいちピンと来ない
「登録 register」や「接続 attach」は主従関係という方向性があるので
deregister、dettachと言える

ちなみに提示された案の反対語

uninitialize < initialize
deinitialize < ???
finalize < initialize
terminate < execute
exit < enter

428:デフォルトの名無しさん
05/06/03 19:06:37
enterならleaveだな

429:デフォルトの名無しさん
05/06/03 19:15:58
un-
形容詞・副詞・名詞につけて「反対」の意を表す.
・unhappy
=不幸な.
・unemployment
=失業.
動詞につけて,もとの意味とは反対の動作を表す動詞を作る.
・untie
=ほどく.
名詞につけて,その性質・状態を「除去」「離脱」する意味の動詞を作る.
・uncage
=解放する.
・un-Japanese
=非日本人的.

de-
「分離」「低下」「反対」の意を表す.
・defrost
=…の霜を取る.
・descend
=降下する.
・demerit
=短所.

430:デフォルトの名無しさん
05/06/03 19:23:51
dehappy
deemployment
detie
decage
de-Japanese

unfrost
unscend
unmerit

431:デフォルトの名無しさん
05/06/03 21:12:54
ホモを入れる方と入れられる方で明示的に区別したい場合、それぞれなんと呼べばいいですか?

432:デフォルトの名無しさん
05/06/03 21:25:26
class CTachi : public CHomo
class CNeko : public CHomo

433:デフォルトの名無しさん
05/06/03 21:28:48
inserter タチ
receiver ネコ


434:デフォルトの名無しさん
05/06/03 23:47:58
移動先の座標を表す変数名は何にしたら良いでしょうか?

435:デフォルトの名無しさん
05/06/03 23:52:51
DestinationXY

436:デフォルトの名無しさん
05/06/03 23:54:11
X,Y

437:デフォルトの名無しさん
05/06/04 00:04:30
>>435
そうします。どうも。

>>436
それは元の座標に使っているので無理です。すみません。

438:デフォルトの名無しさん
05/06/04 18:41:34
頻繁に読み出すファイルをあらかじめメモリに読み出しておく関数、e
既にメモリに読み出されているか調べる関数、f
ロード済みのメモリを取得する関数、g
ロード済みのメモリを解放する関数、h
で、いいのがあったら教えてください。

下のようなことをしたいのです。

void init()
{
 e(0); //ファイル0をよく使うのでメモリに読み出しておく
}

byte[] load(int index)
{
if(f(index))return g(0);
else return load_imp(index); //load_impは実際にファイルを読み込む関数
}

ソースは Java ですが、命名スタイルは特にこだわりません。


439:デフォルトの名無しさん
05/06/04 18:46:44
FileBuffer.Load/Loaded/Unload

440:デフォルトの名無しさん
05/06/04 19:33:33
Cache

441:デフォルトの名無しさん
05/06/06 00:54:44
cacheで行きます。ありがとうございます。

442:デフォルトの名無しさん
05/06/07 10:14:09
3DでZ軸の「奥」と「手前」のことをそれぞれ英語で普通何と言いますか?

443:デフォルトの名無しさん
05/06/07 10:37:43
16777216 -> "16,777,216"
の変換関数の名前は何がいいですか?

444:デフォルトの名無しさん
05/06/07 10:51:16
under
above

445:デフォルトの名無しさん
05/06/07 12:13:26
>442
far, near


446:デフォルトの名無しさん
05/06/07 15:41:39
>>443
数値に3桁ごとにコンマを入れるという意味か?
commifyというのを見たことがある。


447:デフォルトの名無しさん
05/06/09 01:19:22
OSのアドレス変換で分散した通常のメモリ領域と対比される、
物理メモリ上での連続性を持ったメモリ領域の呼び方。

CPU以外のハードウェア(DMAなど)と共有するために使います。

今は physically contiguous を使ってますが、
もっと短い名前はないものか、と悩んでいます。

448:デフォルトの名無しさん
05/06/09 01:43:39
>>447
そもそも形容詞を二つ繋げて名詞にしてる時点でおかしいだろ
ContiguousMemorySpaceとかにしないとヘン

対比させるならSerialMemorySpace<>PartialMemorySpaceはどうか

449:447
05/06/09 02:30:34
>>448
physically coutiguous は memory とか allocator とか、
通常のメモリ管理で使ってた言葉にくっつけて区別するように使ってます。
通常版が memory で、物理連続版が physically_contiguous_memory って感じです。

「メモリ領域の呼び方」と聞いているので、>447でそこを省いたのは間違いでした。
すいません。

450:デフォルトの名無しさん
05/06/09 07:15:34
連続領域を仮想アドレスで返す奇天烈なAPIを作らないなら
ContiguousMemoryで十分じゃないの
URLリンク(msdn.microsoft.com)

451:デフォルトの名無しさん
05/06/11 13:29:57
だーいぶ昔に作ったプログラムというか微妙なもののソースを
久々に発掘したら変数名がアホだった

 int hoge,hogeho,hogehoge,hohoho;

何でもいいとはいえコレは酷い

452:デフォルトの名無しさん
05/06/11 19:31:22
Delphiでリスト内に保持している一意のNoを再割り当てするメソッド名は何がよいのでしょう?
ReUniqueNoが現在候補にあがっています。

453:デフォルトの名無しさん
05/06/11 19:42:41
BASICを思い出した俺

454:デフォルトの名無しさん
05/06/11 19:44:05
renumber?


455:デフォルトの名無しさん
05/06/11 19:57:21
愚直に ReassignUniqueNumber

456:デフォルトの名無しさん
05/06/12 12:44:42
"一意のNo"を表すメンバなりプロパティなりをなんと命名してるかにも依存する、
というかすべきだよよね。「再」を表す接頭語が会ったほうが良いかどうかも
「リスト」の実装しだいの気がする。

普通、番号がリストの中で一意であることがわかるような命名をしていると思うので
(ItemNoとかItemIDとか)一意を表す"Unique"はメソッド名には不要じゃないだろうか。

総合すると(Re)AssignItemNoとか(Re)AssignItemIDみたいな感じか。

457:デフォルトの名無しさん
05/06/12 17:19:49
ReIdentify

458:デフォルトの名無しさん
05/06/12 21:34:29
ブラウザやフォルダの進む・戻る(移動のUndoRedo的なもの)情報の管理クラスの名前は何がいいですか。

459:デフォルトの名無しさん
05/06/12 21:48:53
なんたらHistory


460:デフォルトの名無しさん
05/06/12 21:56:31
HistoryMgr

461:458
05/06/12 22:06:00
Historyは最近使ったファイルで使ってしまってます(RecentFilesとでもすべきですかね)。
もう少し明示的なものはないですか。

462:デフォルトの名無しさん
05/06/12 22:59:47
ForwardBackward

463:デフォルトの名無しさん
05/06/12 23:07:18
NavigationLog

464:デフォルトの名無しさん
05/06/12 23:15:09
PageHistoryManager

465:デフォルトの名無しさん
05/06/15 08:12:43
頁履歴管理者

466:デフォルトの名無しさん
05/06/15 09:20:43
NavigationHistory
でどうよ?

467:デフォルトの名無しさん
05/06/16 10:34:05
ウィンドウを以下の状態にする関数名はどんなのがいいでしょう?
・入力禁止にする
・灰色表示にする
・マウスカーソルを砂時計にする
・再描画など最低限の処理は許可する

要は、EnableWindowという名前がガイシュツなので、代わりに良いのが無いかなと。

468:デフォルトの名無しさん
05/06/16 12:38:30
「ウィンドウ」のメソッドじゃなくて
その「ウィンドウ」を持ってるオブジェクトが「ウィンドウ」を操作するメソッドなわけ?

特別な理由がなければ、「ウィンドウ」をステートマシンにした方がいいんじゃないの?

「ウィンドウ」のステートを現す列挙型を作って、それを引数に取る
メソッドなりプロパティなりでステートを変更するようにする。

まあ、こういうUIの問題は前後の細かい文脈がわからないと
適切なアドバイスは誰もできない気がする。命名に関してすらもね。

469:デフォルトの名無しさん
05/06/16 13:38:39


470:467
05/06/16 13:44:57
>>468
単にWindowsAPIのEnableWindowに機能を追加したようなものを作りたいのです。
なのでクラス云々は考慮無しでおながいします。

471:467
05/06/16 13:48:10
で、連カキで申し訳ないですが、これにちょっと関連する以下の別関数もおながいします。

・WM_PAINTのみを処理(メッセージループ)する関数名

先の質問と併せて、WinSDKのマーの方ならよく作られる機能じゃないかなと思ったり。

472:デフォルトの名無しさん
05/06/16 14:08:11
変数名じゃなくマクロ名なんだけど

#ifdef __cplusplus
extern "C" {
#endif



#indef __cplusplus
}
#endif

をそれぞれマクロにしたいんだけど
いいのないでつか?半ばスタンダードになってるやつとか。

473:デフォルトの名無しさん
05/06/16 14:22:23
C_COMPATIBLE

474:デフォルトの名無しさん
05/06/16 15:16:42
#pragma once

つか混乱するからそれくらい毎回書け。
重複でさえあれば何でもかんでもマクロ化していくというのはよくないぞ。

475:デフォルトの名無しさん
05/06/16 17:13:09
#pragma once
は一度しか読まないようにするためのやつじゃ?

476:デフォルトの名無しさん
05/06/16 17:26:50
>>470
じゃあEnableWindowEx

477:デフォルトの名無しさん
05/06/16 17:56:27
>>467
>>468のアドバイスは的確だと思うが無理矢理命名するなら
SuspendWindowOperation()といったところか
戻す時はResumeWindowOperation()

>>471はProcWM_PAINT()かな
ProcはProceedとかProcessとか

478:デフォルトの名無しさん
05/06/16 18:06:45
LockWindow / UnlockWindow
SetWindowWaiting
SuspendWindow

うーん、イマイチ。
てか、関数のする事が多すぎて、役割がはっきりしないからだと思う。

479:478
05/06/16 18:08:57
>>477
あら、被っちゃった… ごめんなさい、更新し忘れてました。 orz

>>471 は単純に PaintLoop でどうだろう。

480:467
05/06/16 19:35:44
>>476
…('A`)
奥の手ですねぃw

>>477
いや、的確でないというか、MFCベースやOOPで作り込んでいるなら
オブジェクト~メソッドの話で完璧だと思うんですけど、今回は単なる
APIの置き換えを狙ってたので…。

>>478
何をするかって、端的に書きすぎました。スマソ。
どんな時にこれを使うかと言うと「長い処理をしている間」です。
この時にウィンドウを入力禁止にしつつ、マウスカーソルを砂時計(ry
てな感じで、ついでに再描画もやらせる必要があったので、WM_PAINTの
質問もさせていただいた訳であります。

そういう訳で、SuspendWindow辺りがいい感じかも。
再描画はとりあえず、RePaintLoopにしてみました。

481:デフォルトの名無しさん
05/06/16 19:47:56
(*゚Д゚)ネタスレかと思ったら違うのか。

482:デフォルトの名無しさん
05/06/16 22:56:52
>>472
#ifdef をマクロの中に書けたっけ?

483:デフォルトの名無しさん
05/06/16 22:59:03
>>480
何か勘違いしている悪寒。

484:デフォルトの名無しさん
05/06/17 03:03:43
>>482
#ifdef __cplusplus
#define HOGE 1
#else
#define HOGE 0
#endif
でいいだろ

485:デフォルトの名無しさん
05/06/17 13:00:39
同一商品のサイズ違いや色違いをまとめたテーブル名なんだけどなんかいいのないかな
Group、ItemGroup以外で頼む

486:デフォルトの名無しさん
05/06/17 13:12:32
>>485
「変種」という意味で variant が使えるかも。
VariantItemGroup

487:デフォルトの名無しさん
05/06/17 13:27:09
>>486
他にはどんなのがよさそう?

488:デフォルトの名無しさん
05/06/17 14:01:28
>>487
サイズ違い、色違いがそれぞれ独立していれば
Sizes, Colors になるのだと思う。
しかしまとめるとなると…。

custom-made オーダーメイド
product 製品
→ CustomProducts

sample 見本
catalog 目録
showcase 陳列棚

これでは抽象的すぎるかな。

489:デフォルトの名無しさん
05/06/17 15:19:32
ばりえーしょん

490:デフォルトの名無しさん
05/06/18 13:30:08
テキストフィールドがあって、エンターキーを押すと action() が呼ばれます。
action() の中でテキストフィールドの値を検査するために verify() が呼ばれます。
verify() はエンターキーが押されたときだけでなく、マウスでフォーカスを
はずしたときにも呼ばれます。

verify() の中で action() から呼ばれているのかどうかを知るために
テキストフィールド field にメソッド(プロパティ) を追加しようとしています。
どのような名前が良いでしょうか?

field.isInAction() ?

491:デフォルトの名無しさん
05/06/18 13:37:58
CallByAction

492:デフォルトの名無しさん
05/06/18 13:53:35
caller

493:デフォルトの名無しさん
05/06/18 13:55:06
field.isInAction()

494:デフォルトの名無しさん
05/06/18 14:37:33
verify_on_action()
verify_on_focus_lost()

495:デフォルトの名無しさん
05/06/18 15:20:31
>>490
なんかプロパティの名前をどうこうすべきっていう以前に糞設計の匂いがする。

読んだ限りでは、actionとかverifyってのはfield自身のメソッドではなく
それを持っているオブジェクトのメソッドに読めるけど、
本当にその設計に必然性はあるのか?

それにactionからverifyを呼び出すってのも、本当にそうである必要があるの?

エンターキーが押されたときに実行されるメソッドから直接verify(どうでもいいけど
validateとかの方が適切じゃないか?)を呼ぶようにすれば、単に引数で
verifyの動作を指示するということで解決しそうに思えるが。

496:デフォルトの名無しさん
05/06/18 16:19:03
>>490
verifyメソッドのプロトタイプ宣言をこんな感じにして
void verify(const Object& sender);
actionメソッドからverify(this);で呼び出せば良いように設計してください
あるプロパティを設定してからあるメソッドを呼ぶなんてのは
間違いなく設計ミスです

497:デフォルトの名無しさん
05/06/18 16:31:25
GUIプログラミングでは内部的に状態を持つなんて普通のことなんだが。
busy = true; try{ ... } finally { busy = false; }
~別の関数~
if(busy) return; paint(); // 無駄な再描画をスキップ
とかね。

498:デフォルトの名無しさん
05/06/18 16:52:47
そういうの馬鹿の一つ覚えっていうんじゃないの?
>>490の話のどこにステートマシンの必要性を感じるのか理解不能だね。
入力に対して常に同じ応答をするようなものをステートマシンに仕立てる必然性がない。

499:デフォルトの名無しさん
05/06/18 16:57:39
>>1
>命名規則や設計の善し悪しについて議論するのは基本的に禁止。

500:デフォルトの名無しさん
05/06/18 17:09:17
>>499
こういううっとうしい奴って定期的に湧いてくるよなあ。
いかにも論理的・目的合理的に物事考えるのが苦手な日本人らしいが、
しかしそんな奴がプログラマにもいるってのはどういうことだろう。

いいかい?「命名規則や設計の善し悪しについて議論するのは基本的に禁止」
これは何のため?

話題が拡散することによって、本スレの目的(命名について話し合うこと)が
阻害されることを防ぐため。

逆を言えば、阻害されなければ問題がないわけだ。
で、現実はどうよ?設計法を話題にすることによって命名に関する話題が阻害されてるか?
そんなこたあねえよ。

ていうか、そもそも本スレの目的、それ自体の上位目的は何よ?
ざっくり言ってプログラマとしての能力向上だろ?

設計について話題にすることは、この上位目的にとって有意義じゃないの?
つーか、>>499や俺のようなレスこそまったく意義がないことについてはどう思ってるのだろうか。
馬鹿特有の俺様棚上げ?


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch