トップページ⇒tech
1001コメント253KB

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

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2010/12/24(金) 23:33:49
クラス名、変数名のつけ方に悩んだら書き込むスレです。

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

前スレ
クラス名・変数名に迷ったら書き込むスレ。Part18
http://hibari.2ch.net/test/read.cgi/tech/1277016982/
0002デフォルトの名無しさん2010/12/24(金) 23:34:39
Google code search
http://www.google.com/codesearch

250の辞書を一度に検索 Webdio
http://www.weblio.jp/

外国語広場: 英語: オンラインで使える英英辞典 英和・和英辞典
http://www.gaikoku.info/english/dictionary.htm

訳GO YAKUGO.COM
http://www.yakugo.com/WebHint/Quick.aspx

専門語、類語辞書。(英語) Thesaurus - Yahoo! Reference
http://education.yahoo.com/reference/thesaurus/

英文校正サイト [NativeChecker]
http://native-checker.com/

すうがく探検隊・数式と図形の英語
http://i.lekton.co.jp/ara/tanken/english/

リスコレ No.24 図形の名前を英語で……
http://homepage1.nifty.com/tadahiko/LISTCOLE/024-FIGURE.HTML

2010.07.28 英語の接尾語(辞)をまとめてみた
http://readingmonkey.blog45.fc2.com/blog-entry-391.html

2010.08.08 英語の接頭語(辞)もまとめてみた
http://readingmonkey.blog45.fc2.com/blog-entry-401.html
0003デフォルトの名無しさん2010/12/24(金) 23:38:33
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ってとこか。
0004デフォルトの名無しさん2010/12/25(土) 23:49:26
TONはもう二年も前の出来事なのか。
月日経つのはやいわあ
0005デフォルトの名無しさん2010/12/25(土) 23:52:13
CurDate と CurTime でいいじゃんねえ
0006デフォルトの名無しさん2010/12/26(日) 06:38:51
悪い
0007デフォルトの名無しさん2010/12/26(日) 13:50:44
>>3
コピペして相手を嘲笑すれば自分の方が正しくなる、と思い込める精神構造は
ネトウヨ君とよく似てるな。
っていうか、言い負かされた悔しさを2年も忘れれらないなら最初から議論なんかしなきゃいいのに。
いろんな意味で哀れ。
0008デフォルトの名無しさん2010/12/26(日) 14:06:03
>>7
> 精神構造
> ネトウヨ君
> 哀れ

病院行け
0009デフォルトの名無しさん2010/12/26(日) 22:18:35
class Hoge { /* ry */; } ;
class Fuga : public Hoge { /* ry */; } ;

{
my_ptr<Hoge> p(new Fuga);
my_ptr<Hoge> q = p; // 中でFugaのクローンが生成される
my_ptr<Hoge> r;
r = q; // 中でFugaのクローンが生成される
}
// 両方共~Fugaで開放される

といった感じでもとの型を保持して自動で適切にコピーや代入してくれるスマートポインタを作ったんですが
何かクールな名前は有りますか?
0010デフォルトの名無しさん2010/12/26(日) 23:13:44
clone ptr
deep ptr
0011デフォルトの名無しさん2010/12/27(月) 00:13:50
boost:::smart_ptr
0012デフォルトの名無しさん2010/12/27(月) 03:39:39
>>7
まだ居たのか
0013デフォルトの名無しさん2010/12/27(月) 17:40:53
TONちゃんはそんな的外れなこと言わないんじゃないの。いちいち憶えてないけど。
名前通り英語のセンスはあんまりないけど。
0014デフォルトの名無しさん2010/12/27(月) 23:45:03
質問です。
dataをコンストラクタの引数にとるFooクラスがあります。
dataのイテレータを引数にとり、順次Fooクラスのインスタンスを生成するイテレータを返す
Fooクラスのクラスメソッドの名称は何がいいでしょうか?

(Pythonで以下のような関数のことです)
@classmethod
def Foo(cls, iterator):
  for data in iterator:
    yield cls(data) # 実装はジェネレータになります

#気づいたら前スレが落ちてて990以降が見れん
0015デフォルトの名無しさん2010/12/28(火) 00:32:21
>>7
お前が言い負かしたと思ってるならスルーで良いじゃん
ただのコピペに何でそんな顔真っ赤にレスしてんの?
ていうかただコピペされただけで何で嘲笑とか言う言葉が出てくるの?
>>7のレスはまるっきり>>7の精神構造をあらわしてるよね
0016デフォルトの名無しさん2010/12/28(火) 00:44:28
>>14
そんなメソッド作ってもいたずらに複雑になるだけで少しも嬉しくない気がする。
Fooのコンストラクタ呼び出しの一行が減るだけじゃん。
0017デフォルトの名無しさん2010/12/28(火) 06:49:09
嬉しい嬉しくないを議論するスレではありませんので。
0018デフォルトの名無しさん2010/12/28(火) 08:13:58
>>14
FooIteratorAdapter
0019デフォルトの名無しさん2010/12/28(火) 17:29:23
>>14
as foos とか

0020デフォルトの名無しさん2011/01/05(水) 16:02:07
AS3 で表示オブジェクトにドラッグ機能を付与するクラスを作成したんですけどメソッドやプロパティの名前に悩んでます。
1. ドラッグ範囲を限定するメソッド(現在 limit)
2. 1のドラッグ範囲限定の判定に使うドラッグ対象表示オブジェクトの境界を取得する対象を示すプロパティ(現在 boundsTarget)
3. 2の境界を取得する際の座標の基準となる表示オブジェクトコンテナを示すプロパティ(現在 coordinateSpace)
2と3が激しく分かりづらいですけどよろしくお願いします。
0021デフォルトの名無しさん2011/01/05(水) 16:59:51
なんか意味不明なような....
ドラッグっていうのはドラッグ&ドロップの事を言ってるのか?
0022デフォルトの名無しさん2011/01/05(水) 17:22:25
>>21
そうです。やっぱり意味分かりづらいですよね。
0023デフォルトの名無しさん2011/01/07(金) 00:11:15
hoge(num, upper, lower) で
num が upper 以上なら upper を、
lower 以下なら lower を、
どちらでもなければそのまま num を返す簡単なメソッドなんですがいい名前ありませんか。
0024デフォルトの名無しさん2011/01/07(金) 00:28:55
clamp
0025デフォルトの名無しさん2011/01/07(金) 00:33:52
>>23
なんか動詞 + within というのはすぐ思いついたが適切な動詞
が出てこない
trim? round? put?

0026デフォルトの名無しさん2011/01/07(金) 00:42:03
補正する
0027デフォルトの名無しさん2011/01/07(金) 00:51:17
boundかrestrict
0028デフォルトの名無しさん2011/01/07(金) 00:51:25
>>23
前スレに同じのがあった。
結論から言えばclampでいいんじゃない?
電子科卒の俺的にはclipとかの方がしっくりくるが....
0029デフォルトの名無しさん2011/01/07(金) 02:17:12
>>23です。
レスどうもです。候補にさせてもらいますです。
ところで clamp てのは聞き慣れない単語で調べてみると固定するとか留め具とかを表す単語みたいですけど、
>>23 のように値を範囲内に収める場合もこういう表現を使うことがあるんですか?
0030デフォルトの名無しさん2011/01/07(金) 02:57:30
>>23
確か今は無きDelphiにそれと同じことをするEnsureRangeっていう関数があったような
個人的にはclipだな
0031デフォルトの名無しさん2011/01/07(金) 06:41:46
Correct なんてどうだろう?

範囲内に収めるという内部処理を表すんじゃなく、あくまで「間違いがあれば修正する」という使用目的に合わせた名前のつもり。
一応、クリッピング以外の処理を追加したり変更したりしても問題ない命名のはず。
0032デフォルトの名無しさん2011/01/07(金) 09:48:34
>>29
clamp (動詞) っていうのは万力で挟み込むこと
上下から挟み込めば上限、下限の間に値が納まるわけだ。
0033デフォルトの名無しさん2011/01/07(金) 18:16:07
max(min(num, upper), lower)
毎回書くのだるいな。
0034デフォルトの名無しさん2011/01/08(土) 01:09:07
スクロールバー作ってるんですが、ボタンやキーボードのキーを一回押したときのスクロール量を示す変数は何がいいでしょうか。
0035デフォルトの名無しさん2011/01/08(土) 01:49:59
スクロール量の単位は何?
0036342011/01/08(土) 01:58:29
>> 35
ピクセルと比率です。
0037デフォルトの名無しさん2011/01/08(土) 09:44:05
1回ごとって意味だけなら step かなぁ。
0038デフォルトの名無しさん2011/01/08(土) 20:15:57
インスタンスの動作に必要なプロパティで設定されていないものを返すメソッドの名前は何がいいでしょうか?
簡潔な意味としては「不足している設定を文字列(または配列にするかも)で取得する」って感じなんですが、英語強い方お願いします。
0039デフォルトの名無しさん2011/01/08(土) 20:23:28
強くないけど
getMissingPropertyNames
0040デフォルトの名無しさん2011/01/08(土) 21:00:05
実行時に不足してる設定が分かったところでフツーは意味がないと思うけど....
0041デフォルトの名無しさん2011/01/08(土) 22:48:17
getUndefinedConfigurations
getPendingSettings
getUnsetProperties
0042デフォルトの名無しさん2011/01/09(日) 01:34:18
cgiみたいなものかもしれない
0043デフォルトの名無しさん2011/01/09(日) 11:45:58
DI的な意味ならgetUnsatisfiedDependenciesとかgetMissingDependenciesとか
0044デフォルトの名無しさん2011/01/12(水) 02:56:16
外部に公開するインターフェース型IFooがあります。が、その実装において
内部で使用するIFooを継承して必要なメソッドを追加したインターフェース型
を定義したいのですが、名前は何がよいでしょうか。
0045デフォルトの名無しさん2011/01/12(水) 06:22:53
追加したメソッド次第。
汎用的なサフィックスを付けたいというなら、なんだろうなあ?
0046デフォルトの名無しさん2011/01/12(水) 07:07:08
IInternalFoo
IFooEx
0047デフォルトの名無しさん2011/01/12(水) 12:14:13
>>44です。ありがとう、ございます。追加するメソッドは汎用的なものです。
>>IInternalFoo IFooEx
そんな感じで以降と思います。
0048デフォルトの名無しさん2011/01/13(木) 14:15:23
文字列を囲っている括弧(記号)を取り除いた文字列を返すメソッド名は
どんな感じがよいでしょうか?
例:
「ほげほげ」→ ほげほげ
"ふがふが" → ふがふが
'ぴよぴよ' → ぴよぴよ
0049デフォルトの名無しさん2011/01/13(木) 14:19:45
unquote
unparenthesize
0050デフォルトの名無しさん2011/01/13(木) 14:43:19
dequote
0051デフォルトの名無しさん2011/01/13(木) 14:44:38
>>49
なるほど、unparenthesizeにしてみます
検索してみるとチラホラ同じように使っている人がいるようですね
ありがとうございます
0052デフォルトの名無しさん2011/01/13(木) 17:49:44
カッコを付ける方はquoteが定番なのかな
0053デフォルトの名無しさん2011/01/13(木) 18:15:24
指定した範囲内で座標値を変更する比率を示す変数はなにがいいでしょう?
positionRatioX, cordinateRatioX, xRatio など考えたのですがいいのありますか。
0054デフォルトの名無しさん2011/01/13(木) 18:33:03
指定範囲がどこにかかるのか、座標の変更比率が何なのかも分からないんだが
0055デフォルトの名無しさん2011/01/13(木) 19:08:21
○○の××を現す△△ですが…って系は、
まず○○の××を現すクラスにしちゃえば、××ってメソッド(変数)を用意するだけでいいと思うの。
0056デフォルトの名無しさん2011/01/13(木) 19:31:45
>>54
言葉足らずでした。
xの指定範囲が 0〜100 なら比率が0.3のとき x = 30。
この比率を表す変数の名前です。
0057デフォルトの名無しさん2011/01/13(木) 19:38:50
指定範囲というのは変数名に含めなくても良さそうな。
>53の時点で挙げられてるけど、自分ならxRatioかratioXにしそう。
0058デフォルトの名無しさん2011/01/15(土) 16:02:05
色々な関数が集まったcppファイルはなんと言う名前にしたらよろしいですか?
0059デフォルトの名無しさん2011/01/15(土) 16:04:45
kansuu.cpp
0060デフォルトの名無しさん2011/01/15(土) 16:07:53
ありがとうございます。
日本語だとソースを見せることはありませんが逆に外人からクールといわれそうですね。
0061デフォルトの名無しさん2011/01/15(土) 16:25:22
functions.cpp
0062デフォルトの名無しさん2011/01/15(土) 16:30:17
miscellaneous.cpp
0063デフォルトの名無しさん2011/01/15(土) 16:31:31
bunkatsumae.cpp
miseiri.cpp
killme.cpp
0064デフォルトの名無しさん2011/01/15(土) 16:37:36
uncategorized.cpp
junks.cpp
0065デフォルトの名無しさん2011/01/15(土) 16:39:06
junksが一番カッケー
0066デフォルトの名無しさん2011/01/15(土) 20:57:39
かっけーかな?junkって使い古しのイメーヅだけど
0067デフォルトの名無しさん2011/01/16(日) 11:36:58
>>23
Limit(限定する)
TrimNumber(数値を整頓する)
NumberWithin〜(〜の範囲の数値)
とかどう?
0068デフォルトの名無しさん2011/01/16(日) 12:25:52
>>58
どこにもカテゴライズできない(その他)という意味なら、>62もしくはmiscかなあ。
汎用/共通の関数群というところで、comonとかgeneralもアリだとは思うけど。

>>66
一度作ってみたけれど、それきりで今のところ次に使う予定が無いもの、場合によっては結局使われなかったもの……というイメージがあるな。
0069デフォルトの名無しさん2011/01/16(日) 12:30:23
namespaceの名前をそのままつけときゃいいじゃん。
まさか::なわけないだろ?
0070デフォルトの名無しさん2011/01/16(日) 13:25:52
>58
<58の名前>.cpp
とか
Tools.cpp
とか
Utils.cpp
とか
0071デフォルトの名無しさん2011/01/17(月) 03:21:06
>>58
FUNC0001.CPP
0072デフォルトの名無しさん2011/01/20(木) 08:04:23
「アイテムの数」と「アイテム番号」を用意し、
前者を「ItemNum」、後者を「ItemNo」と名付けようとしていますが、
「Num」も「No」も結局は「ナンバー」ですよね?
やはりおかしいでしょうか?

0073デフォルトの名無しさん2011/01/20(木) 08:05:13
うん
0074デフォルトの名無しさん2011/01/20(木) 09:35:04
後者はItemIDかItemKeyで
0075デフォルトの名無しさん2011/01/20(木) 10:17:32
前者を ItemCount にするとか
0076デフォルトの名無しさん2011/01/20(木) 18:08:44
自分の場合は、〜の数をnumber、〜の番号をindexにするようにしている。
あとはうまく説明できないけど、countは実際に何かカウントするという動作そのものが重要なとき。

なので、僕が同じような状況なら
●アイテムの数…… nItems numItems NUM_OF_ITEMS など
●アイテムの番号… idxItem itemIndex INDEX_OF_ITEM など
にすると思う。〜の数は複数形で。
0077デフォルトの名無しさん2011/01/20(木) 18:29:09
辞書引けば分かると思うけど
countの第一義はtotalだよ。
なのでtotalの意味で使わないと外人に通じにくい。
0078デフォルトの名無しさん2011/01/20(木) 19:43:30
↑アホは黙ってろ
0079デフォルトの名無しさん2011/01/20(木) 19:51:12
>>72
〜の数は〜count、0または1から始まる通し番号はindex
これは一種のお約束みたいなもの。

