1read 100read
2013年01月プログラム95: クラス名・変数名に迷ったら書き込むスレ。Part22 (582) TOP カテ一覧 スレ一覧 2ch元 削除依頼
くだすれPython(超初心者用) その15 (884)
【最速へ】LowLevelVirtualMachine【LLVM】 (520)
Excel VBA 質問スレ Part27 (502)
HSPプログラムコンテスト2011【part 2】 (452)
Rubyについて Part48 (212)
【Intel】OpenCV総合スレ 4画素目【画像処理】 (551)

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


1 :2012/09/06 〜 最終レス :2013/01/16
クラス名、変数名のつけ方に悩んだら書き込むスレです。
命名規則や設計の善し悪しについて議論するのは基本的に禁止。
命名規則や設計の善し悪しについて議論するのは基本的に禁止。
命名規則や設計の善し悪しについて議論するのは基本的に禁止。
前スレ
クラス名・変数名に迷ったら書き込むスレ。Part21
http://toro.2ch.net/test/read.cgi/tech/1327197884/

2 :
木構造で葉に子要素を加えるときにその要素がルート出なかった場合に例外を投げたい
void Node::addChild(Node * p) {
assert(p);
if(p->hasParent()) {
throw XException("XMessage");
}
else {
container.insert(p);
p->parent = this;
}
}
このときXExceptionの名前とXMessageの内容は?

3 :
例外 Node::NotRootException
メッセージ Node must be root.

4 :
そこまで例外を細分化させる事に意味があるのだろうか
普通にArgumentExceptionでいいんじゃね

5 :
>>2
InvalidNodeOperationException
AddNodeFailedException
NotRootNodeAddedException
--------
追加しようとしたNodeはルートノードではありません。

6 :
8/27ぶりに立ちました

7 :
動作確認で試したいだけなんだけど、TestFileかFileTestのどっちがいいかな

8 :
前者はファイルで
後者はテストやないか

9 :
末尾に_tつけるとかいうのもあるな。

10 :
webアプリで使うテンプレートファイル名なんですけど
2カラム(左サイドバー)テンプレート、
サイドバーなし1カラムテンプレートとかどういうファイル名にしたら良いでしょうか
template_2c_left.tpl これはちょっとなぁ

11 :
2カラム(左サイドバー).tpl
サイドバーなし1カラム.tpl

12 :
sidebar_left.tpl
sidebar_no.tpl

13 :
どうもです・・・・

14 :
名前にこだわるうちは二流だよね

15 :
いい名前または、無難な名前を瞬間的に付けられるようになったら
一流と思う

16 :
名前がよくても結局のところ仕様を見ないやつはカスだから

17 :
>>16
なんかあったのなら、ここでぶちまけていいんだぞ。聞いてやる

18 :
>>14
リーダブルコードを読んだ後でも同じ台詞が吐けるなら、
同僚じゃなくて本当に良かったと思う

19 :
仕様がわからないのにいい名前ってどんな名前だよ

20 :
>>19
お前用のクラス用意しといてやる
CSpec072implementee

21 :
>>20
意味がわからんが

22 :
おれも正直分からん、誰か >>20 を解説してくれ。
話の流れから言って、なんかのギャグを言って >>19 を馬鹿にしているなぁ
ということは分かるが、内容が全く分からん。

23 :
CSpec BDDフレームワーク
072 しこしこ
implementee 実装されるもの

24 :
>>15
褒めてくれてありがとう

25 :
Pythonで送信者メールを格納するプロパティ
fromとtoにしたいけど、fromは予約語
さて どうしたものか

26 :
fromAddr
toAddr
fromAddress
toAddress
from_
to_

27 :
>>25
ffrom とか重ねておく妥協

28 :
Sender …はRFC的に意味があるから駄目か。

29 :
>>27
それするぐらいなら、from_ の方が意味がないだけマシじゃね?
まあ普通に fromAddress に一票。

30 :
既出の案とかぶらせないためにおかしな案持ち出すくらいなら賛成すればいいのにね

31 :
>>30
誰に言っている?

32 :
既出の案とかぶらせないためにおかしな案持ち出した人

33 :
迷う必要がないとこでしょ

34 :
迷ったからここに来てるんだろ

35 :
外積で、z が 0 の場合、
つまり 2D での cross product ってことで crossProduct2d って関数を作ってたんですが、
2次元の外積なんてない、と算数のエラい人に言われました。
よく使われる式じゃないかと思うんですが、何ぶん算数が苦手で名前も思い浮かびません。
いい名前をお願いします。

36 :
2次元空間で、としてなら多分そうなんだろう。
で、ここで真に重要なのは、2D云々じゃなく、
zが0のときにのみ使える「簡易版の外積」ってことなんじゃないだろうか。

37 :
>> 36
crossProductWithoutZ
こうですか?わかりません><

38 :
>>35
そもそもz = 0の時専用の関数を用意しなきゃならん意味が全然分かりません

39 :
>>35
そもそも、その crossProduct2d 関数は、
何を引数にとって、何を返す、何のための関数なんだ?
まずはそこからしっかり説明してくれ。

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

41 :
>> 38
その理由はクラスが Vector2d だからです。
Vector3d なら問題ないんです。
実際 AS3 だと交差判定やらなにやらで 2 次元座標を Vector3d の z = 0 で使ってたりします。
お前も真似して 3d クラス使えよってんなら話は終わりですが、気持ちが悪いなぁと。
>> 39
外積ってやつです。
引数は外積をとりたいもう一つのベクトルをとります。
2次元でも線の交差判定とかでちょいちょい出てきます。
戻り値は 3D ならベクトルなんですが、
2D の場合は z が 0 のため x, y が 0 になってしまうので事実上 z 座標の値を返す感じです。

42 :
>>35
算数とプログラミングを混同するな馬鹿って言っておけ
普通に2Dベクトル計算でも外積は定義するし関数名はCrossProdとかありきたりな名前を付ける
それでIT技術者には通じるしもし不安に思ったらドキュメントで仕様を確認するからそこに書いておけばいい

43 :
>>41
いや、表面上は外積を計算したがっているのは分かってる。
最初の質問にも書かれているから。
その外積の計算で、戻り値にどのゆうな意味を付与しているのかを知りたかった。
もし明確な意味があるのなら、その意味を端的に表す単語を名前に使えるから。
それが「何のための関数」を訊いた訳。
逆質問の仕方が悪かったのは謝る。
もし特定の意味はなく、汎用ライブラリ的な抽象度の高い計算関数であるなら、
たとえば determinant(行列式)はどうだ。
実際に計算していてるそれは外積ではなく2次正方行列の行列式だ。

44 :
>>41
結論から言うとcrossProduct2dでも、あるいは非OOPみたいだからVCT2D_OuterProduct
みたいな名前でよいのでは?
俺ももうそんな数学はさっぱり忘れたのでググって見たけど、2Dの外積は
xy平面(Z = 0)上の2つのベクトルの外積と考えることが多く、演算結果も
実用上ベクトルではなくスカラーとして扱う場合が多いらしい。

45 :
isUnique の対義語は何になりますか。

46 :
>>45
isCommon
isComparable
isGeneral
isUsual
などはどうだろうか。
それぞれ固有のニュアンスがあるから詳しくは英英辞典などで調べてくれ。
ちなみに、>>45 の書き方からして恐らく真偽値を扱う変数や関数だろうから、
紛らわしいので真偽値変数などに否定形の名前は避けるべき
という理由で安易な isUnunique はお勧めしない。

47 :
>>46
それは逆だと思うよw
明示的な名前にしたいのなら素直にisUnuniqueとかisNotUniqueにすべき。
なぜなら、例えば"common"であることはuniqueであることと必ずしも矛盾しないからだ。

48 :
>>47
> なぜなら、例えば"common"であることはuniqueであることと必ずしも矛盾しないからだ。
だから、「固有のニュアンスがあるから詳しくは英英辞典などで調べてくれ」って書いてるんじゃね?

49 :
何が「だから」か意味が分かりません。

50 :
>>47
> なぜなら、例えば"common"であることはuniqueであることと必ずしも矛盾しないからだ。
それは、Unique が Common の対義語になってないということだろ。
Unique も複数のニュアンスがあるから、対義語になってる語を選べと言ってるだけ。
>>46 に有るかどうかは知らんけど。

51 :
> >>46 に有るかどうかは知らんけど。
あるかどうか知らんってどういうことだよ。
あるから反論してるんじゃないのか。

52 :
>>47
設計の善し悪しに関わることだからここで言ってはいけないのかも知れないが、
if (肯定形 == true) { }
if (肯定形 == false) { }
if (否定形 == true) { }
if (否定形 == false) { }

if (肯定形 != true) { }
if (肯定形 != false) { }
if (否定形 != true) { }
if (否定形 != false) { }
これらがソース中に混在していると、
後からソースを見たときに処理が追いにくくなったり、
うっかりミスによるバグが発生する可能性が高くなる。
(実際、自分や他人のコードのこの手のうっかりミスを数多く直してきた)
だから、2つくらいに絞ってそれ以外は使わないようにする方がいいのだが、
わたしはその中で [肯定形 == true] と [肯定形 == false] の組みを勧めているだけ。
**は真だ、**は偽だと言った方が命題がはっきりしてわかりやすいと思うから。
もちろん、別の理由で [肯定形 == true] と [否定形 == true] の組みの方が
もっとわかりやすいとして勧める人も大勢いるだろう。

53 :
>>52
VBerじゃないんだから
if (isNotUnique){}
これで十分。
何でboolの値と比較しなきゃならんのよ

54 :
>>51
>あるかどうか知らんってどういうことだよ。
>>45 が Unique をどういうニュアンスで使ってるかは >>45 にしかわからんだろ JK
君、ちょっと論理的思考能力が欠けてるんじゃね?
>>52
前から不思議なんだがなんで if(肯定形 == true) とか if(否定形 == false) とか、
書くんだろう…
普通に if(肯定形) とか if(!否定形) って書けばいいと思うのだが…
ましてや if(否定形 != false) なんてありえへん…
>>53
だよねぇ。

55 :
>>54
じゃあはっきり言ってやる。
そもそもuniqueにニュアンスがあるとも思えないが、百歩譲ってあるとして
しかしいずれにせよuniqueの対義語になる言葉なんか>>46の案に一つも存在しない。
あるというなら明示的に言ってみな。

56 :
>>55
> uniqueの対義語になる言葉なんか>>46の案に一つも存在しない。
どれも、いくつかの antonym dictionary で unique を調べた結果です。

57 :
>>55
もう少し具体的に言うと
たとえば unique を incomparable(無類の)というニュアンスで使っているのなら、
対義語として comparable が挙げられるのではないか、というように、
unique に込めたニュアンスによっていくつかリストアップしてみました。

58 :
>>55
> しかしいずれにせよuniqueの対義語になる言葉なんか>>46の案に一つも存在しない。
だったら君が案を提示してやればいいんじゃね?

59 :
>>57
プログラミングの文脈でそんな文学的表現が要求される場面があるんだろうか。
むしろないと断言してよいと思うが...
>>58
何が「だったら」か意味が分からない。

60 :
>>59
> 何が「だったら」か意味が分からない。
マジでわからないの?
日本語勉強した方がいいんじゃね?

61 :
>>60
馬鹿はこれだからな。
俺がuiqueの対義語が(他に)存在する、というのなら君の言い方(「だったら」)は成立する。
俺がいつそんなことを言ったんだ?
むしろそんなものはないと考えるから>>47のように書いている。

62 :
いろんな人が、それぞれの理由でそれぞれの案を提示する。
あとは >>45 が選ぶだけ。
>>45 が案について質問してきたら、それに答える。
それじゃいかんの?
なんで感情むき出しにして馬鹿とか言ってるの?

63 :
>>45
is already exists

64 :
>>61
Unique の対義語は存在しないというのか?
別にその意見は言ってもいいと思うが、違う意見もあるというだけだろ。
例えば: http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1334342848
もう少し、他の人と会話すること覚えた方がいいぞ。

65 :
>>64
他人と会話できない幼稚な馬鹿はどっちだ。
下らないことグダグダ言ってないで建設的なことを言え。
uniqueの対義語ってじゃあ何だよ。一つでいいから挙げてくれ。
もちろんuniqueの用法のうちプログラミングの世界で意味を持つもののそれでなければ
何の意味もない。

66 :
>>65
プログラミングの世界でuniqueはどのような意味を持つ?

67 :
しかし、馬鹿で幼稚で無礼なテメエを棚に挙げてどういう言い草なんだ


68 :
>>65
> uniqueの対義語ってじゃあ何だよ。一つでいいから挙げてくれ。
なに熱くなってるんだよ、ちゃんと挙げてるだろ。
例えば: http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1334342848
これをお前が対義語と認めるかどうかは知らんが、こういう意見もあるというだけのことだ。

69 :
馬鹿の話ってかならずループするよね。
「こういう話はある」とか逃げるんじゃないの。
他人に偉そうなことをいうのならお前の意見を言え。
それもないのに偉そうに人に突っかかってきたのか。

70 :
誰だよ変な煽りしたのはw

71 :
>>69
Rゴミ

72 :
まぁ落ち着け
>>45のレス待とうや

73 :
ある程度の判断材料は得られたし
馬鹿同士が罵り合ってるのでトンズラ

74 :
知恵袋へ

75 :
>>69
べつに URL 先の意見と同じって言うだけのこと。
何いきり立ってるんだ?
>>70
「自称英語得意な俺が間違ってるわけねーだろ」君でしょ。
厨坊なら見込みあるけど、高坊以上ならちょっと痛いレベル。

76 :
非ユニーク? ハイどうぞっ IsNonunique
別にisNotUniqueでもいいんじゃね

77 :
CSで「unique」といったらほぼ用例が決まっていて「一意な」とか「重複のない」
といことはその反対は「一意でない」、「重複している」。はい答え出た
質問者の補足が無い以上、それ以外の稀な用例なんて考慮する必要ないと思うがね

