クラス名・変数名に迷ったら書き込むスレ。Part14
at TECH
1:デフォルトの名無しさん
08/12/29 00:20:32
クラス名、変数名のつけ方に悩んだら書き込むスレです。
質問する人は、その変数に何を格納するのか(クラスだったらその役割)
プログラミング言語は何なのかを、それぞれ書いて、
いい変数名を思いついた人は、それに答えてあげましょう。
命名規則や設計の善し悪しについて議論するのは基本的に禁止。
>>2 英和・和英・英英など各国語辞書と翻訳サイト。
>>3 類義語(シソーラス)辞書、図形・数式・数学用語の英単語。
>>4 関連スレと、いろいろな言語規約。
>>2-10 諸事情によりリンクがずれた場合。
前スレ。
◆ネーミング倶楽部◆: URLリンク(pc3.2ch.net)
Part1: URLリンク(pc5.2ch.net)
Part2: URLリンク(pc5.2ch.net)
Part3: スレリンク(tech板)
Part4: スレリンク(tech板)
Part5: スレリンク(tech板)
Part6: スレリンク(tech板)
Part7: スレリンク(tech板)
Part8: スレリンク(tech板)
Part9: スレリンク(tech板)
Part10: スレリンク(tech板)
Part11: スレリンク(tech板)
Part12: スレリンク(tech板)
Part13: スレリンク(tech板)
2:デフォルトの名無しさん
08/12/29 00:21:04
英和・和英など各国語辞書と、翻訳サイト。
英和・和英辞典。
URLリンク(dictionary.goo.ne.jp)
URLリンク(www.excite.co.jp)
英英辞典のリンク集。
外国語広場: 英語: オンラインで使える英英辞典 英和・和英辞典
URLリンク(www.gaikoku.info)
英語←→各国語辞典。(英語)
Dictionaries
URLリンク(www.freedict.com)
日英・英日、日中・中日、日韓・韓日翻訳。
URLリンク(www.excite.co.jp)
POP jisyo.com
URLリンク(www.popjisyo.com)
訳GO YAKUGO.COM
URLリンク(www.yakugo.com)
3:デフォルトの名無しさん
08/12/29 00:22:02
専門語、類語辞書。
シソーラス(類語)検索
URLリンク(www.gengokk.co.jp)
Thesaurus - Yahoo! Reference (英語)
URLリンク(education.yahoo.com)
図形や数式などの英単語。
すうがく探検隊・数式と図形の英語
URLリンク(i.lekton.co.jp)
リスコレ No.24 図形の名前を英語で……
URLリンク(homepage1.nifty.com)
各業種いろいろ
250の辞書を一度に検索 Webdio
URLリンク(www.weblio.jp)
4:デフォルトの名無しさん
08/12/29 00:34:48
関連スレ。
変数名って、どの位こだわりますか?
URLリンク(pc.2ch.net)
ローマ字変数を使う奴は馬鹿
スレリンク(prog板)l50
ゲーム内で使う長い変数を縮めてあげるスレ
スレリンク(gamedev板)l50
★★★コーディングマナー★★★
スレリンク(tech板)l50
ちょっと待て!ハンガリアン
スレリンク(tech板)l50
Cのマナーいろいろ
スレリンク(tech板)l50
Cのマナー
スレリンク(prog板)l50
バカなコーディング規約
URLリンク(pc.2ch.net)
いろいろな言語規約。
Hungarian Notation(英語)
URLリンク(msdn.microsoft.com)
Java言語規定。6.8 名前付け規約
URLリンク(www.y-adagio.com)
参考書籍
翻訳に役立つGoogle活用テクニック
URLリンク(www.amazon.co.jp)
5:デフォルトの名無しさん
08/12/29 01:16:21
「>>1乙」
と表示する関数の名前お願いします
6:デフォルトの名無しさん
08/12/29 05:50:32
ozuieren
7:デフォルトの名無しさん
08/12/29 10:30:00
printGoodJobFor1
8:デフォルトの名無しさん
08/12/29 14:29:13
__
, ‐' ´ ``‐、 / ̄:三}
. /,. -─‐- 、. ヽ / ,.=j
_,.:_'______ヽ、 .! ./ _,ノ
`‐、{ へ '゙⌒ `!~ヽ. ! /{. /
`! し゚ ( ゚j `v‐冫 , '::::::::ヽ、/
. {.l '⌒ ゙ 6',! / :::::::::::::::/ __ そんなことよりTimeOfNowの話しようぜ!
. 〈 < ´ ̄,フ .ノー'_ , ‐'´::::::::::::::;/ (_ノ)‐-、
. ヽ.、 ` ‐", ‐´‐:ラ ':::::::::::::::: ;∠. ヽ_} ゙ヽ
,.r` "´ /:::::::::::::::::::ィ´ `ゝ !、 /
/ / :::::::::::::::: ; '´ /´\ / r'\
. i ! ::::::::::::::/ 墨 | .!::::::::/ヽ、.._!ヽ. ヽ、
{ {:::::::::::;:イ / ‖i:::::::/:::::::::::::/ \
. ヽ ヽ,.ァ‐'´ /ヽ 二 ,/`ヽ、::::::::: / ヽ
ヽ、 ,. ‐'" .ノ ,〈 > `'‐- '
> _,. ‐'´ / / `)
,ゝ _.⊥.-r┬:/
ヽ_,. -‐i"!´「L.=!┘ ヽ
< / / |
/ 、i / __ ./
9:デフォルトの名無しさん
08/12/29 14:32:58
なんでドイツ語なんだよ
10:デフォルトの名無しさん
08/12/29 15:12:08
aktuelle Zeit
11:デフォルトの名無しさん
08/12/29 16:45:29
bless(1)
12:デフォルトの名無しさん
08/12/29 20:04:23
─┬─| . . _ /| . ._ . . _ .
│ |⌒i /_) . / _|. レヽ. (__ | //_) レ⌒
│ | | ヽ_ / ̄ | | | ._).|/|/. ヽ_ | ...
─┬─ ・. . _ γ⌒ヽ ./ |\ | .
│ | レγヽ /_) .| | ┼ | \ | /⌒ヽ| /
│ | | | |. ヽ_ .ヽ___ノ. │ | \| ヽ__ノ.|/|/.
/\___/ヽ
(.`ヽ(`> 、 /'''''' ''''''::::::\
`'<`ゝr'フ\ + |(●), 、(●)、.:| +
⊂コ二Lフ^´ ノ, /⌒) | ,,,ノ(、_, )ヽ、,, .::::|
⊂l二L7_ / -ゝ-')´ + | `-=ニ=- ' .:::::::| +
\_ 、__,.イ\ + \ `ニニ´ .:::/ +
(T__ノ Tヽ , -r'⌒! ̄ `":::7ヽ.`- 、 ./|
ヽ¬. / ノ`ー-、ヘ<ー1´| ヽ | :::::::::::::ト、 \ ( ./ヽ
\l__,./ i l.ヽ! | .| ::::::::::::::l ヽ `7ー.、‐'´ |\-、
13:デフォルトの名無しさん
08/12/29 23:40:03
必死になってるのTimeOfNow本人だろw
14:デフォルトの名無しさん
08/12/29 23:41:44
「名前=値」形式の文字列を編集するフォームの名前と
そのフォームを表示する関数の名前は何がいいかな?
15:デフォルトの名無しさん
08/12/30 01:41:03
formAssign
showFormAssign
みたいな。
16:デフォルトの名無しさん
08/12/30 03:07:25
>>14
いつも言うことだけど、その
>「名前=値」形式の文字列
の集合がどういう意味を持つのかがわからなきゃ命名なんてできないだろう。
普通はその「意味」を名前に盛り込むんだから。
いや特定の意味なんて持たない、汎用の“「名前=値」形式の文字列”を編集するための
フォームなんだ、ってことかもしれないけど、でもそうだとしたらそれって
ただのテキストエディタ以上の利便性があるのかね?
17:デフォルトの名無しさん
08/12/30 03:13:41
>>16
テーマを持ってテキストエディタを作っちゃいけないのかね?
18:デフォルトの名無しさん
08/12/30 03:57:19
>>16
答えられないなら取りあえず黙ってれば?
別にお前が聞かれたわけじゃないんだしさ。
19:デフォルトの名無しさん
08/12/30 04:01:32
例えば「名前=値」形式をPropertyなんて呼ぶことにしたとして、
PropertyEditor
EditProperty
20:デフォルトの名無しさん
08/12/30 10:57:18
名前が用意されてて、それに対するフィールドを編集するフォームって普遍的にあるもんだと思うんだけど
>>16は何を言いたかったんだろう
どういう意味を持つのかが具体的にわからなきゃ命名なんてできないっていうけれど、
どのレベルの抽象度を持たせたいのかわかんなきゃマズいだろ?
21:デフォルトの名無しさん
08/12/30 11:11:23
少なくとも>>16の文面から読み取れるようなデータを編集するような、
汎用的なソフトウェアがあるとは思えないけどね。
だって入力された名前と値をイコールで連結するだけなんでしょ?
それテキストエディタで編集するのと比べてどこが便利なの?
>>20がどういうものを想像しているのか分からないし、
もちろん>>16の説明が要領を得てないだけかもしれないけどさ。
まあ「名前が用意されてて」とあるから、>>20は特定の用途向けのデータに
特化したものを想像しているのかもしれない。
それなら>>16で俺が言ってることと一緒じゃん
22:21
08/12/30 11:14:15
ごめん三つ出てくる">>16"のうち最初の二つは">>14"の間違い。
23:デフォルトの名無しさん
08/12/30 14:33:57
まーたお前か
24:デフォルトの名無しさん
08/12/30 15:24:00
・設定ファイルをテキストエディタで修正してください
・設定画面を開いて設定してください
ではユーザに与える印象がずいぶん違う。
ライトユーザに対しては稚拙であっても設定画面を用意する方が間違いが起きにくい。
が、たぶん>>21が言いたいのは、果たしてそれは「設定項目」なのかどうかと。
テキストエディタと比べて云々がよけいなんじゃないかなー。
25:デフォルトの名無しさん
08/12/30 16:28:19
KeyValuePairEditor
26:デフォルトの名無しさん
08/12/30 19:40:00
>>21
お前の視野の狭さと実務経験の無さは十分わかったから
答えられないなら黙ってろよ
27:デフォルトの名無しさん
08/12/30 21:00:39
>>24
余計じゃないよ。
俺が言ってるのは単純かつごく当たり前のこと。
まず>>14の「フォーム」が(1)特定用途向けのデータのみを編集する画面である可能性と
(2)「名前=値」形式の文字列によるデータを編集するための汎用的な画面である可能性が
あることまではいいよね?
後者の場合、値だけでなくフィールド名もユーザーが入力する必要がある(というより、そのための画面)
のだから、だったらそれにはただのテキストエディタ以上の利便性は何もない。
ライトユーザ云々って、それをいうならフィールド名を入力させる時点でライトユーザ向きじゃないよ。
28:デフォルトの名無しさん
08/12/30 21:03:00
名前が思いつかないならレスしなくていいよ。
29:デフォルトの名無しさん
08/12/30 23:38:23
名前が思いつかないならレスしなくていいよ。
30:デフォルトの名無しさん
08/12/31 01:02:29
当たり前の事ならイチイチ言わなくていいよね。
名前が思いつかないならレスしなくていいよ。
31:デフォルトの名無しさん
08/12/31 01:17:14
名前が思いつかないならレスしなくていいよ。
32:デフォルトの名無しさん
08/12/31 02:54:44
bHasIdeaAboutName
33:デフォルトの名無しさん
08/12/31 06:58:51
このスレには
相手のバックグラウンドを斜め下に妄想してぶっ飛びセンスで名前を提案するTimeOfNowの人と
相手のバックグラウンドを根掘り葉掘り聞いた挙句結局何の提案もしない>>27の
二人のキチガイが居るでおk?
同一人物ってことは無いよね?
34:デフォルトの名無しさん
08/12/31 08:34:05
名前が思いつかないならレスしなくていいよ。
35:デフォルトの名無しさん
09/01/05 12:09:57
>>16が至極当然のことを言っている気がして仕方がねえw
36:デフォルトの名無しさん
09/01/05 12:39:50
>>35
前スレ前々スレ読めばどれ程の基地外か分かるよ
このスレは俺の物宣言した兵
37:デフォルトの名無しさん
09/01/05 13:45:21
>>36
やれやれまだやってるのか。
言わせてもらえば、「このスレは俺の物宣言した兵」って、それって(君がそうかどうかは知らんが)
むしろ俺に妙な突っかかりかたしてたお馬鹿さんの方だろう。
俺はそいつに「お前(ら)は俺のやり方に従え」なんていってない。
だがそいつは「お前は俺と同じように振舞え」と、居丈高なことを言っている。
だから俺は「俺は俺であってお前じゃないから俺自身の考えに従う」と言っただけだろう。
いったいどっちが自我の肥大した自己中野郎なんだよ。
おまけに、言い負かされて腹が立てばAAや繰言を投稿しまくるこの幼稚さ。
なんども言ってるように、精神的に幼稚な上に目的合理的思考ができないからそういう風になる。
いったいどの口下げて「命名だけに限定して議論すべき」と言ってたんだ?
荒れることを防ぐために(目的)命名だけに限定して議論すべきだ(手段)と
ほざいてた奴が率先して荒らすってどういう了見だよ。
頭オカシイだろ。
38:デフォルトの名無しさん
09/01/05 14:11:20
お前が自覚の無い香ばしいかまってちゃんだから弄られてるだけじゃないの
で、マジレスするとだ
たとえば10人が10人ともルール(テンプレ>>1)に同意した上で一応の和をもって場(このスレ)を形成してる中に
お前が後から割り込んできて、
俺はこの場で俺の思うままに振舞う。元からあるルールなんざ糞食らえ、
俺はお前らに何も押し付けているつもりは無いんだから、お前らも俺のやり方に一切の口出しをするなと、
その場に居る全員に「お前のルール」を押し付けるのはいかがなものかな?
コミュニケーション不全を開き直るにも程がある
39:デフォルトの名無しさん
09/01/05 14:19:39
設問中の対象の意味を知るのは命名には必要だろ?
それが >>1 にあるルールに反するとは思わないな。
質問者の意図や対象の意味を明らかにした後に、それの
「善し悪しについて議論」するのが禁止されてるのは妥当だとは思う。
つまり >16 は以下の二行だけなら妥当な書き込み。それ以外は蛇足。
> >「名前=値」形式の文字列
> の集合がどういう意味を持つのかがわからなきゃ命名なんてできないだろう。
40:デフォルトの名無しさん
09/01/05 14:52:52
>>39
>>37の奴は毎回
>ただのテキストエディタ以上の利便性があるのかね?
みたいに良し悪しについて言及し、最終的にそちらが主題になるから問題視されてるんだよな
>>37本人も「命名は手段であり、本来の目的は命名を通じて設計の良し悪しを語ることだ」と明言してたわけで
それにスレ違いと返されたら、発狂して俺は俺の信じるままに動く!口出し無用!とか言い出したんだわ
だからこのスレで基地外扱いされてるの
41:デフォルトの名無しさん
09/01/05 14:56:48
「俺は俺であってお前じゃないから俺自身の考えに従う」と言った方が自我の肥大した自己中野郎なんだと思いますです。
自虐芸は程々にした方がいいと思います。
42:デフォルトの名無しさん
09/01/05 15:39:55
つまり >16 にとって以下の二行は正当性を確保するための蛇足。それ以外が主題。
> >「名前=値」形式の文字列
> の集合がどういう意味を持つのかがわからなきゃ命名なんてできないだろう。
43:デフォルトの名無しさん
09/01/05 17:48:36
つまり>16の最初についてはみんな意識できてる訳ね。
その視点なしに名前考えてみても、ある意味ゴミの生産してるだけだからなあ。
44:デフォルトの名無しさん
09/01/05 20:31:07
まあこの際だから調子こいてるこのお馬鹿さんを徹底的に叩き潰すか。
>>40
そんなこと言ってないけど。
言ってるというのなら該当レスを引用してみ?
執念深く過去ログ持ってるらしいからできるよね?w
俺は以下ような意味のことしか言ってないはずだ。
つまり、命名とは「可読的なコードを書くこと」という上位目的の手段に過ぎず、
またこんなスレにいるのはプログラマに決まってるのだから、
(1) 「可読的なコードを書く」という上位目的に資する議論が
「困る」という人間はいないはずだ(もし、彼がプログラマならば)
(2) そもそも設計に無理があるから適切な命名がし難くなっているようなケースでは、
その無理な設計に固執して命名するのは手段と目的が倒錯した愚行だ。
(3) 設計議論をすると荒れる、と主張する人間がいるが、俺の知る限りそんな事実は今までない。
(というか、荒らしてるのはそう言ってるお前自身じゃないか馬鹿)
45:デフォルトの名無しさん
09/01/05 20:42:05
念のために付け加えるけど、俺は積極的に「命名だけでなく設計議論もさせろ」とか
「したっていいじゃないか」なんて言ってないから。
命名だけでは問題が解決しようがないケースでも盲目的に命名に固執するのは
愚かだって言ってるだけだからな。
当たり前だろこんなこと。
手段に過ぎんものに固執して目的が遂行できないんじゃなんの意味があるんだよ。
46:デフォルトの名無しさん
09/01/05 20:42:57
馬鹿が2人以上いると荒れるね
47:デフォルトの名無しさん
09/01/05 21:29:10
じゃあ僕が3人目のバカになる
48:デフォルトの名無しさん
09/01/05 21:39:17
名前を考えるにあたって、最初のお題だけではイメージわかないなと思うなら、
それを伝えて追加情報を求めれば良いだけの話。
ただそれだけなのに、毎回毎回偉そうに説教たれ始めるから話がややこしくなる。
49:デフォルトの名無しさん
09/01/05 23:33:38
TimeOfNowさんお久しぶりです。
相変わらず人間分析がお得意のようですね。
是非去年聞かれていた自己分析の結果をお聞きしたいのですが、あなた自身はどのような人間でしたか?
50:デフォルトの名無しさん
09/01/06 21:37:33
>>45
>手段に過ぎんものに固執して目的が遂行できないんじゃなんの意味があるんだよ。
ところが、まさにその「手段」に固執して
回答することこそがこのスレの用途。
納得がいかないからって、わざわざ主張
しに来るなよ。
ぐだぐだ言わずにどっかいけ。
なんなら新スレをたてたらいいよ。
51:デフォルトの名無しさん
09/01/06 22:47:21
何度も同じこと言わせるなよ。
>>50
>ところが、まさにその「手段」に固執して
>回答することこそがこのスレの用途。
それは「チミの勝手な解釈」、あるいは「チミの独りよがりな願望」に過ぎん。
もちろん、勝手で独りよがりであろうと君がこのスレの意義に関して
「どうあるべき」と考えるのも自由で、その信念に従って君が行動するのも自由だ。
(正直、俺的には「アンタ本物の馬鹿だね」としか思えんけれどもね)
だが、たかだか君の解釈だったり願望だったり過ぎないものを、居丈高に俺に
強制しないでくれる?
俺は俺であって君じゃないんだよわかる?
52:デフォルトの名無しさん
09/01/06 23:26:38
50の言うことも一理あるんじゃないかと思う人もいるかもしれんから、
愚かだと思うと書いた責任上一応理由つきで否定しとく。
問題設定が非現実的であっても意味をもつのは、
(1) それが何らかの能力向上のための
(2) 演習問題になるとき
だろう。
さて、命名以前の問題があるために命名が困難になってる「お題」(例えば>>14)は
この要件を満たすだろうか?
俺の考えでは答えはNo。
なぜなら、現実のプログラミングではそんな無理くり名前をつけるような「法外な」
命名能力なんて必要とされないからだ。
まともなプログラマなら横車を押して命名するよりも、名前が付けやすいような
別の視点を採用するなり(>>14なら、データのもつ意味から名前を付ければわかりやすい)、
設計を変更するなりすることを選択するからね。
53:デフォルトの名無しさん
09/01/06 23:31:16
ゲームで遊んだりクイズを解くのに「意味」なんかいらんと思うが
54:デフォルトの名無しさん
09/01/06 23:33:02
いっそ>>16前半をテンプレに書いておいて、
言及がなければ、例えば>>19の回答がほしいことにすればいいだろう。
いい加減不毛だからやめてよ。
55:デフォルトの名無しさん
09/01/06 23:37:50
>>53
もちろん、それはそう。
俺はそういう人がいてもいいと思うし、そういう回答をする人に
自分からケチつけたり突っかかったことは一度もない。
俺は自分と違う考えの人を一概に否定したりしないし、少なくとも消極的容認だよ。
「彼」は違うようだがね。
56:デフォルトの名無しさん
09/01/06 23:45:44
みんな真面目すぎる。
Q)この名前何がいい〜? ホニョニョ~ン
A)こんな感じで良いんじゃね〜 ハニャニャ~ン
という緩いスレじゃないのか。
57:デフォルトの名無しさん
09/01/07 02:18:11
無理くりw
道民かよ
通りで日本語が通じないわけだ
一部道民は本当に酷い思考回路を持ってるからな
58:デフォルトの名無しさん
09/01/07 02:56:16
>>52
> 俺の考えでは答えはNo。
そう思ったら、はじめからレスしないか、意図を聞くなどしながら
「設計見直したほうが良いんじゃないの?スレ違いになるから他所でやってもらうけど」
あたりで済ませておくのがこのスレの趣旨から考えて望ましいと思います。
59:デフォルトの名無しさん
09/01/07 03:11:53
Part12での出来事
585 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 01:13:15
>>572
そもそも弾の初期位置も初速度も各「砲台」が個別に知っていれば済むはずの情報で、
そんな情報を配列にまとめることが設計として間違ってる気がするんだが。
586 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 01:27:39
>>585
>>1
587 名前:585じゃないけど[sage] 投稿日:2008/08/30(土) 01:43:57
>>586
このスレのあり方を否定するようで悪いが、
「これ英語だとなんて言うの?」っていうレベルじゃなくて
「一体どんな名前を付けるのやら」なんてレベルで迷ってしまうのは、
ドメイン分析に失敗しているからだと思うんだよね。
ちゃんとした設計なら悩まずに命名できる。
ダメな命名になるのは設計からしてダメなんだよ。
名前を付けられないと思ったら設計から見直したほうがいい。
588 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 01:44:44
>>587
>>1
589 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 01:45:43
>>587
お前みたいなこと言い出す奴が過去に何人もいて、
その都度スレが荒れたから>>1に注意書きしてあるの。おk?
590 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 02:09:25
おk。すまない。
ただ俺なら、名前で悩むなら違う事で悩みたいな、って思っただけだ。
60:デフォルトの名無しさん
09/01/07 03:14:17
591 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 02:14:16
>>590
なんで名前で迷ったら書き込むスレに迷い込んでるのかが分からない
592 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 02:33:25
>>591
名前が無意味なものだとは考えてないからだよ。
デザパタなんかは「何かに名前をつけること」に意味を見いだしている例だよね。
このスレで言えば、>>496-498みたいに、
機能にぴたっと当てはまる名前が提示されることで、
496自身が「自分が何をしようとしていたか」が定まったと思うし、
さらに勉強してみようという前向きな気もちにもなっている。
名前を考える事は、考え方をみつめ直すことで、
良い方向に成長する入口になっていると思う。
名前に悩んで設計に悩まないのはもったいない。
余計なおせっかいかもしれないが。
61:デフォルトの名無しさん
09/01/07 03:14:44
593 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 04:34:27
言いたい事は分かるんだけど、その言い方は無いよ
このスレで泥臭いながらも行われてる事を、臭い物に蓋をして理想型で語ってるだけじゃん
設計の仕方までは口を出さずに、ただ名前を付けていけばそれがベターなの
594 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 07:06:39
>>592
> 名前に悩んで設計に悩まないのはもったいない。
>> そ の 都 度 ス レ が 荒 れ た か ら
そう言う議論がしたいなら、別にスレ立ててくれ。
多分収拾つかなくなると思うが。
597 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 14:58:18
>>593-594
俺的にはこういう連中こそ本末転倒の馬鹿に見えるよ。
たぶん物事ゼロベースで考える頭のない奴なんだろうな。
まあこんな馬鹿な連中が何いっても今後も設計に首を突っ込む姿勢は止めないけどねw
598 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 15:06:17
君が時と場合をわきまえてないだけ。
599 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 15:34:30
命名の前提となるもの(例えば設計)を語らないと根本的な解決にならない場合であっても
あえて盲目的に命名限定の議論をしろ、などという物言いこそ「時と場所をわきまえない」
愚かなものだと思うが。
一般にはそういうのは「フェティシズム」と言うんだよ。
62:デフォルトの名無しさん
09/01/07 03:18:43
たまに方言で道民と認定してる人いるけど、今回の「無理くり」というのは別に北海道に限った言葉じゃないと思うんだけどなぁ。
なまら辺りでなら道民と決めていいと思うけどさ
63:デフォルトの名無しさん
09/01/07 03:21:11
615 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/31(日) 14:37:54
>>610
なんか命名以前にただ単にObserverパターンをちゃんと理解してないだけの気がする。
Observerパターンっていうのは、(当たり前だけど)通知者側が観測者の
特定のメソッドを(インターフェイスを介して)呼び出すパターンのはずだよね?
あなたの例で言えば、aはbでイベントがあったときにbから呼ばれるメソッド
b_ValueChanged()と、a自身のイベントを他に通知するOnValueChanged()を持ってるはずで、
だとすればb_ValueChanged()の中からOnValueChanged()を呼び出せば済むはずの
問題だと思うんだけど。
616 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/31(日) 14:57:16
> 命名規則や設計の善し悪しについて議論するのは基本的に禁止。
617 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/31(日) 15:01:11
悪いけど俺はそんなものに同意した覚えはないんでね。
この後突然独り言のようにセカイ系について講釈が始まってるけど、もういいや
64:デフォルトの名無しさん
09/01/07 08:59:21
かといって、質問の行間を読むのを競い合うクイズスレってのもノイズ多すぎてやだな
65:デフォルトの名無しさん
09/01/07 10:11:40
別に足りない情報を聞くってのは一切制限されて無いし、そもそも誰も咎めてなくね?
設計にまで口出しする事がスレ違いって言われてるだけで
66:50
09/01/07 13:22:56
「彼」とかまるで特定一名のように言われても困る。
オレはその「彼」じゃないんで、そう思ってるのは
少なくとも2人いるってこと。たぶんもっといる。
まあ、もういいや。
TimeOfNow氏は酷く個性的な考えの持ち主だと
認識することにした。
死ねばいいのに。
67:デフォルトの名無しさん
09/01/07 17:03:33
class Buyer {
void Sell();
};
class Seller {
void Buy();
};
名前にBuyと付くクラスのメソッドがSellで、名前にSellと付くクラスのメソッドがBuy。
一瞬違和感を感じたんですが、これで合ってますよね?
68:デフォルトの名無しさん
09/01/07 17:31:37
ドラマーがギターを弾いてもいいし
ギタリストがトライアングル叩いてもいいと思うよ
69:デフォルトの名無しさん
09/01/07 17:56:53
>>68
このスレ的に言えば「ギターを弾くものにドラマーと命名するべきではない」ということになりませんか?
私が訊きたかったのは、買い手に対して物を売るメソッドの名前は、
「買い手が買う」という意味ではなく、「買い手に対して売る」という意味の命名で合っているか、ということです。
70:デフォルトの名無しさん
09/01/07 19:05:03
少なくとも俺は買い手が、買うで命名するけどな
71:デフォルトの名無しさん
09/01/07 19:15:13
「Buyerのメソッド」だからねぇ。
買い手の行動は「買う」ことだろう。
「買い手に対して物を売る」ということなら、
「売り手の売るメソッドの引数に買い手インスタンスを指定」って感じがするが。
72:デフォルトの名無しさん
09/01/07 19:42:27
>>67
BuyerとかSeller とかいうクラスはあくまでただの例えで言ってるのなら
>>70-71の言うとおりだと思う。
ただの例えじゃなくて実用にするものなら、BuyerとかSellerにメソッドをもたせるより
製品クラス(ProductとかGoodsとか?)にTrade()とかSell()を持たせた方が賢い気がする。
73:デフォルトの名無しさん
09/01/07 19:49:55
>>72
>>1
74:デフォルトの名無しさん
09/01/07 20:00:28
>>70-72
レスありがとうございます。
ちょっと意外に感じました。
A.GetB()が「AがBを取得する」ではなく、「AからBを取得する」という意味なので、BuyerにSell、SellerからBuyと考えていました。
質問とは違うので答えも違うのかもしれませんが、1つのクラスがBuy/Sellを持っている場合にも同じ方法で命名すると、
shop.Sell(item, money);// 店に対してアイテムを売っているように見える?
shop.Buy(item, money);// 店からアイテムを買っているように見える?
この感覚は私だけなんでしょうか?
> 製品クラス(ProductとかGoodsとか?)にTrade()とかSell()を持たせた方が賢い気がする。
これはTradeの引数に買い手と売り手を渡すということになりますか?
商品は所有者が扱うものと思っていたので、こちらも意外に感じました。
75:デフォルトの名無しさん
09/01/07 20:13:54
>>74
「売られた」時に、製品が必ずその所有者への参照を内部に持つようにすれば、
Trade()の引数は買い手と売価だけでよくなるんじゃない?
76:デフォルトの名無しさん
09/01/07 20:27:52
>>74
A.GetB()は「Aが(自分の持つ)Bを取得する」って意味だ
AはBを取り出してくるが、その後どうされるかまでは知ったこっちゃ無い
77:デフォルトの名無しさん
09/01/07 20:48:04
>>75
なるほど。
>>76
そういう意味だったんですか。
今まで勘違いしていました。
78:デフォルトの名無しさん
09/01/07 21:04:10
>>74
ふつうは、主語.述語(目的語)とするものだと思う。
とくに、述語が他動詞の場合には。
下駄雪駄がそうじゃないというのは、今指摘されて
初めて感じた。w
たしかにそうかもしれないけど、むしろこっちが
パターンとしてはレアなのでは。
79:デフォルトの名無しさん
09/01/08 00:03:38
>>74
「AからBを取得する」は主体(主語)が抜けてね?
主体がメソッドのレシーヴァになるはずだよね。
主体がオブジェクト化されてないから混乱してるんじゃない?
80:デフォルトの名無しさん
09/01/08 12:11:45
>>78
たしかにgetter/setter以外は主語.述語で自然に読めるものばかりでした。
>>79
x = a.GetX();
xが主体ということですか?
ちなみにこういうケースではどちらの命名が自然に見えます?
item = shop.Buy(itemID, money); // アイテムの種類を示すIDと代金を渡しアイテムを得る
item = shop.Sell(itemID, money); // アイテムの種類を示すIDと代金を渡しアイテムを得る
81:デフォルトの名無しさん
09/01/08 12:19:53
>>80
どちらも虫唾が走るほど気持ち悪い
指摘するとなると完全に命名の範疇外の話になるんで、どっかOOP初心者スレにでも行って下さい
82:デフォルトの名無しさん
09/01/08 13:42:00
>>81
>>80のメソッドにBuy/Sellを名付ける事自体が間違ってましたか。
どうもでした。
83:デフォルトの名無しさん
09/01/08 17:51:05
>>80
そういう系にしたいならこんなのは?
player.buy(shop,item,price)
オレ的にはかなり自然。
84:デフォルトの名無しさん
09/01/08 18:08:39
>>83
なるほど、参考にします。
85:デフォルトの名無しさん
09/01/08 18:10:01
(new Transaction(buyer, seller, item)).commit()
86:デフォルトの名無しさん
09/01/08 19:19:11
>>80 真ん中
aだろ。
aが自分のXを取得する。
それをプログラマがxに渡してるだけ。
87:デフォルトの名無しさん
09/01/09 00:22:41
>>85
トランザクション処理というぴったりのものがあったんですね。
>>86
なるほど。
88:デフォルトの名無しさん
09/01/09 01:09:34
>>80
私の経験では
クラス名.メソッド名 で自然な英語になるようにメソッド名をつける場合もあるし、
クラス名を意識せず、メソッド名単独で意味を主張するようにメソッド名をつける場合もある。
両方あります。
例えば頻繁に使われる get なんかでも
shop.getItem
は意味の取りようによっては、
・店が得るのだから、アイテム引数をともなって、店にアイテムを設定する(メンバー変数に登録、setterのような意味)
・店のアイテムを得る。(メンバー変数をを得る、普通のgetterの意味)
などのように、2通りの解釈ができないこともない。
どのようにメソッド名をつけるかはコーダーのセンスよると思います。
したがって、自然に読めるのが一番ですが、限界があるのでどうしようもないというわけです。
一人で開発するときは、統一さえしておけばそんなに大きな問題ではありません。
しかしチームで開発するときは、
「これこれの動詞はbuyで統一しよう、getはこういう意味にしよう」
等のように、コーディング規約が必要になるでしょう。
89:デフォルトの名無しさん
09/01/09 01:19:43
なんか生活に物足りなさがあると思ったら、このスレが次スレになってて
お気に漏れしてたのか
90:68
09/01/09 02:22:29
今頃出てきてあれだが、アクセサについて。
あるオブジェクトに対してset/get指示をだすが、オブジェクトからみれば自身のメンバに対して
やはり同じようにset/getを行うので、逆になっているわけではないよ。
>>83
オレ的にもそんな感じ。
一点、priceが商品の値段を意図しているのであれば、buyメソッド内でshopに問い合わせを行うようにする。
今回の焦点ではないけどね。
91:83
09/01/09 09:11:24
>>90
質問者が引数にmoneyって書いてたからな。
そこは値段だろうと思ってpriceにした。
個人的にも、priceは明示的なほうがいいと思う。
shop.getPrice(item)とか。
>>85
いわゆるトランザクションには、プログラム的に
ちょっと特定的な意味がありがちなので、念のため。
プログラマにそう言ったら混乱することもありそう。
92:デフォルトの名無しさん
09/01/09 15:41:04
>>91
>>80のmoneyは商品の価格ではなく、購入者が提出するお金だと思う。
なので何らかの手段でおつり、不足エラーなどを通知する必要が出てくるものだろうと思った。
一方、buyer.buy(shop, item)とすれば、関数内で
if (所持金<shop.getPrice(item)) エラーリターン
this.money -= shop.getPrice(item)
のようにできる。
基本的に店って主体になりにくいよね。ザ・コンビニみたいなゲームなら別だろうけど。
93:質問者
09/01/09 18:39:39
>>88
GetItem→BuyItemと置き換えると、
・店が(引数に指定された)アイテムを得る→店が(引数に指定された)アイテムを買う
・店が(保持している)アイテムを得る→店が(保持している)アイテムを買う
まさにここですね。
getterは後者の意味、Buyに関しては前者の意味が一般的というところに混乱しました。
>>90-92
moneyに関しては購入者が提出するお金のつもりで書きました。
トランザクション処理を勉強して>>83か>>85にしようと思います。
ありがとうございました。
94:95
09/01/09 18:44:09
> 店が(保持している)アイテムを買う
書いてから気が付いたんですが、自分が保持してる物を買う?というのは変ですね。
ということは自然と前者になるということでしょうか。
95:デフォルトの名無しさん
09/01/09 18:44:54
↑95じゃなくて93でした。
96:デフォルトの名無しさん
09/01/09 21:45:10
>>94
あんまりヘンに考え込まないことを勧める。
命名は慣習的なところも多いので、だいたい
納得できたら、自分ルールにしてパクッと
飲み込め。
完全な名前を定義することが目的じゃないだろ?
97:デフォルトの名無しさん
09/01/13 22:49:43
>>94
あんたの目的は、命名法を究めることじゃないはずだ。
妥協も大切だ。
98:デフォルトの名無しさん
09/01/14 02:15:34
命名以前に、95は思考が絶望的にオブジェクト指向じゃないだけ
ほんと、絶望的
99:デフォルトの名無しさん
09/01/14 23:56:01
URLリンク(google-styleguide.googlecode.com)
Google?
100:デフォルトの名無しさん
09/01/15 13:10:27
100
101:デフォルトの名無しさん
09/01/15 13:11:00
101
102:デフォルトの名無しさん
09/01/20 01:45:08
sampleとexampleの違いって何ですか?
103:デフォルトの名無しさん
09/01/20 01:46:44
板違い
104:デフォルトの名無しさん
09/01/20 21:37:36
example は例として一般的な語。
sample は実例というか、ちゃんと動くようなもの。
境目は適当。
105:デフォルトの名無しさん
09/01/21 16:16:44
>>104
なるほどー。ありがとうございます〜
106:デフォルトの名無しさん
09/01/21 16:17:27
失せろボケ
107:デフォルトの名無しさん
09/01/21 16:25:58
TimeOfNowの人はまた逃げたのか
>>44で偉そうにログ出せといってログ張られて逃げ出すとか
まね出来ない
108:デフォルトの名無しさん
09/01/21 19:49:08
>>107
本格的にアタマおかしいだろw
いや逃げてないし、君が望むなら君のような馬鹿は徹底的に叩き潰して差し上げるけど?
で、どこで>>40のようなことをこの俺が言ったと言うんだ、ん?
109:デフォルトの名無しさん
09/01/21 19:52:31
っていうかこの馬鹿、"time of now"っていう言い回しが英語として
成立してないと思ってるから、嘲笑のつもりで「TimeOfNowの人」とか言ってるんだろうが、
それが自分自身の馬鹿を曝け出しているに過ぎんことにすら気づかないんだから
おめでたいとしか言いようがねえなw
110:デフォルトの名無しさん
09/01/21 20:02:58
>>107
スレが静かになったからって、
わざわざ悪魔召還すんな!
111:デフォルトの名無しさん
09/01/21 20:19:40
>>109
検索して引っ掛かるけど特殊な言い回しだよ。そこは蒸し返すなよ
112:デフォルトの名無しさん
09/01/21 20:21:47
Jetztzeit
113:デフォルトの名無しさん
09/01/21 21:01:53
>>111
別に「蒸し返す」つもりもないけど、別に特殊でもなんでもないよ。
前スレでそういうことを主張している人間がいたのは記憶しているが、
その人が何もわかってないだけだな。
前にも名詞的に使われてるnowを「倒置構文だ」とトンチンカンなことを
言ってる人がいたけど、このスレはそういうのが多い。
114:デフォルトの名無しさん
09/01/21 21:08:55
Now is the time.
が特殊な使い方といっていた人を指してトンチンカンと?
115:デフォルトの名無しさん
09/01/21 21:31:29
>>114
相手が言ったことに反論する能力を身につけようよ。
俺は言った。
名詞的用法をさして「倒置構文だ」とトンチンカンなことを言っている人がいた、と。
君に問うが、>>114のそれは倒置構文ですか?
116:デフォルトの名無しさん
09/01/21 21:34:01
ああごめん、>>114のそれは確かに倒置構文ととることもできる、
というかそういう解釈の方が一般的かも知れんね。
でも俺の言っているのはそれじゃない。
117:デフォルトの名無しさん
09/01/21 21:40:09
俺がトンチンカンと言うのは、
"Now is the time to 〜."
これを倒置構文と言った人がいたんだな。
これは倒置構文じゃないよ。ただnowを名詞的に使ってるだけ。
118:デフォルトの名無しさん
09/01/22 00:47:47
英語どうこうじゃなく、センスを笑われてる事にそろそろ気付いたら?
119:デフォルトの名無しさん
09/01/22 01:05:26
そういう物言いが「セカイ系」のそれだと言ってるんだけどね。
まあ頭悪いから言ってる意味が理解できないのだろうけど。
そのセンスっていってる奴の答えが「コインいっこ入れる」式のぎこちない命名だから
なお笑わせてくれるんだがw
120:デフォルトの名無しさん
09/01/22 01:21:45
コインいっこ入れる
121:デフォルトの名無しさん
09/01/22 01:36:58
>>119
本格的にアタマおかしいだろw
いや言ってないし、君が望むなら君のような馬鹿は徹底的に叩き潰して差し上げるけど?
で、どこで>>119のようなことをこの俺が言ったと言うんだ、ん?
122:デフォルトの名無しさん
09/01/22 01:37:48
改変してて吐き気がしたわ
自分からやっといてなんだけどなw
123:デフォルトの名無しさん
09/01/22 09:13:21
名前が英語の文としてどれだけ自然かよりも、
同じプログラム内で一貫した名前の付け方をする事の方が重要だと思う。
接頭辞+名前みたいなのは自然な英語にはならないだろうし、
一貫して使うなら略記的な名前でもぜんぜん問題ない。
(母音を省略して書くとか普通にするし)
コインに関するモジュールを書いていたら、
・コイン_いっこ入れる
・コイン_いっこ取り出す
とかもありそう。
124:デフォルトの名無しさん
09/01/22 10:27:10
>>109
「TimeOfNowの人」って呼ばれるのが嫌なのか?
そう呼ばれるとお前さんは嘲笑されてると感じるのか?なぜ?
まぁその点はどうでもいいけど
嫌なら自分でコテハン付けてくれよ
いい加減お前さんには固有名詞が必要なんだよ
125:デフォルトの名無しさん
09/01/23 02:34:34
TimeOfNowはなんか笑いがこみ上げて来るんだよな…。
126:デフォルトの名無しさん
09/01/23 04:25:47
lヽ ノ l l l l ヽ ヽ
)'ーーノ( | | | 、 / l| l ハヽ |ー‐''"l
/ T | | |/| ハ / / ,/ /|ノ /l / l l l| l T ヽ
l ・ i´ | ヽ、| |r|| | //--‐'" `'メ、_lノ| / ・ /
| o l トー-トヽ| |ノ ''"´` rー-/// | o |
| ・ |/ | l ||、 ''""" j ""''/ | |ヽl ・ |
| N | | l | ヽ, ― / | | l N |
| !! | / | | | ` ー-‐ ' ´|| ,ノ| | | !! |
ノー‐---、,| / │l、l |レ' ,ノノ ノハ、_ノヽ
/ / ノ⌒ヾ、 ヽ ノハ, |
,/ ,イーf'´ /´ \ | ,/´ |ヽl |
/-ト、| ┼―- 、_ヽメr' , -=l''"ハ | l
,/ | ヽ \ _,ノーf' ´ ノノ ヽ | |
、_ _ ‐''l `ー‐―''" ⌒'ー--‐'´`ヽ、_ _,ノ ノ
127:デフォルトの名無しさん
09/01/25 00:04:20
また逃げてるw
これはもう芸の領域だなw
128:デフォルトの名無しさん
09/01/25 01:24:31
荒らすなヴォケ
129:デフォルトの名無しさん
09/01/26 16:08:05
よろしく
以下、それぞれを文字列として格納する変数なんだけど、
半角文字全部→string
半角英字→alphabet
半角数字→num
半角記号→character
半角英数→symbol
string とcharacterとsymbolがごっちゃになってわかりにくそうなんだけど、
他にいいアイデアがあるかな?
130:デフォルトの名無しさん
09/01/26 16:08:59
ごめんまちごうた
半角文字全部→string
半角英字→alphabet
半角数字→num
半角記号→symbol
半角英数→character
だったorz
131:デフォルトの名無しさん
09/01/26 16:37:16
is系の関数に従ってみればどうだろう。
半角英数はalnum
半角文字全部はascii
など。
132:デフォルトの名無しさん
09/01/26 16:57:59
なるほど、サンクス
半角文字全部→ascii
半角英字→alpha
半角英字大文字→upper
半角英字小文字→lower
半角数字→num
半角記号→symbol
半角英数→alNum
記号がなかったのでSymbolを流用して、全角の場合は修飾詞でWideをつければよさそうだ。
これでいってみるぜ
133:デフォルトの名無しさん
09/01/26 21:40:59
ctypeだとispunct(punctuation)ってのはあるね。
記号という意味じゃなく区切り記号という意味になってしまうが。
ASCIIの範囲では、印字可能な文字のうち、スペースと英数「以外」
134:デフォルトの名無しさん
09/01/27 15:41:57
>>133
区切り記号とは違うと思うのでsymbolにしてみた
半角全部-半角英字-半角数字-半角スペースというイメージなので。
んだが、半角文字全部asciiで、全角文字全部のとき
修飾詞つけてwideAsciiってなんか変な感じw
文字全部→ascii wideAscii
英字→alpha wideAlpha
英字大文字→upper wideUpper
英字小文字→lower wideLower
数字→num wideNum
記号→symbol wideSymbol
英数→alNum wideAlNum
カナ→katakana wideKatakana
ひらがな→none wideHiragana
漢字→none wideKanji
半角のほうに修飾詞singleをつけて、文字全部をsingle(半角全部)とwide(全角全部)にしようかしら。
つか、こんなの自分が理解してればどうだっていいよな・・・
privateなメンバだし・・
135:デフォルトの名無しさん
09/01/27 16:53:48
singleはない
136:デフォルトの名無しさん
09/01/27 17:10:34
ispunctの説明を見てくれば良かったのに。
半角英数、半角スペース以外の表示可能な文字なんだけどな
137:デフォルトの名無しさん
09/01/27 22:04:31
>>134
1バイト文字以外も考慮するのなら、
UNICODEの文字カテゴリの名前を参考に
したら?
多すぎてイヤになるかもしれんが。w
138:デフォルトの名無しさん
09/02/02 19:22:44
お題が来ないな・・・
139:デフォルトの名無しさん
09/02/02 21:38:20
じゃあTimeOfNowの話でもしようぜ
140:デフォルトの名無しさん
09/02/02 21:45:54
アメリカ旅行で時間聞きたいときは
Excuse me, do you have the time?
っていえばいいんよね
141:デフォルトの名無しさん
09/02/02 21:48:04
掘った芋いじくんな と聞いたけど……
142:デフォルトの名無しさん
09/02/02 22:53:52
掘った芋いじんな だよ
143:デフォルトの名無しさん
09/02/02 22:59:23
サンクス!
144:デフォルトの名無しさん
09/02/02 23:03:26
アメリカ人でも見ず知らず相手なら婉曲に>>140使うよ
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5374日前に更新/235 KB
担当:undef