countは時々使いにくいというか、意味的にしっくりしない場合があるから、
そういう場合はnumBytesToRead(number of bytes to read)とかする。
0080デフォルトの名無しさん2011/01/21(金) 00:11:55
>>79
ダサスギワロタ
0081デフォルトの名無しさん2011/01/21(金) 00:13:12
なら対案書いてみろ馬鹿が
0082デフォルトの名無しさん2011/01/21(金) 00:29:19
>>81
BytesToReadでいいんだよ
病的に余計なもんつけるな
0083デフォルトの名無しさん2011/01/21(金) 00:38:46
それじゃ「読まれるbytes」で意味不明。

それだけならいいが、これが"number of bytes read"をbytesReadなどとしてしまうと、
こっちは得てしてポインタ渡しだから単に意味不明なだけでなく、
コードを読む人間をミスリードしかねない。
0084デフォルトの名無しさん2011/01/21(金) 00:44:41
>byte
lengthあたりに置き換えることは出来るかも?
0085デフォルトの名無しさん2011/01/21(金) 00:47:09
本当に病気だった
0086デフォルトの名無しさん2011/01/21(金) 01:04:58
アホなプログラマは、コードの書き手の立場で意味が分かる名前なら満足する。
非アホなプログラマは、コードの読み手の立場で意味が通じる名前でないと満足しない。

コードを書くときには、いろんな前提が頭に入ってる状態でコード書くわけだから、
そういう立場から見て意味が明瞭でもそんなことに意味がないことがわかんないみたいだな
ダメグラマって。
0087デフォルトの名無しさん2011/01/21(金) 01:45:45
全くだな>>83はアホなプログラマ
0088デフォルトの名無しさん2011/01/21(金) 06:12:40
>>83>>86は普段心の中で俺 IS GODとか叫んでそう
0089デフォルトの名無しさん2011/01/21(金) 20:42:09
実際には会社のDOG
0090デフォルトの名無しさん2011/01/22(土) 05:03:08
犬神。英語圏の犬崇拝ってあったのかも
0091デフォルトの名無しさん2011/01/22(土) 07:20:45
>>86
そこまでストレートに俺はアホじゃないと言えるあたり、相当のアホだよ
0092デフォルトの名無しさん2011/01/22(土) 23:57:54
78と80は二人とも英語不自由そうだな
bytesToReadとかそもそも中学生英語すらわかってねーじゃんw
0093デフォルトの名無しさん2011/01/23(日) 00:15:46
>>92
いや普通にbookToReadとか言うだろアホ
0094デフォルトの名無しさん2011/01/23(日) 01:39:17
>>92
自分は英語はサッパリだけど、中学英語レベルの文法で考えるなら、
クラスのメンバー変数とか、文意(動詞)が分かってるなら変数名としてはセーフじゃない?
0095デフォルトの名無しさん2011/01/23(日) 02:26:48
>>92=ゴミ

http://code.google.com/intl/en/query/#q=bytestoread
0096デフォルトの名無しさん2011/01/23(日) 04:53:43
blacklistの否定ってなんだろう。
ちょっと長いけどotherThanBlacklistとか、予約語と被らないように工夫する必要があるけどpublicUserとかで通じる?
0097デフォルトの名無しさん2011/01/23(日) 04:59:00
notBlackList
0098デフォルトの名無しさん2011/01/23(日) 05:01:48
http://msdn.microsoft.com/ja-jp/library/system.io.ports.serialport.bytestoread%28v=vs.80%29.aspx
0099デフォルトの名無しさん2011/01/23(日) 05:23:12
blacklist/whitelist/unlisted
0100デフォルトの名無しさん2011/01/23(日) 05:51:35
>>92は早くMS本社に乗り込んでお前ら中学英語すら分ってねぇと喚いて来いよ
0101デフォルトの名無しさん2011/01/23(日) 06:29:04
>>97>>99
ありがとう。
notBlacklistとunlistedは、英語を母語としない我々にも分かりやすくていいですね!
■ このスレッドは過去ログ倉庫に格納されています