[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 05/09 13:46 / Filesize : 204 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

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



1 名前:デフォルトの名無しさん mailto:sage [05/02/25 20:16:44 ]
クラス名、変数名のつけ方に悩んだら書き込むスレです。

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

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

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

前スレ。
◆ネーミング倶楽部◆
pc3.2ch.net/tech/kako/1035/10353/1035362308.html
Part1
pc5.2ch.net/tech/kako/1046/10465/1046541730.html
Part2
pc5.2ch.net/tech/kako/1058/10582/1058213523.html
Part3
pc5.2ch.net/test/read.cgi/tech/1067171530/
Part4(間違って3として進行)
pc5.2ch.net/test/read.cgi/tech/1087209526/

151 名前:デフォルトの名無しさん mailto:sage [2005/04/07(木) 11:29:37 ]
>>143

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

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

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


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

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



153 名前:デフォルトの名無しさん mailto:sage [2005/04/07(木) 15:03:02 ]
Javaでは、

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

などとなっているな。

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


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

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

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

156 名前:デフォルトの名無しさん mailto:sage [2005/04/12(火) 16:06:03 ]
>155
advance_by_bytes


157 名前:156 mailto:sage [2005/04/12(火) 16:06:28 ]
advance_in_bytes


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

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



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

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

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

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

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

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

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

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

165 名前:デフォルトの名無しさん [2005/04/16(土) 13:46:57 ]
FromURLでもつけとれ

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

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

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

167 名前:デフォルトの名無しさん mailto:sage [2005/04/16(土) 23:56:35 ]
>>166
pc8.2ch.net/test/read.cgi/tech/1113139986/35

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

169 名前:デフォルトの名無しさん mailto:sage [2005/04/17(日) 01:36:30 ]
>>168
あれだろ。PNGのチャンクのような構造になってんだろ。



170 名前:デフォルトの名無しさん mailto:sage [2005/04/17(日) 01:37:51 ]
ITEMIDLISTか?

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

172 名前:デフォルトの名無しさん mailto:sage [2005/04/20(水) 00:23:49 ]
品詞
part of speech // word class

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

174 名前:デフォルトの名無しさん mailto:sage [2005/04/20(水) 12:14:12 ]
>>173
w_rd cl_ss
_n. 【文法】 語類, 品詞.

175 名前:デフォルトの名無しさん mailto:sage [2005/04/20(水) 20:40:43 ]
>>174
最高でーす!

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

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

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


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



180 名前:デフォルトの名無しさん mailto:sage [2005/04/24(日) 00:07:55 ]
>2つ必要なときは
jにしとけ

181 名前:デフォルトの名無しさん mailto:sage [2005/04/24(日) 08:24:01 ]
kまでは使ったことある。

182 名前:デフォルトの名無しさん mailto:sage [2005/04/24(日) 14:09:40 ]
なるほど j か・・・今度からそれにしよ

183 名前:デフォルトの名無しさん mailto:sage [2005/04/24(日) 18:57:57 ]
i,j,kは定石だと思ってたんだけど違うのか…

184 名前:デフォルトの名無しさん mailto:sage [2005/04/24(日) 19:21:47 ]
なぜかそこでnを使う俺。

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

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

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

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

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



190 名前:デフォルトの名無しさん mailto:sage [2005/04/25(月) 00:04:33 ]
もしもし、皆さん、盛り上がってるとこ悪いですが

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

191 名前:デフォルトの名無しさん mailto:sage [2005/04/25(月) 15:42:38 ]
別にいいだろ

192 名前:デフォルトの名無しさん mailto:sage [2005/04/25(月) 19:38:08 ]
なんの為のスレッド形式なんだ。と、一応言っておく。

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

調べたら、

toLowerCaseInitial
toUpperCaseInitial

がありましたが…。

お願いします。

194 名前:デフォルトの名無しさん mailto:sage [2005/04/28(木) 00:27:25 ]
orz // 頭だけ小文字に
Orz // 頭だけ大文字に

195 名前:デフォルトの名無しさん [2005/04/28(木) 00:30:45 ]
toAaa
toaAA

196 名前:デフォルトの名無しさん [2005/04/28(木) 00:37:02 ]
Capitalize / Decapitalize

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


198 名前:デフォルトの名無しさん mailto:sage [2005/04/28(木) 02:12:49 ]
Capitalize / cAPITALIZE

199 名前:デフォルトの名無しさん mailto:sage [2005/04/28(木) 11:44:22 ]
頭文字大



200 名前:デフォルトの名無しさん mailto:sage [2005/04/28(木) 12:02:14 ]
ToBigHeadCharactor

201 名前:デフォルトの名無しさん mailto:sage [2005/04/28(木) 22:00:26 ]
bigよりlarge

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

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

204 名前:デフォルトの名無しさん mailto:sage [2005/04/29(金) 15:55:27 ]
double型のプレフィックスって何にしてる?


205 名前:デフォルトの名無しさん mailto:sage [2005/04/29(金) 16:27:18 ]
double_i

206 名前:デフォルトの名無しさん mailto:sage [2005/04/29(金) 17:40:11 ]
ハンガリアンを撲滅する会を結成しました。

207 名前:デフォルトの名無しさん mailto:sage [2005/04/29(金) 18:01:54 ]
ハンガリアンを撲滅する会を撲滅する会を結成しました。

208 名前:デフォルトの名無しさん mailto:sage [2005/04/29(金) 18:09:08 ]
ハンガリアンを撲滅する会を撲滅する会を撲滅しました。

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



210 名前:デフォルトの名無しさん mailto:sage [2005/04/29(金) 18:26:53 ]
問2
俺は童貞でしょうか

211 名前:デフォルトの名無しさん mailto:sage [2005/04/29(金) 22:27:26 ]
>>210
YES!YES!YES!YES!YES!YES!YES! OH, MY GOD!

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

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

お願いします

213 名前:デフォルトの名無しさん mailto:sage [2005/04/29(金) 22:39:40 ]
>>212
new() open() save_as() save_check() read_html()

214 名前:デフォルトの名無しさん mailto:sage [2005/04/30(土) 00:08:01 ]
newって予約語と被らないかな?
confirm_save load_html

215 名前:デフォルトの名無しさん mailto:sage [2005/04/30(土) 00:25:37 ]
>>214
C言語なら大丈夫じゃない?

216 名前:デフォルトの名無しさん mailto:sage [2005/04/30(土) 02:28:57 ]
>>213
抜けてる

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

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

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

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



220 名前:218 mailto:sage [2005/05/01(日) 01:49:40 ]
{

}    ('A`) < メンゴ

221 名前:デフォルトの名無しさん mailto:sage [2005/05/01(日) 01:53:24 ]
ワロタ

222 名前:デフォルトの名無しさん mailto:sage [2005/05/01(日) 21:01:55 ]
鼻から悪魔フイタ

223 名前:212 mailto:sage [2005/05/02(月) 12:04:34 ]
みんなありがとー

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

225 名前:デフォルトの名無しさん mailto:sage [2005/05/03(火) 10:16:42 ]
dest

226 名前:デフォルトの名無しさん mailto:sage [2005/05/03(火) 10:17:38 ]
target

227 名前:デフォルトの名無しさん mailto:sage [2005/05/03(火) 12:33:05 ]
object

228 名前:デフォルトの名無しさん mailto:sage [2005/05/03(火) 12:53:20 ]
enemy

229 名前:デフォルトの名無しさん mailto:sage [2005/05/03(火) 15:45:15 ]
あとは対戦相手ならopponentとかな。

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




230 名前:デフォルトの名無しさん mailto:sage [2005/05/03(火) 15:48:08 ]
partner

231 名前:デフォルトの名無しさん mailto:sage [2005/05/03(火) 15:52:03 ]
操作対象なら target か operand だろうな。


232 名前:デフォルトの名無しさん mailto:sage [2005/05/03(火) 16:35:35 ]
通信相手はpeer


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

234 名前:デフォルトの名無しさん [2005/05/04(水) 17:51:18 ]
↑224

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

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

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

238 名前:デフォルトの名無しさん mailto:sage [2005/05/05(木) 23:12:46 ]
止めはしないがそのうち後悔するだろう。

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



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

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

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

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

243 名前:デフォルトの名無しさん mailto:sage [2005/05/06(金) 09:11:52 ]
>>240のなかでは1か4だな。

244 名前:デフォルトの名無しさん mailto:sage [2005/05/06(金) 14:46:10 ]
>>240は規約の問題だと思われ。

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

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

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

まぁ文句だけいって適切なスレに誘導しないのは良くないな。
規約の話なら、このへんでどうぞ。
pc8.2ch.net/test/read.cgi/tech/1068752664/

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

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

249 名前:デフォルトの名無しさん mailto:sage [2005/05/07(土) 08:13:41 ]
議論できないノータリンはすっ込んでろ



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

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






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<204KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef