クラス名・変数名に迷ったら書き込むスレ。Part20

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
クラス名、変数名のつけ方に悩んだら書き込むスレです。

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

前スレ
クラス名・変数名に迷ったら書き込むスレ。Part19
http://hibari.2ch.net/test/read.cgi/tech/1293201229/
2デフォルトの名無しさん:2011/07/29(金) 21:59:20.93
>>1 乙乙

落ちた消えてから助かるぜ。
3デフォルトの名無しさん:2011/07/30(土) 13:23:46.88
おつ。
前スレ埋まったの6月15日か。
4デフォルトの名無しさん:2011/08/01(月) 12:00:38.50
そういえば、質問スレかどこかで変数名の話題になってたな…
5 忍法帖【Lv=14,xxxPT】 :2011/08/02(火) 23:27:22.78
>1

Zなんたらかんたら
6デフォルトの名無しさん:2011/08/03(水) 23:53:39.48
_1zNoNoNotIchiOtsuItItItsHungarianNotation
7デフォルトの名無しさん:2011/08/03(水) 23:55:48.41
面白いと思ってるのかもしれんが、気色が悪いだけ
8デフォルトの名無しさん:2011/08/04(木) 00:32:58.85
すまんかった
9デフォルトの名無しさん:2011/08/04(木) 01:17:07.52
大丈夫
そこそこ面白かったよ
だからもうやめてね
10 忍法帖【Lv=15,xxxPT】 :2011/08/05(金) 12:39:50.66
TONさん誕生の瞬間

704 :デフォルトの名無しさん:2008/12/12(金) 16:04:28
スクリプト言語で、最初のほうで
定数A = 今の完全時刻(年月日から秒まで)
定数B = 定数Aから日付部分を取り出したもの、文字列にすると 2008-12-12
定数C = 定数Aから時間部分を取り出したもの、文字列にすると 16:04:34
としたときの、定数ABC。
Aを NOW という定数名で使うことが多いんだけど、Bは TODAY で、じゃあCは何? みたいな

705 :デフォルトの名無しさん:2008/12/12(金) 16:28:43
TODAYをやめて
DATEとTIMEにしたら?

706 :デフォルトの名無しさん:2008/12/12(金) 17:06:45
TODAYはセンス無いなw

707 :デフォルトの名無しさん:2008/12/12(金) 17:26:11
NOWから取り出した値だってのがわかるような名前がいいと思う。
NOW_DATEとNOW_TIMEでいんじゃね?

708 :デフォルトの名無しさん:2008/12/12(金) 17:31:25
TIMEって日付情報含んでそうだ

709 :デフォルトの名無しさん:2008/12/12(金) 17:48:04
>>708
そりゃお前の誤解だ

710 :デフォルトの名無しさん:2008/12/12(金) 19:31:20
俺はTodayは悪くないと思う。
それでいけばCはTimeOfNowってとこか。
11デフォルトの名無しさん:2011/08/05(金) 17:03:10.14
もう忘れようよ…
12デフォルトの名無しさん:2011/08/05(金) 20:03:16.78
>>10
なんか根暗っていうか、馬鹿なくせに執念深さだけは一人前って感じだなお前
13デフォルトの名無しさん:2011/08/05(金) 20:41:04.73
>>10-12
失せろゴミ
14デフォルトの名無しさん:2011/08/06(土) 01:06:49.39
>>12
TON乙
15デフォルトの名無しさん:2011/08/07(日) 14:49:24.90
tonまだいるのかよ
16デフォルトの名無しさん:2011/08/08(月) 23:45:33.87
結局
date
time
datetime
を使えばいいってことで
17デフォルトの名無しさん:2011/08/09(火) 02:16:18.40
あ行なら0、か行なら1をそれぞれ代入したい変数があるんだけど
かっこいい名前ありませんか
18デフォルトの名無しさん:2011/08/09(火) 02:19:50.84
>>17
consonant_index
19デフォルトの名無しさん:2011/08/09(火) 04:22:17.47
かっこよさを求めているからそれはストレートすぎてダメじゃないかな。
そもそもかっこいい名前を求めるのがダメという意見も出るだろうけれど、要望にはこたえてあげて欲しい
20デフォルトの名無しさん:2011/08/09(火) 04:27:47.64
失せろゴミクズ
21デフォルトの名無しさん:2011/08/09(火) 04:45:05.84
マジレスするとindexはおかしい。せめてそれぐらい突っ込めよ>>20
22デフォルトの名無しさん:2011/08/09(火) 04:46:50.37
それはストレートすぎてダメじゃないかな。
23デフォルトの名無しさん:2011/08/09(火) 05:00:29.60
indexっておかしいの?
24デフォルトの名無しさん:2011/08/09(火) 05:11:34.13
その質問はストレートすぎてダメじゃないかな。
25デフォルトの名無しさん:2011/08/09(火) 08:09:44.09
orderはどう?
26デフォルトの名無しさん:2011/08/09(火) 09:28:53.72
indexだとsqlに通らない
initialでいいかな
27デフォルトの名無しさん:2011/08/09(火) 09:38:22.21
>>21
?
28デフォルトの名無しさん:2011/08/09(火) 09:48:41.85
>>26
カラム名なら単純に consonant で良いんじゃないの
それか index の代わりに idx とか key とか
29デフォルトの名無しさん:2011/08/09(火) 09:50:46.69
>>23
別におかしくないよ

char consonant[] = { ' ', 'k', 's', 't', 'n', 'h', 'm', 'y', 'l', 'w', 'g', 'z', 'd', 'b' };
int consonant_index;
30デフォルトの名無しさん:2011/08/09(火) 11:38:07.65
先生、パ行がありません!
31デフォルトの名無しさん:2011/08/09(火) 11:52:56.56
これらのイベントを名づけてくれ

1. ユーザーがクリックして、システムがそれを処理する前のイベント
2. ユーザーがクリックして、システムがそれを処理した後のイベント
3. Hoge を見つけた時に発生するイベント
4. システムがロードを開始する直前に発生するイベント
5. システムがロードを開始する直後に発生するイベント
6. システムがロードを就労した直後に発生するイベント
32デフォルトの名無しさん:2011/08/09(火) 11:59:08.63
OnClicking
OnClicked
OnFindXXX
OnBeforeLoad
OnLoading
OnAfterLoad
33デフォルトの名無しさん:2011/08/09(火) 12:35:12.09
MSDN - C# 的には Before & After は使わないとかのルールが決められているけどどうなのよ
34デフォルトの名無しさん:2011/08/09(火) 12:45:40.77
OnClicking
OnClicked
OnHogeFound
OnLoadStarting
OnLoadStarted
OnLoadFinished
35デフォルトの名無しさん:2011/08/09(火) 13:26:39.23
>>33
PreとPostはおk?
36デフォルトの名無しさん:2011/08/09(火) 13:43:45.54
ClkStrkEv
CikExtcnEv
GotHogeScatEv
TakeLoadngEv
EmitLoadngEv
WipeLoadngEv
37デフォルトの名無しさん:2011/08/09(火) 13:46:21.59
>>35 おk

>>36
あまり略さない形式でお願いします!
パスカル・キャメルとかはどうでもいいかな
38デフォルトの名無しさん:2011/08/09(火) 14:06:03.02
>>36
糞すぎる
ネタにしてもつまらん
39デフォルトの名無しさん:2011/08/09(火) 19:48:04.21
Leet並にわかりづらいな
40デフォルトの名無しさん:2011/08/09(火) 20:37:45.80
>>31
まずどういうクラスのイベントなのかが分からないと話が始まらないと思うけど。

言語が何か知らないけど、普通はイベントといえどクラスのメンバというか、
クラスに属する何物かだよな。
41デフォルトの名無しさん:2011/08/09(火) 20:46:50.25
>>31
1. onClick1
2. onClick3 (システムがそれを処理するイベントはonClick2)
3. hogeFound
4. loadReady
5. loadStarted
6. loadFinished
42デフォルトの名無しさん:2011/08/09(火) 22:17:39.15
過去分詞とか使いたくないからonClickPreprocess かな・・なんか引っ掛かるが間違う奴はいないだろ。
43デフォルトの名無しさん:2011/08/10(水) 00:32:23.97
奇妙なこだわり持つなよ。
どうせ大した根拠無いんだろうに。
44デフォルトの名無しさん:2011/08/10(水) 00:41:10.42
馬鹿言え
不規則動詞の活用が覚えられないからに決まってるだろ
45デフォルトの名無しさん:2011/08/10(水) 00:48:25.90
大した根拠じゃないじゃん
46デフォルトの名無しさん:2011/08/10(水) 01:12:46.29
そんなに大マジで返されても困るわ
4731:2011/08/10(水) 05:40:30.27
>>40

・1番、2番
マウス関連のイベントを発生させる Mouse クラスが、自身に登録されている全てのリスナーに通知するイベント
1番のイベントはキャンセル用の出力パラメータを持ち、キャンセルされたのであれば、2番のイベントが発生しない

4831:2011/08/10(水) 05:43:01.23
・3番、4番、5番
ファイルなどのバイナリストリームからツリー構造のデータを読み込むメソッド LoadDataTree() があり、このメソッドの呼び出し中にノードオブジェクトへ通知されるイベント

4番 : LoadDataTree() が現在のノードの読み込みを開始する時に現在のノードに通知するイベント
   1番イベントと同じく、イベントを処理してキャンセルすることができ、キャンセルしたのであれば LoadDataTree() メソッドは即座に終了する

3番 : LoadDataTree() が現在のノードの子ノードを見つけたときに、現在のノードへ通知するイベント
   Hoge == 子ノードだね
4931:2011/08/10(水) 05:45:03.80
5番 : ネタとしていれてみただけだが、意味合いとしては1番イベントに対する2番イベントみたいなもの

6番 : LoadDataTree() が現在のノードの読み込みを終了した時に、現在のノードに通知するイベント
50デフォルトの名無しさん:2011/08/10(水) 16:04:37.38
で、既出の案には何か不満でもあるのか?
5131:2011/08/10(水) 19:17:04.53
>>50
で、あんたのお気に入りはどの案なんだ?
52デフォルトの名無しさん:2011/08/10(水) 20:21:40.82
36以外はまあまあ
53デフォルトの名無しさん:2011/08/10(水) 21:15:24.65
>>31
分かってると思うけど、発生順序が違うだけの同じようなイベントを定義するのは
あんまり良いことじゃない。

どうしてもという場合は、イベントを発生させるクラスにとっての意味ではなく、
リスナー側にやって欲しい処理で命名した方が分かりやすいと思う。(本来邪道臭い気もするけどね)

順序が欲しくなるのは、イベントハンドラ内で利用される別のオブジェクトのデータが
先に更新されている必要がある場合が多いだろうから。
5431:2011/08/12(金) 06:50:56.03
> 分かってると思うけど、発生順序が違うだけの同じようなイベントを定義するのは
> あんまり良いことじゃない。
複雑で分かりにくくなることであれば、そこはかとなく理解している
ただ、今まででそれが必要になったことがあるので尋ねた


イベントハンドラ名に「On」を付ける意見が多いな
言語によっても違うだろうけど、Onは付けるべき、付けないでもいい?
55デフォルトの名無しさん:2011/08/12(金) 09:31:43.01
二文字でイベントっぽさが出るので個人的には好き
5631:2011/08/15(月) 05:54:31.83
参考になった。ありがとう
57デフォルトの名無しさん:2011/08/17(水) 19:50:20.77
HogeクラスとIHogeインターフェースがあります。Hogeクラスのインスタンスを
コンストラクタの引数に取り、IHogeインターフェースを実装したHogeAdapterクラスが既にあります。
その逆バージョンのクラスの名前をお願いします。
IHogeインターフェースをコンストラクタの引数にとり、Hogeクラスの派生クラスの
名前です。

58デフォルトの名無しさん:2011/08/17(水) 20:03:13.18
>>57
いくら設計議論のスレでなくても、さすがにそれは根本的に考え方がおかしいといわざるを....
59デフォルトの名無しさん:2011/08/17(水) 20:05:50.81
>>58
いや、考えようによっては、名前を決めるということは設計に他ならないともいえる。
だから、設計に口出すのも似たようなもんだとも思える。
60デフォルトの名無しさん:2011/08/17(水) 22:41:29.34
57ですが、全然おかしくないと思いますが。
具体的にはStreamクラスがあります。基本は派生クラスのFileStreamやらでストリームを
扱います。ただ、WindowsのCOMに渡すとき、COMのIStreamインターフェースを
渡す必要があるのですが、そのために、既にStreamAdpaterクラスが用意されてます。
また、COMから返るのはIStreamインターフェースなのですが、通常のライブラリ
では、Streamクラスをベースに扱うようにできてるので、逆バージョンがほしいのです。

61デフォルトの名無しさん:2011/08/17(水) 22:46:02.42
具体的に書くべきでした。すみません。
62デフォルトの名無しさん:2011/08/17(水) 23:35:44.87
>>60
ではベタにComStreamAdapterとか。
まあこれでよければ質問しないかもしれんけどw
でも変に捻っても意味ないよねこういうのは。

アダプダーだと考えなければ、単にComStreamというのもあり?
63デフォルトの名無しさん:2011/08/18(木) 00:47:55.23
>>62
StreamAdapterのまんまでIStreamAdapterぐらいしか思いついていませんでした。
ありがとうございます。
64デフォルトの名無しさん:2011/08/20(土) 09:56:05.41
succやpredをよく見るのですが、これ何の略でしょうか?
前とか先とか関連だと思うのですが...
65デフォルトの名無しさん:2011/08/20(土) 09:58:10.48
successor
predecessor
かな?
6664:2011/08/20(土) 10:13:15.23
>>65
ありがとうございます。
なるほど。省略したくなるような綴りですね...
67デフォルトの名無しさん:2011/08/21(日) 22:01:19.31
class C {
public:
 void hoge(bool _isXXX){ // _isXXXはXXXであるか判定する処理を行うかのフラグ
  if (_isXXX) isXXX();
  ...
 }
private:
 bool isXXX(){...} // XXXであるか判定する
}

ここではアンダーバーをつけて区別しましたが、isXXXの名前がかぶってしまいます。
引数の方のisXXXの命名がおかしい気はするのですが、なんて命名すればいいのでしょうか?
68デフォルトの名無しさん:2011/08/21(日) 22:40:37.91
メソッドもおかしいよ
返り値使わずに捨ててるし
69デフォルトの名無しさん:2011/08/21(日) 22:44:25.26
>>68
ああメソッドの呼び出しの部分は省略しすぎました。
XXXであるかの判定結果は利用してる物としてください。
70デフォルトの名無しさん:2011/08/21(日) 22:50:11.76
べただが...

class C {
public:
 void hoge(bool doCheckXXX){ // doCheckXXXはXXXであるか判定する処理を行うかのフラグ
  if (doCheckXXX) isXXX();
  ...
 }
private:
 bool isXXX(){...} // XXXであるか判定する
}
71デフォルトの名無しさん:2011/08/21(日) 23:19:25.82
・IBinaryReader インターフェイス
 ストリームからデータを読み取る関数 long ReadLong(), bool ReadBytes(int size) などを持つ
 シーク機能は持たない

が定義されているとして、このインターフェイスを使用する側に x バイト以上の読み取りを禁止させるアダプタークラスの名前を考えて欲しい

・Xxx クラス(またはインターフェイス): IBinaryReader インターフェイスから継承
 void SetReadableBytes(int) 関数で読み取ることができるバイト数を設定することができる
 設定されたバイト数を超える読み込みが発生したのであれば、その地点で例外なんたらかんたら
72デフォルトの名無しさん:2011/08/22(月) 00:00:28.56
>>71
ニュアンスがちょっと違ってくるかもしれんが、
Blocked という単語を付けてはどうだろうか

たとえば、IBinaryReaderBlocked、IBlockedBinaryReader とか
73デフォルトの名無しさん:2011/08/22(月) 00:06:20.46
>>71
その発想だと、IBinaryReaderを実装したXxxクラスをIBinaryReaderとして扱ったとき、
予期しない(チェック不能な)例外が発生しうることになる。

ちょっとおかしいのでは?
個人的にはIBinaryReader自体にストリームがサイズという概念を持つかどうかを
表すプロパティ(HasLengthとか?)を持たせた方が自然に感じる。
74デフォルトの名無しさん:2011/08/22(月) 00:32:26.18
>>72-73
多分君ら勘違いしてる
75デフォルトの名無しさん:2011/08/22(月) 04:20:11.60
RestrictedBinaryReader
7671:2011/08/22(月) 04:20:40.83
>>72
参考にさせて貰う
自分で考えたのは
IBinaryZoneReader、IBinaryPartReader
こんな感じ

>>73
サイズという概念を持たないものが IBinaryReader だとして、サイズを持つものはどういう名前にするべき?

アダプタークラスなんて書いたのが混乱の元になっているのかもしれない
IBinaryReader 自体はソースストリームからのバイナリ形式の読み取りを行うためのインターフェイス
Xxx も基本概念は同じだけど、読み取り可能バイト数(ReadableBytes)という概念を持つ
ReadableBytes = ソースストリームのサイズ(または残りのバイト数)とは限らない
7771:2011/08/22(月) 04:34:33.18
void hoge(HogeTarget pTarget, IBinaryReader reader)
 Xxx newReader(reader, 3) // 3 = 読み取り可能バイト数

 pTarget->onRead(newReader);
 newReader->skip(newReader->getReadableSize()); // skip(x) = x バイトを読み捨てる
}

bool HogeTarget::onRead(Xxx reader) {
 if (reader->getReadableSize() < 4) {
  return false;
 } else {
  this.value = reader->readLong();
 }
}

c++とかjavaに似せたコードで書くとこんな感じ?
78デフォルトの名無しさん:2011/08/22(月) 05:27:51.68
そのクラスの使い道は具体的に何?
79デフォルトの名無しさん:2011/08/22(月) 07:12:45.69
アクセス自体が可能かどうかチェックしたいとか?
それかヘッダ(3バイト・・だと)を高速に読み出したいとか。
8067:2011/08/22(月) 10:16:00.74
>>70
thx
8171:2011/08/22(月) 12:09:47.92
>>78
HogeTargetにXxxを引数として受け取るセッタを持たせたい
>>77ではonRead(Xxx)になっているが、SetValue(Xxx)に置き換えてくれ
同様に、クラス名もHogeTargetからLongTargetに置き換えてくれ

また、IBinaryReader派生物はソースストリームのシークをサポートしない
82デフォルトの名無しさん:2011/08/22(月) 13:43:29.25
で、そのクラスの使い道は具体的に何?
8371:2011/08/22(月) 13:55:14.88
>>78
>>82
お前たちがナンバーワンだ
84デフォルトの名無しさん:2011/08/22(月) 13:59:58.82
死ねゴミ
85デフォルトの名無しさん:2011/08/27(土) 04:40:13.03
この時期はどこのスレも荒れるな
はーまじはー
86デフォルトの名無しさん:2011/09/02(金) 02:50:23.14
既にあるもの(ファイルやメモリ)を元にインスタンス作る関数なんですが
CreateかLoadにするか迷ってます
87デフォルトの名無しさん:2011/09/02(金) 03:15:40.65
CreateしてからLoad、もしくはCreateの内部処理でLoadがあるイメージ
88デフォルトの名無しさん:2011/09/02(金) 03:28:18.75
deserializeも検討
89デフォルトの名無しさん:2011/09/02(金) 09:46:35.38
staticならFromStreamかな
90デフォルトの名無しさん:2011/09/02(金) 23:39:04.37
CreateHogeFromZipFile
91デフォルトの名無しさん:2011/09/03(土) 09:13:19.78
どうも
92デフォルトの名無しさん:2011/09/14(水) 10:07:17.60
必ず第一引数でインスタンスを指すポインタを受け取る関数を集めたクラス
なんて言えばいいか、非侵入型のメンバ関数を集めたクラス?

class xxx // ←これ
{
 const std::wstring & GetName(void * pTarget) const;
 void Print(void * pTarget, const std::wstring & s);
 int Hoge(void * pTarget, int foo, int bar);
};

int data;
xxx xxxInstance;
int dataHoge = xxxInstance(&data, 2, 3);
93デフォルトの名無しさん:2011/09/14(水) 16:00:38.58
>>92
いまいち掴めないんだが、xxxのインスタンスはターゲットを使って自己の内部状態を更新するの?
94デフォルトの名無しさん:2011/09/14(水) 16:43:58.98
あーごめん、記述ミスってるな

誤: int dataHoge = xxxInstance(&data, 2, 3);
誤: int dataHoge = xxxInstance.Hoge(&data, 2, 3);

>>93
xxx クラスのメンバ関数の記述次第だが、
xxxInstance はメンバ関数を呼び出した際に、仮引数 pTarget が示す先を更新する可能性がある
xxxInstance はメンバ関数を呼び出した際に、xxxInstance 自身(this)を更新する可能性がある
95デフォルトの名無しさん:2011/09/14(水) 17:03:26.48
>>94
う〜む、それはやはりコード中での役割で名付けるべきなんじゃないかなあと思う
集めたから、ってだけでは名付けにくいな
96デフォルトの名無しさん:2011/09/14(水) 17:38:43.76
役割といわれるとなんとも説明し難い
以下2つの記述は同じ動作を意味している感じ

class Foo
{
 const std::wstring & GetName() const;
 void Print(const std::wstring & s);
 int Hoge(int foo, int bar);
 ...
};

Foo foo;
foo.Print("てst");

// -----

class xxx
{
 const std::wstring & GetName(const Foo * pTarget) const;
 void Print(const Foo * pTarget, const std::wstring & s);
 int Hoge(const Foo * pTarget, int foo, int bar);
 ...
};

xxx xxxInstance;
Foo foo;
xxxInstance.Print(&foo, "てst");
97デフォルトの名無しさん:2011/09/14(水) 19:37:20.12
C#の拡張メソッド的なノリ?

TargetHelperとかTargetExtenderみたいな感じだろうか
9892:2011/09/15(木) 01:32:42.52
なるほど、確かにそれに酷似しているな>>拡張メソッド
上記の場合、FooExtenderとか、Foo追加する機能Extenderがいいかもな
ありがとう。とりあえずその線で命名してみる
99デフォルトの名無しさん:2011/10/05(水) 10:49:54.29
引数で指定のレコードを更新したユーザーのIDの一覧を取得するみたいな
そんな名前のメソッドをお願いします。
GetUserIDs(ARecordID)
みたいな。
更新したのニュアンスの英語をどこにつければいいでしょうか。お願いします。
100デフォルトの名無しさん:2011/10/05(水) 12:45:24.43
GetUserIDsUpdatedRecord

英文の中なら UserIDs と Updated の間に which を入れる
101デフォルトの名無しさん:2011/10/05(水) 15:06:11.85
なんじゃそりゃ
102デフォルトの名無しさん:2011/10/05(水) 21:41:35.18
お気に召しませんか
103デフォルトの名無しさん:2011/10/05(水) 22:33:48.57
はい
104デフォルトの名無しさん:2011/10/06(木) 01:08:19.61
find_editors_by_record_id(record_id)
でいいだろ
105デフォルトの名無しさん:2011/10/06(木) 13:24:20.55
GetUserIdsWhichUpdatedThisRecord(recordId)
106デフォルトの名無しさん:2011/10/06(木) 15:25:44.90
>>99です。返事後れました。
やっぱ、しっくりくるものなさげですね。>>100みたいな感じにします。
107デフォルトの名無しさん:2011/10/06(木) 16:14:58.50
whoを使う選択肢はないの?
108デフォルトの名無しさん:2011/10/06(木) 16:23:54.89
ないよ
109デフォルトの名無しさん:2011/10/06(木) 17:45:20.74
ないね
110デフォルトの名無しさん:2011/10/06(木) 17:57:06.13
説明的な名前のメソッドは、ウンコにかける消臭剤のようなもの。
111デフォルトの名無しさん:2011/10/06(木) 18:00:50.42
関係代名詞は使いたくないですね。
GetUpdatedByUserIDs(RecordID)ってのも名前に使うときはありなんですかね。
ググってたらそんな感じのがありましたんで。
112デフォルトの名無しさん:2011/10/06(木) 18:48:33.15
絶望的に英語ができない
113デフォルトの名無しさん:2011/10/06(木) 19:01:37.42
GetUpdaters
114デフォルトの名無しさん:2011/10/06(木) 20:33:47.81
>>99
よくわからんが、GetModifiersとかGetUpdatersみたいな感じ?

>>110
むしろウンココード量産するタイプの奴はたいてい君のように嘯く
115デフォルトの名無しさん:2011/10/06(木) 21:20:36.65
GetUpdatedByUserIDs

プログラマ脳による翻訳: ユーザーIDによって更新された"それ"を取得する
現実: ユーザーIDで更新されてください。
116デフォルトの名無しさん:2011/10/06(木) 21:29:01.49
>>113-114でFA
>>104が惜しいくらいであとはセンス無し
117デフォルトの名無しさん:2011/10/06(木) 21:56:32.16
>>116
こういう場合、どういうセンスが求められているの?
118デフォルトの名無しさん:2011/10/09(日) 15:46:05.85
OSとのリソースのやり取りをラップして一括管理するクラスってどんな名前がいいかな?
○○マネージャーは駄目だっていうけどこの場合マネージャーしか思い浮かばない
119デフォルトの名無しさん:2011/10/09(日) 16:06:26.07
BinwanProducer でどう?
120デフォルトの名無しさん:2011/10/09(日) 17:36:38.55
>>118
一括管理って、具体的に何をするの?
121デフォルトの名無しさん:2011/10/09(日) 18:46:08.07
>>120
実際に確保解放するのをマネージャに任せて
他のリソースが必要なクラスはこのマネージャを仲介して貰う
マネージャは参照数などを管理したり別スレッドで実際の確保解放を行ったりする
122デフォルトの名無しさん:2011/10/09(日) 20:03:54.01
~ManagementService
実質何も解決しないけど
123デフォルトの名無しさん:2011/10/09(日) 20:25:36.91
HogeManager
  └ Hoge

じゃなくて

Hoge
  └ HogeDevice

みたいに、マネージャの方をシンプルな名前にするのは?
124デフォルトの名無しさん:2011/10/09(日) 20:39:32.12
>>121
そのマネージャを利用する側のクラスの立場に立てば、
そのマネージャはリソースを持っているかのように見えるわけだ

実際に参照数を管理してるのかどうかは、利用する側にとってはどうでもいい話
もしかしたら実際には参照数以外の別の何かを管理して上手くやっているのかも知れん
スレッドが作られるかどうかも、利用する側には関係ないことなんだろ?

つまり、リソースが必要ならがそのマネージャが持っている事が分かりさえすれば良い

というわけで、単に Resource クラスでいいような気がするが、どうだろう
Resource クラスが別にあって、それを束ねているのなら ResourcePool とか
125デフォルトの名無しさん:2011/10/10(月) 03:52:59.07
SystemResource と SystemResourceManager
126デフォルトの名無しさん:2011/10/10(月) 08:01:33.85
お前ら質問を変えようと必死だなw
そのまま答えろよw
127デフォルトの名無しさん:2011/10/10(月) 09:28:10.27
ResourceLoader
128デフォルトの名無しさん:2011/10/10(月) 12:36:45.74
質問者には悪いけど、なんか意味不明っていうか....

GCない言語でGCみたいな働きをするクラスが欲しいのかも知れんけど、
ちょっと無理があるんじゃないかと。
参照数を管理する、なんて簡単に言うけどどうやってやるんだろう....
129デフォルトの名無しさん:2011/10/10(月) 12:52:13.65
利用者が明示的にマネージャのメソッドを呼ぶんだろ
集中管理する意味は知らないけど別にできなくはない
130デフォルトの名無しさん:2011/10/10(月) 12:56:12.77
>>129
そうやって、リリース側を呼び忘れるとw
不穏な設計に付き合わされる日々が待っている、と。
131デフォルトの名無しさん:2011/10/10(月) 13:08:57.68
「変換された情報」という意味が分かるように変数名をつけたいです
そのまま英語にしますと

transformedInfomation
translatedInformation
convertedInformation

という辺りが妥当ですが、さすがにちょっと長いです
なので省略したいのですが、後半の Information は Info に略せるとして、
前半は

transed
conved

などとしても、海外の方たちもちゅんと意図をくんでくれるでしょうか
132デフォルトの名無しさん:2011/10/10(月) 13:26:23.42
>>131
その変数が100箇所に登場するとかでなければ、変に略す必用ないでしょ。

略すにしても暗号みたいのは却下。
ただでさえ他人の書いたコードなんて暗号なのに、そんな下らない謎解きまでさせるのは勘弁して欲しい。

略すならInformationを丸ごと削る方向で。
translatedとかmodifiedとか。
もちろんこれはローカルのみ可
133デフォルトの名無しさん:2011/10/10(月) 14:23:26.82
俺ならtranslatedだな。
134デフォルトの名無しさん:2011/10/10(月) 14:25:31.09
>>132
> そんな下らない謎解き

つまり、transed や conved などは一般的ではない謎解きレベルということですね

参考になりました
translated にします
135デフォルトの名無しさん:2011/10/10(月) 14:30:49.41
EncodedInfo
136デフォルトの名無しさん:2011/10/10(月) 16:16:35.52
どんな変換をしたかが重要だろ
例えば圧縮変換ならcompressedにすればtranslatedやencodedより明確になる
137デフォルトの名無しさん:2011/10/10(月) 16:51:34.46
>>136
なるほど、確かにその通りです

ただ、今回の質問の趣旨は
プログラミングの世界で transed や conved が一般的かどうか、というもので、
それを訊く為に仮想的な状況を作って質問しました

素直に最初から 「transed や conved は一般的か」 とだけ質問すべきでした
すいませんでした
138デフォルトの名無しさん:2011/10/15(土) 09:00:16.83
デバック用にクラスの内容を(そのクラスの内容が見えるように)ストリームに出力する関数の名前ってDumpでいい?
139デフォルトの名無しさん:2011/10/15(土) 10:12:57.78
Rubyとかだと文字列を返すinspectってメソッドがあるな。
140デフォルトの名無しさん:2011/10/17(月) 19:30:05.18
>>134
一的な謎解いいと?
141デフォルトの名無しさん:2011/10/18(火) 22:02:21.78
ログインフォームは英語でそのままですが、登録フォームは英語で何て言うんですか?
ユーザ登録時とかのフォームです
Entry Form、SignUp Form、Register Fromとか考えたんですが・・・
142デフォルトの名無しさん:2011/10/18(火) 22:34:19.54
registration form
143デフォルトの名無しさん:2011/10/18(火) 22:42:36.37
EntrySheet
144デフォルトの名無しさん:2011/10/19(水) 13:58:22.95
@ entry form: 入力フォーム
A registration form: 登録フォーム
どちらも同じ用途に使われるけど、「登録フォーム」を問われているんだからAだろうね
145デフォルトの名無しさん:2011/10/19(水) 15:14:43.36
前に自分が書いたソースを見直したら、RegFormだった(´・ω・`)
146デフォルトの名無しさん:2011/10/19(水) 15:18:35.03
>145 RegistFormよりははるかにマシ
147デフォルトの名無しさん:2011/10/19(水) 15:19:46.59
RenForよりまし
148デフォルトの名無しさん:2011/10/19(水) 19:01:54.08
レンフォー大臣
149デフォルトの名無しさん:2011/10/19(水) 19:30:27.28
それさいあく
150デフォルトの名無しさん:2011/10/19(水) 21:14:40.63
チェック済みのフォームデータを表す変数名を教えてください
151デフォルトの名無しさん:2011/10/19(水) 21:19:00.06
チェッキンファッキンフォーム
152デフォルトの名無しさん:2011/10/19(水) 21:54:19.90
CheckedFormData じゃあかんのか
153デフォルトの名無しさん:2011/10/20(木) 12:45:31.29
validFormDataだろ
154デフォルトの名無しさん:2011/10/20(木) 13:27:10.65
チェックマーク記入済みっていう意味かもしれないぞw
155デフォルトの名無しさん:2011/10/20(木) 13:52:58.10
フォームから入力されたデータで、誰かのチェックが通ったもの、だよね?
156デフォルトの名無しさん:2011/10/20(木) 14:39:11.90
チェックはしたけど正しいかどうかは保証されてないデータかもしれない
157デフォルトの名無しさん:2011/10/20(木) 16:05:58.87
validに一票
158デフォルトの名無しさん:2011/10/20(木) 18:28:03.67
CheckedFormData: チェック済みフォームデータ
ConfirmedFormData: 確認済みフォームデータ
ValidFormData: 有効であるフォームデータ
159デフォルトの名無しさん:2011/10/22(土) 09:08:49.49
>>158
みなさまありがとうございました感謝
160デフォルトの名無しさん:2011/10/24(月) 22:34:58.50
・タイプとパラメーターのセットであるメッセージクラス
・メッセージを受け取り解釈し何らかの動作をするハンドラクラス
・メッセージのタイプを調べそのタイプのメッセージを要求しているハンドラすべてにメッセージをコピーして渡す?クラス

?クラスの名前はメッセージマネージャ以外ではなにが適切ですか?
161デフォルトの名無しさん:2011/10/24(月) 22:37:37.75
メッセージディスパッチャ
162デフォルトの名無しさん:2011/10/24(月) 22:38:38.33
Dispatcherとか?
163デフォルトの名無しさん:2011/10/25(火) 09:58:05.48
SwitchingHub
164デフォルトの名無しさん:2011/10/25(火) 11:09:49.68
message distributor
165デフォルトの名無しさん:2011/10/25(火) 12:52:19.86
次へ、と前へ、で next, prev としてるんですが、
これらを総称した場合の呼び方って何でしょうか?
166デフォルトの名無しさん:2011/10/25(火) 13:01:01.80
連環でいいんじゃないかな
167デフォルトの名無しさん:2011/10/25(火) 13:10:21.59
この日本語初めて聞きました。
調べたんですが、英語だと linkage であってます?
168デフォルトの名無しさん:2011/10/25(火) 14:47:13.36
Navigatorってのも見たことがある
169デフォルトの名無しさん:2011/10/25(火) 15:11:20.20
link
【名詞】【可算名詞】
1
 a(鎖の)環(かん), 輪.
 b(編み物の)目.
 c[通例複数形で] カフスボタン 《★【比較】 「カフスボタン」は和製英語》.
2 (鎖状につながれたソーセージの)一節.
3 結びつけるもの[人]; 連結,きずな,関連 〔with,between〕.

十分じゃねw
170デフォルトの名無しさん:2011/10/26(水) 00:37:40.59
区切りが分かるように特例を設けますか?
ルールを徹底して一貫性を貫きますか?
@メッセージサービス サービスクラス
Aサービスメッセージ サービスクラス
後ろが必ず サービス って付きます。
僕はツール作成の容易さを考慮したくて
読みやすさを犠牲にしました。
みんなの意見が聞きたい


171デフォルトの名無しさん:2011/10/26(水) 00:40:49.62
区切りがわからない事態が発生していないのでルール通り
172デフォルトの名無しさん:2011/10/26(水) 00:43:40.27
まずツールってどういう奴よ
173デフォルトの名無しさん:2011/10/26(水) 01:02:58.62
>>172
○○△△サービスクラスってあったら○○と△△が必ず「辞書」みたいなライブラリに存在する
メッセージ+サービス=メッセージングサービスとか造語作る人もいるけど
面倒なのでメッセージは修飾語も主語もメッセージで統一したい
サービスも同じ要領

ツールは設計書に記載してあるクラス名からソースを自動生成するもの
いろんなドキュメントにクラス名やその情報が記載されてある
"似て非なるもの"は厄介
174デフォルトの名無しさん:2011/10/26(水) 02:03:26.79
よくわからん・・・
175デフォルトの名無しさん:2011/10/26(水) 07:16:35.80
日本語で書かれてるはずなのに何を言いたいかがちんぷんかんぷんだ
ひょっとしたら寝たら頭スッキリしてわかるかも、と思ったけど無理だた
176デフォルトの名無しさん:2011/10/26(水) 08:00:04.45
まあ、難しいプロジェクトにいるって事ですw
縁のない人はスルーしてw
177デフォルトの名無しさん:2011/10/26(水) 08:23:13.28
外人?
178デフォルトの名無しさん:2011/10/26(水) 09:07:55.30
難しいプロジェクトだからどうこうのレベルじゃない。
説明が下手すぎるって言ってるんだ。
179デフォルトの名無しさん:2011/10/26(水) 09:09:16.04
2ちゃんにアドバイスを求めてくる難しいプロジェクト(笑)
180デフォルトの名無しさん:2011/10/26(水) 11:05:33.13
クソみたな命名規約があるってことだろ
181デフォルトの名無しさん:2011/10/26(水) 15:11:20.40
AXService
BYMessage
CZMessageService
(A,B,C:修飾語、X,Y,Z:主語)

てことか?

区切りって何よ?特例って君の裁量で設けていいもんなの?
ルールがあるなら基本それ守れよ。
「辞書」みたいなライブラリって何よ?
複数のドキュメントからソース生成すんの?

どこからツッコんで良いかわからんようになった
もっぺん最初から頭ん中整理しなおしてから質問に来てくれ
182デフォルトの名無しさん:2011/10/26(水) 19:01:59.89
「クラス名」を指定することで、そのクラスと、それに関連するソースコードを自動生成するプログラムを作成しています。
例えば「HogeMessenger」と指定すると、HogeMessengerServiceクラスと、それに関係するソースコードが自動生成されます。
この指定するクラス名について悩んでいます。

仕様上、クラス名のサフィックスとして「Service」を付けることになっていますが、
指定するクラス名が「MessageService」だとすると、実際のクラス名は「MessageServiceService」になってしまい、格好が悪い
同様に、「ServiceMessage」→「ServiceMessageService」になってしまい、二度同じ単語が出てきて格好が悪い

「指定するクラス名の最後が「Service」であれば、実際に作成されるクラスのクラス名のサフィックスに「Service」を付けない」
等の特例を設けるべきでしょうか、それとも設ける必要はありませんか?
自分は特例を設けない方向で考えていますが、みなさんはどうしますか?

という質問なのかな?
183デフォルトの名無しさん:2011/10/26(水) 19:48:06.32
目から香川県が落ちるくらい分かりやすい
184デフォルトの名無しさん:2011/10/26(水) 19:55:15.85
自分なら自動生成される名前にかっこよさは求めない。
ただ、人間が指定する部分と自動的につけられた部分が区別つくようにすると思う。

MessageService → MessageService_Service
ServiceMessage → ServiceMessage_Service

とか。
185デフォルトの名無しさん:2011/10/26(水) 19:55:28.29
>>182
186デフォルトの名無しさん:2011/10/26(水) 20:33:13.20
その辺り、C# なら名前はユーザーに自由に決めさせて(他と被ったらユーザーの責任)、
属性で区別するけどな
187デフォルトの名無しさん:2011/10/26(水) 20:54:37.01
まあServiceなんつう業務仕様にも現れそうな一般的単語を
自動生成やらコーディング規約やらに含めるのが間違いなんだろうな
188デフォルトの名無しさん:2011/10/27(木) 01:08:52.17
最近のレスだと>>187だけに同意。
間違えてる時って、わりと最初のほうから間違えてるから、
最後のほうになって悪あがきしたところでもう詰んでる。
189デフォルトの名無しさん:2011/10/27(木) 01:14:07.65
自動的に何でもかんでもServiceを付けるようにした事に何のメリットがあるの?
190デフォルトの名無しさん:2011/10/27(木) 22:05:08.33
ファイル検索するときに*Serviceで容易に拾えるじゃん
他にも沢山ファイルがあるとしてだが
191デフォルトの名無しさん:2011/10/27(木) 22:40:49.99
俺ならそんなありがちな単語でなくて、もっとかぶりそうにない文字列を選ぶけどね・・・
192デフォルトの名無しさん:2011/10/27(木) 23:04:45.92
SrvとかServとかSvとかか?
その造語を誰が伝えてどうやって広める?
193デフォルトの名無しさん:2011/10/28(金) 00:44:21.50
>>192
造語じゃなくてそのシステム固有のプレフィックスみたいな決め事だよ。
生成された名前には問答無用でそれをくっ付けるんだよ。
ネームスペースを使えない(使わない)ような環境では普通だろ。
194デフォルトの名無しさん:2011/10/28(金) 00:46:09.31
例えば yacc が吐くコード中のシンボルの yy みたいなのね。
195デフォルトの名無しさん:2011/10/28(金) 13:59:05.69
>>190
頭悪いソリューションだな
196デフォルトの名無しさん:2011/10/29(土) 00:07:22.14
頭の良いソリューションに出会ったためしがない
197デフォルトの名無しさん:2011/10/29(土) 00:22:38.91
simulationはシミュレーションでもシュミレーションでも気にならないが、
solutionをソリューションと発音されると気になって仕方がない。

頭悪い奴御用達の渡辺美里の例の歌も気になってしょうがなかったな。
198デフォルトの名無しさん:2011/10/29(土) 01:16:25.98
スルーシュンだよな
199デフォルトの名無しさん:2011/10/29(土) 01:17:47.09
もういいよ
200デフォルトの名無しさん:2011/10/29(土) 02:00:40.77
>>197
わかりはじめた!
201デフォルトの名無しさん:2011/10/29(土) 07:29:33.83
むしろ趣味レーションは気にしろよw
202デフォルトの名無しさん:2011/10/29(土) 12:15:43.09
スィサイドスルーシュン!
203デフォルトの名無しさん:2011/10/29(土) 12:36:59.25
プレフィックスって見辛くて仕方ないからサフィックスにしてほしい
204デフォルトの名無しさん:2011/10/29(土) 12:45:15.42
うむアクセス演算子の記述も逆順を許容できるようにすべきだよな
205デフォルトの名無しさん:2011/10/29(土) 16:15:50.91
アンダーバーのプレフィクスを使うと総合開発環境の入力候補でprivateメンバを後ろに追いやる事ができるのが便利なんだよ

206デフォルトの名無しさん:2011/10/29(土) 16:24:59.02
>>205
現状それしか方法がない、仕方がないとは言え、
やはり解決方法としてはダサいの一言に尽きますなぁ

入力候補の並び替え機能は何で付けないんだろ
207デフォルトの名無しさん:2011/10/29(土) 17:07:54.16
privateメンバを後ろに追いやりたいという動機そのものが理解できないけどね俺は。
208デフォルトの名無しさん:2011/10/29(土) 18:06:11.19
privateとかpublicを判断してソートしてくれりゃいいのにね
intelliなんだから
209デフォルトの名無しさん:2011/10/29(土) 18:13:09.03
むしろ、そんな必要性を感じるのなら、きっとコードの書き方が間違ってるんだよ。
210デフォルトの名無しさん:2011/10/29(土) 19:26:38.46
>>209
一覧の表示方法とコードの書き方にどのような繋がりがあるのか、
もっとしっかりちゃっかりまったり説明してくれ
211デフォルトの名無しさん:2011/10/29(土) 19:41:55.54
当たり前のことだが、アクセスレベルとはクラスの外側からのメンバーの見え方を制御するもの。

つまり視点をクラスの内部に置いている時(そのクラスを書いている時)には
呼び出そうとしているメソッドのアクセスレベルなんか気にしても意味ない。

っていうか、メソッド一覧がアクセスレベルで分類なんかされたら
かえってありがた迷惑でしかない。
212デフォルトの名無しさん:2011/10/29(土) 20:02:37.84
>>211
外からアクセスしねーのに一覧に表示されたら邪魔だろ
そんな簡単なことも分かんねーのかモンキー
213デフォルトの名無しさん:2011/10/29(土) 20:06:43.73
intelliって言ってるからMSのVSの事を言ってるんだと思うが、
元々MSのインテリセンスは現在のコンテキストから見えるメンバしか表示されませんよ。

何意味不明なこと言ってるんだろうね。
214デフォルトの名無しさん:2011/10/29(土) 20:13:42.29
などと意味不明の供述をしており動機は未だ不明
215デフォルトの名無しさん:2011/10/29(土) 20:54:54.39
>>213
病院行ってこい
216デフォルトの名無しさん:2011/10/29(土) 22:42:29.85
(え、protected/privateでも表示されるよな・・・)
217デフォルトの名無しさん:2011/10/29(土) 22:53:50.02
213っておかしなこと言っているか?
その通りだと思ったが
protected/privateが現在のコンテキストから見えれば表示される
218デフォルトの名無しさん:2011/10/29(土) 22:57:07.69
C#は出ないけどVC++はコンテキスト関係なく全部表示されなかったか
219デフォルトの名無しさん:2011/10/30(日) 05:57:32.71
変数名にクラス名サフィックス付いてるのよく見るけど良いのか悪いのか分からない
熟語になるし一目で型は分かるけど補完に使えない
220デフォルトの名無しさん:2011/10/30(日) 10:30:28.54
>>218
またVC#贔屓か
221デフォルトの名無しさん:2011/10/30(日) 11:44:24.83
↑アホ
222デフォルトの名無しさん:2011/10/30(日) 11:49:43.31
贔屓どころかC++のインテリセンスの方が普通に考えてコストかかってるだろう
C#のように完璧は無理だから間違って出るはずのものが出ないよりは全部出たほうがマシって判断なんじゃね
223デフォルトの名無しさん:2011/10/30(日) 12:02:25.34
いいから黙ってろザコ供
224デフォルトの名無しさん:2011/11/02(水) 12:49:40.72
何か処理する前と後に呼び出されるコールバック関数があるんだけど
Hoge(preHoge , ???Hoge);
???って何が入るの?
225デフォルトの名無しさん:2011/11/02(水) 13:01:25.04
preの反対はpost
226デフォルトの名無しさん:2011/11/02(水) 13:53:23.93
はい次の患者さんどうぞ
227デフォルトの名無しさん:2011/11/02(水) 17:42:51.33
callableかな
228デフォルトの名無しさん:2011/11/02(水) 19:05:14.63
HogeHeader
HogeFooter

・・・最高にダサいな
229デフォルトの名無しさん:2011/11/02(水) 22:47:39.87
ディスパッチャーとコントローラーってどう違うの・・・?
230デフォルトの名無しさん:2011/11/02(水) 22:57:48.15
何もかも違うだろう
何が同じだと思ったんだ
231デフォルトの名無しさん:2011/11/02(水) 22:58:14.64
ディスパッチャーは何かを適切なところへ送り届ける役目。
コントローラーは何かを管理・制御する役目。
232デフォルトの名無しさん:2011/11/02(水) 23:41:37.27
むしろコントローラーといったらディスパッチされる側になることが多いんじゃないか
233デフォルトの名無しさん:2011/11/03(木) 01:20:55.79
>>231
ありがとう
ということは今までコントローラーとつけてたのはディスパッチャーに
マネージャーとつけてたのはコントローラーにしないとなあ
234デフォルトの名無しさん:2011/11/03(木) 08:29:06.18
コントローラーは入力を適切な形に変換して対象のオブジェクトに届けるんだよ
235デフォルトの名無しさん:2011/11/03(木) 09:04:19.79
例として、2Dのシューティングゲームを想像してほしいのだけれど、
自機、敵、弾丸、アイテムなど、プレイ中に出現する「動くもの」全般の基底クラスの名前をお願いしたい。

これらは、自身の座標、移動量、生存フラグ、出現してからの時間といった変数の他、
自身の更新メソッド&描画メソッドなどを持っている。

236デフォルトの名無しさん:2011/11/03(木) 09:14:42.80
class MovableEntity : public GameEntity ;
class DynamicEntiry : public GameEntity ;
237デフォルトの名無しさん:2011/11/03(木) 11:11:46.66
class Hoge
{
public:
SomeResourceHandle Get(void) { return hRes ; }
private:
SomeResourceHandle hRes ;
};

リソースの所有権がHogeにあって、Getで取得した生ハンドルを外部で保持するのはまずい
ということを利用者にわかりやすく伝えるメソッド名はなにがよいか
238デフォルトの名無しさん:2011/11/03(木) 11:31:57.01
>>237
こんな答えは望んじゃいないだろうが、俺なら外に出さなくてすむようにする。
そしたら、少なくともそういう難しいメソッド名(や、使いにくいルールの押し付け)で悩まなくてすむ。
239デフォルトの名無しさん:2011/11/03(木) 11:35:13.60
>>237
俺なら、そういう「適切な利用方法」に関する情報は名前には入れない
名前には「それは何か」という情報だけを入れる

外部で保持されてはまずい生ハンドルがどうしてGetで取得できちゃうの?
240デフォルトの名無しさん:2011/11/03(木) 11:44:32.43
そういう情報はコメントで書くもんだ
241デフォルトの名無しさん:2011/11/03(木) 11:49:45.20
DangerousGetHandle()
242デフォルトの名無しさん:2011/11/03(木) 12:21:54.03
>>236
ありがとう MovableEntityにしてみる
243デフォルトの名無しさん:2011/11/03(木) 12:33:41.70
>>237
.NETだと下層のAPIをラップしたものなど、動作に関して使用者が責任を
持つ必要がある安全でない型やメンバーはUnsafeプレフィックスが付く

この例だと、UnsafeGetHandle()かUnsafeHandle()あたり
後はドキュメントに取得したハンドルの有効期限などを記述すれば良い
244デフォルトの名無しさん:2011/11/03(木) 13:05:49.72
.NETだとほんとにヤバいのはDangerous
245デフォルトの名無しさん:2011/11/03(木) 15:50:41.16
.NETにある機能の名前ってよく質問に出るね
これくらいググれないものなのかね
246デフォルトの名無しさん:2011/11/03(木) 15:52:53.23
機能から名前って、意外にググるの難しいだろ
余計なものがいっぱい混ざってるし
だから、逆引き辞典の需要があるわけだし
247デフォルトの名無しさん:2011/11/03(木) 15:59:49.02
そうかな
まあ俺が上手いだけか
248デフォルトの名無しさん:2011/11/03(木) 16:39:21.37
そうだよ

だからコツを教えてあげなよ
249デフォルトの名無しさん:2011/11/03(木) 16:42:50.06
247 さんかっこいー
250デフォルトの名無しさん:2011/11/03(木) 20:21:03.48
getAllXXX
のXXXは単数形?複数形?
251デフォルトの名無しさん:2011/11/03(木) 20:28:39.76
複数
252デフォルトの名無しさん:2011/11/03(木) 20:46:55.47
それは、中学英語の範疇ではないのか
253デフォルトの名無しさん:2011/11/03(木) 20:48:43.60
単数にしてる人多いんだよね
254デフォルトの名無しさん:2011/11/03(木) 21:01:57.14
英語的にはallの場合は可算名詞であっても単数になる場合があったと思ったけどね。
プログラムでは常に複数形にするのが無難だとは思うけど
255デフォルトの名無しさん:2011/11/03(木) 21:26:41.46
あれ、念のため確認してみたら、all+可算名詞の場合は常に複数形が正しいみたいだな。

ただ可算名詞であっても、同じ名詞が抽象名詞として使われる場合単数形になる、
ということはあるみたいで、それとごっちゃになって覚えていたのかな。
256デフォルトの名無しさん:2011/11/03(木) 22:47:02.39
複数が前提だけどひとつしか値が返らない場合はどうするんですか?
別に複数形にしなくたってわかるから1byte節約して書かないほうがマシ
257デフォルトの名無しさん:2011/11/04(金) 01:20:06.06
自分の場合、配列など複数の要素を持つ変数は複数形で名付けてる。
そのルールに従うと、今回のメソッドも複数形になる。

が、そもそも自分はAllを省いて getXXXs() で良いと思う派。
258デフォルトの名無しさん:2011/11/04(金) 01:29:43.73
ああ、確かに何か特別な理由でもない限りAllなんて付けないのが普通だな。
259デフォルトの名無しさん:2011/11/04(金) 09:00:21.45
複数形にするだけだとデータ構造が見えないから困る
260デフォルトの名無しさん:2011/11/04(金) 09:10:25.08
そういうものはコメントやドキュメントに書けばいい
261デフォルトの名無しさん:2011/11/04(金) 09:20:56.56
ドキュメント読む手間をなるべく少なくするような命名を模索してんだろ
なんでもドキュメント読めばいいで終わらせてたら名前なんていらんわ
262デフォルトの名無しさん:2011/11/04(金) 09:25:01.92
データ構造は型情報って気もするなあ。
下手するとシステムハンガリアン() と言われかねないし。
263デフォルトの名無しさん:2011/11/04(金) 09:36:47.14
〜sって「抽象的なコンテナ型である」って意味のハンガリアンみたいなもんだろ
「〜のよくわからない集合」って書くのと「〜のリスト」「〜のスタック」
と書くのどっちがましかという話
まともな神経をしてれば後者を選ぶだろう
コンテナの抽象化はパフォーマンスに直結する悪手だよ
264デフォルトの名無しさん:2011/11/04(金) 09:52:21.50
>>259
困ったことが一度としてないんだがw
265デフォルトの名無しさん:2011/11/04(金) 10:12:37.98
名前に情報を詰め込むには限度がある
「〜の集合」てのが最も重要でこれが基本
データ構造を付け足すかどうかはオプション

266デフォルトの名無しさん:2011/11/04(金) 10:16:33.14
データ構造ってリストやスタックみたいな簡単なものばかりじゃないしなぁ
267デフォルトの名無しさん:2011/11/04(金) 10:23:55.59
OOPで考えるとデータ構造はModelクラスとして扱えば十分だからなぁ。
下位の、より小さなコンテナの変数を、getterで外に出すような展開もべつに無いし。
268デフォルトの名無しさん:2011/11/04(金) 10:27:03.38
パフォーマンス気にするならなおさらドキュメント類は読むべきだな
名前だけで判断しようとしてるからコケる
269デフォルトの名無しさん:2011/11/04(金) 10:48:34.99
hogesってところまでしかわかっていない場合は
例えば検索するときにどのアルゴリズムを選択するかとかが判断しにくくなる
出社してそれほど時間が経過していなくて頭がすっきりしていて型が完全に頭に入った状況でのコーディングならhogesで問題はないが
何時間もディスプレイやキーボードと格闘して疲労の溜まったPGが5分前の記憶を覚えてるとは限らない
そのたびにhogesってどんな集合だっけとプロトタイプを確認する作業が追加される
さいしょからsortedHogeVectorと名前がついてれば3日徹夜した後であろうとも直ちにランダムアクセス可能、二分探索が有効とわかる
270デフォルトの名無しさん:2011/11/04(金) 10:52:39.18
SortedVector hoges;
でおk
271デフォルトの名無しさん:2011/11/04(金) 10:55:59.53
変数の型を忘れるほど「遠くに」書いてしまうようでは、
変数名を工夫したところで負担の小さいコードにはならない。
272271:2011/11/04(金) 10:56:53.26
>>270
同意。
273デフォルトの名無しさん:2011/11/04(金) 11:27:20.40
動的型言語だったらどうするの?
274デフォルトの名無しさん:2011/11/04(金) 11:41:05.22
パフォーマンス気にして動的型付けねぇ
へぇ
275デフォルトの名無しさん:2011/11/04(金) 11:41:12.28
変数名に実装方法を現すような単語まで入れちゃうと、
やっぱ遅いから同じインターフェイスのあっちの実装にとかなったら、
変数名ぜんぶ変えなきゃいけなくなっちゃう。
276デフォルトの名無しさん:2011/11/04(金) 11:42:13.30
表す
277デフォルトの名無しさん:2011/11/04(金) 12:42:11.06
>>275
同意

>>269 なんか、パフォーマンス考えたら配列から
ツリー構造(順序付きキュー)に変わる可能性も大いにある

そうなったら、
何時間もディスプレイやキーボードと格闘して疲労の溜まったPGが
sortedHogeVector を全部変えるんだぞ

まぁ、普通そういう探索アルゴリズムとかは、
コンテナを利用する側ではなく提供する側が実装すべきだけどな
まさに実装方法に依存するんだし
278デフォルトの名無しさん:2011/11/04(金) 12:43:47.07
フルボッコわろた
279デフォルトの名無しさん:2011/11/04(金) 15:07:25.73
コンテナ代わったらメソッドも変わるから書き換え作業しなきゃならないのは同じだろ
280デフォルトの名無しさん:2011/11/04(金) 15:50:57.20
ぶっちゃけ名前が原因で問題が出るぐらいにあちこちで変数に直接触ってる時点で負けと気がつくべきだろうね
メンバ関数やインラインのヘルパ関数を適切に使っていれば変数名なんて長くても三文字(気をきかせるなら一行コメント)もあれば十分と気がつくよ
281デフォルトの名無しさん:2011/11/04(金) 15:57:52.32
さらにアホが寄ってきた
282デフォルトの名無しさん:2011/11/04(金) 16:00:40.89
いや言ってることは正しいだろ。3文字で十分はネーヨって思うけど
283デフォルトの名無しさん:2011/11/04(金) 18:00:57.78
昔のベーシックは2文字だったよな
284デフォルトの名無しさん:2011/11/04(金) 18:01:53.94
あ、識別子として区別されるのが頭2文字で、
変数名自体は何文字でも良かったか
285デフォルトの名無しさん:2011/11/04(金) 18:25:16.40
たしかスコープも配列初期化も無かったろ
286デフォルトの名無しさん:2011/11/04(金) 23:37:36.00
>>269
お前はメモ帳でコーディングしてんのか?
287デフォルトの名無しさん:2011/11/04(金) 23:42:28.20
ったりメーだろバカ
288デフォルトの名無しさん:2011/11/06(日) 11:24:21.19
λが有るとまじで変数名いらないな
289デフォルトの名無しさん:2011/11/10(木) 17:19:22.13
商品が表示されるページが店舗別か全体表示かのフラグの名前で悩んでます。
isStore にしてるんですが、何か違う気がしてます。
〜別、という場合はどんな名前が良いでしょうか?
290デフォルトの名無しさん:2011/11/10(木) 18:13:31.63
>>289
〜別だとpartとかsectionとかsegmentとか
どれもフラグっぽくないな
store_sectionとかするとcobolっぽくなるな
291デフォルトの名無しさん:2011/11/10(木) 18:46:29.75
isStoreLocalView
292デフォルトの名無しさん:2011/11/10(木) 18:49:43.52
もうcatalogDisplayModeにしとけば?
293デフォルトの名無しさん:2011/11/10(木) 19:01:35.59
データベースだと、group by store とかになりそうだし、そこからヒントに出来ないものか
294デフォルトの名無しさん:2011/11/10(木) 22:21:25.52
店舗別に表示するかどうか
SetShowsByStore(value : bool) : void { showsByStore = value; }
ShowsByStore() : bool { return showsByStore; }
295デフォルトの名無しさん:2011/11/11(金) 00:29:16.13
なにそのデタラメ
296デフォルトの名無しさん:2011/11/11(金) 08:13:53.47
至るところで細かく

if( isStore ){
    〜
}

とかやってると思うとゾワッと来た
297デフォルトの名無しさん:2011/11/11(金) 08:37:57.01
主語がねえ
298デフォルトの名無しさん:2011/11/11(金) 11:02:00.51
言語は?Java?
299デフォルトの名無しさん:2011/11/11(金) 18:25:55.53
isHogeは疑問文じゃなくて Object is hoge だって主張を何処かで見た気がするんだけど、
これってOOの場合のみなんだろうか
300デフォルトの名無しさん:2011/11/11(金) 18:29:52.42
Cでもisdigitとかあるじゃん
301デフォルトの名無しさん:2011/11/11(金) 19:37:22.88
hoge is Valid object.

hoge.isValidObject();

hoge.isValid();
302デフォルトの名無しさん:2011/11/12(土) 04:33:37.34
>300は>297に対し?
303デフォルトの名無しさん:2011/11/12(土) 05:33:05.62
直前のレスに対してだろ・・・
304デフォルトの名無しさん:2011/11/12(土) 07:59:33.42
>>303
is〜の形式が、疑問文かどうかという問いに一切触れてなくね?
305デフォルトの名無しさん:2011/11/12(土) 10:00:33.43
XXX.isYYYとかisYYY(XXX)は疑問文じゃないよ
「XXXはYYYである」
という命題の真偽を返り値として返すということ
だって疑問文だとnotしたときにおかしくなるだろ?
306デフォルトの名無しさん:2011/11/12(土) 11:08:47.58
>>305
でも、「bool変数やboolを返す関数は、疑問形で命名してね」
ってガイドラインはちらほらあるのが現実なんだよね(´・ω・`)