78 :
もう、それでいいわ
これでこの話は終わりだろ
質問者が適当に選べばいい

79 :
相当悔しかったんだな。
誰とは言わないけど (w

80 :
あぁ すげー悔しいぜ
こんな思いするくらいなら もう二度と書き込まん

81 :
>>77
CSで「high」といったらほぼ用例が決まっていて「高い」
といことはその反対は「高くない」。はい答え出た
馬鹿すぎ。(w

82 :
ユニーク制限がないんだから、フリースタイル

83 :
>>81
馬鹿すぎ

84 :
==TRUE比較はやめろ

85 :
今回の質問やそれに対するレスとは直接関係無いから、
みんなに反論するわけじゃなくて、ただのおっさんの一意見として聞いてくれ。
bool isActive        = false;
bool isNonunique  = false;
bool isVisuable      = false;
という感じのコードを読んでると、私は一瞬「ん?」ってつまずく事が多い。
他にも、もしクラスに isNonunique というメンバ変数があって、
書き込みしか許さない場合、そのアクセサ関数はどういう名前で、
どういう内部処理にになるんだろとか、まぁいろいろ余計なことを考えてしまう。

86 :
自分も否定文の変数名が存在するとこんがらがるな
だから自分のコードではそれを徹底して排除している
if (a.isActive() && b.isSelected() && !c.isDisabled())
みたいな簡単な式でも、何だろうな、ワーキングメモリが多く削られる

87 :
俺はそれは全然ないね。
というより、否定神学じゃないけど、世の中否定形でしか語れないとか、
そこまでいかなくても否定形で語った方が簡潔な概念もあるんですよ。
例えば物質の三態でisSolidOrLiquidより、素直にisNotGasの方が普通の頭の人には分かりやすい。

88 :
visuable・・・ってvisibleの事?

89 :
>>88
そうだった
単なるミス、恥ずかしい・・・

90 :
IsNullOrEmpty

91 :
>>87
!isGas


92 :
>>87
いや、そういうのは別に良いんだよ。
どうしても否定形じゃないと語れないとか、
否定形の方がはるかにわかりやすいとか、そりゃあると思う。
そういうのは躊躇せず否定形使うよ。
ただ私はプログラミングソースの中では
「できるだけ避ける」 「安易に否定形は使わない」 だけのこと。
理由は >>85

93 :
否定文そのものじゃなくても、show(false) と hide(true) みたいな問題もあるよね。

94 :
isEnable
isDisable

95 :
>>87
勝手にお前が普通の人代表すんな

96 :
普通は不通

97 :
「うぃんどws」と打ってみよう

98 :
なに未だにTONさんが居座ってるの?
毎度質問者が居なくなってからオレオレ解釈で大暴れするんだよなぁ

99 :
class Attribute { ... }
class x {
 Attribute earth, wind, fire, water;
}
クラス x の名前を教えてください
ただの集約クラスなら AttributeSet か AttributeContainer
まとめて何かしらの処理を行うのであれば AttributeManager にしようかなと

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼
バージョン管理システムについて語るスレ9 (312)
ゲームプログラムなら俺に聞け27 (296)
Excel VBA 質問スレ Part27 (502)
main以外★mallocの後にfree不要と言うバカいるの? (457)
Java低速GUI Swing & JavaFX 10 (579)
VB.NET質問スレ(Part39) (656)
--log9.info------------------
Dell Inspiron デスクトップ総合 part69 (408)
【eMachines】イーマシーンズ152台目 (651)
低スペックパソコンを使いこなすのが真のPCユーザ2 (698)
Pentium3 1.23Ghz早いぞPentium4 3Ghzより (817)
【HELP】ドライバーどこにある?【HELP】 (869)
息子がセレロン500なので学校でイジメにあっています (570)
ネットだけなら低スペックでも十分」は大嘘 2台目 (821)
賞味期限切れだと思うPCの性能は? (592)
【eMachines】イーマシーンズAMD専用 5台目 (809)
♪おまえら音楽ファイルはどう保存する♪ (445)
チミらのpcのスペックと用途を軽く教えてくれpart2 (872)
世間はまだ32Bit環境に縛られる (438)
HP Pavilion Desktop PC a6700jp スレその1 (347)
[test] 書きこみテスト 専用スレッド 8 [テスト] (797)
Pen4 HT 4 (782)
ネットだけならCeleron1GHzもあれば十分 (288)
--log55.com------------------
テレ東 音楽祭
やすとものどこいこ!?27店目【テレビ大阪】
録画代行詐欺 如月玲
プライムニュース 総合スレ2
村上マヨネーズのツッコませて頂きます!
7つの海を楽しもう! 世界さまぁ〜リゾート 2
バズリズム 02  2
とんねるずVS仮面ライダー