ところで、notしたときってのは !isHoge がおかしいってこと?
まさか isNotHoge じゃないよね?
307デフォルトの名無しさん:2011/11/12(土) 11:19:20.11
?が入れられない時点でくだらない話題だ
308デフォルトの名無しさん:2011/11/12(土) 11:24:06.83
isXXXは引数の値が単数のときだよね
配列とか渡してそこからXXXの場合だったらhasXXX?
309デフォルトの名無しさん:2011/11/12(土) 11:27:48.19
Isn't object valid ?
に対して
有効ならyes
そうでないならno
直感的にはyesはtrue、noはfalseだ

if(!obj.isValid()) { homuhomu(obj); }

と書いた時に、!obj.isValid()を否定疑問文(つまりIsn't obj valid ?)であるとすると
英語圏の人間はobjが有効(yes)ならhomuhomu(obj)すると認識してしまう
ところが!obj.isValid()をたんなる否定命題(Obj isn't valid.)で返り値がその真偽であるとすれば直感との齟齬は生じない
英語圏の人間でもobjが無効の場合にhomuhomu(obj)するのだと直ちに理解できる

310300:2011/11/12(土) 11:30:54.14
311デフォルトの名無しさん:2011/11/12(土) 11:39:02.53
>>309
ああ、そういうことか。
確かにそうだな。

で、何故HogeじゃなくHomuになってるか釈明を。
312デフォルトの名無しさん:2011/11/12(土) 12:02:42.14
一連すべてちょっと何を言っているかわからない
313デフォルトの名無しさん:2011/11/12(土) 12:23:51.20
ではお引き取りを
314デフォルトの名無しさん:2011/11/12(土) 12:34:11.30
>>313
中学英語をやり直せば理解は深まると思います
315デフォルトの名無しさん:2011/11/12(土) 12:34:42.76
>>312 でした

>>313 さんごめんなさい
316デフォルトの名無しさん:2011/11/12(土) 12:49:45.93
やり直せるとは限らん



やり直すためには既に一度はやっている必要がある
317デフォルトの名無しさん:2011/11/12(土) 13:00:27.62
それは大変失礼なことを言いました
今後慎みます
318デフォルトの名無しさん:2011/11/12(土) 13:41:17.36
>>309
一瞬なるほど、と思ったがちょっと違う気もするね。

確かにtrueにyes、falseにnoが対応していると考えるとそういう論理が成り立つけど、
trueにright、falseにwrongが対応していると考えると話は変わってくる。
319デフォルトの名無しさん:2011/11/12(土) 13:47:26.12
英語圏だとnoがnot、yesはnot以外、以上の意味はないだろ・・
320デフォルトの名無しさん:2011/11/12(土) 13:53:49.73
He is not a dirty old man, is he ?
You are wrong.
Yes, he is ( a dirty old man).
321デフォルトの名無しさん:2011/11/12(土) 14:11:50.52
if文は普通にブール代数で考えるけど.
そんな文学的な解釈をしているやつがいるのか.
322デフォルトの名無しさん:2011/11/12(土) 14:19:47.96
>>309
センスないやつがよくこういう余計な事考えるんだな
323デフォルトの名無しさん:2011/11/12(土) 14:24:08.44
>>321
既存の知識だけで納得しようとして陥る罠だな
324デフォルトの名無しさん:2011/11/12(土) 17:17:44.22
まあこのへんは英語できない子が足切りされるポイントだからわからない人がいても不思議ではないよ
まさか!?って思うけど本気でわからない子いるからね

325デフォルトの名無しさん:2011/11/12(土) 17:55:22.34
ネイティブがどう感じるかまでは、なかなか分からんよなあ…
326デフォルトの名無しさん:2011/11/12(土) 20:44:04.42
いや、言語仕様的にブール代数なわけだから
NOT(obj.isValid())
ってだけだろ
プログラミングを知らない英語圏の人ならどう読むか分からないが
知らない時点でどうせ読めないのでどうでもいいだろ
アホカ
327デフォルトの名無しさん:2011/11/12(土) 20:47:12.12
結論
命名は適当でよい
ドキュメントを読まないバカはいないし
ドキュメントを読めば名前などオマケにすぎないからである
328デフォルトの名無しさん:2011/11/12(土) 21:46:45.32
名前に悩んで生産性減らすバカは死ね
329デフォルトの名無しさん:2011/11/12(土) 23:42:52.06
悩むことがなく適当(適切という意味で)な命名ができるようになれれば、それがベスト
330デフォルトの名無しさん:2011/11/12(土) 23:58:09.41
開発してる時は、自分(チーム)の中だけで最も分かりやすい名前を付けとけば良い

開発が終わったら「すぐに」、後の人間や英語圏の人間にも分かるように、
メンテナンス担当の人間が全ての名前を適切に置換しておく
ついでに、変更しまくった仕様もちゃんとドキュメントにまとめておく
331デフォルトの名無しさん:2011/11/13(日) 00:02:27.98
コードの錬金術師は日常会話に擬態した暗号でコードを書くのでまるで自然言語の文書を読んでいるように感じる
332デフォルトの名無しさん:2011/11/13(日) 00:06:59.43
>>331
そこまでのコードはまだ見たことがないなぁ

例えばどんなの?
333デフォルトの名無しさん:2011/11/13(日) 08:16:47.43
日本語プログラミング言語「なでしこ」のことだろ
334デフォルトの名無しさん:2011/11/13(日) 12:04:25.90
>>333
それは違うだろ
「コードの錬金術師」や「日常会話に擬態した暗号」との絡みが全くない

一般的に錬金術師は金でないものを金にする人のことなんだから、
もともと自然言語の文書とはほど遠い文法やキーワードを持つ言語を使って、
自然言語の文書であるかのようなコードを書く人を「コードの錬金術師」と喩えているのだろう

それがどの言語のどのコードのことか、誰のことを言っているのか全く分からん
335デフォルトの名無しさん:2011/11/13(日) 12:33:18.01
>コードの錬金術師
>一般的に錬金術師は金でないものを金にする人のことなんだから、

>331の造語か、英語の和訳なのかで全く意味が変わってくるなw
336デフォルトの名無しさん:2011/11/13(日) 13:00:23.08
単にコードの可読性は書き手によって大きく違うという、当たり前の事実を
言ってるだけだと思うよw

ノストラダムスの解読じゃあるまいし、錬金術師という言葉の本来の意味なんか
ほじくり返しても意味ないでしょw

彦麻呂のフレーズみたいなもんで、そこまでの含意なんかないと思うよ。
単にその能力の非凡さ(可読的なコードを書ける人は意外と少ない)を表現してるだけでしょ。
337デフォルトの名無しさん:2011/11/13(日) 13:41:22.82
しかし、「まるで自然言語の文書を読んでいるように」というのは、
いくら何でも言い過ぎではないか?

もしそんなコードが書けるのなら、
そのテクニックや考え方などを是非教えてほしい
338デフォルトの名無しさん:2011/11/13(日) 13:47:06.66
外人的な過剰な表現だろ
339デフォルトの名無しさん:2011/11/13(日) 13:54:19.19
ただ>>334がアスペなだけだろ
340デフォルトの名無しさん:2011/11/13(日) 14:31:05.48
C#で、全面的にStrategy・Flyweightパターンなロジックで組んでいるのですが、
「俺はもう何もしない。もし俺が取り憑いていたら再利用poolに放りこんでくれ」クラスと
「俺はもう何もしない……が、まだ占有しているので再利用しないでくれ」クラスを
明確に分けたいのですが、なんか気の利いた名前が出てきませんし、
どうしても名称が長くなってしまいます。

適度に短く、ある程度のプログラマなら名前で
意図を理解できるようなクラス名を教えてください。
341デフォルトの名無しさん:2011/11/13(日) 14:32:02.78
>>339
>>332,334,337 は私なんだけど、なんで勝手にそう決めつけるの

>>335
じゃあ「コードの錬金術師」という表現は無かったことにするにしても、
「日常会話に擬態した暗号」というコードは私は見たことがないのですが貴方はありますか?

擬態と言うからには、そのコードの本来の意味が一般には分からないことを意味する
本来の意味が容易に分かってしまっては擬態ではない

ここでいう本来の意味というのは、そのコードが実現する処理、つまり意味論
擬態によって一般人が目にするのは >>331 によれば自然言語の文書
そして、その自然言語の文書から本来のコードの意味論は容易には悟られないし、
全く意味の違う自然言語の文書としては普通に読める

そのようなコードを一体誰が何の目的で書くのでしょうか
そのようなコードはメンテナンスするには全く役に立たない
また、C#やJavaなどのコードの暗号化としてもオーバースペックだし、
そういう暗号化は普通は人間ではなくコンピュータが行う

というようなとっても不思議なコードなのだが、>>331 にはぜひ例文を見せてほい
342デフォルトの名無しさん:2011/11/13(日) 14:36:19.83
>>340
reusable、および nonreusable はどうでしょう
343デフォルトの名無しさん:2011/11/13(日) 14:41:58.07
>>340
それって利用者側にpoolに返すかどうかを処理させるの?
名前を考える前に設計を見なおさないとだめなパターンだな
344デフォルトの名無しさん:2011/11/13(日) 14:42:53.90
>>341
友達いない空気出てる
345デフォルトの名無しさん:2011/11/13(日) 14:50:36.90
>>344
全国や世界中(こちらは少ないですが)にいますよ
大人になってからは増える一方で減らしたことも無いですし

どこまで突っ込んで説明を求めるか、議論するかは、
時と場合と相手によってちゃんと変えてます

ここのような落ち着いて、文章で書かれた相手の言い分をじっくりと読んで、
それについて深く議論できる場では、それ相応に深く突っ込みます
当然、私の言い分にも深く突っ込んでほしいです

迷惑でしたでしょうか
346デフォルトの名無しさん:2011/11/13(日) 14:52:43.98
>>345
はい迷惑です
あなたのお友達もそう思っているでしょう
347デフォルトの名無しさん:2011/11/13(日) 14:54:57.75
348デフォルトの名無しさん:2011/11/13(日) 15:09:08.56
本人が潜伏して火消しですか?w
349デフォルトの名無しさん:2011/11/13(日) 15:12:01.62
>>331

とっても不思議なコードの例文をぜひ見せてほしい
350335:2011/11/13(日) 15:26:54.61
知らんがなw
俺が述べたのは、「錬金術師」という表現の妙についてだけだぜ?
351デフォルトの名無しさん:2011/11/13(日) 15:28:48.37
暇人ばっかりやなここ
352デフォルトの名無しさん:2011/11/13(日) 15:30:05.29
日常会話に擬態した、自然言語の文書を読んでいるように感じる暗号に【興味があります。】
353デフォルトの名無しさん:2011/11/13(日) 15:30:31.94
>>348
自演乙
354デフォルトの名無しさん:2011/11/13(日) 15:41:34.59
>>351
言っておきますが、私は >>332 からずっと >>331 に疑問を呈しながら、
一方で >>342 において >>340 の質問にそれなの案を提示しています
この案に不満があるなら、状況をもう少し詳細に訊きながら、
別の案や >>343 のような事についても色々考えるつもりです

たとえば >>348>>352>>353 などの人たちは、
>>340 を助けてあげるという考えは持ち合わせていないのでしょうか
ないのなら、それこそ全く無駄なレスではないでしょうか
355デフォルトの名無しさん:2011/11/13(日) 15:42:11.56
「まるで自然言語の文書を読んでいるように感じるほどの日常会話に擬態した暗号で書かれたコード」マダー?
356デフォルトの名無しさん:2011/11/13(日) 15:42:45.34
マジキチっぽいなこいつ
357デフォルトの名無しさん:2011/11/13(日) 15:44:00.72
>>331の潜伏w
358デフォルトの名無しさん:2011/11/13(日) 15:50:05.75
>>354
日本国内のテレビ・マスコミのプロパガンダによってあなたの脳味噌は既にマインド・ブラストされているようななのでちゃんと指摘して差し上げますが、
そのような長文を投稿する瞬間、日本の旧儒教的価値観ともいえる「助けてあげる」という考え自体がもう既に「あなたの傲慢の具現化である」と思いませんでしたか?
359デフォルトの名無しさん:2011/11/13(日) 15:59:30.18
>>357
自演乙
360デフォルトの名無しさん:2011/11/13(日) 16:16:35.36
>>358
私自身も表現的にどうかと思ったのですが、
「助けてあげる」というのは言葉のあやでした、ごめんなさい
また旧儒教的価値観というのは全く知りませんでした、調べてみます

言い直します

>>340 の質問に対して、何か案を提示しようという考えは無いのでしょうか

>>331 と私の >>332 のやりとりに内容的に何ら関わらず、
かといって >>340 の質問にも何ら案を提示しないここ一連のレスというのは、
ほとんど意味が無いものだと思うのですが
361デフォルトの名無しさん:2011/11/13(日) 16:17:55.87
どうせネタをやるのならせめて面白い奴を頼む。
っていうか、そもそも面白くもないネタって語義矛盾
362デフォルトの名無しさん:2011/11/13(日) 16:19:05.24
        ゴガギーン 
             ドッカン 
         m    ドッカン 
  =====) ))         ☆ 
      ∧_∧ | |         /          / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ 
     (   )| |_____    ∧_∧   <  おらっ!出てこい>>331
     「 ⌒ ̄ |   |    ||   (´Д` )    \___________ 
     |   /  ̄   |    |/    「    \ 
     |   | |    |    ||    ||   /\\ 
     |    | |    |    |  へ//|  |  | | 
     |    | |    ロ|ロ   |/,へ \|  |  | | 
     | ∧ | |    |    |/  \  / ( ) 
     | | | |〈    |    |     | | 
     / / / / |  /  |    〈|     | | 
    / /  / / |    |    ||      | | 
   / / / / =-----=--------     | | 
363デフォルトの名無しさん:2011/11/13(日) 16:20:26.23
>>362
こういう幼稚臭いマンガ脳が一番最悪。
本当、こういう奴って13歳で精神年齢の成長止まってるんじゃないのか
364331:2011/11/13(日) 16:20:47.33
お前らのアホさ加減には恐れ入る
レスを読み返したらやり取りが小学生そのものだったぞ
365デフォルトの名無しさん:2011/11/13(日) 16:43:44.55
>>360
電力業界の隠蔽沙汰やオリンパスの隠蔽不祥事による会社所有者への背徳のように、経営者や日本公務員は自分の私腹を肥やすばかりで、

またオキュパイ・ヲールストリート・ムーブメントに象徴されるアメリカの(報道されず)数値上隠蔽された貧困現象と同じように日本の貧富各差は広がる一方で、

日本の貧困階層に目をむければ2011年現在ではなんと日本人の80%は年収300万円以下です。

そんな日本世紀末の世であるにも係わらず、あなたの道徳とあなた以外の人がもつ道徳が同じだといえる根拠はどこにあるんですか?
366デフォルトの名無しさん:2011/11/13(日) 17:00:06.41
>>365
道徳を持ち出すような大それた事ではなくて、
単純に >>359 などのレスをするくらいなら、
>>340 に何か案を出した方が建設的じゃないかと思ったのですが、
>>359 のようなレスをする事の方がこのスレには良いという考えも、
もちろんあるのでしょう
そんなものは無いという根拠は持ち合わせていません

また、私の道徳と私以外の人が持つ道徳が同じだと言える根拠も無いです
根底に似たような所が少なからずあるのではと期待してるだけです
367デフォルトの名無しさん:2011/11/13(日) 17:05:10.81
そのような投稿をする瞬間、「助けてあげられる」という期待自体が既に「あなたの傲慢の具現化である」と思いませんでしたか?
368デフォルトの名無しさん:2011/11/13(日) 17:05:50.71
いいから失せろゴミ
369デフォルトの名無しさん:2011/11/13(日) 17:06:57.80
自分は14歳でとまってる。
370デフォルトの名無しさん:2011/11/13(日) 17:09:53.22
>>367
もしかして勘違いをされていませんか

>>340 の質問者は私(>>341 など)ではありませんよ
371デフォルトの名無しさん:2011/11/13(日) 17:10:49.56
>>364
自演乙
372デフォルトの名無しさん:2011/11/13(日) 17:19:11.59
373デフォルトの名無しさん:2011/11/13(日) 17:44:21.68
>>370 ですけど、すいません、
「助けてあげられる」という文を読み違えてレスしてしまいました
改めてレスします

>>367
私は「助けてあげられる」というほどの気はないです
助けにならないかも知れないし、助けになる自身は残念ながらあまり無いです

助けになれば、議論の役に立てば幸いと思います
貴方はどうでしょうか
374デフォルトの名無しさん:2011/11/13(日) 18:45:47.01
思いません
はい、さようなら
375デフォルトの名無しさん:2011/11/13(日) 21:29:28.45
ID表示が待たれるな
376デフォルトの名無しさん:2011/11/14(月) 06:02:32.85
それは困る。
せっかく自演でストレス発散できる板なのに。
377デフォルトの名無しさん:2011/11/15(火) 15:25:55.17
10進数⇔64進数の簡単なプログラム書いてるのだけど、64進数って英語で何ていうの?
378デフォルトの名無しさん:2011/11/15(火) 15:46:07.36
radix 64
base 64
379デフォルトの名無しさん:2011/11/15(火) 16:04:54.64
>>378
Base64やRadix-64ではなくて、
単に10進数と64進数を相互変換するだけの簡単なクラスです。
すみません。
380デフォルトの名無しさん:2011/11/15(火) 16:14:36.79
質問の仕方が悪かった。

10進数と64進数を相互変換するだけの簡単なクラスを作ったのだけど、
Base64だとMIMEのBase64と混同してしまうので、何か適当な名前をお願いします!
381デフォルトの名無しさん:2011/11/15(火) 16:32:20.37
基数変換(Radix Conversion)
からRadixConverterでいいんじゃないの?
382デフォルトの名無しさん:2011/11/15(火) 16:34:21.47
RadixConverter
383380:2011/11/15(火) 17:05:32.05
>>381
>>382
ありがとう。

BaseConverterやRadixConverterだと、汎用性のある基数変換みたいな名前だけど、
作ったのは10進⇔64進という決め打ちで汎用性の無いものだったので、もっとズバッとした名前がいいかなぁと思って。
でも64っていう数字を入れると、Base64やRadix64になって、MIMEのそれと混同してしまうかなと。

Radix64Converterでいいかな。
コード書いてる時間より名前考えてる時間の方が長い。。。
グダグダとスマン。
384デフォルトの名無しさん:2011/11/15(火) 17:12:39.88
そんな心配は名前に盛り込まないで
コメントに一言入れておけばいい
385デフォルトの名無しさん:2011/11/17(木) 10:26:18.57
「はみ出し」って英語でなんて言えばいいですか?(名詞で)
枠の中に書いた文字が枠からはみ出ているとか、そういう状態を指す言葉。

辞書を引くとprotrusionという単語が見つかったけど、「はみ出てる」と
言うより「飛び出てる」「ポコッと突き出てる」という感じがしてしまう
のでもっと適切な単語があれば教えてください。
386デフォルトの名無しさん:2011/11/17(木) 10:48:44.06
1行目無視して、2行目の状況を表す単語ということでよければoverflow
387デフォルトの名無しさん:2011/11/17(木) 11:30:15.60
どうもありがとうございます。

説明がうまくなくてすみません。
「字数が多すぎて記入欄から何文字かはみ出した」という場合には
確かにoverflow がぴったりですね。

>>385で考えていたのは、郵便番号のような1文字1マスの領域が
ある上に書いた文字が枠よりでかかったりズレてたりして、
上下左右にてんでにはみ出している(最悪、枠から完全に外れてる)
という状況なのでoverflowだと違うかなと。
388デフォルトの名無しさん:2011/11/17(木) 13:14:36.14
overflowをヒントに考えて、spillにしました。
389デフォルトの名無しさん:2011/11/18(金) 11:49:00.56
整数のアプリケーション定義のエラーコードを(動的ライブラリを使って)文字列に変換するクラス(関数オブジェクトクラス)にふさわしい名前はなに?
390デフォルトの名無しさん:2011/11/18(金) 12:49:50.58
ErrorDescriber
391デフォルトの名無しさん:2011/11/18(金) 23:00:12.22
>>389
エラーコードからエラーメッセージに変換するクラス?
392デフォルトの名無しさん:2011/11/19(土) 06:56:46.02
class IProcessor {
 virtual void Process(Value);
};

class Xxx {
 void Process(KeyValuePair element) {
  processors.Find(element.Key).Process(element.Value);
 }

 List<IProcessor> processors;
}

こんな感じのクラス(Xxx)を命名してくれ
俺的には ProcessorSummary なんてどうかと思うんだが
393デフォルトの名無しさん:2011/11/19(土) 08:52:22.26
>>392
KVPDispatcher
394デフォルトの名無しさん:2011/11/19(土) 15:05:53.29
>>392
コマンドパターンみたいなものだからCommander?

しかし、余計なお世話とは思うけど、KeyValuePairの存在理由が謎。
わざわざ使いにくくしてるだけのような....
395デフォルトの名無しさん:2011/11/19(土) 15:06:24.81
>>392
コマンドパターンみたいなものだからCommander?

しかし、余計なお世話とは思うけど、KeyValuePairの存在理由が謎。
わざわざ使いにくくしてるだけのような....
396デフォルトの名無しさん:2011/11/19(土) 15:10:49.15
>>392
コマンドパターンみたいなものだからCommander?

しかし、余計なお世話とは思うけど、KeyValuePairの存在理由が謎。
わざわざ使いにくくしてるだけのような....
397デフォルトの名無しさん:2011/11/19(土) 15:12:11.59
>>392
コマンドパターンみたいなものだからCommander?

しかし、余計なお世話とは思うけど、KeyValuePairの存在理由が謎。
わざわざ使いにくくしてるだけのような....
398デフォルトの名無しさん:2011/11/19(土) 15:15:56.49
>>392
Dictionary使えばいいのに
399デフォルトの名無しさん:2011/11/19(土) 15:53:53.97
Map<ErrorCode, Inspector> map;
map.get(err).inspect(err);
400デフォルトの名無しさん:2011/11/19(土) 22:13:41.32
401392:2011/11/20(日) 02:16:54.12
>>393-398
ん?もしかしてC#関連のクラスと勘違いしていないか?
例として出している名前、型名は構造を想像してもらうためのダミーだぞ

>>399
確かに、processors を List 型と書き示したのがまずかったな。型は Map と記した方が正しい

class Xxx {
 void Process(Element data) {
  processors.Find(data.Type).Process(data);
 }

 bool AddProcessor(IProcessor newProcessor) {
  return processors.Insert(
   newProcessor.TargetDataType, newProcessor);
 }

 Map<DataType, IProcessor> processors;
}
402デフォルトの名無しさん:2011/11/20(日) 02:47:37.09
ん?別にC#じゃなくてもいいけど
C#で想像しちゃまずいのか?
C#にあるのと別の働きをするもの?
403392:2011/11/20(日) 10:16:20.97
>>402
同じ
基になるコレクションは連想配列(Dictionary)でなくてもいいけど
404デフォルトの名無しさん:2011/11/20(日) 10:53:58.05
>>401
お前さ、人に もの聞くのに上から目線か。オナニーでもしてろ
405デフォルトの名無しさん:2011/11/20(日) 13:07:56.16
どっちにしろ、無理にElementなんて型を導入するのが意味不明に思えるな。
わざわざ使いづらくしてるだけじゃん。

Element.TypeでMapからIProcessorを引っ張ってくる意味も分からない。
それなら最初からElemetにTypeではなくIProcessorを持たせれば済む。
何がしたいんだろう。
406デフォルトの名無しさん:2011/11/20(日) 16:39:43.12
>>405
ご法度
407392:2011/11/21(月) 04:12:25.43
>>405
もう少し具体的に書いてみたが、どうだろうか

class Xxx {
 ContactCache DetectContacts(Body bodyA, Body bodyB) {
  ShapeTypePair stp(bodyA.ShapeType, bodyB.ShapeType)
  return narrowPhases.Find(stp).DetectContacts(bodyA, bodyB);
 }

 bool TryAddNarrowPhase(ShapeTypePair stp, NarrowPhase newNarrowPhase) {
  return narrowPhases.TryAdd(stp, newNarrowPhase);
 }

 Map<ShapeTypePair, NarrowPhase> narrowPhases;
}
408デフォルトの名無しさん:2011/11/27(日) 15:52:38.23
a.bとかの . てなんて呼べばいいだろう?
separatorとかdelimiterだとaとbが全く別のデータみたいな言い方だし、なんかないかな?
409デフォルトの名無しさん:2011/11/27(日) 16:06:15.01
そもそも a.b ってナニ
410デフォルトの名無しさん:2011/11/27(日) 16:15:01.88
プロパティへのアクセスとか。setting.name
411デフォルトの名無しさん:2011/11/27(日) 16:38:05.75
ドット演算子
メンバアクセス演算子
412デフォルトの名無しさん:2011/11/27(日) 17:06:29.83
まあ、なんとかoperatorだろうな。
413デフォルトの名無しさん:2011/11/27(日) 17:18:12.26
dot operator
member access operator
414デフォルトの名無しさん:2011/11/27(日) 17:39:19.80
言語の本に載ってるでしょ
415デフォルトの名無しさん:2011/11/30(水) 01:48:24.40
〜も含めてってなんて言えばいい?search(word, なんとかBody)みたいな感じで、通常は
タイトルを検索するんだけど、search(word, true) の場合は本文も検索対象に含めるみたいな。
416デフォルトの名無しさん:2011/11/30(水) 07:29:19.45
関数名なのか変数名なのか、マクロ名なのか列挙型の名前なのか・・・
さっぱりだから、including とか with とかで良いだろとしか言いようが無い
417デフォルトの名無しさん:2011/11/30(水) 09:30:43.88
数字を吐き出す時に前回出力から大きく外れない乱数を吐き出す関数があるんだ。
システム的なものもあって、
出力を安定させる乱数
みたいな名前を付けたいんだが、
ちょっと中ニ病ちっくでかっこいい関数名付けてくれないか
418デフォルトの名無しさん:2011/11/30(水) 10:04:36.00
先物だからデリバティブだな
419デフォルトの名無しさん:2011/11/30(水) 10:50:50.19
randomでおk
クライアントコードは分布なんて意識したくない
420デフォルトの名無しさん:2011/11/30(水) 12:08:04.00
>>417
attractorField(); //特に意味はない
421デフォルトの名無しさん:2011/11/30(水) 12:41:14.23
>>417
静寂せし微乱の数 ();
422デフォルトの名無しさん:2011/11/30(水) 12:46:23.53
>>417
GetFluctuatingValue (揺らいでる値を取得)
423デフォルトの名無しさん:2011/11/30(水) 12:51:43.65
世界の終わりにキミが届けるランダム値をおれはそっと抱きしめる()
424デフォルトの名無しさん:2011/11/30(水) 13:48:47.01
/** 極限原点 */
int ParticleConvergence();
425デフォルトの名無しさん:2011/11/30(水) 15:27:59.64
黄昏を乱す小さきモノ();
426デフォルトの名無しさん:2011/11/30(水) 16:57:19.66
中二病でいいならMyRandom
427デフォルトの名無しさん:2011/12/01(木) 12:27:00.04
GetNearChaos_DeadEnd() なんてどうだ?
428デフォルトの名無しさん:2011/12/01(木) 14:24:11.68
thenEnemyDie();
//相手は死ぬ
429デフォルトの名無しさん:2011/12/01(木) 15:59:06.89
ゲームでメッセージとかアイテムリストとか表示したりメニュー開いたり閉じたりとかスコア表示したりするクラスってなんていうの?
ユーザーインターフェースとかかな?
430デフォルトの名無しさん:2011/12/01(木) 16:05:28.58
うん
431デフォルトの名無しさん:2011/12/01(木) 17:19:52.73
除外する ID を指定するパラメータ ignoreId があるんですが、
“ignoreId で除外したIDが持つ子も除外“するパラメータ名でいいのないでしょうか?
paramname = true で子も除外、false で指定 ID のみ除外、みたいな感じです。
よろしくお願いします。
432デフォルトの名無しさん:2011/12/01(木) 17:27:01.94
ignoreChild
433デフォルトの名無しさん:2011/12/01(木) 17:28:06.80
ignoresDescendants
434デフォルトの名無しさん:2011/12/01(木) 17:32:04.79
>>431
関数名は何?
435デフォルトの名無しさん:2011/12/01(木) 19:21:32.37
列挙型にして SpecifiedOnly、WithChildren じゃダメ?
436432:2011/12/01(木) 19:25:00.99
レス遅くなってすみません。
>>434
getList にしてますが getTree でもいいかなと思ってます。
437431:2011/12/01(木) 19:25:34.29
>>436 は 432 になってますけど >>431 の間違いです。
438431:2011/12/01(木) 19:41:46.11
>>432,433,435
検討してみて ignoresDescendants 頂くことにしました。
レス下さった皆さん、ありがとうございました。
439デフォルトの名無しさん:2011/12/02(金) 04:43:31.20
Lightness(輝度)が基準値を超えているときは、暗くする、
基準値以下なら、明るくする関数の名前をお願いします。

function xxx() {
return (lightness > 0.5) ? darken() : lighten();
}
440デフォルトの名無しさん:2011/12/02(金) 04:57:27.48
輝度はLuminanceだよ
モニタの輝度調整とかならBrightnessが一般的
441439:2011/12/02(金) 05:02:45.88
>>440
失礼しました。
こちらに、輝度(Lightness)とあるので、混同してしまいました;

http://ja.wikipedia.org/wiki/HLS%E8%89%B2%E7%A9%BA%E9%96%93

ようするにHSL色空間のLのことです。
442デフォルトの名無しさん:2011/12/02(金) 05:22:16.31
アラヤダ。そんな事情があるともしらず、申し訳ないです。

で、本題のほうなんだけど、安易にadjustとか使いたくなるんだけど、そういうわけにもいかないのかなぁ。
AdjustLightness(threshold) とかで伝わりそうといえば伝わりそうなんだけど
443439:2011/12/02(金) 05:44:14.48
>>442
adjustだと、増減値を自分で指定するという感じがしますね。

AdjustLightness(amount)のように・・・
444デフォルトの名無しさん:2011/12/02(金) 08:22:49.72
例によって clamp かなぁ、と思ったけど、指定範囲に収めるのとは
ちょっと違いますかねぇ。
445デフォルトの名無しさん:2011/12/02(金) 13:48:47.68
Approachは?
446デフォルトの名無しさん:2011/12/02(金) 16:16:35.88
converge
447デフォルトの名無しさん:2011/12/02(金) 17:31:03.07
明/暗順応(light/dark adaptation)の関係だな

applyLightnessAdaptation
448デフォルトの名無しさん:2011/12/02(金) 20:43:42.56
>>439
動詞じゃないのを許せるならLightStatとか。

余計なお世話だけど、そういう単純な制御だと、ネガティブフィードバックになってたら
条件が揃えば発振するよねそれw
449デフォルトの名無しさん:2011/12/03(土) 00:38:22.92
データベーステーブル名を複数形にするという規約があるもとで、
分類テーブルと、分類付テーブルの名前をどうしたらいいですか?
categoriesとcategorizationsとなってますが、おかしいですか?
450デフォルトの名無しさん:2011/12/03(土) 00:49:28.00
分類はclassじゃね?
classesとclassifications・・・なの?
451449:2011/12/03(土) 00:56:14.70
>>450
classでもよさそうですね。

ing+sとかで動詞の複数形?にするのはおかしいですかね?
一応名詞を選んでいます。

英語難しいです・・・

categoriesは他のテーブルと関連付けるための情報をもつテーブルで、
categorizationsで、実際にcategoriesと他のテーブルを関連付けしている感じになります。
452デフォルトの名無しさん:2011/12/03(土) 01:06:43.84
categories
reations
453デフォルトの名無しさん:2011/12/03(土) 01:30:33.02
categoriesと、関連付けられる他のテーブルが例えばitemsだったりしたら、item_categoriesとか。
454デフォルトの名無しさん:2011/12/04(日) 10:22:13.00
複数形関連で便乗質問させてください。
「student」に対する「students」など、
単体クラスを複数管理するクラスをよく作っていたのですが、
「series」って、複数形も「series」で、
「series群」というクラスをどういう名前にすればよいのか困っています。

他の命名規則と合わせて「serieses」という造語を使っておくべきでしょうか?
(「"serieses"」でググるとそれなりには引っかかるのですが)
455デフォルトの名無しさん:2011/12/04(日) 10:30:45.63
文脈でわかるからただの複数形(この例ならseries)でいいよ
456デフォルトの名無しさん:2011/12/04(日) 10:51:29.95
利用側からは管理クラスしか見えないなら、単体クラスの方をリネームするのはどうだろうか。
Entityとか適当なサフィックス付けて。
457デフォルトの名無しさん:2011/12/04(日) 11:04:14.84
複数形に擦るだけではどんな集合なのかが見えない
その集合の性質をよく表したクラス名にするのが正解
458454:2011/12/04(日) 11:56:00.39
>>455-457
seriesというクラスが存在して、それを複数管理するクラスなんです。
そして、この「複数のseries」を、関数内で使ったり、
他のクラスがメンバとして持つ、という構造です。

内部では普通の配列や連想配列で管理してますが、使う側には見えない部分で、
arrayやmapという単語をクラス名には付けたくないので、複数形を使っています。

なんか英語としては「series's」が正解なようなのですが、
これをクラス名にしようとするとどうなるのでしょうかね…。
459デフォルトの名無しさん:2011/12/04(日) 12:06:58.64
だからそれは何のために複数管理するのか
その目的がはっきりしていれば自ずと適切な名前も決まるでしょ
そして何の目的もなくただ集約してるだけならデータ構造の名前つけるぐらいしかないだろう
460デフォルトの名無しさん:2011/12/04(日) 12:27:14.00
コレクションクラスの名前を要素の型の複数形にするってあまりやらないような...
変数の名前なら複数形でいい場合が多いと思うけど。

それが外からリストに見えるのなら〜List、連想配列に見えるなら〜Map、
単なる集合以外の意味を持たないなら〜Collection、みたいに機械的に命名すればいいだけでは?
461デフォルトの名無しさん:2011/12/04(日) 13:40:02.98
命名規則がなんかジャバっぽいよね
462デフォルトの名無しさん:2011/12/04(日) 13:50:29.90
CLASS object;
object.Do();
これっておかしくないか
objectは三人称単数なんだから
object.Does();
にするべきでは
463デフォルトの名無しさん:2011/12/04(日) 13:53:59.51
>>462
命令形のDoだろう。
464デフォルトの名無しさん:2011/12/04(日) 13:55:56.05
>>462
メソッドは叙述ではなく命令ですよ基本。
dog.Run()は「ワンコが走ってる」じゃなく、「ワンコ、走れ」。
465デフォルトの名無しさん:2011/12/04(日) 13:58:51.34
なるほど
ではobject.isValidやobject.GetValueはどう解釈すれば
object、正常であれという命令?
これでは正常化するメソッドに見えてしまいますよ
466デフォルトの名無しさん:2011/12/04(日) 14:04:06.46
|冫、)ジー
467デフォルトの名無しさん:2011/12/04(日) 14:06:15.19
>>465
>>464 は、メソッドは叙述ではなく命令ですよ「基本」と言ってる
基本じゃない場合もあるんだよ
(たいていの場合は命令で解釈できるから、基本と言っているんだと思う)

>>465 の場合は、一般的には「object は正しい」という述語として
解釈されてきた歴史がある(だから戻り値もたいていは論理値)

一律に「全て命令だ」という訳ではないんだよ
そうやって解釈されてきた歴史的な経緯は知らんが

基本はちゃんと押さえながら、かつ柔軟に解釈していこうよ
468デフォルトの名無しさん:2011/12/04(日) 14:13:52.34
耳学問なんだよね所詮は
469デフォルトの名無しさん:2011/12/04(日) 14:15:24.26
>>467
ちなみに、命令じゃなくて普通の動詞として解釈する人もいて、
こちらも別に間違いじゃない

window.createChild (・・・)
window が ・・・という属性の子ウィンドウを作る

命令と解釈するのは、たぶんオブジェクト指向以前の名(伝統)だろうね
470デフォルトの名無しさん:2011/12/04(日) 16:40:44.78
>>464
でたらめ言うなゴミクズ
471デフォルトの名無しさん:2011/12/04(日) 16:42:44.56
>>469
訂正

> たぶんオブジェクト指向以前の名(伝統)だろうね

たぶんオブジェクト指向以前の名残(伝統)だろうね
472デフォルトの名無しさん:2011/12/04(日) 17:52:00.61
>>462
お前は英語分かっていないな。三人称単数現在ってのは
ちゃんとニュアンス持ってるんだよ。
命令形の場合とは違う
473デフォルトの名無しさん:2011/12/04(日) 17:55:47.70
>>465
命令形は Be - だよ。
ちなみに get〜 だけはお前の言うとおり
おかしい。これはネイティブも(おかしいと)分かって
るけど、get にしてると思う。

>>469
2番目の意味では、
window.createsChildになる
474デフォルトの名無しさん:2011/12/04(日) 18:15:59.23
なんか変な流れになってるけど....

object.IsValidも、例えば、"tell whether the object is valid or not"
のような感じの省略表現だと考えることが出来る。

やはり基本は命令表現でしょう。

object.GetValueみたいな形はアクセスメソッド以外では今時あまり使わないと思うけど。
475デフォルトの名無しさん:2011/12/04(日) 18:19:32.76
ツマラン
476デフォルトの名無しさん:2011/12/04(日) 18:58:56.28
>>474
デタラメ撒き散らすな
黙っとけカス
477デフォルトの名無しさん:2011/12/04(日) 19:15:15.16
デタラメとか雑音まいてる馬鹿は英語できないんだろうな。
こういう馬鹿を説得する義理もないけど、だったら仮にメソッド名に日本語を
使うとしたらどうなるか考えてみろと。

IsValidは「正当か」、CreateChildは「子オブジェクトを作れ」
普通はこういう風になる。

478デフォルトの名無しさん:2011/12/04(日) 19:24:07.91
#define オブジェクト object
#define は .
#define の .
#define 、 .
#define 正常である isValid
#define 名前を取得する getName
#define 生成せよ create

オブジェクト は 正常である()
オブジェクト の 名前を取得する()
オブジェクト 、 生成せよ()

日本語は形式が柔軟だから便利だね
479デフォルトの名無しさん:2011/12/04(日) 19:50:30.00
それは、C言語限定?
480デフォルトの名無しさん:2011/12/04(日) 19:58:50.10
Java や C、C# なんかで a.b と書くときがあるけど、
a や b の名前を使って「全体として」英語の文として読もうとか、
あるいは「全体として」英語の文になるように a や b の名前を決めようとか、
そんな馬鹿なことに注力して名前を決めるものじゃない

何らかの工夫をしなければ、対象となるオブジェクトの識別子より
関数を表す識別が必ず左側に来る言語だって普通にある

名前は特定言語の文法にできるだけ依存しないように、
その名前を参照する側から見た役割や機能、意味などを元に決めるべき

全体として英文のように読める(解釈できる)かどうかは些末な問題だ
481デフォルトの名無しさん:2011/12/04(日) 20:01:57.48
>>480
と言ってはみても、それを理解できる猛者はこのスレにはいないだろうね
482デフォルトの名無しさん:2011/12/04(日) 20:13:42.29
ObjectIsValid(Type object);
GetValueFromObject(Type object);
DoSomethingWithObject(Type object);

関数名だけで英文が完成するようにする
引数名は関数名である英文に現れる単語を示すように名付ける
これがもっとも読みやすい命名法
483デフォルトの名無しさん:2011/12/04(日) 20:23:32.12
>>482
荒すな
484デフォルトの名無しさん:2011/12/04(日) 20:25:30.47
>>483
嵐じゃないです
485デフォルトの名無しさん:2011/12/04(日) 20:33:19.92
>>480-481
むしろそこは誰も異論がないと思うんだけど....
486デフォルトの名無しさん:2011/12/04(日) 20:35:59.14
英文として読めるどころかバシバシ省略形で書いていいんだけどね
どうせドキュメント読まないなんてことはあり得ないんだから長い名前書くだけ無駄
衝突さえ回避できればC標準のような適当さで十二分なんだよ
487デフォルトの名無しさん:2011/12/04(日) 20:46:51.23
お前ら揚げ足が取りたいだけじゃないか。
なぜなら俺のレスには、レスしてないし。きれいに避けて通ってるw

ちなみにどこまでも英文に近くしたいのなら、
SmalltalkかObjective C でも使っとけって話だ
488デフォルトの名無しさん:2011/12/04(日) 21:44:36.69
お前のレスってどれだよ
489デフォルトの名無しさん:2011/12/04(日) 23:20:27.31
>>487
どこまでも英文に近くしたいならCOBOLじゃね?
490デフォルトの名無しさん:2011/12/04(日) 23:26:42.85
>>489
適当に「COBOL サンプル」などでググると分かるけど、
COBOL って思ったほど英文っぽくないんだわ
491デフォルトの名無しさん:2011/12/04(日) 23:34:48.54
COBOLは確かにひとつひとつの文の書式は英文臭いけど
抽象化し辛いせいで、結局はその辺の言語以上に英文から離れてくのよねw
ホントに英文っぽくしようとすると命令ごと大量に作らないといけなくて
可能な限りでそうしようとした結果が膨大な単語が並んだ予約語表
しかもそうまでしてもやっぱり英文には程遠いという…
492デフォルトの名無しさん:2011/12/05(月) 00:45:11.47
>>477
×CreateChildは「子オブジェクトを作れ」
○CreateChildは「子オブジェクトを作る」
493デフォルトの名無しさん:2011/12/05(月) 01:02:38.30
>>467
たいていの場合は叙述で解釈できるよ
494デフォルトの名無しさん:2011/12/05(月) 07:08:01.76
要するに何とでも都合が良いように解釈できる&してきたわけだよ
495デフォルトの名無しさん:2011/12/05(月) 08:23:41.73
よし関数型言語での命名法でも考えようぜ
496デフォルトの名無しさん:2011/12/07(水) 10:33:29.74
read() -> doSomething() -> write() の順に実行される
テンプレートパターンのJavaクラスを名前を考えてください。

IOエラーなど生じやすい危険からBridgeScope, CriticalSection
みたいのがいいかなと思うのですがどうでしょう?

abstract class ??? {
onRead(){}
onReadError(){}
onSomething(){}
onWrite(){}
onWriteError(){}
}
497デフォルトの名無しさん:2011/12/07(水) 10:44:52.89
Converter
498496:2011/12/07(水) 11:39:48.92
>Converter
onSomething()がリソースの変換とは限らず
振る舞い(ビヘイビア)でも通じるのが良いです。
DTOとしての自身の変数(フィールド)に
マッピングすることが主な目的なので。

class ??? {
__@WebSession
__@Read
__@Write
__Integer id; // Read and Write

__@WebCookie
__@Read
__String login_name; // Read only

__@File(path="/log.txt")
__@Write
__String log; // Write only
__
__@Override
__void onSomething(){
____Service service = new Model();
____log = service.service(this);
__}
}

499496:2011/12/07(水) 12:43:08.73
onSomething()もしくはonError()で
Webページのforwardを行わせるので

Resolverにしてみようと思います。
500デフォルトの名無しさん:2011/12/11(日) 17:50:04.58
C++のソートなどに使う比較関数なんだけど
bool compare(X a, X b)
{
a.hoge > b.hoge;
}
これの名前はどうする
hoge_of_a_is_greater_than_hoge_of_bってすると長くて間抜けな気がするし変数名が入ってヤナ感じ
501デフォルトの名無しさん:2011/12/11(日) 19:02:20.62
Xのインスタンスメソッドとして実装すれば何も考えなくても....

っていうか、例えば
bool GT(X a, X b)

ってシグネチャの関数があったときに、これを(b > a)を返す関数だと解釈する人はまずいないと思うけど....
とくに説明がなければ、常識的に言って(a > b)が返ってくるんだろうなと解釈するでしょ。
502デフォルトの名無しさん:2011/12/11(日) 19:54:23.18
bool PriceGreaterThan(X a, X b)
{
 return a.price > b.price;
}

bool HogeGreaterThan(X a, X b)
{
 a.hoge > b.hoge;
}
503デフォルトの名無しさん:2011/12/13(火) 16:59:55.66
有効/無効を一言で表すとなんでしょう?

今 enable メソッドと disable メソッドがあるんですが、
処理がほぼ共通のため、
function enable() { hoge(true); }
function disable() { hoge(false); }
hoge (enable) {
  if (enable) ...
}
みたいな感じでやってます。
みなさんなら hoge のメソッド名は何にしますか?
504デフォルトの名無しさん:2011/12/13(火) 17:05:45.35
SetEnabled
505デフォルトの名無しさん:2011/12/14(水) 18:25:39.67
例えば特定の数値からファイル名を作る場合に〜Builderとかつけることがありますけど、
作ったファイル名から元の数値まで戻す処理を持たせた場合は何がいいんでしょう?
converter?
506デフォルトの名無しさん:2011/12/14(水) 18:44:06.87
parse
507デフォルトの名無しさん:2011/12/14(水) 18:44:16.88
parser
508デフォルトの名無しさん:2011/12/14(水) 19:49:15.58
Converter <--> Inverter はどうよ
509デフォルトの名無しさん:2011/12/14(水) 19:55:42.25
ねーよ
510デフォルトの名無しさん:2011/12/14(水) 20:05:34.20
>>505
特定の数値からファイル名を作る?
意味が分からん

あと〜Builderだと、GoFのBuilderパターンと混同するから良くないかと
511デフォルトの名無しさん:2011/12/14(水) 20:14:53.39
encoder <--> decoder
512デフォルトの名無しさん:2011/12/14(水) 20:19:06.89
それもねーな
513デフォルトの名無しさん:2011/12/14(水) 20:20:26.99
説明的な文章が満足に書けない奴はプログラマに本質的に向いてない。
これ俺の持論。
514デフォルトの名無しさん:2011/12/14(水) 20:25:02.07
まさにParserじゃん
ファイル名に限定したいならFileNameParserにでもすればいい
515デフォルトの名無しさん:2011/12/14(水) 20:30:19.24
>>513
そういう奴はリアルだと「ゆとり(笑)」だったりするから相手にしてもたかが知れてる
516デフォルトの名無しさん:2011/12/14(水) 20:49:37.29
string MakeFileName(int n);
int GetNumber(string fileName);

こういう使い捨ての小さい処理の名前で悩む奴はアホ
517デフォルトの名無しさん:2011/12/14(水) 21:03:01.05
Parserは構文解析器だがファイル名を構文とみなすのは無理がある
それに○○erはクラスに付ける名前だ

>>516
だな
俺はGetの代わりにextractを考えたけど他はほぼ同じだ
518デフォルトの名無しさん:2011/12/14(水) 21:10:44.50
ExstractNumberじゃないことを願うだけだ
519デフォルトの名無しさん:2011/12/14(水) 21:13:46.45
>>518
なんかおかしい?
520デフォルトの名無しさん:2011/12/14(水) 21:23:09.43
使い捨ての小さい処理である根拠が無い
(自分あるいは自分の周りでそういう処理は使い捨ての小さい処理でしかない
というのでは根拠に乏しい)

根拠が無いのにアホと結論づけるのは論理的じゃない
521デフォルトの名無しさん:2011/12/14(水) 21:23:58.89
>>516
数ヶ月後にコードを読むときには、それが「使い捨ての小さな処理」なんてことは
すっかり忘却の彼方になってる自分を想像できない奴はもっとアホだと思う。

ところでこのスレって何のスレだっけ?
522デフォルトの名無しさん:2011/12/14(水) 21:26:40.97
釣られるなよ雑魚どもw
523デフォルトの名無しさん:2011/12/14(水) 21:28:53.80
馬鹿しか居ないのかねぇ
数ヶ月もあいだあいてりゃ最低でもコメント見るだろwww
おまえらコメント見ないの?そんなんでよくPGやってられるな
つーか根拠に乏しいってこんな具体性高い処理ライブラリ化する奴なんて居ねーよwwwwww
どう見てもそのアプリ限定の使い捨てだろうが
524デフォルトの名無しさん:2011/12/14(水) 21:29:26.16
>>517
お前の解釈に無理がある
525デフォルトの名無しさん:2011/12/14(水) 21:30:53.06
>>519
スペルがおかしい
526デフォルトの名無しさん:2011/12/14(水) 21:31:37.02
>>523
・・・大丈夫か?
527デフォルトの名無しさん:2011/12/14(水) 21:33:59.77
>>526
お前のほうが心配だわ
528デフォルトの名無しさん:2011/12/14(水) 21:34:11.28
>>524
あっそ

>>525
じゃあ517は正しいということでいいな
529デフォルトの名無しさん:2011/12/14(水) 21:36:28.82
まだ正しくはないね
530デフォルトの名無しさん:2011/12/14(水) 21:39:14.53
>>523
ゆとり乙
531518:2011/12/14(水) 21:39:38.84
ExtractNumberってみると、Numberから何かをExtractすんのかなと思うけど、みんなはそうでもないのだろうか

>>525
すまん、スペルミスは俺だ。
532デフォルトの名無しさん:2011/12/14(水) 21:40:47.09
>>517
はじめからクラスにつける名前を聞いてるんだろ
533デフォルトの名無しさん:2011/12/14(水) 21:41:53.10
>>531
numberをextractする
534デフォルトの名無しさん:2011/12/14(水) 21:58:58.58
>>531
お前はこのスレに今後一切書き込みをするな

辞書も引けない奴がなんで518のように書けるのか理解できないわ
535デフォルトの名無しさん:2011/12/14(水) 22:04:26.47
このスレの奴らが居るチームって開発遅そうwww
536デフォルトの名無しさん:2011/12/14(水) 22:07:18.45
>>534
スレみてりゃわかるが、書き込めないやつだらけになっちゃうよ
537デフォルトの名無しさん:2011/12/14(水) 22:12:56.95
俺以外書き込まなくていいよ
出てるまともな答えはほとんど俺のだし
538デフォルトの名無しさん:2011/12/14(水) 22:16:19.15
>>523
お前はいつでもどこでも爆発してるよなw
539デフォルトの名無しさん:2011/12/14(水) 22:19:22.22
まあ馬鹿なお前らは延々と糞長い名前でも考えてろよ
俺はラムダ使うから。じゃーな
540デフォルトの名無しさん:2011/12/14(水) 22:24:36.83
↑気になって戻って来るに10億ジンバブエドル
541デフォルトの名無しさん:2011/12/14(水) 22:49:23.39
>>537
お前以外書き込めないのなら、お前が質問してお前が答えるのか

お前程度のレベルでその質問に答えられるのか?
542デフォルトの名無しさん:2011/12/14(水) 22:52:38.82
ああそうしてくれ
543デフォルトの名無しさん:2011/12/14(水) 23:31:10.30
>>537
そういうレスをするときは、自分のレスがどれであるかを書くべきだ
544デフォルトの名無しさん:2011/12/15(木) 11:24:10.16
Hoge型のオブジェクトを登録、削除、条件指定して選択できるクラスを作ったんだけどなんて名前がいい?
今はHogeDataBaseにしてるんだけど中でSQL使うわけでもないから紛らわしいかなと思って
545デフォルトの名無しさん:2011/12/15(木) 11:31:35.70
SQLだけがデータベースではないのでいいんじゃね
546デフォルトの名無しさん:2011/12/15(木) 12:01:35.51
HogeSet みたいな名前使ってる
547デフォルトの名無しさん:2011/12/15(木) 12:07:26.71
オブジェクトの生存期間を管理するだけの目的ならHogeHolder
Hogeと同じインタフェースをもたせて一挙に処理したいときはHogeGroup implements Hoge
それ以外は既存のコレクションクラスで十分だと思ってる
548デフォルトの名無しさん:2011/12/15(木) 12:51:01.55
HogeManagerにしとけばええねん
549デフォルトの名無しさん:2011/12/15(木) 21:00:21.60
HogeTracker
550デフォルトの名無しさん:2011/12/15(木) 21:14:55.29
Hogeクラスのクラスメソッドにしてしまえ。(それなんてActiveRec
551デフォルトの名無しさん:2011/12/15(木) 23:07:42.89
なんでDAOやRepositoryという言葉が出てこないかな…
552デフォルトの名無しさん:2011/12/15(木) 23:19:28.74
なんでだと思う?
553デフォルトの名無しさん:2011/12/15(木) 23:57:07.17
>>536の通りだな
554デフォルトの名無しさん:2011/12/16(金) 00:42:15.42
だお^^
555デフォルトの名無しさん:2011/12/16(金) 02:39:30.85
Containerでいいんでないの。
DataSetでもいいけど。
556デフォルトの名無しさん:2011/12/18(日) 00:07:05.92
ある範囲内で作業して、その範囲が終わったら、変更していた内容を元に戻すような関数を考えていますが、どのような名前にしようか迷ってます。
イメージ的にはDBのトランザクションとロールバックが近いので、
transaction do
 ...なんかする
end # なんかしたのを戻す
としようかと思ったのですが、
・DBライブラリで使っている名前とかぶる
・名前が長い(タイプ量が多い)
という問題があります。
ほかの候補としては、
・sandbox
・block
・scope
を考えてますが、いまいちいい名前ではないように感じています。
なにかお勧めの名前があれば教えて下さい。
557デフォルトの名無しさん:2011/12/18(日) 00:22:29.33
>>556
何が聞きたいのかよく理解できないんだけども....

>変更していた内容を元に戻すような関数を考えていますが、

という割には、
・sandbox
・block
・scope

どれもそういう名前に思えないんだけど。

っていうか、transactionで長いっていつの時代の人よw
558デフォルトの名無しさん:2011/12/18(日) 00:32:59.47
save
なんかする
restore
559デフォルトの名無しさん:2011/12/18(日) 04:19:38.47
BeginXXX
EndXXX
560デフォルトの名無しさん:2011/12/18(日) 04:38:37.29
reset
revert
restore
rollback
561デフォルトの名無しさん:2011/12/18(日) 05:05:32.38
変更してた内容を適用するんじゃなくて、あくまで元に戻すってことは、
例にもあるような、sandbox的な使い方ってことなのかな。

でもsandboxだと、あくまで一時的な作業データそのものを示すような気はするね。
562デフォルトの名無しさん:2011/12/18(日) 08:22:33.66
locally do ... done
563デフォルトの名無しさん:2011/12/18(日) 08:35:18.81
doAtomically
564デフォルトの名無しさん:2011/12/18(日) 18:59:10.81
setUp
tearDown
565デフォルトの名無しさん:2011/12/18(日) 23:45:16.29
変数じゃないけどスクリプトでマウスとキーボードを動かせるマクロソフトを作ろうと思うんだけど
名前何にしようかな
566デフォルトの名無しさん:2011/12/19(月) 00:44:42.12
おいたしちゃうぞ(テヘッ).vbs
567デフォルトの名無しさん:2011/12/19(月) 05:43:06.65
痛い名前にすると普及すかも
568デフォルトの名無しさん:2011/12/19(月) 07:20:06.77
ねぇ見てて.vbs
569デフォルトの名無しさん:2011/12/19(月) 18:57:29.52
検索系の関数の名前ってどうしたらいいですか
searchXXXXとかだと長くなってしまう・・・
570デフォルトの名無しさん:2011/12/19(月) 19:00:56.75
container.select(pred, buffer);
571デフォルトの名無しさん:2011/12/19(月) 19:13:52.67
findXXXX にすれば2文字短くなる
572デフォルトの名無しさん:2011/12/19(月) 19:34:04.25
これで長いとかセンス無さすぎ
573デフォルトの名無しさん:2011/12/19(月) 19:49:15.72
センスは「有る無し」じゃないんだよ

自分のセンスと「合う合わない」なんだよ
574デフォルトの名無しさん:2011/12/19(月) 19:53:36.32
それはそうかもしれん
575デフォルトの名無しさん:2011/12/19(月) 20:00:58.14
識別子の頭に数字が使えたらと思うことがたまにある

3DObject とか、128bitKey とか

なんでできない言語が多いんだろ
構文解析上なにか難しい事があるとは特に思えないけど
576デフォルトの名無しさん:2011/12/19(月) 20:12:16.81
>>573
君はセンスが無いね


577デフォルトの名無しさん:2011/12/19(月) 20:22:52.68
>>575
恐らくは接尾辞絡みだろうね
578デフォルトの名無しさん:2011/12/19(月) 20:37:50.04
ThreeDObject
579デフォルトの名無しさん:2011/12/19(月) 21:00:13.09
ЗDObject
580デフォルトの名無しさん:2011/12/19(月) 21:03:06.31
_3DObj
581デフォルトの名無しさん:2011/12/19(月) 21:03:32.28
>>572
おい、>>578>>579 らにも言ってやれよ
582デフォルトの名無しさん:2011/12/19(月) 22:02:11.89
明らかなネタにもしっかりと突っ込んでいかないとな!
583デフォルトの名無しさん:2011/12/19(月) 23:01:41.22
>>578>>579 はネタだろうが、>>580 はわりとマジっぽい

普段からそういうプログラム書いてそう
584デフォルトの名無しさん:2011/12/19(月) 23:04:37.74
>>583
>>580がなにか問題でも?
585デフォルトの名無しさん:2011/12/19(月) 23:08:46.71
プライベートメンバ名の先頭にアンダースコアをつける文化圏かと
586デフォルトの名無しさん:2011/12/19(月) 23:20:13.97
>>564
問題は何もない

ただ「識別子の頭に数字をつけるため」にアンダースコアを使うという発想が
一般的じゃないという意味でヘンというだけ

かといってネタとも思えない
本当に普段からそういう目的でプログラム書いてそうだと思った

>>585 なら前例を多く見てきたから分かるけど、
数字をつけるためってのはちょっとね、初めてだったよ
587デフォルトの名無しさん:2011/12/19(月) 23:32:25.95
_1とか普通に使いまくりだろ
588デフォルトの名無しさん:2011/12/19(月) 23:37:24.31
>>586
プライベートメンバの先頭にアンダースコアをつけない人にとってはなんら問題ないと思えることは予想できる。
ただ、プライベート(略)つける人が見たときに文句を言われることは必至だけどね。
589デフォルトの名無しさん:2011/12/20(火) 00:20:13.17
2dObjectってかけたほうがインターフェースシンプルになるよね
590デフォルトの名無しさん:2011/12/20(火) 00:42:21.51
RPGの賽振り処理書いてるときに先頭を数字にしたくなったっけ。
3d6とか。
591デフォルトの名無しさん:2011/12/20(火) 00:44:37.25
rand3d6でいいじゃん
592デフォルトの名無しさん:2011/12/20(火) 00:50:22.82
どう回避すればいいか尋ねたわけじゃないんだが。
593デフォルトの名無しさん:2011/12/20(火) 00:54:48.83
個人的にはなるべくなら_でプリフィクスの識別子は使いたくないね。
メンバ変数も含めて。

enumのメンバー名なんかで、どうしても数値そのものをメンバ名にする必用が
あったりする場面以外では極力避けたい。

やっぱり視覚的に見づらいんだよな。
594デフォルトの名無しさん:2011/12/20(火) 00:55:35.23
3dと書いたら普通はdouble型の数値リテラルなのに
3d6と書いたら識別子なんて紛らわしくてたまらん
595デフォルトの名無しさん:2011/12/20(火) 01:42:43.11
>>590
ダイス数や面数そのものが変数名になることって無くないか?
自分もサイコロ処理は書いたことがあるが、

 int nDice = 3;
 int nFaces = 6;
 int result = RollDice( nDice, nFaces );

…みたいな感じになったぞ。
596デフォルトの名無しさん:2011/12/20(火) 01:59:36.01
パラメータをenumにする場合とかじゃないかな
enum DICE={3d6,…};
597デフォルトの名無しさん:2011/12/20(火) 11:45:37.59
描画関係のメソッドを集めたスタティックなクラスの名前おねがいしゃす
Graphicsとかだと既存とかぶるし
GraphicUtil?
598デフォルトの名無しさん:2011/12/20(火) 12:06:25.11
おすすめはしないがヘルパー関数を集めたクラスは、
たとえばMathHelperなどがある。
599デフォルトの名無しさん:2011/12/20(火) 12:23:57.74
バランスシートを表すものを作ってますが、資産か負債かを表すenumの名前は何がいいでしょうか。
資産はAsset、負債はLiabilityですが、これを示すタイプの名前です。
どうも英語にはそういう概念がないのでは、という気配を感じていますが。
600デフォルトの名無しさん:2011/12/20(火) 12:26:05.72
順序的な意味で前、後ろって英語でなんていうの?
{a, b, c, d, e, f}
ってシーケンスがあって日本語では
aはeの前にある
dはcの後ろにある
と書くところを英語だとどうなる?
front/back、prev/nextはなんかニュアンス違う気がする
601デフォルトの名無しさん:2011/12/20(火) 13:26:18.49
precede, precedent ⇔ follow
かな

後者にはsucceedもあるけど、ぱっと見で間違えそう
602デフォルトの名無しさん:2011/12/20(火) 14:02:26.17
英語でも数列の話では、before, afterなんかを使うけど。
603デフォルトの名無しさん:2011/12/20(火) 16:00:02.07
>>597
既存とかぶってもいいように名前空間が。これもまたおすすめはしないけれど。
604デフォルトの名無しさん:2011/12/20(火) 16:01:39.20
隣接してるかどうか関係なく、そのように言うのかな
605デフォルトの名無しさん:2011/12/20(火) 18:49:27.14
調べたらbefore/behindだってさ
606デフォルトの名無しさん:2011/12/20(火) 22:36:32.06
behind の対義語は ahead だと思ってたぞ…。

before/after
ahead/behind
lead/follow
607デフォルトの名無しさん:2011/12/21(水) 01:26:44.95
MATLABで一時的な数値の記憶など汎用的に使用する変数としてvar1, var2,...という変数名を使っています
しかし、数字を書き忘れると分散を求めるvar()と認識される可能性があります
なにか他に良い変数名はないでしょうか
608デフォルトの名無しさん:2011/12/21(水) 01:54:35.37
困ったらhogeだろう
609デフォルトの名無しさん:2011/12/21(水) 04:13:48.59
temp
610デフォルトの名無しさん:2011/12/21(水) 09:17:55.69
サブシステム間の複雑に込み入ったN対Nの相互参照関係を解消するために
サブシステムを子要素、すべてのサブシステムを集約したクラスを親要素としてN個の1対1の相互参照にさせて
親に問い合わせると問い合わせを適切なサブシステムにディスパッチしてくれる
という構造でプログラムを作ったんだけどこの親と子の関係ってどんな名前がいいですかね?
611デフォルトの名無しさん:2011/12/21(水) 09:33:28.04
relationship
612デフォルトの名無しさん:2011/12/21(水) 09:36:22.56
>>610
あんま想像できなかったけど、
相互作用を記述するにはGoFのMediatorパターンが知られている。
一個のMediatorに対し複数のColleagueがあるような形。
613デフォルトの名無しさん:2011/12/21(水) 10:09:28.20
>>610
親の名前と子の名前と関係の暫定名は何?

614デフォルトの名無しさん:2011/12/21(水) 11:01:42.06
DDDにおけるAntiCorruptionLayerを思い出すなぁ。
親子という表現がよく分からんけど、Facadeパターンのように思える。
615デフォルトの名無しさん:2011/12/21(水) 11:14:52.41
Facadeは無いわ
616デフォルトの名無しさん:2011/12/21(水) 11:55:20.61
>>575
例えばC言語で 3L とか 0xf なんて識別子使われたら困る
数値リテラルとして有効な書法だからね
んで例外作るくらいなら頭に数字は全部禁止!としたほうが
プログラマからしても楽だと思う
617デフォルトの名無しさん:2011/12/21(水) 14:20:20.61
>>608,609
回答どもです

hogeは実際に使ってるソースを見たことがないのでいまいち感覚が掴めない
tempは何度か他の変数に使ったことがあるし・・・う〜んどうしよう
レス参考にして考えてみようと思いますありでした
618片山博文MZ ◆0lBZNi.Q7evd :2011/12/22(木) 12:34:11.54
タブ型で文書を制御するフレームウィンドウのクラスはどんな名前がいい?
CTabDIFrameWndか?
619デフォルトの名無しさん:2011/12/22(木) 12:42:46.08
DIって何
620片山博文MZ ◆0lBZNi.Q7evd :2011/12/22(木) 12:44:27.32
wikiを見て分かりました。CTDIFrameWndで決定します。
621デフォルトの名無しさん:2011/12/22(木) 12:55:23.01
クラッシュトゥデスクトップインナーフレームの杖!
622片山博文MZ ◆0lBZNi.Q7evd :2011/12/22(木) 14:34:01.92
CWandOfCrashToDesktopInnerFrame
623デフォルトの名無しさん:2011/12/22(木) 17:17:07.72
コマンドとクエリーって何が違うの?
624片山博文MZ ◆0lBZNi.Q7evd :2011/12/22(木) 17:23:09.61
コマンドは、指令。クエリは、問い合わせ。
625デフォルトの名無しさん:2011/12/22(木) 17:28:30.36
なりほど
コマンドが非コンスト操作で、クエリーがコンスト操作みたいな感じですね
626デフォルトの名無しさん:2011/12/22(木) 17:55:18.16
insert涙目
627デフォルトの名無しさん:2011/12/22(木) 19:19:35.93
コンスト操作ってなに?
628デフォルトの名無しさん:2011/12/22(木) 19:27:32.62
破壊的かどうかって事じゃね?
629デフォルトの名無しさん:2011/12/22(木) 20:30:24.53
const
630デフォルトの名無しさん:2011/12/24(土) 18:33:34.03
1. minSize
2. currentSize
3. maxSize

上記3つのメンバ変数を持つ Widget(仮) クラスがあり、
currentSize は minSize 以上、maxSize 以下の大きさである

引数として与えられた newSize を
「minSize 以上 かつ maxSize 以下」
にクランプして、それを currentSize に代入する、Widgetクラスのメンバ関数の名前はどうしたらいいですか?
631デフォルトの名無しさん:2011/12/24(土) 19:13:38.86
setSizeでいいじゃん
632デフォルトの名無しさん:2011/12/24(土) 19:15:02.55
普通にsetCurrentSizeでいいのでは.....
633デフォルトの名無しさん:2011/12/24(土) 19:18:16.81
クランプしないでエラーを返すメソッドと、
クランプして設定するメソッドがあって、
クランプする事を強調したいのなら

setClampedSize とか
634デフォルトの名無しさん:2011/12/24(土) 19:22:01.02
そうなるとminSizeとmaxSizeの名前が気持ち悪い。
635デフォルトの名無しさん:2011/12/24(土) 21:17:25.63
レスありがとう
>>631-632
Set〜だと直前に設定したはずの値をGet〜で取得できず、アクセッサの対として扱えないのが気になります

>>633
クランプが必要になるのであれば設定せずfalseを返す、というメソッドであれば bool trySet(Current)Size(newSize) でいいかなと思っています
メソッドの内容を見ずに、クランプして代入(設定)する/していることが分かる名前があればベストです

>>634
minSize/maxSizeの名前がおかしいのでしょうか?
代わりとなる名前を教えていただけると助かります
636デフォルトの名無しさん:2011/12/24(土) 21:25:53.35
>>635
ゲッターがないのが非対称に感じるというのならゲッターをつければいいのでは?
まさか裸の変数を晒すつもり?

っていうか、話を聞いてると結局何がしたいのか質問者もよく分かってないのかな。
だからWidgetなんていう投げやりなクラス名なのか。
637デフォルトの名無しさん:2011/12/24(土) 23:26:18.22
>>636
>ゲッターがないのが非対称に感じるというのならゲッターをつければいいのでは?

Size newSize(100, 200);
widget.setSize(newSize);
Size gotSize = widget.GetSize();

この地点で newSize == gotSize であるとは限らず、ゲッタ(getSize)とセッタ(setSize)が対にならない
なので、それが気になると書きました

Widgetという名前については、実際に使用しているGUI部品のベースクラスの名前とほぼ同一のものですが、
これについてもオススメがありましたらご教示ください
638デフォルトの名無しさん:2011/12/24(土) 23:33:32.54
>>637
値の範囲を制限するためのクラス(なんでしょ?)に範囲外の値をセットした時に
値が範囲内の適切な値に制限されても誰も変だとは思わないと思うけど。

だってそれがそのクラスの存在意義じゃないの?
639デフォルトの名無しさん:2011/12/24(土) 23:42:50.37
>>637
>この地点で newSize == gotSize であるとは限らず、
これはゲッタとセッタが対で有る事とは無関係
640デフォルトの名無しさん:2011/12/24(土) 23:44:40.01
>>638

>値の範囲を制限するためのクラス(なんでしょ?)
 >>637
 >Widgetという名前については、実際に使用しているGUI部品のベースクラスの名前…

>値が範囲内の適切な値に制限されても誰も変だとは思わないと思うけど。
 >>635
 メソッドの内容を見ずに、クランプして代入(設定)する/していることが分かる名前があればベストです
641デフォルトの名無しさん:2011/12/24(土) 23:49:37.63
>>639
論点はそこではありません。
>>635
>メソッドの内容を見ずに、クランプして代入(設定)する/していることが分かる名前があればベストです
この条件に当てはまる名前を探しています。
642デフォルトの名無しさん:2011/12/24(土) 23:52:16.81
>>640
値の範囲が規制される機能を表すのは、別にメソッド名じゃなくクラス名でも良いでしょ?

というより、値が規制されることを強制したいのならその方がむしろ自然。

逆に、仮に規制なしでも値を設定できるのであれば、今度は設定可能な値の範囲を
表すメンバー(mimSize, maxSize)をクラスが持っていることが不自然。
643デフォルトの名無しさん:2011/12/25(日) 00:13:24.04
>>642
クラス名でも構いませんが、メソッド名を求めているクラスは
1. 他のウィジェット(GUI部品)のインターフェイスまたは基本クラスであり、
2. サイズの設定/取得以外を行う以外のメンバ関数が存在します

また、例としてWidgetというクラスにminSize/maxSizeを持たせましたが、
実際にそれらのメンバ変数を持つのはWidgetクラスの派生クラス、例としてLabelクラスです
派生クラスでは SetClampedSize仮() メンバ関数を実装しますが、本当にクランプを行うかどうかは実装によります
644デフォルトの名無しさん:2011/12/25(日) 00:30:15.17
>>641
関係ない事持ち出すな
645デフォルトの名無しさん:2011/12/25(日) 00:34:09.66
やはりsetClampedSizeでいいな
646デフォルトの名無しさん:2011/12/25(日) 00:45:05.93
setSizeWithClamp
647デフォルトの名無しさん:2011/12/25(日) 01:07:06.20
>>643
やっぱりminSize/maxSizeを持たせるのなら、メソッド名は単純にsetSizeとかsetCurrentSizeとすべき。
メソッド名に値が規制されることを盛り込むセンスはちょっと変な気がする。
繰り返しになるけど。
648デフォルトの名無しさん:2011/12/25(日) 01:52:45.55
>>630
案は俺 setClampedSize を提案したが、よく考えてみれば、
「設定した値がクランプされて格納される」ことをメソッド名で示すのは難しいな
setClampedSize じゃ、クランプ済みのサイズを設定しろ、と言っているように見える

俺も >>647 に同意見だ
メソッドを使うプログラマに「して欲しいこと」はメソッド名に織り込めるが、
メソッドを呼び出した結果「内部状態がどう変化するか」は
メソッド名に入れるべきじゃないような気がする

その代わりに、「どのような意味・役割を持つのか」をクラス名に折り込み、
Widget クラスからは分離させた方が良いのではないか?

具体的には、ClampedSize などの名前のクラスを作り、
設定した値がクランプされて保たれる役割をこのクラスに担わせ、
Widget クラスはこの ClampedSize クラスのインスタンスを保持する
649デフォルトの名無しさん:2011/12/25(日) 02:02:24.87
範囲外の値がセットされた場合どうなるかは
普通コメントやドキュメントに書かれるね
650デフォルトの名無しさん:2011/12/25(日) 02:37:08.73
>>647-649
参考になった。setSize か setCurrentSize にしてみるよ
ありがとうございました
651デフォルトの名無しさん:2011/12/25(日) 16:13:56.44
もとの方針にどうしても従うなら
setSize(calcClampedSize(300));
とかになんのかな
652デフォルトの名無しさん:2011/12/25(日) 17:42:57.69
クラスって3段階のポインタ参照になるから遅いんだよね
653デフォルトの名無しさん:2011/12/25(日) 17:47:06.67
class XXX {
public:
explicit XXX(Container<Hoge> & c) : c(c) { }
void Add(Hoge const & hoge) {
c.push(hoge);
}
private:
Container<Hoge> & c;
};

Container<Hoge> c;
void Func(XXX xxx) {
while(isNotEnd) {
xxx.Add(hoge(...));
}
}


コンテナのインターフェースを制限してpushだけ(あるいはほかの必要なメンバだけ)にしたクラスがあるんだけどなにかいい名前はないかな?
用途はこのFuncを始めとして一部の関数でコンテナに対して間違った操作をコンパイル時チェックできるようにしたいというだけです
ContainerAdapterとかだとちょっと不明瞭な気がするけどあまり気にしないでいいのかな
654デフォルトの名無しさん:2011/12/25(日) 23:16:09.53
>>651
元の方針では
void Widget::ClampSize(Size input, Size output)
 Widget の最小/最大サイズにクランプした input を output に出力する
void Widget::SetSize(Size value)
 Widget のサイズを設定する。最小未満または最大値より大きい値を指定されたのであればアサーション(または例外)
bool Widget::TrySetSize(Size value)
 Widget のサイズを設定する。設定に成功したのであれば true を返す

の3つの関数があって、それらを呼び出していたという経歴があるのだよ
655デフォルトの名無しさん:2011/12/26(月) 05:45:51.74
>>654
Size Widget::ClampSize(Size input);
戻り値はクランプされた値
ってやりたいけど、それはそれとしておいて、
TrySetSizeがあるのなら、SetSizeSafeでもよかったのかもね。
656デフォルトの名無しさん:2011/12/26(月) 05:47:41.87
とはいっても、わざわざメソッドおこさなくても>>651でいいんじゃないのとおもってる。
Size Widget::ClampSize(Size value) にかえるかどうかは適宜。
657デフォルトの名無しさん:2011/12/26(月) 15:10:21.36
〜するひと(あるいは物)って言うと〜er
だけど〜される人ってなんていうの?
攻撃者→attacker
被攻撃者→?
658デフォルトの名無しさん:2011/12/26(月) 15:23:11.49
使う場面にもよるような気がするけど。
ともかく対比として使うことのみが目的なら、-eeで済ますことが多い。今回ならattackee
659デフォルトの名無しさん:2011/12/26(月) 20:29:51.33
debugger と debuggee って、よく説明に出てくるね。
660デフォルトの名無しさん:2011/12/26(月) 20:36:58.06
employer と employee とか
reviewer と reviewee とかもよく見るね
661デフォルトの名無しさん:2011/12/26(月) 23:17:48.43
アンダーフローについてググると決まって浮動小数点数についてという説明が出てきます
整数の場合に最小値から更に減算した場合などはアンダーフローとは呼ばないのでしょうか?
また呼ばないとしたら最小値からの減算をなんと名付けるべきでしょうか?
662デフォルトの名無しさん:2011/12/26(月) 23:22:37.91
整数でも呼び方は同じ
アンダーフロー、オーバーフロー
663デフォルトの名無しさん:2011/12/26(月) 23:23:08.34
呼ぶよ
664デフォルトの名無しさん:2011/12/26(月) 23:23:42.97
演算自体は全く同じだから区別しないんじゃないの
人間の頭の中にある計算の意味次第だから
665デフォルトの名無しさん:2011/12/26(月) 23:59:17.69
>>661
ググった感じだと使わないと思うんだけど...
個人的にもそういう用法は聞いた(読んだ)ことないから違和感感じる。
666デフォルトの名無しさん:2011/12/27(火) 00:02:27.77
情弱君の出る幕はありません
667デフォルトの名無しさん:2011/12/27(火) 00:03:06.63
>>665
お前の感想など聞いてないわw
668デフォルトの名無しさん:2011/12/27(火) 00:04:32.54
998+1 :デフォルトの名無しさん [↓] :2011/12/04(日) 20:21:14.18
>>919,979,981,987,997
英語188/200点ってことは、2、3個ミスったんですよね?
どういう箇所を間違えたんですか?

999 :デフォルトの名無しさん [↓] :2011/12/04(日) 20:28:27.13
>>998
俺は919じゃねーから知らね。センターは175だったし
ただ小卒レベルで偉そうにしてる老害が目障りだっただけ

1000 :デフォルトの名無しさん [↓] :2011/12/04(日) 20:34:56.90
ゆとり(笑)
669デフォルトの名無しさん:2011/12/27(火) 00:07:09.02
[integer underflow]とかググるとそれなりに色々とヒットする。
670デフォルトの名無しさん:2011/12/27(火) 00:11:49.20
>>666-667
少なくとも符号付整数については、オーバーフローとは演算結果が正しくないことを言う。
プラス/マイナスどちらの方向に「オーバーフロー」したかは問わない場合が多い。

どっちが情報弱者だよ。
671デフォルトの名無しさん:2011/12/27(火) 00:22:27.85
英単語能力を鍛える練習はいつから始めたらいいですか?
672デフォルトの名無しさん:2011/12/27(火) 01:32:47.02
アンダーフロー
浮動小数点数同士の計算の結果が、表現できる最小の絶対値以下になること

整数同士の演算結果が-128未満だの-65536未満だのになることはアンダーフローとは言わないが、
このことを「整数のアンダーフロー」と言われてみれば確かに伝わる、空耳アワーの時間がやってまいりました
673デフォルトの名無しさん:2011/12/27(火) 02:12:15.31
>>671
よくわからんけど漢字能力を鍛え始める時期を考えれば結構早期なんじゃない?
674デフォルトの名無しさん:2011/12/27(火) 07:20:28.52
>>670
初めから多寡の問題じゃないんだよ情弱君
675デフォルトの名無しさん:2011/12/27(火) 10:05:14.13
C/C++を前提として、構造体で定数を用意しようと思います。

型の定義の部分を、宣言の部分にまとめてしまっても問題はないのですが、
あえて定義を独立させるとき、型名と定数名は、どのような命名規則になるでしょうか。

なお、現在考えている候補は以下のとおりです。
他に良い規則があればお願いします。

 struct Hoge HOGE;    //同じ名前で定数を大文字に、型をキャメルに
 struct tagHoge HOGE;  //適当なプリフィクス/サフィックスをつける(システムハンガリアン)
 struct Hoge h;       //むしろ型名がメイン
 struct Fuga HOGE;    //全く別の名前を付ける
676デフォルトの名無しさん:2011/12/27(火) 10:07:32.14
好きなようにすればいいんじゃないですか?
なにも規則はありませんよ
677デフォルトの名無しさん:2011/12/27(火) 11:00:46.91
struct hoge_t hoge;
678デフォルトの名無しさん:2011/12/27(火) 11:59:42.68
>>675
独立した型名を使うことを考えてないなら struct Hoge Hoge; で隠しちゃえば、
別の名前考える手間も省けていいんじゃない?
679デフォルトの名無しさん:2011/12/27(火) 12:50:37.72
>>677
_tってtime_tとかの_t?

>>678
ああそれは確かに。でもちょっと怖いw
680デフォルトの名無しさん:2011/12/27(火) 12:53:00.86
typedef 〜 THoge;
class CHoge;
struct SHoge;
class IHoge { virtual 〜 } ;
template <class THoge> 〜
681デフォルトの名無しさん:2011/12/27(火) 13:09:03.96
日本語で書いてgoogle翻訳に聞いたのをそのまま使う
コメントで元の日本語も添える
最近はめんどくさくなってきて全部コレでいい気がしてきた
682デフォルトの名無しさん:2011/12/27(火) 17:06:21.28
え?
683デフォルトの名無しさん:2011/12/27(火) 19:09:01.64
>>675
他の用途もある構造体なんだろうか。
定数用途専用なら無名でいいんじゃないかな。
struct { 〜〜 } hoge
684デフォルトの名無しさん:2011/12/27(火) 21:19:11.01
申請書クラスを作りたいときクラス名は何にすりゃいい?
685デフォルトの名無しさん:2011/12/27(火) 22:35:01.79
>>684
そのまま英訳すると Application だからどうしようか悩んでるの?
686デフォルトの名無しさん:2011/12/27(火) 22:54:57.70
Formだから悩んでるのかもしれない

申請書クラスってよく見かけるけど、別に用紙とかの情報持つわけじゃないから申請情報クラスとかでいいのかも
687デフォルトの名無しさん:2011/12/27(火) 23:45:33.76
>>685
Yes
688デフォルトの名無しさん:2011/12/27(火) 23:52:24.77
card
689デフォルトの名無しさん:2011/12/28(水) 00:05:35.76
ApplicationForm
690デフォルトの名無しさん:2011/12/28(水) 01:18:21.45
皆さんありがとうございます。Formで行ってみようかと思います。
ExcelのApplicationオブジェクトと紛らわしいので。
あと用紙も4枚綴りでカードってイメージじゃないので。
691デフォルトの名無しさん:2011/12/28(水) 01:49:29.35
カルテは何枚あっても違和感ないのかな、と混乱の種を。
692デフォルトの名無しさん:2011/12/28(水) 01:53:46.64
カルテはchartだったすまんこ
693デフォルトの名無しさん:2011/12/28(水) 07:23:46.54
気にするなちんこ
694デフォルトの名無しさん:2011/12/28(水) 19:28:50.60
四角形の大きさを表現するクラスRectangleがあって、
外側の大きいRectangleと内側の小さいRectangleとの差(上、下、右、左の厚み)を表現するサイズを作りたいんだけど、名前をどうしようか迷う

695デフォルトの名無しさん:2011/12/28(水) 19:32:04.57
WPFだとThickness型のMarginプロパティとかだったな
696デフォルトの名無しさん:2011/12/28(水) 19:36:27.47
理想的な回答だな
697565:2011/12/29(木) 16:32:24.06
せっかく回答してくれたけど結局自分で名前をつけたよ
作る前に質問したから10日しかたってないんだな
http://makuru.tenohiragaeshi.com/
698デフォルトの名無しさん:2011/12/29(木) 16:34:28.63
お、ねぇ見てて.vbs 完成したのか
699デフォルトの名無しさん:2011/12/29(木) 17:11:37.80
複数プロセスの起動を抑止するクラスを作りたいんだけど何がいいだろうか
SingleProcessはなんか違うよなあ
700デフォルトの名無しさん:2011/12/29(木) 17:14:55.05
int main(void) {
GateKeeper gateKeeper;
};
701デフォルトの名無しさん:2011/12/29(木) 18:08:35.54
ProcessMutexer
SingletonEnforcer
SingleInstanceForcer

こんなとこ?
702デフォルトの名無しさん:2011/12/29(木) 18:41:53.02
diproccesssuppressor
703デフォルトの名無しさん:2011/12/29(木) 19:37:07.60
ProcessManager
704デフォルトの名無しさん:2011/12/29(木) 19:52:43.29
SingleLauncher
705デフォルトの名無しさん:2011/12/29(木) 20:06:02.42
普通に英語でAlternateCheckerとかではダメなんですか?
706デフォルトの名無しさん:2011/12/29(木) 20:15:47.08
それのどこが普通だよw
707デフォルトの名無しさん:2011/12/29(木) 21:44:42.17
>>700-705
ありがとう参考になります
708デフォルトの名無しさん:2011/12/31(土) 04:53:53.35
>>695
亀レスだがサンクス
そんなクラスが存在していたとは知らなんだ
709デフォルトの名無しさん:2011/12/31(土) 09:55:18.67
識別子でよく使う単語の(世界でだいたい通用する)省略形を
集めたページの存在を知っていると、名前決めの際に役に立ちますので紹介します

http://www.wgag.net/doc/abbr.html

ほかにも、programming abbreviation などをキーワードにググると色々出てきます
710デフォルトの名無しさん:2011/12/31(土) 10:44:37.10
いまさら名前決めとかアホか
そういうのは解読に使うもんだ
711デフォルトの名無しさん:2011/12/31(土) 13:49:27.52
〇〇を持ってる××とかに機械的に付けれる命名法則ってある
class Object { } ;
class ObjectWhichHasPosition : public Object {
math::vector position;
};
class ObjectWhichHasChildren {
std::vector<Object *> children;
};
なんかダサい
712デフォルトの名無しさん:2011/12/31(土) 14:06:32.65
ObjectWithPositionとか

MSのCOMインターフェイスでIObjectWithSiteなどというのもあるし
713デフォルトの名無しさん:2011/12/31(土) 15:11:00.40
>>711
余計なお世話かも知れないが、メンバ変数の存在を強く意識したクラスなんて差し替えしにくいし、
ましてや名前にまでそれをつけようってのはとても恐ろしいことだ。
714デフォルトの名無しさん:2011/12/31(土) 19:24:02.28
まあ、普通はそういうのは名前で表示するものではないし、したところで意味がないよね。
どうして素直にインターフェイスではだめなんだろう。
715デフォルトの名無しさん:2011/12/31(土) 21:47:16.69
空間に登録されたバウンディングボックスとハンドルのペアを集約したクラスがあります
このクラスはバウンディングボックスとハンドルのベクタを与えると、
引数のバウンディングボックスに衝突するバウンディングボックスとペアになっているハンドルを引数のベクタに挿入します
クラス名、メソッド名は何がいいでしょうか。実装は隠蔽されているので実装を反映させた名前は避けたいです
716デフォルトの名無しさん:2011/12/31(土) 21:54:35.82
シンプルにGetHits
717デフォルトの名無しさん:2012/01/03(火) 01:53:43.35
数値的に解析するってなんて言えばいい?parseAsNumberだと不自然だよね。。
718デフォルトの名無しさん:2012/01/03(火) 07:22:26.97
numericalAnalysis
719デフォルトの名無しさん:2012/01/03(火) 12:09:02.68
analyzeNumerically
720デフォルトの名無しさん:2012/01/03(火) 12:47:07.92
numerical_insight
721デフォルトの名無しさん:2012/01/03(火) 13:44:45.87
数値的に解析って何?
722デフォルトの名無しさん:2012/01/03(火) 13:59:37.20
>>721
対象となるものの数値的に現れる性質を調べたり、
あるいは(主に数学的な)問題を数値的に解くことを言っているのだと思うが
(それ以外の解釈を俺は思いつかん)

逆に数値的じゃない解析というのは、
対象となるものの構造的な性質を調べたり、
(主に数学的な)問題を解析的に解くこと、が例として挙げられるな
723デフォルトの名無しさん:2012/01/03(火) 14:50:06.82
>>717
むしろそれでもいいかと。
でも今時はto + 変換後の型名が一般的では?

toInt
toDouble
HogeToInt
HogeToDouble

例えばこんな感じ。
724デフォルトの名無しさん:2012/01/03(火) 14:57:48.38
「解析」という言葉に普通込めるニュアンスと、
「parse」という言葉に普通込めるニュアンスは、
明らかに違うと思うんだが・・・
725デフォルトの名無しさん:2012/01/03(火) 17:09:05.02
「数値として解釈」と言いたかったんだろうな。
726デフォルトの名無しさん:2012/01/03(火) 17:54:52.93
>>724-725
くだらない議論。
というか、解釈と解析なら、むしろ解析の方が妥当。
解釈というと逐語訳ではない(意訳的な)変換をニュアンス的に含むからね。
727デフォルトの名無しさん:2012/01/03(火) 18:32:05.19
はぁ?
728デフォルトの名無しさん:2012/01/03(火) 21:24:08.74
文字列を数値などに変換する→ParseHoge, Hoge.Parse
※基本的に重い処理

あるものの表現方法を変換する→ToHoge, PiyoToHoge
※基本的に軽い処理
729デフォルトの名無しさん:2012/01/03(火) 23:34:02.26
いわゆる数値解析とはまったく関係ありませんでした、と。
730デフォルトの名無しさん:2012/01/03(火) 23:47:07.03
関係あるわけないだろ。
そもそも「数値解析」なんていうアバウトなメソッドがある訳がない。
訳のわからんこと言ってる連中はこんなもの想像してたのか。
頭おかしいなw
731デフォルトの名無しさん:2012/01/04(水) 06:09:42.94
ほぉ?
732デフォルトの名無しさん:2012/01/04(水) 06:46:55.13
むぅ
733デフォルトの名無しさん:2012/01/04(水) 13:52:42.09
らっぱ
734デフォルトの名無しさん:2012/01/04(水) 15:34:11.88
検索処理で上位のグループだけ返す(数を指定せずプログラムが自動的に判断して返す)オプションの名前
735デフォルトの名無しさん:2012/01/04(水) 16:14:18.55
I'm feeling lucky

……は冗談として、SQLだとLIMIT句を使って取得数を変えたりするから、
それに倣って limits(NumOf)Records とか?
736デフォルトの名無しさん:2012/01/04(水) 17:04:16.60
↓しんのしこうていAA
737デフォルトの名無しさん:2012/01/04(水) 20:51:01.68
GetHots
GetHotRatings
738デフォルトの名無しさん:2012/01/05(木) 02:50:03.84
FindTopRecords
GetTopRecords


class Node { // ツリー構造のノード
private:
 List<Node> children;
 List<Hoge> hoges;
};

@ 自身のhogesに登録されているHogeの数を取得するメソッド
A 自身のhogesに登録されているHogeの数 + 自身を祖先として持つ全ての子ノードに登録されているHogeの数を取得するメソッド
を命名していただきたい
739デフォルトの名無しさん:2012/01/05(木) 02:56:01.12
GetHogesCount(bool isRecursive)
740デフォルトの名無しさん:2012/01/05(木) 05:50:09.16
>>739
なるほど、その手があったか!

とは思うものの、やはり@とAの2つに分けて定義したい
741デフォルトの名無しさん:2012/01/05(木) 07:45:34.95
なんで?
742デフォルトの名無しさん:2012/01/05(木) 09:00:37.51
CountHoges
CountHogesRecursively
743デフォルトの名無しさん:2012/01/05(木) 10:48:18.53
>>737-738
Get〜 だと取得する関数にならね?
744デフォルトの名無しさん:2012/01/05(木) 13:00:07.89
GetCount
GetRecursionCount
745デフォルトの名無しさん:2012/01/05(木) 15:09:36.38
CountDescendantHoges
746デフォルトの名無しさん:2012/01/05(木) 20:20:06.71
レスサンクス
@ GetHogeCount
A GetHogeCountRecursively にしてみようかと
747デフォルトの名無しさん:2012/01/05(木) 20:31:26.13
RecursionCountの方がいいと思うよ。
英語わかんなくてもググってヒット数比べりゃわかると思うけど。
748デフォルトの名無しさん:2012/01/05(木) 21:24:56.39
RecursionCount だと再帰の回数。
RecursiveCount じゃまいか?
749デフォルトの名無しさん:2012/01/05(木) 21:29:45.21
750デフォルトの名無しさん:2012/01/05(木) 21:36:50.60
ネトウヨ王に、俺はなる!まで読んだ。
751デフォルトの名無しさん:2012/01/05(木) 22:47:54.56
>>747
Countの前に付けるならRecursiveかな
>>745のDescendant(子孫)を使った関数名も良さそうだけど、Hogeの数は全ての子孫のhogeの数 + 自分のhogeの数だから、少し説明が足りない
いっそのことGetTotalHogeCountにでもしようかな
752デフォルトの名無しさん:2012/01/06(金) 03:12:13.00
>>747
英語わかんないのに無理すんな
753デフォルトの名無しさん:2012/01/06(金) 04:17:48.46
>>752
スレの意義を見失うw
754デフォルトの名無しさん:2012/01/06(金) 08:06:53.13
韓国人歌手が東京で従軍慰安婦のポスター1500枚を掲示=韓国

 韓国人歌手の金長勲(キム・ジャンフン)と韓国広報専門家の叙敬徳(ソ・ギョントク)城信女子大客員教
授が、3日から4日の2日間、東京内の流動人口が最も多い新宿、渋谷、原宿などで、従軍慰安婦問題に関
連するポスターを掲示したことが明らかとなった。韓国の複数のメディアが報じた。

■「従軍慰安婦」に関する他の記事 - サーチナ・ハイライト

  韓国メディアは、キム・ジャンフンとソ教授が日本に在住する韓国人留学生たちの助けを借りて、東京の
街のあちこちに1500枚の従軍慰安婦に関連するポスターを掲示したと伝えた。

  「DO YOU HEAR?(聞こえるか?)」というタイトルの今回のポスターは、12月29日付けのウォールス
トリートジャーナル・アジア版に掲載した全面広告のデザインと同じ内容。

  ポスターを企画したソ教授は、「世界的な有力紙の広告を通じて、国際社会で問題化し、世界の世論を喚
起させる。日本国内のポスターは、日本軍慰安婦の存在すら知らない若者にアピールするために作成した
」とコメントしたという。

  ポスターの制作費を後援したキム・ジャンフンは、「水曜デモが1000回を超えたが、日本政府は、慰安
婦問題をいつも回避している。慰安婦問題は、日韓の歴史認識の次元を超え、女性の人権回復の重要な
問題であることを日本政府は知っているはずである」と説明した。

  また、ソ教授は「独島や慰安婦関連の広告を掲載するたびに、日本の右翼団体の脅迫をいつも受ける
が、これに屈することなく、より正々堂々と日本政府の誤りを指摘し、世界の世論を引き出そうしようと努力
する予定である」と語っている。

  キム・ジャンフンとソ教授は、来週には大阪と京都を中心とした関西地方でも、ポスター1500枚を掲示する予定だという。

http://news.searchina.ne.jp/disp.cgi?y=2012&d=0105&f=national_0105_077.shtml
755デフォルトの名無しさん:2012/01/06(金) 12:39:46.93
>>751
それはどっちでも恐らく同じ。
ただRecursionCountの方がヒット数が多い。(分かち書きしても同じ)
756デフォルトの名無しさん:2012/01/06(金) 12:58:23.53
>>755
英語わかんないのに無理すんな
757デフォルトの名無しさん:2012/01/06(金) 13:06:18.57
recursion countだと再帰の回数って感じ
758デフォルトの名無しさん:2012/01/06(金) 13:30:16.24
>>757
再帰の回数って何よ?

いや、概念としては分かりもするが、recursionCountって変数を見て、
ああ再帰の回数なのね、と思う奴がいる?
759デフォルトの名無しさん:2012/01/06(金) 13:31:07.25
いるじゃないか。
760デフォルトの名無しさん:2012/01/06(金) 13:31:24.09
いる
というかお前以外そう言ってる
761デフォルトの名無しさん:2012/01/06(金) 13:32:53.22
ヒット数が多い≠正しい訳

じゃないからw
762761:2012/01/06(金) 13:33:45.25
間違えた

ヒット数が多いことが正しい訳であるというわけじゃないと言いたかった
763デフォルトの名無しさん:2012/01/06(金) 13:34:35.64
検索ヒットしたページの中で「再帰の回数」以外の意味で recursion count と呼んでる例を
探してみるといいよ。
764デフォルトの名無しさん:2012/01/06(金) 13:35:10.60
分かった馬鹿と議論しても無駄だよな。

じゃあ例えば英辞書で"recursion"を引くと用例のトップに"recursion algorithm"
とあるが、これは「再帰のアルゴリズム」、つまり再帰に関するアルゴリズムって意味なのかw
765デフォルトの名無しさん:2012/01/06(金) 13:35:44.81
検索ヒットしたページの中で「再帰の回数」以外の意味で recursion count と呼んでる例を
提示してみるといいよ。
766デフォルトの名無しさん:2012/01/06(金) 13:36:48.22
>>762
そんなこと言ってないけどね。
どっちも正しい、と言ってるはずだけど
767デフォルトの名無しさん:2012/01/06(金) 13:48:26.81
再帰の回数って言ったら、どんくらい深く再帰呼び出しされてるかっていう回数。
768デフォルトの名無しさん:2012/01/06(金) 13:50:41.52
それは深さ
769デフォルトの名無しさん:2012/01/06(金) 13:51:19.79
recursion algorithm でググると recursive algorithm しかでてこねー。
770デフォルトの名無しさん:2012/01/06(金) 13:53:23.57
もちろん "recursion algorithm" でググれば出てくるのは知ってる。
771デフォルトの名無しさん:2012/01/06(金) 14:09:02.57
よほどマイナーな例を根拠にしてるんだろうか?
772デフォルトの名無しさん:2012/01/06(金) 14:16:34.11
>>746
recursion algorithm ならそうなんじゃね?

再帰的なアルゴリズムなら、recursive algorithm だもんね。
773デフォルトの名無しさん:2012/01/06(金) 14:17:24.75
違うとこ指してしまった。>>764の間違い。
774デフォルトの名無しさん:2012/01/06(金) 14:25:29.89
>>757
再帰の回数といっているものが俺に正しく伝わっているなら、それはdepthの方がよくないかな
775デフォルトの名無しさん:2012/01/06(金) 14:25:54.79
って>>768もかいてた。
776デフォルトの名無しさん:2012/01/06(金) 14:43:46.40
どっちが良いかじゃなくて、どう解釈されるかっていう話だろ。
777デフォルトの名無しさん:2012/01/06(金) 17:10:34.64
GetHogeCountRecursively

じゃね? というよりまず、命名以前にクソ使いにくいAPIだと思うが。
778デフォルトの名無しさん:2012/01/06(金) 18:04:32.85
ここでそんなことを言ってはならぬ。心の中に留めておくのじゃ。
このスレの質問の9割はそうなんじゃからな。
779デフォルトの名無しさん:2012/01/07(土) 02:03:16.87
780デフォルトの名無しさん:2012/01/07(土) 02:11:49.23
「再帰の回数」以外の意味で recursion count と呼んでる例とやらはまだか?
781デフォルトの名無しさん:2012/01/07(土) 12:00:16.74
衝突判定に必要な要素をもたせたベースクラスなんだけどCollisionableって言う?
ググったけど3000件ぐらいしか出てこなくて不安になった
782デフォルトの名無しさん:2012/01/07(土) 12:02:55.54
collidableじゃね
783デフォルトの名無しさん:2012/01/07(土) 12:52:43.45
3000件もヒットしてるなら十分だと思うが

その名前を見た者はちゃんと理解できるだろうし
784デフォルトの名無しさん:2012/01/07(土) 12:53:04.89
普通に(I)HitTestableでは?
検索ヒット数は無茶苦茶低いけどw
785デフォルトの名無しさん:2012/01/07(土) 13:04:27.66
CollisionAwareとか
786デフォルトの名無しさん:2012/01/07(土) 13:05:55.32
俺はその衝突判定に必要な要素をもたせたベースクラスのインスタンスが、
どのような仕事をするのか(すべきなのか)が気になるな(スレチだから訊かないけど)
787デフォルトの名無しさん:2012/01/07(土) 13:08:51.97
単純に「当たり領域」を表すリージョンか矩形を返すインターフェイスなんじゃないの?
普通に考えて
788デフォルトの名無しさん:2012/01/07(土) 13:22:55.58
>>787
それだけなら、もし Collisionable や Collidable という名前だと、
名前が体以上を表している、あるいはややズレているように感じなくもない

むしろ検索ヒット数が少ないという HitTestable の方が合ってそうだ

まぁ >>783 でもちょっと言ったが、クラスの利用者(プログラマ)が
名前から仕事を正しく連想できれば何でも良いと思うから、些細なことだけど
789デフォルトの名無しさん:2012/01/07(土) 13:29:48.29
じゃあヒットテストと衝突イベントハンドリングなら?
790デフォルトの名無しさん:2012/01/07(土) 13:37:50.57
それなら Collisionable や Collidable に相応しく感じる

逆に HitTestable は合わない
791781:2012/01/07(土) 13:47:22.09
ありざっした
collidableで行きます
792デフォルトの名無しさん:2012/01/07(土) 14:16:01.75
colidableはともかく、名詞にableって付くんだっけ?
793デフォルトの名無しさん:2012/01/07(土) 14:18:34.17
>>792
variableとかまさにその例でしょ
英語的にはよくある
794デフォルトの名無しさん:2012/01/07(土) 14:18:49.48
付くこともあるよ
795デフォルトの名無しさん:2012/01/07(土) 14:20:20.21
>>793
違う
796デフォルトの名無しさん:2012/01/07(土) 14:22:32.99
>>795
はい??
797デフォルトの名無しさん:2012/01/07(土) 14:24:46.18
>>792は、ableがつく名詞ってあるんだっけ?
じゃなく、名詞+ableという単語があるんだっけ?って意味か
798デフォルトの名無しさん:2012/01/07(土) 14:25:16.02
>>792
http://ejje.weblio.jp/content/able には
marriageable、peaceable の例が載ってる
799デフォルトの名無しさん:2012/01/07(土) 14:26:22.44
>>796
variableは動詞+ableの例
800デフォルトの名無しさん:2012/01/07(土) 14:26:54.26
>>798
補足

名詞 + able の場合は「〜可能」という意味はないから、
Collisionable はおかしいが
801デフォルトの名無しさん:2012/01/07(土) 14:27:42.32
+able後が名詞でなくていいって話なら、じゃあchangeableとか
802デフォルトの名無しさん:2012/01/07(土) 14:30:54.81
インターフェース名に付けるableって可能の意味に限定されてるのか?
803デフォルトの名無しさん:2012/01/07(土) 14:35:56.92
>>802
そんな規則はない

ただ、>>781 からは「〜に適する」や「〜を好む」のニュアンスは読み取れない
「〜可能」という意味で使用(誤用)した感じを私は受ける
804デフォルトの名無しさん:2012/01/07(土) 14:37:59.36
collisionableという単語はありませんので使用した場合は
頭が悪いと思われますので要注意です
805デフォルトの名無しさん:2012/01/07(土) 14:41:45.65
他に意味あるの?
806デフォルトの名無しさん:2012/01/07(土) 14:45:50.43
>>803
どの辞書を見たのかは知らんが
「〜の性質をもった」は載ってなかった?
807デフォルトの名無しさん:2012/01/07(土) 14:46:37.44
>>804
頭が悪いと思われる事なんてどうでも良い

プログラムソースから意図が分かれば十分
808デフォルトの名無しさん:2012/01/07(土) 14:47:08.17
日本人にしかわからなかったりして。。
809デフォルトの名無しさん:2012/01/07(土) 14:59:08.07
>>807

先ほどは >>798 のリンク先を参考にした

貴方に指摘されて試しに ODE も見てみたが、
「〜の性質をもった」と解釈できそうな意味は見当たらなかったな

-able
<suffix> forming adjectives meaning
1. able to be
2. due to be
3. subject to
4. relevant to or in accordance with
5. having the quality to

どうだろう、あるかな
(私も相手が上手く汲み取ってくれるから正直言って適当な英語しかできんが)
810デフォルトの名無しさん:2012/01/07(土) 14:59:47.68
アンカーミスった、>>806 でした
811デフォルトの名無しさん:2012/01/07(土) 15:02:32.15
>5. having the quality to
だよ
812デフォルトの名無しさん:2012/01/07(土) 15:03:31.66
三冠陥落で目が覚めた!? フジテレビがついに韓流から決別か

※イメージ画像:『嫌「韓」第二幕! 作られた韓流ブーム 』/宝島社
http://www.menscyzo.com/images/hanryu0106.jpg


「出てけ! 日本が嫌だったら出てけ!」

 今月17日に放送を予定している『なかよしテレビ』(フジテレビ系)の番組宣伝VTR中で、マツコ・デラックスが叫んでいる言葉である。
このマツコの言葉に、多くのネットユーザーが素早く反応、多くのスレッドが立ち「よく言った」「韓国ざまぁ」「本放送が楽しみだ」などとマツコを賞賛するコメントが寄せられている。

 昨年の10月から放送をスタートしている『なかよしテレビ』。番組のコンセプトは、「日本を含むアジアを中心とした3カ国の出演陣が、さまざまなテーマについてお国自慢をする」というもの。
主に日中韓による討論形式のバラエティなのだが、その内容はバラエティの域を超えて、
各国の人々の本音が垣間見えるものとなっている。
似たような番組として同時期に始まった『世界のみんなに聞いてみた』(TBS系)があるが、3カ国に特化した同番組の構成は、より激しい討論を展開させている。

 そんな番組に初出演を果たすマツコは、「K-POPに物申す」というテーマで論を展開している模様。
「日本の芸能界は草野球。韓国の芸能界はプロ野球」と主張する韓国人出演者に対し、「K-POPとか見ているとアメリカのパクリにしか見えない」と言い放ち、
「あんたたちの音楽も受け入れてやってる」「これだけ懐の深い国がどこにあるんだよ!」と主張する。

もちろん、これらの発言は先日から同局で流されている番宣VTRを見たものであり、それ以上でもそれ以下でもない。どういった経緯で、そういった話になったのか、またその後どんな結論になるのかというオチについては、本放送を見るまではわからない。
だが、冒頭に記した「日本が嫌だったら出てけ!」というマツコの言葉は、紛れもなく本人の口から出ている言葉であり、多くのネットユーザーがこの言葉に共感しているのは間違いない。
そしてまた、この番組を放送するのがフジテレビというのも彼らの興味を引く要因になっている。
http://www.youtube.com/watch?v=Q_5Mc532Vts
http://www.youtube.com/watch?v=dSGHNKy5IbM
813デフォルトの名無しさん:2012/01/07(土) 15:12:40.13
>>811
いや、そうなんだが

>>806 って Collisionable はおかしいという意見を受け手の反論だよね

collision + -able を having the quality to の意味で捉えるということは、
「衝突」という性質を表しているということだよね

quality の「性質」というのは、本質的に備わっている性質だと思うんだ

そう考えると「衝突」という性質ってなんだろ
「衝突する」性質というのも何か違和感あるし


いや、そういう用法も英語圏ではあるというのなら別に良いんだ
私が違和感を感じるというだけだから
814デフォルトの名無しさん:2012/01/07(土) 15:14:20.87
collisionableという単語がないという事実が、そういう用法が
ないことを示している
815デフォルトの名無しさん:2012/01/07(土) 15:19:49.40
自然言語にはそういう語を作って用いる機会がなかったから辞書に載ってないんだろうね
ただ造語のルールとしてはあるし
プログラミングにおいてはそういう語を用いる機会が有ったのは確か
816デフォルトの名無しさん:2012/01/07(土) 15:23:13.83
>>814
ある用法や単語が「ない」ことをどうやって確認する?

ちなみに、collidable の方も辞書にはないと思うぞ
817デフォルトの名無しさん:2012/01/07(土) 15:26:12.74
818デフォルトの名無しさん:2012/01/07(土) 15:35:31.99
>>817
面倒臭いから日本語で要約してくれ
819デフォルトの名無しさん:2012/01/08(日) 00:01:22.81
一方俺はベースクラス名にModelまたはCollisionModelを採用した
820デフォルトの名無しさん:2012/01/08(日) 00:03:59.74
フィジカルオブジェクト的な名前でいいよ
821デフォルトの名無しさん:2012/01/10(火) 05:30:00.30
(・・・フィジカルオブジェクト?)
822デフォルトの名無しさん:2012/01/10(火) 07:08:28.65
(峰藤子的なオブジェクトだよな)
823デフォルトの名無しさん:2012/01/11(水) 23:24:46.43
2Dの画像をドット単位で計算で作り出すことは、どんな英単語になるのでしょうか?
3Dだったらレンダリングって言いますが…
824デフォルトの名無しさん:2012/01/11(水) 23:29:49.36
2Dでもレンダリングって言う
825デフォルトの名無しさん:2012/01/11(水) 23:30:43.98
2Dもレンダリングでいいだろ

3D処理後の最後に2D化する処理とか、
フォントを描く処理とかはラスタライズと言うが
826デフォルトの名無しさん:2012/01/11(水) 23:57:33.71
ポリゴンをラスタライズしてレンダリングしちゃう!
827デフォルトの名無しさん:2012/01/12(木) 06:00:56.86
全部ドローでいいんじゃね
828デフォルトの名無しさん:2012/01/13(金) 11:13:18.92
右上とか左下って意味の定数名を考えてるんだが、
意味が通じて、短い名前ってないかな?
829デフォルトの名無しさん:2012/01/13(金) 11:30:28.81
rt
lb
830デフォルトの名無しさん:2012/01/13(金) 12:42:12.40
古代のソースだと地図の方角に対応付けてるのも多かったな。
NEとかSWとか。
831デフォルトの名無しさん:2012/01/13(金) 15:48:33.45
地図かー
それはちょっと納得だけど、付けたら付けたで不自然だってつっこまれそうw
仕方なくtrightくらいで作っておこうかな。
832デフォルトの名無しさん:2012/01/13(金) 16:03:49.02
rtだと右上って分かるけど、trightだとなんだか分からなくなりそうな俺が居るw
833デフォルトの名無しさん:2012/01/13(金) 16:26:34.28
上下と左右なら、感覚的に上下を始めに持ってきたい。
二文字にしたら元が分からなくなりそうだしと思ったんだけど、
これも分かりにくいか。
834デフォルトの名無しさん:2012/01/13(金) 16:32:04.53
左上┌┐右上
左下└┘右下
835デフォルトの名無しさん:2012/01/13(金) 17:58:44.12
>>833
L-Rと聞いて左右のことだと認識する人と、T-Bと聞いて上下だと認識する人、
日本人なら前者のほうが多いんじゃないかと思う。

この仮定が正しいとすれば、tRightよりもrTopの方が右上だと認識しやすいのではないだろうか。
836デフォルトの名無しさん:2012/01/13(金) 18:35:31.62
>>835
だな
837デフォルトの名無しさん:2012/01/13(金) 18:46:15.87
分かりました。
頭にlrのパターンでやることにします。
838デフォルトの名無しさん:2012/01/13(金) 19:19:26.90
解決して何よりだが、そもそも
右上とか左下って意味の定数名を短縮する必然性があるのか疑問
839デフォルトの名無しさん:2012/01/13(金) 19:46:50.84
>>831
地図のような命名は今でも一般的な慣習だよ
840デフォルトの名無しさん:2012/01/13(金) 20:18:16.73
略したがりは病気みたいなもの。
俺の経験上、説得は無理w
この手の人って学習能力がないのか、何度それで失敗しても懲りない。
学習能力がないというより、失敗の原因を分析把握する能力がないのかもしれんが
841デフォルトの名無しさん:2012/01/13(金) 20:28:54.78
人それぞれだから説得する気は全くないよ
略記で失敗する、しないは状況によるし

LeftTop や RightBotttom なんかを略す「意図・狙い」を
単純に訊いてみたかっただけだ
842デフォルトの名無しさん:2012/01/13(金) 20:33:41.61
>>831
そっちが不自然。
略しないで使うか一般的な表現を使え。
843841:2012/01/13(金) 20:39:25.45
自分で LeftTop や RightBotttom と言っておいて何だが、
今ふと思って英辞郎で左上、右下を見てみたら、
upper left、lower right と出た

調べてみると、top は何か範囲のあるものの上限・上端の「位置」を表す感じだ
ウィンドウ(という範囲のある枠)の上端とか

upper は上の「方向(物理・論理問わず)」を表す感じっぽい

bottom と lower も然り

>>828 がどちらを意図しているかは知らんが
844デフォルトの名無しさん:2012/01/13(金) 21:55:17.30
>>843
略さないからBotttomってなるんだよ、というのはさておき、
DIR_UP | DIR_LEFT
とかじゃだめなん
845デフォルトの名無しさん:2012/01/13(金) 22:01:27.86
DIR_UP | DIR_DOWNなんてのを避けたいんでしょうな。
そもそもビットワイズのフラグにするような性格のものとも思えんけど
846デフォルトの名無しさん:2012/01/13(金) 22:16:23.22
知らないだけだったりして
847デフォルトの名無しさん:2012/01/14(土) 10:05:06.39
LeftTop? TopLeftじゃないのか?
848デフォルトの名無しさん:2012/01/14(土) 10:37:08.94
化学式記号と和名の対応に同様だな
849デフォルトの名無しさん:2012/01/14(土) 11:24:00.01
>>848
H2O → O2H ?
850デフォルトの名無しさん:2012/01/14(土) 13:14:16.59
>>847
LeftTop はダメで TopLeft が良いという根拠は何?
851デフォルトの名無しさん:2012/01/14(土) 13:47:05.60
日本語では、ふつうは上右といわずに右上というのと同じようなもんだろ。
852デフォルトの名無しさん:2012/01/14(土) 14:10:33.15
Google.com in English でググってヒット数を調べたら

LeftTop : TopLeft = 1 : 3

1:3 程度の差ならどちらでも良いと思うぞ
どちらを使っても、まともな精神の持ち主なら誰が見ても正しく解釈してくれる

たとえ LeftTop を使ってても、プロジェクト内のソースコードの
全ての LeftTop を TopLeft に置換しなきゃならんほどでもない

こんな些細な違いよりも、略記する方がよほど解釈に影響を与えると思うが
853デフォルトの名無しさん:2012/01/14(土) 14:14:07.49
と思ったが、ググった結果を改めて見てみると、

"Left Top" の結果は "left, top" でヒットしてるのが多いな

まぁ、拘るほどでもない些細な違いだとは思うが
854デフォルトの名無しさん:2012/01/14(土) 14:17:26.27
MSの命名に従うのが最善
855デフォルトの名無しさん:2012/01/14(土) 14:23:35.03
>>850
>>まさに>>851
856デフォルトの名無しさん:2012/01/14(土) 14:39:22.78
>>747=>>852か?
857デフォルトの名無しさん:2012/01/14(土) 17:28:16.07
せめてGoogleCodeSearchにしろよと。
意外に英語ネイティブの人のはひっかからんが。
858デフォルトの名無しさん:2012/01/14(土) 17:58:39.93
>>853
ふふ
859デフォルトの名無しさん:2012/01/14(土) 18:00:03.80
きもちのわるい笑いは、自分の心の中に閉じ込めておいてください
860デフォルトの名無しさん:2012/01/14(土) 18:30:25.17
ひひひ
861デフォルトの名無しさん:2012/01/14(土) 21:19:45.48
づづづw
862デフォルトの名無しさん:2012/01/14(土) 22:21:03.43
>>824-825
ありがとうございます。 
863デフォルトの名無しさん:2012/01/15(日) 12:23:26.71
簡易情報だけをもつオブジェクトに対してインスタンスメソッドを呼び出すことで
詳細情報をデータベースから読み込み、オブジェクトの詳細情報が取得/変更できる状態にしたいと思っています。
そのメソッド名は何がいいですか?
864デフォルトの名無しさん:2012/01/15(日) 13:44:41.12
>>863
GetDetailとかではまずい理由があるなら先に言った方がいいと思う
865863:2012/01/15(日) 13:51:53.88
Get〜だと返り値で情報が返ってきそうに見えると思います。
そうではなく、あくまで内部で情報を取得して
オブジェクトの外からその結果を取得できる状態にするメソッドなので。
それと情報を取得するタイミングを意識したいので、Get〜の初回呼び出しで勝手に読み込む
ような形にはしたくありません。
866デフォルトの名無しさん:2012/01/15(日) 13:56:31.22
なるほど。

FetchDetail
LoadDetail
RetrieveDetail
PrepareDetail

こんなとこ?
867デフォルトの名無しさん:2012/01/15(日) 13:58:01.19
updateDetailedInformation
setDetailedInformationAvailable
loadDatabase
868デフォルトの名無しさん:2012/01/15(日) 13:59:52.14
>>865
LoadDetailは?
869デフォルトの名無しさん:2012/01/15(日) 14:01:49.79
setEditable
870デフォルトの名無しさん:2012/01/15(日) 14:04:24.92
enableDetail
871デフォルトの名無しさん:2012/01/15(日) 14:05:37.40
detailを名詞的に使うならdetailsがいいと思うけど
872デフォルトの名無しさん:2012/01/15(日) 14:51:08.45
詳細情報の取得/変更ができる状態にする
詳細情報の変更ができるようにする
詳細情報の変更の準備をする

PrepareChangeDetails
PrepareModifyDetails
873デフォルトの名無しさん:2012/01/15(日) 14:54:10.94
ん?できるようにするメソッドがあれば、逆のメソッドも必要だよな?

BeginChangeDetails
EndChangeDetails
874デフォルトの名無しさん:2012/01/15(日) 15:06:13.06
普通はいらないでしょw
人間も一緒だけど、最初にサマリーだけ読みたいのは、全情報を読むのには時間がかかるから。

一旦全情報を読んでからそれを忘れることにしても、ちょっとメモリーの節約になる以外に
メリットがあると思えないが
875デフォルトの名無しさん:2012/01/15(日) 15:06:18.32
ExpireDetails
876デフォルトの名無しさん:2012/01/15(日) 15:07:51.99
>>874
いらないものを時々捨ててくれるようになってないおかげで長時間使うとひどい目にあうアプリがたくさん。
OSが本気で捨てないからという理由がある場合もあるけどね
877デフォルトの名無しさん:2012/01/15(日) 15:12:15.94
>>874
普通は要るよ
878デフォルトの名無しさん:2012/01/15(日) 15:13:58.75
loadDetails
unloadDetails
879デフォルトの名無しさん:2012/01/15(日) 15:15:08.17
>>877
そんな実装見た事ありませんが....
880デフォルトの名無しさん:2012/01/15(日) 15:19:19.13
リソースを確保して用済みになったら解放する
当たり前の事
881デフォルトの名無しさん:2012/01/15(日) 15:21:01.87
それはDisposeパターンでしょ。
>>893が言うような内容とは全然違う。
882デフォルトの名無しさん:2012/01/15(日) 15:21:43.70
不要と思うけど>>873に訂正
883デフォルトの名無しさん:2012/01/15(日) 15:26:15.47
違わない
884デフォルトの名無しさん:2012/01/15(日) 15:27:17.83
ところでDisposeパターンって何?
885デフォルトの名無しさん:2012/01/15(日) 15:27:38.07
loadDatabase

いらんとおもうけど
unloadDatabase

でFA
886デフォルトの名無しさん:2012/01/15(日) 15:44:39.81
それだとデータベース自体を使用可能にするように受け取れる。
887デフォルトの名無しさん:2012/01/15(日) 15:47:06.95
>>885
データベース以外から読むように変えたらメソッド名も変えないといけないのかぁ。
888デフォルトの名無しさん:2012/01/15(日) 17:38:05.92
>>871
えー  そんなこと言うんなら enableTheDetail だろ

それよか enableDetail(ry って思っとけばいい
889デフォルトの名無しさん:2012/01/15(日) 17:51:12.62
対象がデータアクセスできる状態にすることを指すカッコイイ英語の呼び方がありそうな気がするんだが出てこないので悶々としているw
890デフォルトの名無しさん:2012/01/15(日) 17:54:50.69
setPermission
891デフォルトの名無しさん:2012/01/15(日) 17:55:09.25
それかもしかして unlock ?
892デフォルトの名無しさん:2012/01/15(日) 18:02:50.78
・・・そのメソッドが呼ばれたのであれば、データベースからそのインスタンスにデータが読み込まれるんだよな?
そこに視点を置けば

LoadDetails
LoadDetailsFromDatabase
LoadDetailsFromDB

かな

かな
893デフォルトの名無しさん:2012/01/15(日) 18:53:43.35
メソッド名は慣例上、小文字から始めたい
894デフォルトの名無しさん:2012/01/15(日) 20:37:52.40
class Base {
virtual ~Base(void) {}
virtual char const * GetName() const = 0;
};

class Hoge : public Base {
public:
static char const * GetName_() { return "Hoge"; }
char const * GetName() const { return GetName_(); }
};

名前かぶっちゃったんだけどどうしよう
両方共publicにしたいからアンダースコアとかで誤魔化したくない
895デフォルトの名無しさん:2012/01/15(日) 20:56:12.17
EnsureDetails
896デフォルトの名無しさん:2012/01/15(日) 21:03:42.26
>>894
その情報だけでは、スレの趣旨に反するが、設計が悪いとしか言えない


そもそもクラスメソッドの GetName_ とインスタンスメソッドの GetName は、
それぞれどういう役目なの?
897デフォルトの名無しさん:2012/01/15(日) 22:39:55.63
GetStaticName
GetDynamicName
898デフォルトの名無しさん:2012/01/15(日) 22:44:23.99
しぃしゃぁぷは、メソッド名の最初大文字なのか。。。。。。。。。。
899デフォルトの名無しさん:2012/01/15(日) 22:44:30.00
>>894
既に突っ込まれてるとおり質問が無茶振り過ぎ
900デフォルトの名無しさん:2012/01/15(日) 22:55:42.59
>>898
最近はCでもキャメルが多いでしょ。
Win32なんて昔からそうだけど。
ヤクザさんは胃の中の蛙だなw
901デフォルトの名無しさん:2012/01/15(日) 23:14:02.95
>>899
おまえ職場や学校で疎外感感じるだろ?
902デフォルトの名無しさん:2012/01/15(日) 23:16:21.91
>>901
おまえ.isBaka() == TRUE
903デフォルトの名無しさん:2012/01/15(日) 23:26:40.60
>>902
言われた本人が無視してるんだからスルーしようよ。
頼むよ...
904デフォルトの名無しさん:2012/01/15(日) 23:32:27.64
>>900
パスカルの間違い?
905デフォルトの名無しさん:2012/01/15(日) 23:41:49.09
>>904
その通りだねすまんです。
906デフォルトの名無しさん:2012/01/15(日) 23:58:08.16
>>905
>>901-903がつっこまなかったあたりにいろいろ考えざるを得ないねw
907デフォルトの名無しさん:2012/01/15(日) 23:59:06.05
>>906
あなたって凄いのね!!!!!!!!!!!!!!!!!
908デフォルトの名無しさん:2012/01/16(月) 07:54:26.24
>>894
俺はそういうばあいはHoge.GetName()とHoge::GetStaticName()にする
909デフォルトの名無しさん:2012/01/16(月) 10:25:25.96
_あんだーばー
~にょろ
|たてぼう
.てん
,こんま
910デフォルトの名無しさん:2012/01/16(月) 11:06:43.25
_ アンダースコア
~ チルダ
| セパレート
. ドット
, カンマ
911デフォルトの名無しさん:2012/01/16(月) 11:57:19.36
_ アンダースコア
~ チルダ
| オア
. ドット
, てん
912デフォルトの名無しさん:2012/01/16(月) 12:39:08.54
_ アンダーヘア
~ チンコ
| もっとチンコ
. 玉
, 毛玉
913デフォルトの名無しさん:2012/01/16(月) 15:52:13.19
>>912
息子が帰宅後、自分の部屋に直行
こんなレスを書いていたとは・・・
914デフォルトの名無しさん:2012/01/16(月) 17:59:32.58
チンコだけに
915デフォルトの名無しさん:2012/01/16(月) 19:22:09.93
決学彩雲国差異
916デフォルトの名無しさん:2012/01/16(月) 21:18:09.76
ディレクトリを一段だけ探すのを find()、
再帰的に辿って探すのを find_recursively() という名前にしています。
しかしよく使うのは find_recursively() のほうで、find()のほうはほとんど使いません。
そのため、よくつかう方のfind_recursively()をもっと短い名前にしたいと思います。
どんな名前がいいでしょうか。
find_recursively()をfind()にして、find()をもっと別の名前にするのが吉?
917デフォルトの名無しさん:2012/01/16(月) 21:34:38.14
現状を変えないのが吉

918デフォルトの名無しさん:2012/01/16(月) 21:53:21.02
>>916
指定するディレクトリ内に指定する名前が存在するかどうかを検査する方をexistsにするとか。

そもそも「一段だけ探す」って日本語は変だ。
「あるかないか調べる」でしょ。だからexists。
919デフォルトの名無しさん:2012/01/16(月) 21:55:27.06
find <--> findRec
find <--> findR

findAt <--> find
920デフォルトの名無しさん:2012/01/17(火) 14:50:05.09
>>918
>1
921デフォルトの名無しさん:2012/01/17(火) 21:10:01.90
>>916
find_recursivelyをfindにして、findをfind_no_recursively。
個人的にはfind(bool recursive)。

ついでに質問。
countとspanという名前のプロパティを持つクラスで、引数xを取るメソッドが繰り返し呼び出される。
メソッドは x と count + span を比較し、x の方が大きければ count へ x を代入し、trueを返す。
そうでなければfalseを返す。
という振る舞いをするクラスなんだが、なんて名前にしたものかと。
922デフォルトの名無しさん:2012/01/17(火) 21:35:05.29
>>921
日本語でおk
923デフォルトの名無しさん:2012/01/17(火) 21:43:30.69
>>921
だから質問が無茶振りだって....

っていうか、それって(x - count)の絶対値とspanを比較しなくて大丈夫なの?
電子回路のシュミットトリガー的というか、大昔のTVゲームのグラディウスのオプション的な
挙動が目的だと想像するんだけど。
924デフォルトの名無しさん:2012/01/17(火) 22:03:58.59
なんで挙動で命名しようとするのか
用途で命名するべきでは
925デフォルトの名無しさん:2012/01/17(火) 22:06:22.72
Add(x)でいいんだよ
細かい内容は隠蔽されてるから良いんじゃねーか
しきい値超えた時だけたされようがたされまいがぜんぜん違う値がたされようが
そんなことはクラス利用者にとってはどうでもいいんだよ
926デフォルトの名無しさん:2012/01/17(火) 22:06:46.45
>>921
それのメソッドはクラス内だけの計算の為に使われる非公開メソッドではなく、
そのクラスを利用する側に対して公開するものなのだろう

であれば、メソッド名はそのクラス自身が持つ役割と無関係ではあり得ない
そのクラスの役割は何だろう?

それともう一つ
そのメソッドはクラスが持つ状態を変化させるものでろあう
そして、引数によって無条件に変化させるのではなく、
count + span と比較することによってある種の制約を課している
つまり状態変化とその制約

この事もメソッドの命名に影響を与える
メソッドを利用するプログラマには、メソッド名から
状態が変化する事を読み取ってほしいのか、
制約がある事を読み取ってほしいのか、両方なのか
状態変化の内容も読み取れるようにしたいのか
どのような制約があるのかも取れるようにしたいのか
などなど

どのような情報をメソッド名から読み取ってほしいのだろう?

全ての情報をメソッド名に盛り込むと返って分かりにくくなるから、
もっとも重要な情報を簡潔にしてメソッド名に、
あとの情報はコメントやドキュメントに回す必要がある
927デフォルトの名無しさん:2012/01/17(火) 22:10:16.00
>>925
乱暴すぎ
そんなことがクラス利用者にとってどうでもいいかどうかは、場合による

今はどのような「場合」なのかを質問者が明確に説明していないのが問題
928デフォルトの名無しさん:2012/01/17(火) 22:14:57.56
じゃあTryAdd(x)でいいだろ
利用者はxを足すことを考えてるがその結果がどうなるかはクラスによる
「しきい値以上なら足す」なんて馬鹿正直にめんどくさいメソッド付けちまったら変更に弱すぎる
しきい値以上でなかったら半分足す仕様に変えたいなーって上司がぼやいたら関数名と利用者すべて書き換えるつもりか?
処理の詳細を匂わせるメソッド名じゃカプセル化の意味が無いんだよ
929デフォルトの名無しさん:2012/01/17(火) 22:20:35.28
むしろ何やるのか想像も付かないようなカッコいい名前つければいんじゃね?
930デフォルトの名無しさん:2012/01/17(火) 22:22:36.82
eternalShiningGaraxianAdd()
931デフォルトの名無しさん:2012/01/17(火) 22:26:16.46
それのどの辺りがカッコいいのか、ちょっと自慢気に解説してくれないか
932デフォルトの名無しさん:2012/01/17(火) 22:26:51.88
なにびびってAddとかつけてんの
933デフォルトの名無しさん:2012/01/17(火) 22:29:04.25
車田正美が見開きページで必殺技を叫んでいる体で
934デフォルトの名無しさん:2012/01/17(火) 22:29:58.07
まあ、そもそも質問者のレスを読むと、聞きたいのはクラス名のように読めるんだけどさ。
もっともあの文章が質問者の意図を正確に表現したものかどうか怪しいけどw

どのスレでもそうだけど、質問者は書き込みボタンを早漏気味にクリックする前に
よくてめえの文章を推敲して欲しいもんだよね。
935921:2012/01/17(火) 22:41:50.76
あー、もっと具体的に書くべきだったか。
具体的に書くと、16ミリ秒単位で回ってるスレッド内でキー入力をチェックしてる
んだが、不用意にキー入力判定が連続入力されないようにしたい、と。
一度キー入力を受け付けたら100ミリ秒(前回の例でのspan)経つまでは
入力を拒否(falseを返す)、それ以上経っていたら入力を許容(trueを返す)。
countは入力を受け付けた時間を記録しているだけで、countもspanも
別に名前にこだわりはない。固定してるように読めるね。すまん。

で、当初はKeyCheckerって名前にしようと思っていたんだが、他に16ミリ秒毎に
実施する必要がない処理がいくつかあるので、汎用的に
「前回受け付けてから一定期間が経過しているかどうか」を表すクラスにして
あっちこっちで使い回そう、と思ったわけですわ。
で、そのクラス名をなんにしたもんか、と。中途半端に処理内容を書く
んじゃなくてどういう目的のクラスなのかを書くべきだったね。すまん。

というわけで、内部的に値を足し込むことが目的じゃないのでAdd(x)やTryAdd(x)は
ちょっとアレな感じ。すまんねわざわざ書いてもらったのに。
936デフォルトの名無しさん:2012/01/17(火) 22:55:06.34
それだったらInputでもなんでもわかりやすい名前にしたほうがいい
入力クラスを利用する側からすれば入力クラスが実際には内部的に少し待ってるなんてことを意識したくないはずだ
937デフォルトの名無しさん:2012/01/17(火) 22:57:11.46
TimeoutCheckerとかかなあ。
でも、これって普通はクラスにするまでもないような気もするけどねえ....
938デフォルトの名無しさん:2012/01/17(火) 23:04:15.83
CheckElapsedTime()
939921:2012/01/17(火) 23:19:26.83
TimeoutCheckerか!なるほどそれでいきます。
なんとなく目覚まし時計的なイメージでAlarmにしてたんだけど
警報的な意味合いが感じられてイマイチだよなぁ、と思ってて。
他の人もどうもありがとう。助かりました。
940デフォルトの名無しさん:2012/01/17(火) 23:22:47.87
何にでも名前をつけたい病
941デフォルトの名無しさん:2012/01/17(火) 23:33:07.14
>>939
自分で提案しといてあれだけど、この名前にはちょっと疑問がないわけでもないんだよね。
というのは、使い方としてはたぶん、

void start(int countDown)
みたいなメソッドを呼んでカウントダウンを開始することになると思うんだが、

(1) このメソッドを呼ぶ前
(2) このメソッドを読んでから指定時間経過後

たぶん欲しいのは、この二つのどちらかの場合trueを返すメソッドな訳だよね?

仮にこれをクラス名に引きずられてIsTimoutとかしちゃうと、上の(1)の場合にも
trueを返すのが不自然に感じられるような気がしないでもない。

まあ気にしなきゃ済む問題かもしれんが。
942デフォルトの名無しさん:2012/01/17(火) 23:40:41.31
>>1
命名規則についてはどこで議論しろというんだ
943デフォルトの名無しさん:2012/01/17(火) 23:47:58.74
まずはここでどうぞ
その後の流れ次第ではスレ立てしてもいいよ
http://toro.2ch.net/test/read.cgi/tech/1326081866/
944921:2012/01/18(水) 00:36:46.11
>>941
isTimeoutが最初に呼ばれる時は初期値0と比較して、カウントダウンではなく
カウントアップで経過確認してるのでまぁいいかなと。
疑似コード的に書くと以下のような感じ。

void main() {
 TimeoutChecker keyChecker(100), fpsChecker(1000), ...;

 while (true) {
  time = timeGetTime();
  ...;
  if (keyChecker.isTimeout(time)) ...;
  if (fpsChecker.isTimeout(time)) ...;
  ...;
 }
}

とまぁ、FPSみたいにせいぜい1秒単位で処理すればいいものや、
パフォーマンスが悪いときに動的に一部の処理の実行頻度を落としたり、
ということをやろうとするとクラス化してまとめておいた方が
管理しやすいよね、というだけの話です。
945デフォルトの名無しさん:2012/01/18(水) 02:21:45.77
>>928
なんでAddAdd言ってるのかわからないんだけど、
メソッドの処理としては、countにxを代入するかしないか、だよな。
946デフォルトの名無しさん:2012/01/18(水) 02:23:36.00
>>935
6フレに1回しか入力できないとかシンクロ連射涙目じゃん
947デフォルトの名無しさん:2012/01/18(水) 10:04:05.00
設計が間違ってると名前付も上手くいかないことが多い
いい名前が思い浮かばなかったらまずはコードを見直すことから始めよう
今回のケースはまさにそれです
948デフォルトの名無しさん:2012/01/18(水) 14:16:35.33
理念としては同意するんだがな。
949デフォルトの名無しさん:2012/01/18(水) 15:47:31.05
>>947
しみじみ同意。
俺もその境地にたどり着いた。
950デフォルトの名無しさん:2012/01/18(水) 15:54:12.01
そりゃ単に機械的に書き下せない未知のコードパターンに嵌まり込んで
抜け出せず思考停止状態に成ってるだけだわ
951デフォルトの名無しさん:2012/01/18(水) 16:03:58.02
言語が何かしらんけど
FPS fps;
FrameCount frameCountForKeyInput;
String getKeyStateInsensitive()
{
if (frameCountForKeyInput.getSecond(fps) > 0.1) {
frameCountForKeyInput.reset();
return getKeyState();
}
return "";
}
でいいんじゃない
個人的にタイムアウトチェッカーとかカタカナ英語過ぎて許せないな
952デフォルトの名無しさん:2012/01/18(水) 16:10:46.19
糞すぎ
953デフォルトの名無しさん:2012/01/18(水) 16:14:44.08
TimeoutCheckerがカタカナ英語でない事くらいちょっとググればわかるだろうに
954デフォルトの名無しさん:2012/01/18(水) 16:20:46.51
>>951
100ms経たないとキーステートを取得できない関数をほしがってる人がどこに
955デフォルトの名無しさん:2012/01/18(水) 16:47:38.05
>>954
すぐ気づいたけど直すの簡単だし変数名のスレだからまあいいかとそのまま投稿w
956デフォルトの名無しさん:2012/01/18(水) 16:53:33.24
>>944
> FPSみたいにせいぜい1秒単位で処理すればいいもの
何このクソゲー
957デフォルトの名無しさん:2012/01/18(水) 16:55:05.85
FPSを「一秒毎にフレーム更新するもの」って考えてるんじゃね。
958デフォルトの名無しさん:2012/01/18(水) 17:22:48.93
> パフォーマンスが悪いときに動的に一部の処理の実行頻度を落としたり
これを実現するためのコードが無駄に重いっていう本末転倒
959デフォルトの名無しさん:2012/01/18(水) 20:50:48.38
こんなもの全然重くねーよ
ど素人が
960デフォルトの名無しさん:2012/01/18(水) 22:31:07.56
重いかどうかを勝手に決められても困る
961デフォルトの名無しさん:2012/01/18(水) 22:42:36.51
アプリ上の一つの機能を実現する複数のオブジェクト群がある
オブジェクト群を生成し適切に参照関係を結びそれぞれを適切な管理クラスに登録して
初めてユーザーがその機能を扱える状態になる

この「オブジェクト群を生成し適切に参照関係を結びそれぞれを適切な管理クラスに登録する」までを隠蔽して一つの命令にしたんだが何かいい名前はないだろうか
CreateXXXだと単一オブジェクトの生成のみのイメージがあるのでちょっと気に入らない
962デフォルトの名無しさん:2012/01/18(水) 22:52:12.62
readyとか
963デフォルトの名無しさん:2012/01/18(水) 22:53:29.43
deployとかcomposeとか
964デフォルトの名無しさん:2012/01/18(水) 22:57:03.88
>>961
Abstract Factoryパターン的な発想?

だとしたら、メソッド名よりもそのオブジェクト郡の生成と関連付けを行う
クラスのクラス名に凝った方が良いのでは?

メソッド名は普通にgetXXXXで良いように思うけど。
965デフォルトの名無しさん:2012/01/18(水) 23:17:42.54
>>961
オブジェクト群の生成や管理を隠しておいて十分なら、
クラスの中にぶち込んで、そいつをユーザに使わせたら?
シンプルなインタフェースだけ公開して。

隠し切れずに部分的に外に出てたり、外の物を積極的に使ったりする場合は、
GoF的にはFacadeパターンってのがある。
966デフォルトの名無しさん:2012/01/18(水) 23:28:40.52
initialize
setup
prepare
967デフォルトの名無しさん:2012/01/18(水) 23:29:57.40
DirectShowでFilter群を扱うみたいな話か
BuildXXX
968デフォルトの名無しさん:2012/01/18(水) 23:33:50.83
>>967
追記
BuidXXXと書いたけど
XXXはオブジェクト群の意味するものの名前
DirectShowで言えばBuildFilterじゃなくてBuildGraphという感じ
969デフォルトの名無しさん:2012/01/18(水) 23:48:49.39
constructXXX
970961:2012/01/19(木) 00:22:35.33
どうもです
辞書で日本語訳を見たところdeployが感覚的に一番近い感じでした
システムに要素を配置する的なニュアンスで
971デフォルトの名無しさん:2012/01/19(木) 00:28:30.57
それでいいなら初めからそうしろよ。
972デフォルトの名無しさん:2012/01/19(木) 00:51:12.40
class アプリ上での機能の名前 {
オブジェクト群;
public:
コンストラクタ(登録するべき管理クラス群) {/*生成リンク登録*/}
} ;

寿命管理用のホルダー.insert(new アプリ上での機能の名前(管理クラス群)) ;
973デフォルトの名無しさん:2012/01/19(木) 20:41:55.19
974デフォルトの名無しさん:2012/01/21(土) 22:30:58.65
命名に悩んでいると言うより、困っている事。

コードを延々と書き進めていたら、変数命名の要素でchrとcharが
入り乱れているのに気が付いた。 chrcodeとかchardataとかchrlistとか。
どちらも伝統ある省略法だけど、使い分ける事は可能かな?
それとも、単純に短い方が正義?
975デフォルトの名無しさん:2012/01/21(土) 22:36:32.01
伝統といっても一部だけで広くからは批判されてる部類のもの
略しないのがトレンド
976974:2012/01/21(土) 23:00:39.15
そうなんだ、最近は省略しないんだ。
CharacterCode、CharacterData、CharacterList・・・長過ぎませんか?(^^;

まあいいや、試しに実際にコードを置き換えてみます。
早い回答有難う御座います。
977デフォルトの名無しさん:2012/01/21(土) 23:08:16.20
糞長い変数名は命名者のオナニー
親切のつもりだろうが現実的には可読性を著しく低下させる
変数名は省略しコメントにロングネームを添えよ
978デフォルトの名無しさん:2012/01/21(土) 23:30:45.44
変数名で直感的に理解できるのならコメントの必要はないし、
コメントが必要な変数名はソースの可読性を低下させる

コメントは「処理や計算」を目で追う場合のサポートとして付けるべき
サポートが必要な変数名はクソ
979デフォルトの名無しさん:2012/01/21(土) 23:37:53.54
価値観の異なる人が多くいる環境は省略しないな
大量の省略表記規約がある環境はストレスマッハ
だが、あらゆる省略表記が混在する地獄よりはまし

変数が適切な空間にあれば変数名は短くシンプルに済むはずなんだ
980デフォルトの名無しさん:2012/01/21(土) 23:44:02.95
職場の人間をフルネームで呼んだりしないのと同じ
識別子を適切に設定してさえいれば短いほうが円滑に物事が回る
いちいち長い名前を付けなければ混乱するという状況に落った場合
それは名前付以け前のどこかに問題があるはずだ
名前空間の使い方を間違えてるとか、スコープが不適切な変数とかね
981デフォルトの名無しさん:2012/01/22(日) 01:31:21.05
974みたいに略し方がばらばらだと混乱が起きるだけ

982デフォルトの名無しさん:2012/01/22(日) 01:38:40.76
>>980
また病気が始まったな。
職場の人間はよく知っているし、そもそも人の名前は機能や意味を表すためのものではないから
ここでの類推としてはまったく不適切。

名前空間まで含めた完全修飾名を普通は使わないたとえとしてなら適切。

>>976
名前に求められることは、そこから変数や関数の意味や機能を読み取れることだから、
その意味では個人的はcharなら許容範囲だとは思う。
983デフォルトの名無しさん:2012/01/22(日) 01:43:33.97
>>974
chrとかcharとかcharacterって一体何の情報何だろう
もしかして型名?
984デフォルトの名無しさん:2012/01/22(日) 02:07:34.73
>>983
「参照先のビット列を文字コードとして解釈することが求められている」

と読み取れる
985デフォルトの名無しさん:2012/01/22(日) 02:09:29.45
スコープ広いのはそれなりに長めの名前にする。
スコープ狭いのはぶっちゃけ1文字とかでもいい。
986デフォルトの名無しさん:2012/01/22(日) 02:29:59.04
省略表記の規約って何が有る?
・母音を抜く
・文字数で切る
・語素の境界で切る
・複合語の頭文字を並べる
追加して
987デフォルトの名無しさん:2012/01/22(日) 02:46:03.85
・音節の境界で切る
988デフォルトの名無しさん:2012/01/22(日) 03:09:09.05
・英語の一般的な省略を使う

db, id, ok くらいはまあいいとして、グローバルスコープでxferとか付けちゃうのは微妙
989デフォルトの名無しさん:2012/01/22(日) 04:38:21.16
○ number → num
× count → cnt
990デフォルトの名無しさん
>>984
だったらutf8だとかeucだとか文字エンコードも併記すべきな気がするぞ…