クラス名・変数名に迷ったら書き込むスレ。Part14
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2008/12/29(月) 00:20:32質問する人は、その変数に何を格納するのか(クラスだったらその役割)
プログラミング言語は何なのかを、それぞれ書いて、
いい変数名を思いついた人は、それに答えてあげましょう。
命名規則や設計の善し悪しについて議論するのは基本的に禁止。
>>2 英和・和英・英英など各国語辞書と翻訳サイト。
>>3 類義語(シソーラス)辞書、図形・数式・数学用語の英単語。
>>4 関連スレと、いろいろな言語規約。
>>2-10 諸事情によりリンクがずれた場合。
前スレ。
◆ネーミング倶楽部◆: http://pc3.2ch.net/tech/kako/1035/10353/1035362308.html
Part1: http://pc5.2ch.net/tech/kako/1046/10465/1046541730.html
Part2: http://pc5.2ch.net/tech/kako/1058/10582/1058213523.html
Part3: http://pc5.2ch.net/test/read.cgi/tech/1067171530/
Part4: http://pc5.2ch.net/test/read.cgi/tech/1087209526/
Part5: http://pc8.2ch.net/test/read.cgi/tech/1109330204/
Part6: http://pc8.2ch.net/test/read.cgi/tech/1128266018/
Part7: http://pc8.2ch.net/test/read.cgi/tech/1144978008/
Part8: http://pc10.2ch.net/test/read.cgi/tech/1154448184/
Part9: http://pc11.2ch.net/test/read.cgi/tech/1168356029/
Part10: http://pc11.2ch.net/test/read.cgi/tech/1180146315/
Part11: http://pc11.2ch.net/test/read.cgi/tech/1191250784/
Part12: http://pc11.2ch.net/test/read.cgi/tech/1206118762/
Part13: http://pc11.2ch.net/test/read.cgi/tech/1222661623/
0002デフォルトの名無しさん
2008/12/29(月) 00:21:04英和・和英辞典。
http://dictionary.goo.ne.jp/
http://www.excite.co.jp/dictionary/
英英辞典のリンク集。
外国語広場: 英語: オンラインで使える英英辞典 英和・和英辞典
http://www.gaikoku.info/english/dictionary.htm
英語←→各国語辞典。(英語)
Dictionaries
http://www.freedict.com/
日英・英日、日中・中日、日韓・韓日翻訳。
http://www.excite.co.jp/world/
POP jisyo.com
http://www.popjisyo.com/WebHint/Portal.aspx
訳GO YAKUGO.COM
http://www.yakugo.com/WebHint/Quick.aspx
0003デフォルトの名無しさん
2008/12/29(月) 00:22:02シソーラス(類語)検索
http://www.gengokk.co.jp/thesaurus/
Thesaurus - Yahoo! Reference (英語)
http://education.yahoo.com/reference/thesaurus/
図形や数式などの英単語。
すうがく探検隊・数式と図形の英語
http://i.lekton.co.jp/ara/tanken/english/
リスコレ No.24 図形の名前を英語で……
http://homepage1.nifty.com/tadahiko/LISTCOLE/024-FIGURE.HTML
各業種いろいろ
250の辞書を一度に検索 Webdio
http://www.weblio.jp/
0004デフォルトの名無しさん
2008/12/29(月) 00:34:48変数名って、どの位こだわりますか?
http://pc.2ch.net/prog/kako/1038/10383/1038306623.html
ローマ字変数を使う奴は馬鹿
http://pc8.2ch.net/test/read.cgi/prog/1054319927/l50
ゲーム内で使う長い変数を縮めてあげるスレ
http://pc10.2ch.net/test/read.cgi/gamedev/1024902432/l50
★★★コーディングマナー★★★
http://pc5.2ch.net/test/read.cgi/tech/1056508692/l50
ちょっと待て!ハンガリアン
http://pc8.2ch.net/test/read.cgi/tech/1011026963/l50
Cのマナーいろいろ
http://pc8.2ch.net/test/read.cgi/tech/1029584140/l50
Cのマナー
http://pc.2ch.net/test/read.cgi/prog/1030001269/l50
バカなコーディング規約
http://pc.2ch.net/tech/kako/1012/10127/1012715148.html
いろいろな言語規約。
Hungarian Notation(英語)
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnvs600/html/hunganotat.asp
Java言語規定。6.8 名前付け規約
http://www.y-adagio.com/public/standards/tr_javalang/6.doc.htm#11186
参考書籍
翻訳に役立つGoogle活用テクニック
http://www.amazon.co.jp/exec/obidos/ASIN/4621072943/
0005デフォルトの名無しさん
2008/12/29(月) 01:16:21と表示する関数の名前お願いします
0006デフォルトの名無しさん
2008/12/29(月) 05:50:320007デフォルトの名無しさん
2008/12/29(月) 10:30:000008デフォルトの名無しさん
2008/12/29(月) 14:29:13, ‐' ´ ``‐、 / ̄:三}
. /,. -─‐- 、. ヽ / ,.=j
_,.:_'______ヽ、 .! ./ _,ノ
`‐、{ へ '゙⌒ `!~ヽ. ! /{. /
`! し゚ ( ゚j `v‐冫 , '::::::::ヽ、/
. {.l '⌒ ゙ 6',! / :::::::::::::::/ __ そんなことよりTimeOfNowの話しようぜ!
. 〈 < ´ ̄,フ .ノー'_ , ‐'´::::::::::::::;/ (_ノ)‐-、
. ヽ.、 ` ‐", ‐´‐:ラ ':::::::::::::::: ;∠. ヽ_} ゙ヽ
,.r` "´ /:::::::::::::::::::ィ´ `ゝ !、 /
/ / :::::::::::::::: ; '´ /´\ / r'\
. i ! ::::::::::::::/ 墨 | .!::::::::/ヽ、.._!ヽ. ヽ、
{ {:::::::::::;:イ / ‖i:::::::/:::::::::::::/ \
. ヽ ヽ,.ァ‐'´ /ヽ 二 ,/`ヽ、::::::::: / ヽ
ヽ、 ,. ‐'" .ノ ,〈 > `'‐- '
> _,. ‐'´ / / `)
,ゝ _.⊥.-r┬:/
ヽ_,. -‐i"!´「L.=!┘ ヽ
< / / |
/ 、i / __ ./
0009デフォルトの名無しさん
2008/12/29(月) 14:32:580010デフォルトの名無しさん
2008/12/29(月) 15:12:080011デフォルトの名無しさん
2008/12/29(月) 16:45:290012デフォルトの名無しさん
2008/12/29(月) 20:04:23│ |⌒i /_) . / _|. レヽ. (__ | //_) レ⌒
│ | | ヽ_ / ̄ | | | ._).|/|/. ヽ_ | ...
─┬─ ・. . _ γ⌒ヽ ./ |\ | .
│ | レγヽ /_) .| | ┼ | \ | /⌒ヽ| /
│ | | | |. ヽ_ .ヽ___ノ. │ | \| ヽ__ノ.|/|/.
/\___/ヽ
(.`ヽ(`> 、 /'''''' ''''''::::::\
`'<`ゝr'フ\ + |(●), 、(●)、.:| +
⊂コ二Lフ^´ ノ, /⌒) | ,,,ノ(、_, )ヽ、,, .::::|
⊂l二L7_ / -ゝ-')´ + | `-=ニ=- ' .:::::::| +
\_ 、__,.イ\ + \ `ニニ´ .:::/ +
(T__ノ Tヽ , -r'⌒! ̄ `":::7ヽ.`- 、 ./|
ヽ¬. / ノ`ー-、ヘ<ー1´| ヽ | :::::::::::::ト、 \ ( ./ヽ
\l__,./ i l.ヽ! | .| ::::::::::::::l ヽ `7ー.、‐'´ |\-、
0013デフォルトの名無しさん
2008/12/29(月) 23:40:030014デフォルトの名無しさん
2008/12/29(月) 23:41:44そのフォームを表示する関数の名前は何がいいかな?
0015デフォルトの名無しさん
2008/12/30(火) 01:41:03showFormAssign
みたいな。
0016デフォルトの名無しさん
2008/12/30(火) 03:07:25いつも言うことだけど、その
>「名前=値」形式の文字列
の集合がどういう意味を持つのかがわからなきゃ命名なんてできないだろう。
普通はその「意味」を名前に盛り込むんだから。
いや特定の意味なんて持たない、汎用の“「名前=値」形式の文字列”を編集するための
フォームなんだ、ってことかもしれないけど、でもそうだとしたらそれって
ただのテキストエディタ以上の利便性があるのかね?
0017デフォルトの名無しさん
2008/12/30(火) 03:13:41テーマを持ってテキストエディタを作っちゃいけないのかね?
0018デフォルトの名無しさん
2008/12/30(火) 03:57:19答えられないなら取りあえず黙ってれば?
別にお前が聞かれたわけじゃないんだしさ。
0019デフォルトの名無しさん
2008/12/30(火) 04:01:32PropertyEditor
EditProperty
0020デフォルトの名無しさん
2008/12/30(火) 10:57:18>>16は何を言いたかったんだろう
どういう意味を持つのかが具体的にわからなきゃ命名なんてできないっていうけれど、
どのレベルの抽象度を持たせたいのかわかんなきゃマズいだろ?
0021デフォルトの名無しさん
2008/12/30(火) 11:11:23汎用的なソフトウェアがあるとは思えないけどね。
だって入力された名前と値をイコールで連結するだけなんでしょ?
それテキストエディタで編集するのと比べてどこが便利なの?
>>20がどういうものを想像しているのか分からないし、
もちろん>>16の説明が要領を得てないだけかもしれないけどさ。
まあ「名前が用意されてて」とあるから、>>20は特定の用途向けのデータに
特化したものを想像しているのかもしれない。
それなら>>16で俺が言ってることと一緒じゃん
0023デフォルトの名無しさん
2008/12/30(火) 14:33:570024デフォルトの名無しさん
2008/12/30(火) 15:24:00・設定画面を開いて設定してください
ではユーザに与える印象がずいぶん違う。
ライトユーザに対しては稚拙であっても設定画面を用意する方が間違いが起きにくい。
が、たぶん>>21が言いたいのは、果たしてそれは「設定項目」なのかどうかと。
テキストエディタと比べて云々がよけいなんじゃないかなー。
0025デフォルトの名無しさん
2008/12/30(火) 16:28:190026デフォルトの名無しさん
2008/12/30(火) 19:40:00お前の視野の狭さと実務経験の無さは十分わかったから
答えられないなら黙ってろよ
0027デフォルトの名無しさん
2008/12/30(火) 21:00:39余計じゃないよ。
俺が言ってるのは単純かつごく当たり前のこと。
まず>>14の「フォーム」が(1)特定用途向けのデータのみを編集する画面である可能性と
(2)「名前=値」形式の文字列によるデータを編集するための汎用的な画面である可能性が
あることまではいいよね?
後者の場合、値だけでなくフィールド名もユーザーが入力する必要がある(というより、そのための画面)
のだから、だったらそれにはただのテキストエディタ以上の利便性は何もない。
ライトユーザ云々って、それをいうならフィールド名を入力させる時点でライトユーザ向きじゃないよ。
0028デフォルトの名無しさん
2008/12/30(火) 21:03:000029デフォルトの名無しさん
2008/12/30(火) 23:38:230030デフォルトの名無しさん
2008/12/31(水) 01:02:29名前が思いつかないならレスしなくていいよ。
0031デフォルトの名無しさん
2008/12/31(水) 01:17:140032デフォルトの名無しさん
2008/12/31(水) 02:54:440033デフォルトの名無しさん
2008/12/31(水) 06:58:51相手のバックグラウンドを斜め下に妄想してぶっ飛びセンスで名前を提案するTimeOfNowの人と
相手のバックグラウンドを根掘り葉掘り聞いた挙句結局何の提案もしない>>27の
二人のキチガイが居るでおk?
同一人物ってことは無いよね?
0034デフォルトの名無しさん
2008/12/31(水) 08:34:050035デフォルトの名無しさん
2009/01/05(月) 12:09:570036デフォルトの名無しさん
2009/01/05(月) 12:39:50前スレ前々スレ読めばどれ程の基地外か分かるよ
このスレは俺の物宣言した兵
0037デフォルトの名無しさん
2009/01/05(月) 13:45:21やれやれまだやってるのか。
言わせてもらえば、「このスレは俺の物宣言した兵」って、それって(君がそうかどうかは知らんが)
むしろ俺に妙な突っかかりかたしてたお馬鹿さんの方だろう。
俺はそいつに「お前(ら)は俺のやり方に従え」なんていってない。
だがそいつは「お前は俺と同じように振舞え」と、居丈高なことを言っている。
だから俺は「俺は俺であってお前じゃないから俺自身の考えに従う」と言っただけだろう。
いったいどっちが自我の肥大した自己中野郎なんだよ。
おまけに、言い負かされて腹が立てばAAや繰言を投稿しまくるこの幼稚さ。
なんども言ってるように、精神的に幼稚な上に目的合理的思考ができないからそういう風になる。
いったいどの口下げて「命名だけに限定して議論すべき」と言ってたんだ?
荒れることを防ぐために(目的)命名だけに限定して議論すべきだ(手段)と
ほざいてた奴が率先して荒らすってどういう了見だよ。
頭オカシイだろ。
0038デフォルトの名無しさん
2009/01/05(月) 14:11:20で、マジレスするとだ
たとえば10人が10人ともルール(テンプレ>>1)に同意した上で一応の和をもって場(このスレ)を形成してる中に
お前が後から割り込んできて、
俺はこの場で俺の思うままに振舞う。元からあるルールなんざ糞食らえ、
俺はお前らに何も押し付けているつもりは無いんだから、お前らも俺のやり方に一切の口出しをするなと、
その場に居る全員に「お前のルール」を押し付けるのはいかがなものかな?
コミュニケーション不全を開き直るにも程がある
0039デフォルトの名無しさん
2009/01/05(月) 14:19:39それが >>1 にあるルールに反するとは思わないな。
質問者の意図や対象の意味を明らかにした後に、それの
「善し悪しについて議論」するのが禁止されてるのは妥当だとは思う。
つまり >16 は以下の二行だけなら妥当な書き込み。それ以外は蛇足。
> >「名前=値」形式の文字列
> の集合がどういう意味を持つのかがわからなきゃ命名なんてできないだろう。
0040デフォルトの名無しさん
2009/01/05(月) 14:52:52>>37の奴は毎回
>ただのテキストエディタ以上の利便性があるのかね?
みたいに良し悪しについて言及し、最終的にそちらが主題になるから問題視されてるんだよな
>>37本人も「命名は手段であり、本来の目的は命名を通じて設計の良し悪しを語ることだ」と明言してたわけで
それにスレ違いと返されたら、発狂して俺は俺の信じるままに動く!口出し無用!とか言い出したんだわ
だからこのスレで基地外扱いされてるの
0041デフォルトの名無しさん
2009/01/05(月) 14:56:48自虐芸は程々にした方がいいと思います。
0042デフォルトの名無しさん
2009/01/05(月) 15:39:55> >「名前=値」形式の文字列
> の集合がどういう意味を持つのかがわからなきゃ命名なんてできないだろう。
0043デフォルトの名無しさん
2009/01/05(月) 17:48:36その視点なしに名前考えてみても、ある意味ゴミの生産してるだけだからなあ。
0044デフォルトの名無しさん
2009/01/05(月) 20:31:07>>40
そんなこと言ってないけど。
言ってるというのなら該当レスを引用してみ?
執念深く過去ログ持ってるらしいからできるよね?w
俺は以下ような意味のことしか言ってないはずだ。
つまり、命名とは「可読的なコードを書くこと」という上位目的の手段に過ぎず、
またこんなスレにいるのはプログラマに決まってるのだから、
(1) 「可読的なコードを書く」という上位目的に資する議論が
「困る」という人間はいないはずだ(もし、彼がプログラマならば)
(2) そもそも設計に無理があるから適切な命名がし難くなっているようなケースでは、
その無理な設計に固執して命名するのは手段と目的が倒錯した愚行だ。
(3) 設計議論をすると荒れる、と主張する人間がいるが、俺の知る限りそんな事実は今までない。
(というか、荒らしてるのはそう言ってるお前自身じゃないか馬鹿)
0045デフォルトの名無しさん
2009/01/05(月) 20:42:05「したっていいじゃないか」なんて言ってないから。
命名だけでは問題が解決しようがないケースでも盲目的に命名に固執するのは
愚かだって言ってるだけだからな。
当たり前だろこんなこと。
手段に過ぎんものに固執して目的が遂行できないんじゃなんの意味があるんだよ。
0046デフォルトの名無しさん
2009/01/05(月) 20:42:570047デフォルトの名無しさん
2009/01/05(月) 21:29:100048デフォルトの名無しさん
2009/01/05(月) 21:39:17それを伝えて追加情報を求めれば良いだけの話。
ただそれだけなのに、毎回毎回偉そうに説教たれ始めるから話がややこしくなる。
0049デフォルトの名無しさん
2009/01/05(月) 23:33:38相変わらず人間分析がお得意のようですね。
是非去年聞かれていた自己分析の結果をお聞きしたいのですが、あなた自身はどのような人間でしたか?
0050デフォルトの名無しさん
2009/01/06(火) 21:37:33>手段に過ぎんものに固執して目的が遂行できないんじゃなんの意味があるんだよ。
ところが、まさにその「手段」に固執して
回答することこそがこのスレの用途。
納得がいかないからって、わざわざ主張
しに来るなよ。
ぐだぐだ言わずにどっかいけ。
なんなら新スレをたてたらいいよ。
0051デフォルトの名無しさん
2009/01/06(火) 22:47:21>>50
>ところが、まさにその「手段」に固執して
>回答することこそがこのスレの用途。
それは「チミの勝手な解釈」、あるいは「チミの独りよがりな願望」に過ぎん。
もちろん、勝手で独りよがりであろうと君がこのスレの意義に関して
「どうあるべき」と考えるのも自由で、その信念に従って君が行動するのも自由だ。
(正直、俺的には「アンタ本物の馬鹿だね」としか思えんけれどもね)
だが、たかだか君の解釈だったり願望だったり過ぎないものを、居丈高に俺に
強制しないでくれる?
俺は俺であって君じゃないんだよわかる?
0052デフォルトの名無しさん
2009/01/06(火) 23:26:38愚かだと思うと書いた責任上一応理由つきで否定しとく。
問題設定が非現実的であっても意味をもつのは、
(1) それが何らかの能力向上のための
(2) 演習問題になるとき
だろう。
さて、命名以前の問題があるために命名が困難になってる「お題」(例えば>>14)は
この要件を満たすだろうか?
俺の考えでは答えはNo。
なぜなら、現実のプログラミングではそんな無理くり名前をつけるような「法外な」
命名能力なんて必要とされないからだ。
まともなプログラマなら横車を押して命名するよりも、名前が付けやすいような
別の視点を採用するなり(>>14なら、データのもつ意味から名前を付ければわかりやすい)、
設計を変更するなりすることを選択するからね。
0053デフォルトの名無しさん
2009/01/06(火) 23:31:160054デフォルトの名無しさん
2009/01/06(火) 23:33:02言及がなければ、例えば>>19の回答がほしいことにすればいいだろう。
いい加減不毛だからやめてよ。
0055デフォルトの名無しさん
2009/01/06(火) 23:37:50もちろん、それはそう。
俺はそういう人がいてもいいと思うし、そういう回答をする人に
自分からケチつけたり突っかかったことは一度もない。
俺は自分と違う考えの人を一概に否定したりしないし、少なくとも消極的容認だよ。
「彼」は違うようだがね。
0056デフォルトの名無しさん
2009/01/06(火) 23:45:44Q)この名前何がいい〜? ホニョニョ~ン
A)こんな感じで良いんじゃね〜 ハニャニャ~ン
という緩いスレじゃないのか。
0057デフォルトの名無しさん
2009/01/07(水) 02:18:11道民かよ
通りで日本語が通じないわけだ
一部道民は本当に酷い思考回路を持ってるからな
0058デフォルトの名無しさん
2009/01/07(水) 02:56:16> 俺の考えでは答えはNo。
そう思ったら、はじめからレスしないか、意図を聞くなどしながら
「設計見直したほうが良いんじゃないの?スレ違いになるから他所でやってもらうけど」
あたりで済ませておくのがこのスレの趣旨から考えて望ましいと思います。
0059デフォルトの名無しさん
2009/01/07(水) 03:11:53585 名前:デフォルトの名無しさん[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。すまない。
ただ俺なら、名前で悩むなら違う事で悩みたいな、って思っただけだ。
0060デフォルトの名無しさん
2009/01/07(水) 03:14:17>>590
なんで名前で迷ったら書き込むスレに迷い込んでるのかが分からない
592 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 02:33:25
>>591
名前が無意味なものだとは考えてないからだよ。
デザパタなんかは「何かに名前をつけること」に意味を見いだしている例だよね。
このスレで言えば、>>496-498みたいに、
機能にぴたっと当てはまる名前が提示されることで、
496自身が「自分が何をしようとしていたか」が定まったと思うし、
さらに勉強してみようという前向きな気もちにもなっている。
名前を考える事は、考え方をみつめ直すことで、
良い方向に成長する入口になっていると思う。
名前に悩んで設計に悩まないのはもったいない。
余計なおせっかいかもしれないが。
0061デフォルトの名無しさん
2009/01/07(水) 03:14:44593 名前:デフォルトの名無しさん[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
命名の前提となるもの(例えば設計)を語らないと根本的な解決にならない場合であっても
あえて盲目的に命名限定の議論をしろ、などという物言いこそ「時と場所をわきまえない」
愚かなものだと思うが。
一般にはそういうのは「フェティシズム」と言うんだよ。
0062デフォルトの名無しさん
2009/01/07(水) 03:18:43なまら辺りでなら道民と決めていいと思うけどさ
0063デフォルトの名無しさん
2009/01/07(水) 03:21:11>>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
悪いけど俺はそんなものに同意した覚えはないんでね。
この後突然独り言のようにセカイ系について講釈が始まってるけど、もういいや
0064デフォルトの名無しさん
2009/01/07(水) 08:59:210065デフォルトの名無しさん
2009/01/07(水) 10:11:40設計にまで口出しする事がスレ違いって言われてるだけで
006650
2009/01/07(水) 13:22:56オレはその「彼」じゃないんで、そう思ってるのは
少なくとも2人いるってこと。たぶんもっといる。
まあ、もういいや。
TimeOfNow氏は酷く個性的な考えの持ち主だと
認識することにした。
死ねばいいのに。
0067デフォルトの名無しさん
2009/01/07(水) 17:03:33void Sell();
};
class Seller {
void Buy();
};
名前にBuyと付くクラスのメソッドがSellで、名前にSellと付くクラスのメソッドがBuy。
一瞬違和感を感じたんですが、これで合ってますよね?
0068デフォルトの名無しさん
2009/01/07(水) 17:31:37ギタリストがトライアングル叩いてもいいと思うよ
0069デフォルトの名無しさん
2009/01/07(水) 17:56:53このスレ的に言えば「ギターを弾くものにドラマーと命名するべきではない」ということになりませんか?
私が訊きたかったのは、買い手に対して物を売るメソッドの名前は、
「買い手が買う」という意味ではなく、「買い手に対して売る」という意味の命名で合っているか、ということです。
0070デフォルトの名無しさん
2009/01/07(水) 19:05:030071デフォルトの名無しさん
2009/01/07(水) 19:15:13買い手の行動は「買う」ことだろう。
「買い手に対して物を売る」ということなら、
「売り手の売るメソッドの引数に買い手インスタンスを指定」って感じがするが。
0072デフォルトの名無しさん
2009/01/07(水) 19:42:27BuyerとかSeller とかいうクラスはあくまでただの例えで言ってるのなら
>>70-71の言うとおりだと思う。
ただの例えじゃなくて実用にするものなら、BuyerとかSellerにメソッドをもたせるより
製品クラス(ProductとかGoodsとか?)にTrade()とかSell()を持たせた方が賢い気がする。
0073デフォルトの名無しさん
2009/01/07(水) 19:49:55>>1
0074デフォルトの名無しさん
2009/01/07(水) 20:00:28レスありがとうございます。
ちょっと意外に感じました。
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の引数に買い手と売り手を渡すということになりますか?
商品は所有者が扱うものと思っていたので、こちらも意外に感じました。
0075デフォルトの名無しさん
2009/01/07(水) 20:13:54「売られた」時に、製品が必ずその所有者への参照を内部に持つようにすれば、
Trade()の引数は買い手と売価だけでよくなるんじゃない?
0076デフォルトの名無しさん
2009/01/07(水) 20:27:52A.GetB()は「Aが(自分の持つ)Bを取得する」って意味だ
AはBを取り出してくるが、その後どうされるかまでは知ったこっちゃ無い
0077デフォルトの名無しさん
2009/01/07(水) 20:48:04なるほど。
>>76
そういう意味だったんですか。
今まで勘違いしていました。
0078デフォルトの名無しさん
2009/01/07(水) 21:04:10ふつうは、主語.述語(目的語)とするものだと思う。
とくに、述語が他動詞の場合には。
下駄雪駄がそうじゃないというのは、今指摘されて
初めて感じた。w
たしかにそうかもしれないけど、むしろこっちが
パターンとしてはレアなのでは。
0079デフォルトの名無しさん
2009/01/08(木) 00:03:38「AからBを取得する」は主体(主語)が抜けてね?
主体がメソッドのレシーヴァになるはずだよね。
主体がオブジェクト化されてないから混乱してるんじゃない?
0080デフォルトの名無しさん
2009/01/08(木) 12:11:45たしかにgetter/setter以外は主語.述語で自然に読めるものばかりでした。
>>79
x = a.GetX();
xが主体ということですか?
ちなみにこういうケースではどちらの命名が自然に見えます?
item = shop.Buy(itemID, money); // アイテムの種類を示すIDと代金を渡しアイテムを得る
item = shop.Sell(itemID, money); // アイテムの種類を示すIDと代金を渡しアイテムを得る
0081デフォルトの名無しさん
2009/01/08(木) 12:19:53どちらも虫唾が走るほど気持ち悪い
指摘するとなると完全に命名の範疇外の話になるんで、どっかOOP初心者スレにでも行って下さい
0082デフォルトの名無しさん
2009/01/08(木) 13:42:00>>80のメソッドにBuy/Sellを名付ける事自体が間違ってましたか。
どうもでした。
0083デフォルトの名無しさん
2009/01/08(木) 17:51:05そういう系にしたいならこんなのは?
player.buy(shop,item,price)
オレ的にはかなり自然。
0084デフォルトの名無しさん
2009/01/08(木) 18:08:39なるほど、参考にします。
0085デフォルトの名無しさん
2009/01/08(木) 18:10:010086デフォルトの名無しさん
2009/01/08(木) 19:19:11aだろ。
aが自分のXを取得する。
それをプログラマがxに渡してるだけ。
0087デフォルトの名無しさん
2009/01/09(金) 00:22:41トランザクション処理というぴったりのものがあったんですね。
>>86
なるほど。
0088デフォルトの名無しさん
2009/01/09(金) 01:09:34私の経験では
クラス名.メソッド名 で自然な英語になるようにメソッド名をつける場合もあるし、
クラス名を意識せず、メソッド名単独で意味を主張するようにメソッド名をつける場合もある。
両方あります。
例えば頻繁に使われる get なんかでも
shop.getItem
は意味の取りようによっては、
・店が得るのだから、アイテム引数をともなって、店にアイテムを設定する(メンバー変数に登録、setterのような意味)
・店のアイテムを得る。(メンバー変数をを得る、普通のgetterの意味)
などのように、2通りの解釈ができないこともない。
どのようにメソッド名をつけるかはコーダーのセンスよると思います。
したがって、自然に読めるのが一番ですが、限界があるのでどうしようもないというわけです。
一人で開発するときは、統一さえしておけばそんなに大きな問題ではありません。
しかしチームで開発するときは、
「これこれの動詞はbuyで統一しよう、getはこういう意味にしよう」
等のように、コーディング規約が必要になるでしょう。
0089デフォルトの名無しさん
2009/01/09(金) 01:19:43お気に漏れしてたのか
009068
2009/01/09(金) 02:22:29あるオブジェクトに対してset/get指示をだすが、オブジェクトからみれば自身のメンバに対して
やはり同じようにset/getを行うので、逆になっているわけではないよ。
>>83
オレ的にもそんな感じ。
一点、priceが商品の値段を意図しているのであれば、buyメソッド内でshopに問い合わせを行うようにする。
今回の焦点ではないけどね。
009183
2009/01/09(金) 09:11:24質問者が引数にmoneyって書いてたからな。
そこは値段だろうと思ってpriceにした。
個人的にも、priceは明示的なほうがいいと思う。
shop.getPrice(item)とか。
>>85
いわゆるトランザクションには、プログラム的に
ちょっと特定的な意味がありがちなので、念のため。
プログラマにそう言ったら混乱することもありそう。
0092デフォルトの名無しさん
2009/01/09(金) 15:41:04>>80のmoneyは商品の価格ではなく、購入者が提出するお金だと思う。
なので何らかの手段でおつり、不足エラーなどを通知する必要が出てくるものだろうと思った。
一方、buyer.buy(shop, item)とすれば、関数内で
if (所持金<shop.getPrice(item)) エラーリターン
this.money -= shop.getPrice(item)
のようにできる。
基本的に店って主体になりにくいよね。ザ・コンビニみたいなゲームなら別だろうけど。
0093質問者
2009/01/09(金) 18:39:39GetItem→BuyItemと置き換えると、
・店が(引数に指定された)アイテムを得る→店が(引数に指定された)アイテムを買う
・店が(保持している)アイテムを得る→店が(保持している)アイテムを買う
まさにここですね。
getterは後者の意味、Buyに関しては前者の意味が一般的というところに混乱しました。
>>90-92
moneyに関しては購入者が提出するお金のつもりで書きました。
トランザクション処理を勉強して>>83か>>85にしようと思います。
ありがとうございました。
009495
2009/01/09(金) 18:44:09書いてから気が付いたんですが、自分が保持してる物を買う?というのは変ですね。
ということは自然と前者になるということでしょうか。
0095デフォルトの名無しさん
2009/01/09(金) 18:44:540096デフォルトの名無しさん
2009/01/09(金) 21:45:10あんまりヘンに考え込まないことを勧める。
命名は慣習的なところも多いので、だいたい
納得できたら、自分ルールにしてパクッと
飲み込め。
完全な名前を定義することが目的じゃないだろ?
0097デフォルトの名無しさん
2009/01/13(火) 22:49:43あんたの目的は、命名法を究めることじゃないはずだ。
妥協も大切だ。
0098デフォルトの名無しさん
2009/01/14(水) 02:15:34ほんと、絶望的
0099デフォルトの名無しさん
2009/01/14(水) 23:56:01Google?
0100デフォルトの名無しさん
2009/01/15(木) 13:10:270101デフォルトの名無しさん
2009/01/15(木) 13:11:000102デフォルトの名無しさん
2009/01/20(火) 01:45:080103デフォルトの名無しさん
2009/01/20(火) 01:46:440104デフォルトの名無しさん
2009/01/20(火) 21:37:36sample は実例というか、ちゃんと動くようなもの。
境目は適当。
0105デフォルトの名無しさん
2009/01/21(水) 16:16:44なるほどー。ありがとうございます〜
0106デフォルトの名無しさん
2009/01/21(水) 16:17:270107デフォルトの名無しさん
2009/01/21(水) 16:25:58>>44で偉そうにログ出せといってログ張られて逃げ出すとか
まね出来ない
0108デフォルトの名無しさん
2009/01/21(水) 19:49:08本格的にアタマおかしいだろw
いや逃げてないし、君が望むなら君のような馬鹿は徹底的に叩き潰して差し上げるけど?
で、どこで>>40のようなことをこの俺が言ったと言うんだ、ん?
0109デフォルトの名無しさん
2009/01/21(水) 19:52:31成立してないと思ってるから、嘲笑のつもりで「TimeOfNowの人」とか言ってるんだろうが、
それが自分自身の馬鹿を曝け出しているに過ぎんことにすら気づかないんだから
おめでたいとしか言いようがねえなw
0110デフォルトの名無しさん
2009/01/21(水) 20:02:58スレが静かになったからって、
わざわざ悪魔召還すんな!
0111デフォルトの名無しさん
2009/01/21(水) 20:19:40検索して引っ掛かるけど特殊な言い回しだよ。そこは蒸し返すなよ
0112デフォルトの名無しさん
2009/01/21(水) 20:21:470113デフォルトの名無しさん
2009/01/21(水) 21:01:53別に「蒸し返す」つもりもないけど、別に特殊でもなんでもないよ。
前スレでそういうことを主張している人間がいたのは記憶しているが、
その人が何もわかってないだけだな。
前にも名詞的に使われてるnowを「倒置構文だ」とトンチンカンなことを
言ってる人がいたけど、このスレはそういうのが多い。
0114デフォルトの名無しさん
2009/01/21(水) 21:08:55が特殊な使い方といっていた人を指してトンチンカンと?
0115デフォルトの名無しさん
2009/01/21(水) 21:31:29相手が言ったことに反論する能力を身につけようよ。
俺は言った。
名詞的用法をさして「倒置構文だ」とトンチンカンなことを言っている人がいた、と。
君に問うが、>>114のそれは倒置構文ですか?
0116デフォルトの名無しさん
2009/01/21(水) 21:34:01というかそういう解釈の方が一般的かも知れんね。
でも俺の言っているのはそれじゃない。
0117デフォルトの名無しさん
2009/01/21(水) 21:40:09"Now is the time to 〜."
これを倒置構文と言った人がいたんだな。
これは倒置構文じゃないよ。ただnowを名詞的に使ってるだけ。
0118デフォルトの名無しさん
2009/01/22(木) 00:47:470119デフォルトの名無しさん
2009/01/22(木) 01:05:26まあ頭悪いから言ってる意味が理解できないのだろうけど。
そのセンスっていってる奴の答えが「コインいっこ入れる」式のぎこちない命名だから
なお笑わせてくれるんだがw
0120デフォルトの名無しさん
2009/01/22(木) 01:21:450121デフォルトの名無しさん
2009/01/22(木) 01:36:58本格的にアタマおかしいだろw
いや言ってないし、君が望むなら君のような馬鹿は徹底的に叩き潰して差し上げるけど?
で、どこで>>119のようなことをこの俺が言ったと言うんだ、ん?
0122デフォルトの名無しさん
2009/01/22(木) 01:37:48自分からやっといてなんだけどなw
0123デフォルトの名無しさん
2009/01/22(木) 09:13:21同じプログラム内で一貫した名前の付け方をする事の方が重要だと思う。
接頭辞+名前みたいなのは自然な英語にはならないだろうし、
一貫して使うなら略記的な名前でもぜんぜん問題ない。
(母音を省略して書くとか普通にするし)
コインに関するモジュールを書いていたら、
・コイン_いっこ入れる
・コイン_いっこ取り出す
とかもありそう。
0124デフォルトの名無しさん
2009/01/22(木) 10:27:10「TimeOfNowの人」って呼ばれるのが嫌なのか?
そう呼ばれるとお前さんは嘲笑されてると感じるのか?なぜ?
まぁその点はどうでもいいけど
嫌なら自分でコテハン付けてくれよ
いい加減お前さんには固有名詞が必要なんだよ
0125デフォルトの名無しさん
2009/01/23(金) 02:34:340126デフォルトの名無しさん
2009/01/23(金) 04:25:47)'ーーノ( | | | 、 / 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 `ー‐―''" ⌒'ー--‐'´`ヽ、_ _,ノ ノ
0127デフォルトの名無しさん
2009/01/25(日) 00:04:20これはもう芸の領域だなw
0128デフォルトの名無しさん
2009/01/25(日) 01:24:310129デフォルトの名無しさん
2009/01/26(月) 16:08:05以下、それぞれを文字列として格納する変数なんだけど、
半角文字全部→string
半角英字→alphabet
半角数字→num
半角記号→character
半角英数→symbol
string とcharacterとsymbolがごっちゃになってわかりにくそうなんだけど、
他にいいアイデアがあるかな?
0130デフォルトの名無しさん
2009/01/26(月) 16:08:59半角文字全部→string
半角英字→alphabet
半角数字→num
半角記号→symbol
半角英数→character
だったorz
0131デフォルトの名無しさん
2009/01/26(月) 16:37:16半角英数はalnum
半角文字全部はascii
など。
0132デフォルトの名無しさん
2009/01/26(月) 16:57:59半角文字全部→ascii
半角英字→alpha
半角英字大文字→upper
半角英字小文字→lower
半角数字→num
半角記号→symbol
半角英数→alNum
記号がなかったのでSymbolを流用して、全角の場合は修飾詞でWideをつければよさそうだ。
これでいってみるぜ
0133デフォルトの名無しさん
2009/01/26(月) 21:40:59記号という意味じゃなく区切り記号という意味になってしまうが。
ASCIIの範囲では、印字可能な文字のうち、スペースと英数「以外」
0134デフォルトの名無しさん
2009/01/27(火) 15:41:57区切り記号とは違うと思うので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なメンバだし・・
0135デフォルトの名無しさん
2009/01/27(火) 16:53:480136デフォルトの名無しさん
2009/01/27(火) 17:10:34半角英数、半角スペース以外の表示可能な文字なんだけどな
0137デフォルトの名無しさん
2009/01/27(火) 22:04:311バイト文字以外も考慮するのなら、
UNICODEの文字カテゴリの名前を参考に
したら?
多すぎてイヤになるかもしれんが。w
0138デフォルトの名無しさん
2009/02/02(月) 19:22:440139デフォルトの名無しさん
2009/02/02(月) 21:38:200140デフォルトの名無しさん
2009/02/02(月) 21:45:54Excuse me, do you have the time?
っていえばいいんよね
0141デフォルトの名無しさん
2009/02/02(月) 21:48:040142デフォルトの名無しさん
2009/02/02(月) 22:53:520143デフォルトの名無しさん
2009/02/02(月) 22:59:230144デフォルトの名無しさん
2009/02/02(月) 23:03:260145デフォルトの名無しさん
2009/02/02(月) 23:05:540146デフォルトの名無しさん
2009/02/02(月) 23:21:330147デフォルトの名無しさん
2009/02/02(月) 23:25:05│ | レγヽ /_) .| | ┼ | \ | /⌒ヽ| /
│ | | | |. ヽ_ .ヽ___ノ. │ | \| ヽ__ノ.|/|/.
/\___/ヽ
(.`ヽ(`> 、 /'''''' ''''''::::::\
`'<`ゝr'フ\ + |(●), 、(●)、.:| +
⊂コ二Lフ^´ ノ, /⌒) | ,,,ノ(、_, )ヽ、,, .::::|
⊂l二L7_ / -ゝ-')´ + | `-=ニ=- ' .:::::::| +
\_ 、__,.イ\ + \ `ニニ´ .:::/ +
(T__ノ Tヽ , -r'⌒! ̄ `":::7ヽ.`- 、 ./|
ヽ¬. / ノ`ー-、ヘ<ー1´| ヽ | :::::::::::::ト、 \ ( ./ヽ
\l__,./ i l.ヽ! | .| ::::::::::::::l ヽ `7ー.、‐'´ |\-、
0148デフォルトの名無しさん
2009/02/02(月) 23:28:370149デフォルトの名無しさん
2009/02/03(火) 00:01:420150デフォルトの名無しさん
2009/02/03(火) 00:03:25メリケンこええ。
0151デフォルトの名無しさん
2009/02/03(火) 00:18:12もう死ね
とか、日本も外人にとっては怖そうだぞ
0152デフォルトの名無しさん
2009/02/03(火) 01:40:09それ以前に定数に対してNow,Today,TimeOfNowと付けるんだから半端ないわ
0153デフォルトの名無しさん
2009/02/03(火) 02:15:300154デフォルトの名無しさん
2009/02/03(火) 20:15:30今頃になってネチネチいうって難儀な性格だねホント。
正直精神分析の対象に思える。
しかも言うことが素っ頓狂だし。
まず結論から言うとTimePartOfNowとTimeOfNowは同じ'Now'を使ってもそれの
意味しているものが違うだけで、どちらもお題の答えとして正しい。
君のいうTimePartOfNowの'Now'はNowという名前のデータ構造が存在していることを
前提とした命名だろ。
俺の言ったTimeOfNowの'Now'は文字通りのNowだから。
普通の英会話で"date of today"とは言っても"date part of today"なんて言ったら意味不明だろ。
それから、定数(というかマクロで定義された即値)を大文字をアンダースコアで区切りで
表現するのってC/C++の慣習だろ。
他の言語じゃあまりやらないよ。(そもそもマクロで即値定義なんて原始的なことやってるの
C/C++とアセンブラぐらいしかないし。)
つーか基本的に意味ない習慣だからCでも自分だけで完結するコードなら俺は従わない。
0155デフォルトの名無しさん
2009/02/03(火) 20:17:56今頃になってネチネ(ry
0156デフォルトの名無しさん
2009/02/03(火) 20:21:54なんて命名の本質と何も関係ねえだろw
なんていうか、語るに落ちてるんだよな。
「命名以外の話題は禁止」と執拗にイチャモンをつける一方で、
同じ口で平気で命名の本質と何も関係ないことに固執する、この一貫性のなさ。
一貫してるのは、要するに「執拗に他人にケチをつけている」という一点においてのみ。
0157デフォルトの名無しさん
2009/02/03(火) 22:05:14なにを言っているのだお前は。1行目からおかしいだろ
0158デフォルトの名無しさん
2009/02/03(火) 22:25:35びっくりした。
本当に、びっくりした。
0159デフォルトの名無しさん
2009/02/03(火) 22:27:42C++もマクロで即値定義なんてことはやらないよ。
やってると思った?
0160デフォルトの名無しさん
2009/02/03(火) 22:46:24やっぱり期待通りに笑わせてくれるのなw
date part of today w
作為的なT.O.N.でもない例えでフイタw
0161デフォルトの名無しさん
2009/02/03(火) 23:19:52馬鹿か。
慣習は情報伝達コストを大幅に下げる。
命名に拘る理由の大部分が伝わり易さを求めている以上、基本的に意味ない習慣とか厨二馬鹿にしか言えないわ。
お前が慣習に従うかなんて誰も興味ないっつーの。
お前の狭量自慢もいい加減にしてくれ。
そして自分だけで完結しないこのスレで俺ルールを撒き散らすな。
0162デフォルトの名無しさん
2009/02/03(火) 23:20:07エールをおくらせてもらうよ!!!
T.O.N!!! T.O.N!!!
0163デフォルトの名無しさん
2009/02/03(火) 23:29:43自演乙
0164デフォルトの名無しさん
2009/02/03(火) 23:32:370165デフォルトの名無しさん
2009/02/04(水) 00:00:57これは真性w
0166デフォルトの名無しさん
2009/02/04(水) 00:13:240167デフォルトの名無しさん
2009/02/04(水) 00:19:450168デフォルトの名無しさん
2009/02/04(水) 00:30:37>>156
すごい・・・粘着質です・・・
0169デフォルトの名無しさん
2009/02/04(水) 00:44:380170デフォルトの名無しさん
2009/02/04(水) 01:07:17君それに後続する人の話をちゃんと読んで突っかかってる?
俺は、キャメルとかアンダースコア区切りとか、その種のスタイルの違いは命名の本質と
関係がないから(つまりスレの趣旨に従えばどうでもいいことだから)自分の好きなスタイルで
書いただけで、別に「アンダースコアで区切る書き方をするのは無意味だから止めるべき」などとは
いってないから。
わけのわからんことで突っかからないでくれる?
こんな頭悪い奴に馬鹿呼ばわりされたくないよまったくw
まあ、言いがかりに目をつぶってあえて君の話にのっかかると、
>慣習は情報伝達コストを大幅に下げる。
これはまったく同意なんだが、件の即値を大文字でアンダースコア区切りで
表現する慣習に関して言えば、これによって伝達される情報が本当に
必要不可欠な情報かどうかは俺は大いに疑問を持ってる。
他人が書いたコードを読むとき、たいがいの場合は「それ」が即値か定数か変更可能な変数か、
なんてことはどうでもいい場合が多いからね。
システムハンガリアン的な無意味で時代遅れな偏執に過ぎないでしょ。
0171デフォルトの名無しさん
2009/02/04(水) 01:11:04加えて簡潔な単語でお願いします
0172デフォルトの名無しさん
2009/02/04(水) 02:04:47ゴミはゴミ箱に入ってろ
0173デフォルトの名無しさん
2009/02/04(水) 02:18:060174デフォルトの名無しさん
2009/02/04(水) 02:26:250175デフォルトの名無しさん
2009/02/04(水) 03:01:34TONでもなくウザい人種だなw
0176デフォルトの名無しさん
2009/02/04(水) 03:02:18で、C++でも#define HOGE 5とか書いちゃうの?
0177デフォルトの名無しさん
2009/02/04(水) 03:02:530178デフォルトの名無しさん
2009/02/04(水) 03:11:21余り虐めるなよw
Java以外の経験があるわけが無い
0179デフォルトの名無しさん
2009/02/04(水) 04:28:490180デフォルトの名無しさん
2009/02/04(水) 08:25:290181デフォルトの名無しさん
2009/02/04(水) 12:46:160182デフォルトの名無しさん
2009/02/04(水) 16:01:510183デフォルトの名無しさん
2009/02/04(水) 17:26:46このスレで最上級に偉そうな君の言語経験を教えては貰えまいか?
それぞれ実務何年で頼みます。
0184デフォルトの名無しさん
2009/02/04(水) 20:28:560185デフォルトの名無しさん
2009/02/05(木) 00:42:290186デフォルトの名無しさん
2009/02/05(木) 00:45:480187デフォルトの名無しさん
2009/02/05(木) 23:36:03ぐぐっても、2chのスレくらいいしか見つからないけど、それって面白い話題?
0188デフォルトの名無しさん
2009/02/05(木) 23:45:49どんなネタなのか俺にも分からない
0189デフォルトの名無しさん
2009/02/05(木) 23:45:540190デフォルトの名無しさん
2009/02/06(金) 00:28:13まさに今の時間 みたいな強調表現かもな
0191デフォルトの名無しさん
2009/02/06(金) 00:37:39何故かとても
あたまがわるい
それがTimeOfNow
0192デフォルトの名無しさん
2009/02/06(金) 02:54:36簡潔に表すなら、重度の中二病患者
0193デフォルトの名無しさん
2009/02/06(金) 08:03:280194デフォルトの名無しさん
2009/02/06(金) 16:18:56暫定的に、getResolvedURLとしているけど、これは相対パスから絶対URLを
作成するときに使うような名前だよね?
0195デフォルトの名無しさん
2009/02/06(金) 16:20:270196デフォルトの名無しさん
2009/02/06(金) 16:30:32ありがとん
0197デフォルトの名無しさん
2009/02/07(土) 15:44:51いわゆるフラグという言葉は、本来は2値のみを意味するときに使う言葉でしょうか。
例えば1変数のビットごとに定数を当ててオプション指定するなんて例があったとして
ビットごとに見れば(アリかナシかの)フラグだし、変数としてみれば2値ではないし
こういう場合に変数名にフラグと入れるのは変でしょうか
0198デフォルトの名無しさん
2009/02/07(土) 15:46:440199デフォルトの名無しさん
2009/02/07(土) 15:51:07ありがとうございます。
こういうビット演算によって複数のオプション指定したりする手法にあつらえ向きの名前なんてのはないんでしょうか。
0200デフォルトの名無しさん
2009/02/07(土) 15:51:320201デフォルトの名無しさん
2009/02/07(土) 16:02:280202デフォルトの名無しさん
2009/02/07(土) 16:14:48>>201
ビットフィールドはC/C++のイメージがあるのでニュアンスが違う気もします・・・
0203デフォルトの名無しさん
2009/02/07(土) 16:19:07普通は「その値の特殊な扱い方」、つまりビットマスクを使ってビットごとに
情報を格納したり取得したりする必要がある、なんてことを変数の名前に
盛り込む必要はないはずだと思う。
そんなことより、そのビットごとの値の集合であるその変数の「意味」に注目して名前をつけるべき。
hogeOptionsとかhogeMethodとかhogeModeとかhogeSettingsでいいじゃん。
0204デフォルトの名無しさん
2009/02/07(土) 16:23:16なるほど!確かにそうですね・・・
変なところにこだわっておりました。どうも。
0205デフォルトの名無しさん
2009/02/07(土) 17:56:44, ‐' ´ ``‐、 / ̄:三}
. /,. -─‐- 、. ヽ / ,.=j
_,.:_'______ヽ、 .! ./ _,ノ
`‐、{ へ '゙⌒ `!~ヽ. ! /{. /
`! し゚ ( ゚j `v‐冫 , '::::::::ヽ、/
. {.l '⌒ ゙ 6',! / :::::::::::::::/ __ そんなことよりTimeOfNowの話しようぜ!
. 〈 < ´ ̄,フ .ノー'_ , ‐'´::::::::::::::;/ (_ノ)‐-、
. ヽ.、 ` ‐", ‐´‐:ラ ':::::::::::::::: ;∠. ヽ_} ゙ヽ
,.r` "´ /:::::::::::::::::::ィ´ `ゝ !、 /
/ / :::::::::::::::: ; '´ /´\ / r'\
. i ! ::::::::::::::/ 墨 | .!::::::::/ヽ、.._!ヽ. ヽ、
{ {:::::::::::;:イ / ‖i:::::::/:::::::::::::/ \
. ヽ ヽ,.ァ‐'´ /ヽ 二 ,/`ヽ、::::::::: / ヽ
ヽ、 ,. ‐'" .ノ ,〈 > `'‐- '
> _,. ‐'´ / / `)
,ゝ _.⊥.-r┬:/
ヽ_,. -‐i"!´「L.=!┘ ヽ
< / / |
/ 、i / __ ./
0206デフォルトの名無しさん
2009/02/07(土) 19:42:420207デフォルトの名無しさん
2009/02/08(日) 06:01:57オレって…
0208デフォルトの名無しさん
2009/02/08(日) 12:51:280209デフォルトの名無しさん
2009/02/10(火) 00:03:15int xを与えられたときに、xより小さくない2の乗数を返す関数の名前はどういうのがよいでしょうか。
自分で考えたのはint up_to_pow2(int x);といった具合ですが、WEB辞書を見てみると、up to というのが
どうやら思っていたのと違う意味のようでした。
0210デフォルトの名無しさん
2009/02/10(火) 00:11:33x以下の2の乗数のうち最大のものを返すのか、x以上の2の乗数のうち最小のものを返すのか、
どっちだ?
0211デフォルトの名無しさん
2009/02/10(火) 00:12:470212デフォルトの名無しさん
2009/02/10(火) 00:13:350213デフォルトの名無しさん
2009/02/10(火) 00:14:110214デフォルトの名無しさん
2009/02/10(火) 00:15:060215デフォルトの名無しさん
2009/02/10(火) 00:19:03cの数学関数にちなんでceilにしようかとも思いましたが、
ceil_pow2, ceil_to_pow2で意図した意味を成すのか不安なのでround_up_to_pow2にします。
0216デフォルトの名無しさん
2009/02/10(火) 00:19:37画像サイズの正規化にしか使わないと決まっているものなら、>>212でいいんじゃね。
0217デフォルトの名無しさん
2009/02/10(火) 00:20:27rounding up an int to a power of two とか
出てくるからそれでいいとおもう。
0218デフォルトの名無しさん
2009/02/10(火) 01:10:25俺ならとりあえずGetMinPowerOf2()とかGetMinPow2()とかしておいて、
必要ならオプションでFloorかCeilingを指定できるオーバーロードを追加するとかすると思う。
というか、過去にそんなの作った気がする。
0219デフォルトの名無しさん
2009/02/10(火) 01:16:320220デフォルトの名無しさん
2009/02/10(火) 05:10:130221デフォルトの名無しさん
2009/02/10(火) 08:25:210222デフォルトの名無しさん
2009/02/10(火) 08:27:590223デフォルトの名無しさん
2009/02/10(火) 11:10:40265 :デフォルトの名無しさん[sage]:2007/11/22(木) 17:48:28
ある整数値を引数として与えて、その値以上の2のべき乗の数のうち、
最小のものを返す関数の名前は何が相応しいですか?
266 :デフォルトの名無しさん[sage]:2007/11/22(木) 17:52:58
least2PowerGreaterThan(int i)
267 :デフォルトの名無しさん[sage]:2007/11/22(木) 18:03:56
>>265
clp2
268 :デフォルトの名無しさん[sage]:2007/11/22(木) 18:29:21
2Power よりは Power2 の方がいい気が。
power of 2 の of を省略したもの。
昔、自分が使ったのは、CeilPower2 と FloorPower2 でそれぞれ
「x 以上の最小の2のべき」、「x 未満の最大の2のべき」にした。
>>267 も、ceiling power of 2 の略よね?
269 :デフォルトの名無しさん[sage]:2007/11/22(木) 19:02:30
>> >>267 も、ceiling power of 2 の略よね?
Exactly.
See Hacker's Delight
http://www.informit.com/content/images/0201914654/samplechapter/warrench03.pdf
270 :265[sage]:2007/11/22(木) 21:09:54
どうもありがとうございました。
CeilPowerOf2にします。
0224デフォルトの名無しさん
2009/02/11(水) 01:36:483Dモデルのボーンマトリクス等で親を継承する前のマトリクスをLocalMatrix、
継承後のマトリクスをGlobalMatrixと表していますが、
頂点カラー等はライトが当たる前の元の色をLocalColor、ライトの色を適応した
最終的なカラーを保持するメンバ名をGlobalColorと言うものなんでしょうか?
より適切な名前があるような気がしてなりません。
どなたかより良い名前があればご指摘お願いします。
0225224
2009/02/11(水) 01:44:12上記の、元データLocalに対して親を継承したものをGlobalとつけていますが、
マトリクス以外の親を継承したデータの名前に対してGlobal〜とつけるのは適切でしょうか?
継承したデータ、の内容は、色加算等の描画フラグ、ソートの補正値等が含まれます。
0226デフォルトの名無しさん
2009/02/11(水) 20:57:36るーとまとりくす(ry
0227デフォルトの名無しさん
2009/02/11(水) 23:01:410228デフォルトの名無しさん
2009/02/12(木) 03:59:03正直理解できてない…。
もしかしたら言葉にしづらい感覚的なことなのかもしれないが、
そこんところ、教えてもらえないかな
0229デフォルトの名無しさん
2009/02/12(木) 04:30:270230デフォルトの名無しさん
2009/02/12(木) 18:03:17「入力必須であることを設定、取得するプロバティ名」と、
「入力必須なのに入力されていない事を示すプロパティ名」に悩んでいるんだが、
何かいいアイデアないかな?
例えば、Requireと、IsRequireとか付けてみたんだが、
これじゃどっちがどっちだかわからないので、他のを考えてるんだけど思いつかない。
0231デフォルトの名無しさん
2009/02/12(木) 18:17:56Missing
0232デフォルトの名無しさん
2009/02/12(木) 18:28:07IsRequired
IsRequiredButNotFilledIn
0233デフォルトの名無しさん
2009/02/12(木) 18:33:04IsMissing
0234デフォルトの名無しさん
2009/02/12(木) 18:39:25IsRequiredとIsFilledがわかりやすそうなので、これにしました。
ありがとうございました
0235デフォルトの名無しさん
2009/02/12(木) 18:59:440236デフォルトの名無しさん
2009/02/12(木) 19:14:000237デフォルトの名無しさん
2009/02/12(木) 19:21:580238デフォルトの名無しさん
2009/02/12(木) 20:53:05そのクラスは、文字列か何かの別のプロパティを一つだけ持っていて、
そのプロパティが必須かどうかを表すプロパティ、って意味なのか?
だとしたらなんだか無駄な気がするんだけどな。
「それ」が必須かどうかを表現するためだけに、ただの文字列をラップするのか。
「それ」が必須かどうかなんてことは、そのデータを持つクラスが知ってればいいことだと思うけど。
0239デフォルトの名無しさん
2009/02/12(木) 21:03:220240デフォルトの名無しさん
2009/02/12(木) 21:06:16ま、開発経験の無いでっかちド馬鹿に一つだけ教えてやるけど
よくある入力フォームでの話だろ
お前は何の経験も無いから知らないだろうけど
そんな理想論掲げるだけ無駄だし無意味だし金にもならないし社会活動として破綻してる
0241デフォルトの名無しさん
2009/02/12(木) 21:34:51それはそうなんだが、俺(>>238)の言ってる意味わかってる?
普通は>>230みたいな変な実装しないと思うよ。
これじゃたわざわざ述する手間を増やして可読性を落としてるだけじゃん。
0242デフォルトの名無しさん
2009/02/12(木) 21:38:070243デフォルトの名無しさん
2009/02/12(木) 21:46:090244デフォルトの名無しさん
2009/02/12(木) 21:46:470245デフォルトの名無しさん
2009/02/12(木) 21:48:31例えばTextBoxの派生クラスを作るのに、
Require属性がなかったら、いちいち項目ごとに異なる派生クラスを作って、
いちいち入力必須かどうか記述しなくちゃいけないじゃん。
そのほうが手間だし可読性は最悪だろ
Require属性があればプロパティを設定するだけですべてに応用ができる。
0246デフォルトの名無しさん
2009/02/12(木) 21:51:160247デフォルトの名無しさん
2009/02/12(木) 21:55:44バリデートもそれぞれ別にやらなきゃいけないしな
User.IsMissing
Name.IsMissing
MailAddress.IsMissing
・・・・・
Address.IsMissing
とか、いちいち全部チェックするのかしら。
手間だし可読性も最悪。
0248デフォルトの名無しさん
2009/02/12(木) 22:01:03その入力欄が必須かどうかを表す値をGUI部品に持たせるって
普通は変な設計だと思うけどなw
もちろん必須かどうかをユーザーに対して表示する機能を持たせるため、
というような事情はありうるだろうけど。
それ以前に、それって>>230の話と違うことない?
>>230はGUI部品の話をしてたんだろうか?
0249デフォルトの名無しさん
2009/02/12(木) 22:01:56ごめん、変じゃない実装って何?
>>238だけじゃいまいち分からん。
0250デフォルトの名無しさん
2009/02/12(木) 22:06:03GUIで入力しないで何で入力するんだ?念力?
ユーザーオブジェクトの必須フィールドについてとかなら
全然違う書き方で質問してくると思うが
0251デフォルトの名無しさん
2009/02/12(木) 22:08:25インターフェースでIsRequire属性を、それぞれのクラスに継承させ、
ファクトリークラスからインスタンスを生成する。
ファクトリークラスでは
foreach(IInterface object in ObjectList)
boolValue = boolValue & Object.IsMissing;
これだけですべての項目のバリデートができる
user、name、mailAddress、birthDay、age等すべてでValidateするのとどちらが可読性が上かい?
そして、こんな設計は変なのかい?
なんか書いていてむなしいぜ。
0252デフォルトの名無しさん
2009/02/12(木) 22:17:29例えば、Customerクラスに氏を表すFamilyNameというメンバがあるとする。
そのFamilyNameが「入力必須」であることを表現するためだけに、
IsMissingをプロパティに持つ新たな型を導入するのは無駄だということ。
素直にFamilyNameは単純に文字列で持てばいい。
それが必須かどうかの情報はCustomerが持っている方が直感的だ。
0253デフォルトの名無しさん
2009/02/12(木) 22:17:39だからバリデータを自分で実装するからだろ
俺(>>242)の言ってる意味わかってる?
0254デフォルトの名無しさん
2009/02/12(木) 22:21:38そりゃ無駄だわw
そして、当たり前の事だわw
最後に、ただのお前の勘違いだわw
0255デフォルトの名無しさん
2009/02/12(木) 22:24:43逆
その理屈だと、どんな属性もそれを抱えるクラスが持てばいいことになる。
Formに貼り付けたUI部品のVisibleをすべてFormで管理するなんて煩雑過ぎる
そのオブジェクトの属性は、そのオブジェクトが持つのが常識
かつ>>251の書いているとおりインターフェースを利用した場合のほうが、
拡張すべき実装(例えば誰が入力したか)がでた場合に簡単に拡張できる。
インターフェースにUserを追加するだけだからな。
0256デフォルトの名無しさん
2009/02/12(木) 22:33:57そうでもないよ。
例えばnullを許容するかどうかの場合を考えるとわかりやすいよ。
これは空文字とは別にnullなんだという情報をCustomerクラスに持つなんてしないでしょ。
その属性は、そのオブジェクトに持たせるのが常識。
0257デフォルトの名無しさん
2009/02/12(木) 22:43:20今回のお題とは全く別件だけどさ
0258デフォルトの名無しさん
2009/02/12(木) 23:08:54>その理屈だと、どんな属性もそれを抱えるクラスが持てばいいことになる。
いや、そうは言ってないよ。
「そのオブジェクトの属性は、そのオブジェクトが持つのが常識」には完全に同意するけど、
FamilyNameが入力必須かどうかは普通に考えれば「Customerクラスの都合」であって
FamilyNameの属性ではない。
ただ、>>251の言うことが正しい(少なくとも一理ある)のは理解した。
>>251の言う利点は正直あまり同意できないけど、確かに、例えば
ある値に「不正な入力がされている」ことをUIに反映するようなことを考えるときには
プロパティから取得したデータ自身が「自分が不正な値かどうか」を知っている方が便利だ。
言い訳がましいけど、俺は普段(「入力」ボタンが押されたときまとめて、ではなく)
個別のコントロールに入力された時点でプロパティの値を設定して、プロパティのセッタの中で
バリデーションを行って結果はイベントで通知してUIに反映する、というコードを書く場合が多いので
>>251の発想はなかった。
「変」とか言ったのが気に障ったらそれは謝る。
0259デフォルトの名無しさん
2009/02/12(木) 23:13:20まあ、
>命名規則や設計の善し悪しについて議論するのは基本的に禁止。
なんで、ほどほどに。
0260デフォルトの名無しさん
2009/02/13(金) 00:10:01Webアプリじゃそんな贅沢な事出来ないしな
0261デフォルトの名無しさん
2009/02/13(金) 00:12:16今回は出なくていいよ。
正直これはどうでもいい。
0262デフォルトの名無しさん
2009/02/13(金) 00:15:26それだとコントロールが追加されるごとに、
・新たなプロパティ値を設定する部分
・バリデーションをする部分
・イベント通知をする部分
・そのコントロールが未入力を許容するかどうか
という項目をCustomerクラスに追加していかなきゃいけなくなるでしょ
ファクトリークラスとインターフェースを利用すれば、
インスタンスを生成するだけで、それが自動的にできる。
そのためには、それぞれのコントロールにRequired属性が必要になるってこと。
>>259
これで最後にするよ。
0263デフォルトの名無しさん
2009/02/13(金) 00:26:490264デフォルトの名無しさん
2009/02/13(金) 01:20:04>インスタンスを生成するだけで、それが自動的にできる。
それはちょっとミスリードな言い方だな。
単にそれらの処理が書かれる場所がデータを所有するクラスからデータ自身のクラスに
変わるだけ、でしょ?
もちろん、>>251のコードのように列挙してチェックする必要がある項目が
多数になる可能性があるのなら、(1)データ自身に、(2)同じインターフェイスとして実装する
ことによるポリモーフィズムの利点が利いてくるのは確か。
でも>>230のような用途でそんな可能性があるのかなあ。
やっぱり正直、一見エレガントに見えて「策士策に溺れる」的に思える。
>そのためには、それぞれのコントロールにRequired属性が必要になるってこと。
ごめんこれは何を言っているのかよくわからん。
最後に、確かにこれはスレ違いと言われても仕方がない話題だねすまんかった。
0265デフォルトの名無しさん
2009/02/13(金) 01:21:52解決済みの件を無駄だの変だのと蒸し返した挙句、
今日一番の長文が殆ど全部言い訳で占められてるってどうよ?
本当に性格悪いな、あんた。
0266デフォルトの名無しさん
2009/02/13(金) 01:29:07何で質問者がいるうちに言わないの?
何で質問者が居なくなった頃を見計らって「ぼくのかんがえたしつもんしゃがいいたかったこと」を語りだすの?
何で質問者がそこまで間抜けな質問をしていると仮定するの?
0267デフォルトの名無しさん
2009/02/13(金) 01:47:57>単にそれらの処理が書かれる場所がデータを所有するクラスからデータ自身のクラスに変わるだけ、でしょ?
「単に」ではなく、それが最も重要な利点。
Validateする内容が文字列だけだと勝手に決めてないか?
stringだけなら、配列にいれた文字をstring == ""ですべてチェックできるが、
intやstringが混在する場合だと、その都度、異なるメソッドに割り振ってチェックしなきゃいけないから効率が悪い。
データ自身が処理を持っていれば、インターフェースで指定したValidateの返値を得るだけでチェックできる。
そしてユーザ指定型を追加して拡張したい場合でも、インターフェースさえ設定すれば、
所有クラスは何も変えずに使い続けることができる。
>でも>>230のような用途でそんな可能性があるのかなあ。
十分にある。
・Webアプリのコントロール→ボタン押下時に一斉にチェックする必要がある
・入力をチェックする再利用可能なValidationクラスの設計→メアド、数値など、
入力値をチェックするコントロールを再利用可能なクラスとして設計し、一斉にチェックする場合
・データベースへInsertするための汎用クラスの設計→DateTime値、int値、nullかどうかなど、
それぞれの入力値を一斉にチェックする場合
>ごめんこれは何を言っているのかよくわからん。
これを理解できないのに、なんでインターフェースを語れるんだ?
0268デフォルトの名無しさん
2009/02/13(金) 02:09:32ちょっと涙が出てきた。
0269デフォルトの名無しさん
2009/02/13(金) 02:55:17>それはちょっとミスリードな言い方だな。
いや自動にできる
>単にそれらの処理が書かれる場所がデータを所有するクラスからデータ自身のクラスに
>変わるだけ、でしょ?
データ自身のクラスに、そんな処理を書くわけないだろ
処理はデータ自身の基底クラスに記述
データ自身はそれを継承しているだけ
だから自動でできる
0270デフォルトの名無しさん
2009/02/13(金) 02:58:570271デフォルトの名無しさん
2009/02/13(金) 03:01:59また2週間くらい
0272デフォルトの名無しさん
2009/02/13(金) 03:10:320273デフォルトの名無しさん
2009/02/13(金) 03:34:590274デフォルトの名無しさん
2009/02/13(金) 05:23:450275TimeOfNow ◆g72UvIyAhI
2009/02/13(金) 05:41:070276デフォルトの名無しさん
2009/02/13(金) 05:42:01フルボッコされると自演乙とか言っちゃう人だから、まぁ無理でしょ
0277デフォルトの名無しさん
2009/02/13(金) 05:44:00なんて言う訳が無い
0278デフォルトの名無しさん
2009/02/13(金) 09:00:15「普通」はそうとしか取れないよな
0279デフォルトの名無しさん
2009/02/13(金) 13:48:04startNendoOfYearとかベタなのしかおもいつかんw
0280279
2009/02/13(金) 13:49:40startMonthOfNendoとか、endMonthOfNendoとかしか思い浮かばない・・
0281デフォルトの名無しさん
2009/02/13(金) 14:02:28それでいいじゃん。何か不満なの?
0282デフォルトの名無しさん
2009/02/13(金) 16:04:55Nendo -> BusinessYear (事業年度)
Nendo -> AcademicYear, SchoolYear (学校年度)
0283デフォルトの名無しさん
2009/02/13(金) 18:59:25ToN!
0284デフォルトの名無しさん
2009/02/13(金) 20:13:55いや、「<コントロールに>Required属性が必要」というのはやはり意味不明に聞こえる。
コントロール、に?
前半の話は理念的に美しいのは認めるが、現実解としてはやはり間違いだと思う。
>>230のような話は、ベタにやった方がずっと早くわかりやすく書ける。
>>269
それ自分で言ってることの意味がわかって言ってるの?
0285デフォルトの名無しさん
2009/02/13(金) 20:22:21スレ違いの話題いいかげんにしろや池沼
0286デフォルトの名無しさん
2009/02/13(金) 20:25:25>前半の話は理念的に美しいのは認めるが、現実解としてはやはり間違いだと思う。
なら汚いスパゲッティコードしか書けてないんだろ
object指向ならあらゆる処理を行うコードが、それぞれまとまっているわけだが?
int.ToString();
string.Substring(0, 0);
datetime.AddDays(0);
そしてintなどには未入力であることを示すプロパティが無いから、
自前で実装しておきたい需要は普通にあるだろ。
それこそ機能を作っておいて>>269の言うとおり継承するだけでいいんだから
そのほうが簡単で確実だし可読性も良い。
お前の言う方法だと、いちいちその都度、Customerクラスを専用に作り直さなければ
ならないので遅いし、クラスによって実装が異なるから分かりにくく可動性に欠ける。
0287デフォルトの名無しさん
2009/02/13(金) 20:44:50いきなりお前呼ばわり?
まあいいけど、既に書いたとおり、>>230のような情報は本来「データを所有しているクラス」
が知っているべきことであって、データそのものに属する情報じゃない。
OOP云々いうのなら、こういう「意味論的なおかしさ」にも敏感になってよ。
それだけでなく、年齢(普通ただの数値であることを期待するだろう)が、「必須項目かどうか」
を年齢自体に持たせるために、本来ただの数値で済むものに専用型を導入するわけ?
int age = Customer.Age.Value;
みたいなまどろっこしいことを強制されるわけ?
策に溺れてるじゃん。
それと、その継承の使い方はおかしいと思うよ。
継承って「見たくないコード」を隠すために使うものなの?
違うと思うけど。
0288デフォルトの名無しさん
2009/02/13(金) 20:47:41暗黙の型変換ができればいい。
0289デフォルトの名無しさん
2009/02/14(土) 01:22:06継承の使われ方は結果論であって、
親クラスがその責務をもつのが妥当かって話で
その観点からは個人的にはアリだと思うけど。
まどろっこしいかどうかは言語によっても変わるだろうし。
でもお二人ともスレ違いだしそろそろやめたら?
0290デフォルトの名無しさん
2009/02/14(土) 02:04:47そこで暗黙の型変換使わないでどうするの?
もう少し知識を揃えようね。
それにオブジェクト指向の根本が見たくないものを隠すからなってるだろが。
0291デフォルトの名無しさん
2009/02/14(土) 02:12:270292デフォルトの名無しさん
2009/02/14(土) 02:18:46それを「少なくとも一理ある」だの「正直あまり同意できない」だの、どんだけ言い訳まみれの人生なんですかw
0293デフォルトの名無しさん
2009/02/14(土) 02:44:55>命名規則や設計の善し悪しについて議論するのは基本的に禁止。
0294デフォルトの名無しさん
2009/02/14(土) 06:12:100295デフォルトの名無しさん
2009/02/14(土) 11:35:18変数名はいまだに悩む
0296デフォルトの名無しさん
2009/02/14(土) 19:23:010297デフォルトの名無しさん
2009/02/14(土) 21:41:340298デフォルトの名無しさん
2009/02/14(土) 21:45:21>OOP云々いうのなら、こういう「意味論的なおかしさ」にも敏感になってよ。
なるほど組み込み型の変数以外は、どんなクラスであれ、データそのものでなく、
データを所有するクラスだから、未入力属性が存在することは認めるということね。
つまり、バリデーションを受け持つクラスや、GUI部品が
未入力であることを示すプロパティを持ってる事には納得したってことだな。
じゃなんで、>>238のような質問をするんだ?
>>230はどう考えても、お前の言うところのデータを所有しているクラスのプロパティだろ。
>int age = Customer.Age.Value; みたいなまどろっこしいことを強制されるわけ?
暗黙の型変換、拡張メソッドがあるじゃん
>継承って「見たくないコード」を隠すために使うものなの?
すべてではないが、一つの機能だろ。
継承とカプセル化が無縁のものなら、なんでprivateとprotectedの違いがそもそもあるんだ?
0299デフォルトの名無しさん
2009/02/14(土) 22:38:32だからいきなり人をお前呼ばわりするなって。
最低限の礼儀も弁えない糞ガキなの?(まあ、やってることは疑念の余地なくそう。)
悪いけど前半は何を言ってるのかさっぱり理解できん。
最後の三行について言えば、>>269,>>286が言っているような目的、
つまり、例えばEMailAddrクラスがあるとして、そのクラスの中に直接Validateメソッドを
書くことを避けるためだけに無理に(つまり何の「汎化」にもなってない!)
ベースクラスEMailAddrBaseクラスを作る、なんていう継承の使い方を良しとする
まともなプログラマって見たことないよ。
それって、例えばCで、「関数の行数が長すぎるからもっと短くしろ」と叱られた
馬鹿な新米プログラマが、
int hogeFunc(int x, int y)
{
#include "hogeFuncの中身.h"
}
とやってるのと何が違うの?
ついでに言えば、こういう愚行を「カプセル化」と呼ぶ人間も見たことない。
(まあこれは普通そんな頭の悪いことはしないから当たり前だけど。)
0300デフォルトの名無しさん
2009/02/14(土) 22:57:460301デフォルトの名無しさん
2009/02/14(土) 22:58:360302デフォルトの名無しさん
2009/02/14(土) 23:04:150303デフォルトの名無しさん
2009/02/14(土) 23:09:47お前らもう最低だな。早く死ねや
0304デフォルトの名無しさん
2009/02/14(土) 23:34:550305デフォルトの名無しさん
2009/02/15(日) 02:37:36何そのEMailAddrBaseってw
ダサすぎw
0306デフォルトの名無しさん
2009/02/15(日) 02:43:120307デフォルトの名無しさん
2009/02/15(日) 02:45:370308デフォルトの名無しさん
2009/02/15(日) 02:51:28なんでEMailAddrBaseやらFirstNameBaseやらPostalCodeBaseまでつくらにゃならんの?
0309デフォルトの名無しさん
2009/02/15(日) 03:09:49糞ガキ呼ばわりも十分に無礼っすよ
無礼者同士、仲良くしたらいいじゃないっすか
0310デフォルトの名無しさん
2009/02/15(日) 10:50:130311デフォルトの名無しさん
2009/02/15(日) 15:37:350312デフォルトの名無しさん
2009/02/15(日) 19:54:420313デフォルトの名無しさん
2009/02/15(日) 21:40:080314デフォルトの名無しさん
2009/02/15(日) 21:45:570315デフォルトの名無しさん
2009/02/15(日) 21:54:14もういっこピリオドを付けてT.O.N.にする
0316デフォルトの名無しさん
2009/02/16(月) 00:22:31>クラスの中に直接Validateメソッドを書くことを避けるためだけに無理にベースクラスEMailAddrBaseクラスを作る
お前バカだろ。電子メールアドレスの基底クラスを作って、それを派生させるのはメアド入力だけかよw
個々のオブジェクトに普遍、共通な機能をクラスに記述し、それを継承できるとこにobject指向の意味があるんだよ。
例えばメアドでも住所でも、バリデートが必要なデータは、すべて使用者が入力するデータなんだから、
入力値とIsMissiongプロパティを所有するValidateStringとか言う自作クラスを作って、それを継承するだけだろ。
ついでに入力値を設やりとりするプロパティとか、文字数とか、nullかどうかをチェックする機能も
基底クラスに記述すればいいわけだ。
>(つまり何の「汎化」にもなってない!)
お前の脳内で汎化してないだけだろ。
EMailAddressでも、ZipCodeでも、Addressでも、FaxNumberでも、
すべて未入力を許容する可能性があるんだからValidateStringを継承すればいいだけ。
いちいち未入力であるかどうかを個々に記述してたらばからしいだろ。
>こういう愚行を「カプセル化」と呼ぶ人間も見たことない。
お前、継承の機能を全然理解してないだろ。
customerクラスが、未入力を許可するかどうかを所持していたら、
項目が増えるごとにメンバを増やさなければいけないから、
入力するフォームが増えるだけ異なる別個のクラスができて非効率的だろ。
データが所有クラスが、自分自身に未入力を許容するかどうかを持っていれば
Customerクラスを改変せずに利用できるから非常に便利。
0317デフォルトの名無しさん
2009/02/16(月) 00:44:03もう面倒だから俺が設計してやんよ
public class MyString //入力関連の基底クラス
private string mData = "";
private bool mIsRequire = false;
public string Data //入力データを格納するプロパティ
public bool IsRequire //入力必須かどうか
public bool IsMissing //入力必須であるのに入力がない
public interface ICheck
public virtual bool IsCheck() //入力データをチェックするメソッド
public class MailAddress : MyString, ICheck //メアドチェック
public bool IsCheck()
return IsMissing && IsMailAddress
public bool IsMailAddress //メアドかどうか
public class PostalCode : MyString, ICheck //メアドチェック
public bool IsCheck()
return IsMissing && IsPostalCode
public bool IsPostalCode //郵便番号かどうか
public class Tel : MyString, ICheck //電話番号チェック
public bool IsCheck()
return IsMissing && IsTel;
public bool IsTel //電話番号かどうか
汎用化できるじゃん。しかも継承させたほうがすっきりして可読性が良い。
0318デフォルトの名無しさん
2009/02/16(月) 00:46:53ここでもいつも言ってることだが、人が言ったことに反論してもらえるかな?
人が言ってもいない、ただの君自身の被害妄想的な妄想に対して一生懸命反論して
何か意味あるの?
いつも思うんだが、こういう人間ってどういう思考回路してんだろ意味がわからない。
0319デフォルトの名無しさん
2009/02/16(月) 01:24:14一応反論(と言っていいかわからんが…)しとくけど、俺が使った言葉は「汎化」ね。
>>269,>>286が言っているような継承の使い方は、なんの汎化にもなってない愚行だ、
と言ったんだよ俺は。
しかし、君に言ってもしょうがないけど>>269がどういう意味で自動って言ってるのか
さっぱり意味がわからんな。
この人継承って魔法か何かとでも思ってるのかしらん。
まあIsRequiredのようにメンバ変数の値を返すだけプロパティやメソッドなら
コンストラクタでメンバ変数に適切な値を入れるとかで見かけ上「自動」にできるけど
(でも普通はそんなことせず、素直に派生クラスでオーバライドする作りにした方が早いよな)
Validateのようなメソッドがどう「自動」にできるのか聞いてみたいもんだ。
コンパイラの中の小人さんが適当にValidateの中身を書いてくれるのかw
0320デフォルトの名無しさん
2009/02/16(月) 01:47:041番目のToNがお気に入りです
0321デフォルトの名無しさん
2009/02/16(月) 01:49:25意味論的におかしいことは既に書いたけど、そのことの帰結として、
例えば同じ型のデータが2つ以上必要で、それぞれ入力必須かどうかが
違ってたらどうするの?
もちろん、例えば入力必須かどうかで別の型にするとか、いろいろ技巧的に解決法があろうとは
思うけど、それって本当に直感的と言える?
むしろそんな技巧を凝らさなければならなくなるのは、最初の考え方に無理があるからじゃないの?
もちろん物事何でもトレードオフだから、多少意味的におかしくてもコードが簡潔になるとか、
それ以上のメリットがあれば良いとは思うんだけど、>>251が提案しているような方法は
ある種エレガントではあっても冗長なだけにしかならんよ。
まるで庭の焚き火用の穴を掘るのにユンボ使ってるようだ。
0322デフォルトの名無しさん
2009/02/16(月) 01:59:240323デフォルトの名無しさん
2009/02/16(月) 04:19:310324デフォルトの名無しさん
2009/02/16(月) 05:23:070325デフォルトの名無しさん
2009/02/17(火) 01:22:010326デフォルトの名無しさん
2009/02/17(火) 01:37:10「紛らわしい事については認めるが、スレ違いでは無い」からです。
「スレ違いな話題だと勘違いする馬鹿」に対して「お気の毒に」と言っているのが>>264です。
これを「TimeOfNowメソッド」と呼びます。
0327デフォルトの名無しさん
2009/02/17(火) 01:50:08>>>269,>>286が言っているような継承の使い方は、なんの汎化にもなってない愚行だ、と言ったんだよ俺は。
>>317に書いてるじゃん
>しかし、君に言ってもしょうがないけど>>269がどういう意味で自動って言ってるのかさっぱり意味がわからんな。
MailAddress mailAddress = Factory.CreateMailAddress;
PostalCode postalCode = Factory.CreatePostalCode;
Tel tel = Factory.CreateTel;
foreach (ICheck object in Factory.ObjectList)
icCheck = isCheck && object.IsCheck;
いろんな手法はあるが、わかる安くかけば、こんなふうに自動でできたよ
>Validateのようなメソッドがどう「自動」にできるのか聞いてみたいもんだ。
>>317に書いてるじゃん
0328デフォルトの名無しさん
2009/02/17(火) 01:51:34>>>230がいうような情報をデータ自身に持たせることが意味論的におかしい
おかしくないよ 例 JAVAのString.isEmpty()
>例えば同じ型のデータが2つ以上必要で、それぞれ入力必須かどうかが違ってたらどうするの?
その型を格納するクラスが二つになるだけだよ。
メールアドレスを格納するクラス
MailAddress mailAddress1 = new MailAddress();
MailAddress mailAddress2 = new MailAddress();
とするだけだよ。参照渡しと値渡し理解してる?
>例えば入力必須かどうかで別の型にするとか、いろいろ技巧的に解決法があろうとは
>思うけど、それって本当に直感的と言える?
オブジェクトにそのプロパティがあるほうが直感的だよ。
どんな入力内容にも、入力必須が入力必須でないかの二つしかないよ。
入力必須でなければ、入力必須をfalseにして普通に使えばいいだけだよ。
一般化できる昨日をスーパークラスに記述するobjectの仕組み理解してる?
0329デフォルトの名無しさん
2009/02/17(火) 02:02:00>あと、一つ思ったんだが、>>230がいうような情報をデータ自身に持たせることが
>意味論的におかしいことは既に書いたけど、そのことの帰結として、
>例えば同じ型のデータが2つ以上必要で、それぞれ入力必須かどうかが
>違ってたらどうするの?
異なるインスタンスを生成するだけじゃねーか
なにいってんだ?
0330デフォルトの名無しさん
2009/02/17(火) 02:12:45お前も人の言ったことに反論してねーじゃねーかw
0331デフォルトの名無しさん
2009/02/17(火) 02:16:45ToN入ってたのかw
0332デフォルトの名無しさん
2009/02/17(火) 02:27:10>>328
彼はそれだけじゃ理解できないからもう少し書いてあげないと
MailAddress mailAddress1 = new MailAddress();
MailAddress mailAddress2 = new MailAddress();
mailAddress1.IsRequire = true; //mailAddress1.IsMissing ⇒ true & mailAddress1.IsCheck ⇒ false
mailAddress2.IsRequire = false; //mailAddress2.IsMissing ⇒ false & mailAddress2.IsCheck ⇒ true
mailAddress1 = "hoge1"; //mailAddress1.IsMissing ⇒ false & mailAddress1.IsCheck ⇒ false
mailAddress2 = "hoge2"; //mailAddress2.IsMissing ⇒ false & mailAddress2.IsCheck ⇒ false
mailAddress1 = "[email protected]"; //mailAddress1.IsMissing ⇒ false & mailAddress1.IsCheck ⇒ true
mailAddress2 = "[email protected]"; //mailAddress2.IsMissing ⇒ false & mailAddress2.IsCheck ⇒ true
ほんと、書いててむなしくなるな・・・
0333デフォルトの名無しさん
2009/02/17(火) 02:31:49>>318はどこかの誰かのアンカミスで、ToNに宛てて言ってるんだろ?
そうとしか思えない。いや、それ以外ありえない。
0334デフォルトの名無しさん
2009/02/17(火) 02:52:12、ミ川川川彡 ,ィr彡'";;;;;;;;;;;;;;;
ミ 彡 ,.ィi彡',.=从i、;;;;;;;;;;;;
三 ギ そ 三 ,ィ/イ,r'" .i!li,il i、ミ',:;;;;
三. ャ れ 三 ,. -‐==- 、, /!li/'/ l'' l', ',ヾ,ヽ;
三 グ は 三 ,,__-=ニ三三ニヾヽl!/,_ ,_i 、,,.ィ'=-、_ヾヾ
三 で 三,. ‐ニ三=,==‐ ''' `‐゛j,ェツ''''ー=5r‐ォ、, ヽ
三. 言 ひ 三 .,,__/ . ,' ン′  ̄
三 っ ょ 三 / i l,
三. て っ 三 ノ ..::.:... ,_ i ! `´' J
三 る と 三 iェァメ`'7rェ、,ー' i }エ=、
三 の し 三 ノ "'  ̄ ! '';;;;;;;
三 か て 三. iヽ,_ン J l
三 !? 三 !し=、 ヽ i ,.
彡 ミ ! "'' `'′ ヽ、,,__,,..,_ィ,..r,',",
彡川川川ミ. l _, , | ` ー、≡=,ン _,,,
ヽ、 _,,,,,ィニ三"'" ,,.'ヘ rー‐ ''''''"
`, i'''ニ'" ,. -‐'" `/
ヽ ! i´ /
ノレ'ー'! / O
0335デフォルトの名無しさん
2009/02/17(火) 02:54:57その結果、入力内容が正しい(IsValidate ⇒ true)かどうかってのも必要かも
入力必須でなく(IsRequire ⇒ false)、未入力の場合、メアド判定はfalseでも入力結果は正しいからね。
まとめるとこんなんになるのかな?
mailAddress1.IsRequire = true; //mailAddress1.IsMissing ⇒ true & mailAddress1.IsCheck ⇒ false & mailAddress.IsValidate ⇒ false
mailAddress2.IsRequire = false; //mailAddress2.IsMissing ⇒ false & mailAddress2.IsCheck ⇒ true & mailAddress.IsValidate ⇒ true
mailAddress1 = "hoge1"; //mailAddress1.IsMissing ⇒ false & mailAddress1.IsCheck ⇒ false & mailAddress.IsValidate ⇒ false
mailAddress2 = "hoge2"; //mailAddress2.IsMissing ⇒ false & mailAddress2.IsCheck ⇒ false & mailAddress.IsValidate ⇒ false
mailAddress1 = "[email protected]"; //mailAddress1.IsMissing ⇒ false & mailAddress1.IsCheck ⇒ true & mailAddress.IsValidate ⇒ true
mailAddress2 = "[email protected]"; //mailAddress2.IsMissing ⇒ false & mailAddress2.IsCheck ⇒ true & mailAddress.IsValidate ⇒ true
つか、そう考えると入力判定にIsRequire属性必須だよな
空文字はメアドチェックにははじかれるけど、入力必須でなければバリデート結果はtrueだからな。
まさに書いててむなしくなるな・・・
0336デフォルトの名無しさん
2009/02/17(火) 03:49:58IsCheck==IsValidate
俺ならIsValidプロパティかValidateメソッドで実装するな
0337デフォルトの名無しさん
2009/02/17(火) 06:16:46ワザとやってるんだろうか
0338デフォルトの名無しさん
2009/02/17(火) 06:23:060339デフォルトの名無しさん
2009/02/17(火) 09:43:08IsValid
0340デフォルトの名無しさん
2009/02/17(火) 09:58:200341デフォルトの名無しさん
2009/02/17(火) 10:11:520342デフォルトの名無しさん
2009/02/17(火) 10:17:460343デフォルトの名無しさん
2009/02/17(火) 10:21:41おぶじぇくとしこういちねんせいのToNに虚しさを感じながらも無駄な説明を繰り返すスレ
0344デフォルトの名無しさん
2009/02/17(火) 10:29:510345デフォルトの名無しさん
2009/02/17(火) 17:28:100346デフォルトの名無しさん
2009/02/17(火) 19:33:32さすがに頭おかしくないか?
>>317とかそれのどこが「自動」なんだ。
>>264で指摘しているように、ただ判定処理が書かれるコードの場所が変わってるだけだろ。
>>328,>>332>>335
君ら(複数人だよね?)それ本気で書いてるのか?
こんなこと一々説明しなくても当然分かるだろうと思って書かなかったが、
IsRequiredはゲッタのみかつ定数を返すようにしないとマズいだろう。
IsRequiredをインスタンスメンバとして実装しちまったら
外からMailAddressをセットできなくなるだろ。
言ってる意味分かる?
なんていうか、まともなコード書いたことない奴が本読んだだけで
物を言ってるのがバレバレだなw
0347デフォルトの名無しさん
2009/02/17(火) 19:44:20>>>264で指摘しているように、ただ判定処理が書かれるコードの場所が変わってるだけだろ。
それがobject指向の目的だよ。
データと判定処理をクラスが持っていたら、クラスの所有するデータが増えるたびに、
そのデータの判定処理をするプログラムを書かなければいけないよ。
データそのものが判定処理を持っていれば、データを持つ所有クラスは何も改変せず、
自動的に処理されるよ。
>IsRequiredはゲッタのみかつ定数を返すようにしないとマズいだろう。
別にまずくないよ。設定するのが嫌だったら、初期値でfalseにしといて使いまわせばいいだけだよ。
>IsRequiredをインスタンスメンバとして実装しちまったら
>外からMailAddressをセットできなくなるだろ。
MilAddressは、IsRequiredを所有するクラスなんだから、セットも糞もないよ。
何が困るのか実際のコードで示してくれよ。
0348デフォルトの名無しさん
2009/02/17(火) 19:54:53ではCustomer.MailAddress1のIsRequiredはtrueであって欲しいとして、
Customerの外のクラスから
MailAddress ma = new MailAddress();
ma.IsRequired = true;
Customer.MailAddress = ma;
とかされた場合、どうするの?
0349デフォルトの名無しさん
2009/02/17(火) 19:55:40ma.IsRequired = false;
に訂正
0350デフォルトの名無しさん
2009/02/17(火) 19:57:140351デフォルトの名無しさん
2009/02/17(火) 20:01:530352デフォルトの名無しさん
2009/02/17(火) 20:05:16trueであって欲しいのに、
ma.IsRequired = true;
をし、さらに
Customer.MailAddress = ma;
をすることが間違い
じゃあ、
Form.TextBox1のVisibleはtrueであって欲しいとして、
Formの外のクラスから
TextBox tb = new TextBox();
tb.Visible = false;
Form.TextBox = tb;
とかされる可能性は問題ないの?
むしろ、そんな設定をするほうが悪いんじゃないの?
0353デフォルトの名無しさん
2009/02/17(火) 20:07:53IsRequiredをtrueなりfalseと設定したいから、そう記述するんだろ?
お前はいちいちプロパティが改変されることを予見してすべてプログラムするのか?
0354デフォルトの名無しさん
2009/02/17(火) 20:09:51おいおい何を言ってるんだよトチ狂ったかw
そもそも外(UI)から操作される値の話をしてるのに、
外から操作してはダメな値を操作するのがおかしい、ってどういう意味だよ。
もう一度>>230から読んで話の文脈をちゃんと理解して何かいってよ。
0355デフォルトの名無しさん
2009/02/17(火) 20:12:13それこそOOPを理解してる?
普通に考えれば、IsRequiredは外から操作されたくない値だろう。
>>230の意図はそうじゃないよ、って言いたいの?
じゃあまあ>>230の意図はおくとして、IsRequiredが外から操作されたくない
値だったら(普通にありふれたシナリオだと思うが)どうするの・
0356デフォルトの名無しさん
2009/02/17(火) 20:15:42おいおい、お前頭がおかしいんじゃないか?
なら、絶対に表示しなければならないGUI部品のTextBoxがあったとして、
そのTextBox.Visibleを絶対に変更されないような仕組みをわざわざ作る必要なんてないだろ?
使う本人が分かればいいんだから。IsRequiredも同じだろ。
0357デフォルトの名無しさん
2009/02/17(火) 20:17:19>普通に考えれば、IsRequiredは外から操作されたくない値だろう。
いや、汎用のクラスライブラリとしては、普通に操作できて当たり前だろ。
0358デフォルトの名無しさん
2009/02/17(火) 20:18:12メソッドやプロパティを持たせるかどうかは意見が分かれるところだとは思うけど、
IsRequiredはクラスメンバの値を公開するようにすべき、ってのは
まともなプログラマが100人いたら100人が同意する話だと思うぜ。
0359デフォルトの名無しさん
2009/02/17(火) 20:19:25bool値を返す関数ってよくIs〜って名前付けるよね?
でも『A君はB君の方を見ていますか?』みたいな文の場合、
英語にするとDoes〜で始まると思うんだけど、
こういうときの関数名はどうするべき?
0360デフォルトの名無しさん
2009/02/17(火) 20:21:00CanASeeB
0361デフォルトの名無しさん
2009/02/17(火) 20:25:25それ可能・不可能の意味合いに変わってるじゃないですか
0362デフォルトの名無しさん
2009/02/17(火) 20:25:53外から変更されたくない値は変更できないようにしておくのが当たり前。
君は「アクセス修飾なんてぜんぶpublicでいいじゃん」っていう初心者様?
>>357
汎用クラスライブラリの話なんかしてないの。
ベタベタに特定用途専用のクラスの話をしてるんでしょ。
だいじょうぶかよ。
CustomerクラスのMailAddress1プロパティが必須かどうか、なんて値を
外から操作できてどうするんだよw
もちろんそういう用途が皆無とはいえないはずだが、普通はないよ。
0363デフォルトの名無しさん
2009/02/17(火) 20:31:54変更されたくない値かどうかは、設計者次第
汎用クラスとして設定できるようにしておいて、その継承クラスで隠蔽しておけばいいだけでしょ。
>>230の使い方もわからないのに、勝手に変更されたくないと決めつけて意見するほうが間違い。
とはいえ、汎用的に利用するために、IsRequireのようなプロパティは公開しとくのが当たり前だろな。
>汎用クラスライブラリの話なんかしてないの。
>ベタベタに特定用途専用のクラスの話をしてるんでしょ。
ユーザが入力した文字列のバリデーションなら汎用だろ。
勝手に特定用途専用なんて決めつけるほうがおかしい。
>CustomerクラスのMailAddress1プロパティが必須かどうか、なんて値を
>外から操作できてどうするんだよw
CustomerクラスのMailAddressプロパティなんて>>230は話してないだろ?
何で勝手に自分の都合のいい解釈してんの?
それに>>317をみれば、それぞれのデータにIsRequiredプロパティがあるほうが
わかりやすいだろ?
0364デフォルトの名無しさん
2009/02/17(火) 20:32:26A.IsLook( B );
でいーんじゃないかなぁ。もしくは
A.IsLooking( B );
これで伝わると思うんだけど。。。
0365デフォルトの名無しさん
2009/02/17(火) 20:44:00業務ソフトは入力値のvalidationばかりだから
それにリソースを取られないようにクラスライブラリ化するのは当たり前でしょ
mailaddressの未入力を許可するみたいなのこそベタベタの汎用処理だと思うぞ
0366デフォルトの名無しさん
2009/02/17(火) 21:02:150367デフォルトの名無しさん
2009/02/17(火) 21:10:43んもー鳥頭さん?
>それに>>317をみれば、それぞれのデータにIsRequiredプロパティがあるほうが
>わかりやすいだろ?
まず最初に、そこは異論ないよ。
何度も言うように、意味論的にはオカシイんだけど。(正直これに違和感感じない人間にOOP論じる資格なし)
ただ、何度も言うようにデータにIsRequiredがあるのは意味論的には間違ってるから、
(それは本来Customerクラスが知っているべきことだ)その当然の帰結として、IsRequiredを
フールプルーフに出来なくなっちゃうよ、これって問題じゃないのかい、と言ってるの。
フールプルーフに出来なくなっちゃ、とは
Customer.MailAddress1に触るコードを書くときは、MailAddress.IsRequiredの値を間違って
破壊しないようにCustomerクラスを使う人が注意を払わなきゃならんということ。
どっかのトンマがIsRequiredを間違って破壊しちゃう可能性が機構的に排除できないってこと。
>>365
自分で自分の足を(撃とうと思えば)撃てるのはかまわないが、
安全装置を(組み込もうと思っても)組み込めないようなライブラリなんかに価値はないよ。
0368デフォルトの名無しさん
2009/02/17(火) 21:12:580369デフォルトの名無しさん
2009/02/17(火) 21:18:57>何度も言うように、意味論的にはオカシイんだけど。
おかしくないよ。これをおかしいと思うひとにオブジェクト指向を語る資格なし。
>どっかのトンマがIsRequiredを間違って破壊しちゃう可能性が機構的に排除できないってこと。
だからフールプルーフについては既に記述してるじゃん。
お前は絶対に表示しなければ成り立たないGUI部品があったとして、
そのVisibleをfalseにできないようわざわざ設定しているのか?
>安全装置を(組み込もうと思っても)組み込めないようなライブラリなんかに価値はないよ。
継承して隠蔽すればいいじゃん。
汎用的に使えないライブラリなんかに価値はないよ。
0370デフォルトの名無しさん
2009/02/17(火) 21:23:10お前ら釣られまくりでバカじゃねーの?wwwwww
しねばいいよwwwwwwwwwwwwwwww
0371デフォルトの名無しさん
2009/02/17(火) 21:25:56ton氏ね
0372デフォルトの名無しさん
2009/02/17(火) 21:40:06foreach(inputField in Fields){
if(inputField.IsRequired && inputField.IsMissin){
// なんかする。メッセージのappendとか。
}
}
ってことだろうとふつーに思った。ふつーに思った。(IsRequiredは冗長かもしらんが。)
238を読んで、あーこういう脳みそがななめってるうざいやつってうちの現場にもいるなーって
オレも思ったし、お前も思っただろう。そいつは多分今も仕事中ww
0373デフォルトの名無しさん
2009/02/17(火) 22:01:53>>238は
bool tmpBool = false;
tmpBool = MailAddressCheck(mailText);
tmpBool = MailAddressCheck(mailText1);
tmpBool = PostalCodeCheck(postalText);
tmpBool = PostalCodeCheck(postalText1);
tmpBool = TelCheck(telText);
とか、オブジェクト指向がわからず、いちいち関数で処理しちゃう奴だろ?
しかも、tmpBoolが最後のTelCheck()だけで決定されてしまってバグに気づかず大慌てするタイプ。
もっというと、tmpBoolとか死ねって感じのタイプ。
0374デフォルトの名無しさん
2009/02/17(火) 22:04:430375デフォルトの名無しさん
2009/02/17(火) 22:12:16方法論はいろいろあるけど、変更できる人には、変更できちゃうんだから、
定数値でも意味がないだろ。
変更したくなければプロパティを隠蔽すりゃいいんだから。
0376デフォルトの名無しさん
2009/02/17(火) 22:14:582chで(馬鹿な)君に賛同してる奴なんて君と同じレベルの馬鹿なのに。
「オブジェクト指向が分からない」とは、>>230のいうIsRequiredのような値は
データの所有者に属する情報であってデータ自身に属する情報ではないことが
理解できない人間の事を言う。
0377デフォルトの名無しさん
2009/02/17(火) 22:15:56だから、どうやって?
0378デフォルトの名無しさん
2009/02/17(火) 22:20:34隠蔽する方法の言語仕様を知りたいの?
private new string MethodName();
で隠蔽できるじゃん
0379デフォルトの名無しさん
2009/02/17(火) 22:27:59いつの世も理想主義と現実主義の話は平行線。
極論ばかりだと現実社会では生きていけないように
プログラマーとしても成長できませんよ。
ここから上から目線のやつが現れてもっと解説
↓↓
0380デフォルトの名無しさん
2009/02/17(火) 22:30:48/::::::::::::::::\
/:::::─三三─\
/:::::::::(○)三(○).\
/⌒)⌒)⌒.:::::::::: (__人__) :::::: \ /⌒)⌒)⌒)
| / / /.. ` ⌒´ | (⌒)/ / / /,,-''ヽ、
| :::::::::::(⌒) / ゝ ::::::.,,-''" \
| ノ \ /_,-'" \
ヽ / ヽ /\ \
| | __ //\\ \
/|[]::::::|_ / \/\\ /
./| ̄ ̄ ̄ ̄ //\ \/ \ // ___
| |:::「「「「「「 / \/\ /\\ /:::/ ./| |__
_..| |:::LLLLL//\ \/ \/\\/::::::/ / | ロ .|lllllllllllll
/ llllll| |:::「「「「 / \/\ /\ .\/ ./::::::::/ / ./ .| |lllllllllllll
__ llllll| |:::LLL.//\ \/ \/\ /::::::::/ | / .| ロ .|lllllllllllll
| |:::「./ .\/\ /\ \/ /::::::::/⌒ヽ、| ||/ ..|
| |:::l//\ \/ \/\_, -― 、 ''"⌒ヽ,_
(⌒ヽ、_,ノ⌒Y" Y .....⌒)
(⌒ヽー゙ ....::( ..::....... .__人.....::::::::::::::::::::
0381デフォルトの名無しさん
2009/02/17(火) 22:31:31データ所有者が欲しいから、データそのものと、IsRequiredプロパティを同時に所有しているんだろ
「オブジェクト指向が分からない」とは、データが様様な属性を所有していることを理解できない人のことを言う。
0382デフォルトの名無しさん
2009/02/17(火) 22:33:12ToNさんお疲れ
決めつけじゃなくて言語仕様そのものの理解が間違ってるんですよ。
それを他人のせいにしたら、一生、オブジェクト指向が理解できないっすよ?
0383デフォルトの名無しさん
2009/02/17(火) 22:37:120384デフォルトの名無しさん
2009/02/17(火) 22:39:00極論ばかりだと生きていけない=ToNみたいな存在も許容しろ
言い争ってる=喧嘩両成敗=ToNみたいな無理難題な喧嘩を売られても認めろ
っていいたいのか?
お前こそ人間として最低だろう
0385デフォルトの名無しさん
2009/02/17(火) 22:39:29大体「中途受任日」って英語でなんていうねん。
0386デフォルトの名無しさん
2009/02/17(火) 22:41:29いやオブジェクト指向論にすらなってない
>>321
>例えば同じ型のデータが2つ以上必要で、それぞれ入力必須かどうかが
>違ってたらどうするの?
を読めばオブジェクト指向すら理解できていないことがわかる。
0387デフォルトの名無しさん
2009/02/17(火) 22:48:33あのさあw
なんか本当に鳥頭の人がいるな。
どうして「同じ型のデータが2つ以上必要で、それぞれ入力必須かどうかが違ってたら」
問題かさっき説明したでしょ。
それは、IsRequiredをデータ自身に持たせて、かつフールプルーフに実装しようと思ったら
クラスメンバの値を返すようにする必要があるから(すくなくともそれが一番簡単で
標準的なやり方だから)だよ。
こんな馬鹿にOOP云々言われたくないわまったく。
0388デフォルトの名無しさん
2009/02/17(火) 22:54:00>それは、IsRequiredをデータ自身に持たせて、かつフールプルーフに実装しようと思ったら
>クラスメンバの値を返すようにする必要があるから
隠蔽できるから返されないって言ってるじゃん。
0389デフォルトの名無しさん
2009/02/17(火) 22:56:090390デフォルトの名無しさん
2009/02/17(火) 22:56:31ごめんどういう意味?
真面目にわかりません。
具体的なコードで説明してくれると助かるかも。
0391デフォルトの名無しさん
2009/02/17(火) 22:58:41>>378
0392デフォルトの名無しさん
2009/02/17(火) 22:59:49そんなんだからお前はいつも底辺で働いているんだろ
まぁがんばれよ
0393デフォルトの名無しさん
2009/02/17(火) 23:00:42そんなんだからお前はいつも底辺で働いているんだろ
まぁがんばれよ
0394デフォルトの名無しさん
2009/02/17(火) 23:02:34言うことなくなったか。責めてごめんな。
みんな怒ってるから空気読んで、もうやめとこうな?
0395デフォルトの名無しさん
2009/02/17(火) 23:04:44相手のレスが無くなるまでレスしたほうが勝ちですか?w
0396デフォルトの名無しさん
2009/02/17(火) 23:05:450397デフォルトの名無しさん
2009/02/17(火) 23:10:24勘弁してやれよ
0398デフォルトの名無しさん
2009/02/17(火) 23:12:08if (aHash.containsKey(aKey)) { ... } みたいな例が一杯あるし、
a.looksAt(b) みたく、三単現の動詞を使えばいいと思うよ。
0399デフォルトの名無しさん
2009/02/18(水) 00:03:110400デフォルトの名無しさん
2009/02/18(水) 00:04:180401デフォルトの名無しさん
2009/02/18(水) 00:07:35情報処理関連の専門、短大、大学を出たが実際に設計をしたこともない池沼という感じだな
0402デフォルトの名無しさん
2009/02/18(水) 00:17:05あと A.Looks(B); もあり
0403デフォルトの名無しさん
2009/02/18(水) 00:21:08すまんこのレスで既出な上に、Atまできっちり付いてたアル
0404デフォルトの名無しさん
2009/02/18(水) 00:28:58例えば「Oの髪が金色か否か?」みたいな。
あー、もちろん「髪が金色」に相当する1単語の形容詞があるのは知ってるぜ。
ただ「そもそもOが主語にならないようなプロパティはおかしい」とか言ってしっちゃかめっちゃかにされるのを避けてみた。
0405デフォルトの名無しさん
2009/02/18(水) 00:35:570406デフォルトの名無しさん
2009/02/18(水) 00:41:03というクラス階層が大真面目に書いてあったら
絶対笑うか泣く。
0407デフォルトの名無しさん
2009/02/18(水) 00:48:02吹いたwwww
0408デフォルトの名無しさん
2009/02/18(水) 00:49:52意味論を重要視し、体系的に完璧でなければ許し難い無収入者の戦い
0409デフォルトの名無しさん
2009/02/18(水) 01:13:38まったくおかしくないよ
ユーザが入力できる値は基本的に文字列だからな
基本的に文字列から派生することになる
直接に数値として得られるのは配列の要素だけ。
0410デフォルトの名無しさん
2009/02/18(水) 01:31:54包丁も車も完璧な安全装置を組み込めないから価値は無いよね。
マグカップでも人が死ぬ事もあるから使えないよね。
どこかのトンマがPC投げつけてきたら危ないからPCも捨てようね。
0411デフォルトの名無しさん
2009/02/18(水) 01:38:13PI=3.14159って定数が勝手にPI=3に書き換えられてもおかしくないな
さて、これをフールプルーフするには一体どうすれば良いのだろうか
0412デフォルトの名無しさん
2009/02/18(水) 01:40:39A is looking at B
A.isLookingAt(B)
this.AisLookingAtB()
好きにしろ。
0413デフォルトの名無しさん
2009/02/18(水) 02:04:44TONからPCを取り上げる
0414デフォルトの名無しさん
2009/02/18(水) 07:56:30嫌だね
0415デフォルトの名無しさん
2009/02/18(水) 11:11:40凄くわかるw
お前って俺なの?
0416デフォルトの名無しさん
2009/02/18(水) 11:23:01仮登録中のユーザー(users)を格納しておくテーブル名、
あるユーザーのプロフィールを見たユーザーの「足あと」を格納しておくテーブル名、
ある記事を見た人(ユーザーに限らない)の日時やIPを格納しておくテーブル名。
それぞれ、なんかいいのないですか?
0417デフォルトの名無しさん
2009/02/18(水) 12:02:37いちいち変換しないといけないからめんどくさい事この上ないよ。
0418デフォルトの名無しさん
2009/02/18(水) 15:01:05Pre Signup Users
Profile Footprints :: user_id -> footprint
Article Viewer Infomations :: article_id -> viewer_info
てきと。
0420デフォルトの名無しさん
2009/02/18(水) 18:44:240421デフォルトの名無しさん
2009/02/18(水) 21:17:400422デフォルトの名無しさん
2009/02/19(木) 16:58:41まちがえた。
infomationじゃねえ、
informationだ。
恥ずかしい。
0423デフォルトの名無しさん
2009/02/19(木) 18:55:13Web的?にはviewerよりvisitorのがよくね?
>>421
悪魔召還すな。
0424デフォルトの名無しさん
2009/02/19(木) 20:08:28あー。そういやWebはVisitだなー。
もう質問者いないだろうけどw
0425デフォルトの名無しさん
2009/02/19(木) 20:38:29visitor or not: (ウェブサイトの)中に入ったかどうかの違い
viewer or not: (記事を)見たかどうかの違い
>>416が求めているものがどちらか言うまでもない。
0426デフォルトの名無しさん
2009/02/19(木) 21:36:34viewer or not (笑)
0427デフォルトの名無しさん
2009/02/19(木) 21:55:54英語圏のソースを片っ端から見てきた方がいいよ
間違ってるから
0428デフォルトの名無しさん
2009/02/19(木) 22:02:050429デフォルトの名無しさん
2009/02/19(木) 22:02:570430デフォルトの名無しさん
2009/02/19(木) 22:55:51w
ww
wwww
さすがにネタだろ
0431デフォルトの名無しさん
2009/02/19(木) 22:57:09具体的に例えばどのコード?
というか、もし仮に記事を見た人間のことをvisitorと呼ぶのなら(どう考えても変過ぎるが…)
ウェブサイトの訪問者はそれと区別してなんと呼ぶの?
0432デフォルトの名無しさん
2009/02/19(木) 22:58:190433デフォルトの名無しさん
2009/02/19(木) 23:00:50うん。
>>427のつもりだった。。
0434デフォルトの名無しさん
2009/02/19(木) 23:09:010435デフォルトの名無しさん
2009/02/19(木) 23:35:36http://www.google.co.jp/codesearch
この辺りで[web visitor]とか[web viewer]とか検索して
それぞれどんなのが引っかかってくるか比べてみたら。
0436デフォルトの名無しさん
2009/02/19(木) 23:54:130437デフォルトの名無しさん
2009/02/20(金) 00:16:18・40過ぎ
・英語は苦手
・リーダークラスSE
0438デフォルトの名無しさん
2009/02/20(金) 00:19:23オブジェクト指向しらなくて、それはない
VB6しか触ったことないならあり得るが
0439デフォルトの名無しさん
2009/02/20(金) 00:38:27×Leader
○Reader
ソースは読んだ事しかありません
0440デフォルトの名無しさん
2009/02/20(金) 06:41:450441234
2009/02/21(土) 00:34:22なんか私のせいで荒れてしまったみたいですいません。
あれから、設計をいろいろ見直しまして、そこそこのものができたかなぁと思っています。
まだ足りない部分があるので、考えているのですが、また迷ったらよろしくお願いします。
0442デフォルトの名無しさん
2009/02/21(土) 11:31:070443デフォルトの名無しさん
2009/02/23(月) 20:36:08の名前を募集中です
0444デフォルトの名無しさん
2009/02/23(月) 20:57:200445デフォルトの名無しさん
2009/02/23(月) 20:58:21Packet FindNotAcknoledged(Packet[] packetsSent)
とか。
二つ目以降を探すときは、
Packet FindNotAcknoledged(Packet[] packetsSent, int startIndex)
0446デフォルトの名無しさん
2009/02/23(月) 21:05:18判りやすいところでFindNotACKにします。
ありがとうございました。
0447デフォルトの名無しさん
2009/02/23(月) 21:08:11Acknoledged ⇒ Acknowledged
0448416
2009/02/24(火) 10:29:03みなさんありがとうございます。勉強になります。
またWebアプリで考えて欲しい名前があるのですが・・・
・ユーザーがメールアドレスを変更するときに、
アドレスの存在確認のために、一時的にそのアドレスとランダムな文字列、期限を保存しておくテーブルの名前。
(そのアドレスに確認メールを出して、記載されているURLをクリックすると変更完了というやつです。)
・プライベートメッセージ機能で、拒否したいユーザーを記録しておくテーブル名。
blacklistとかだと複数・単数の扱いがややこしいので・・・
(block_usersとかでいいのかな。reject_users?)
こういうの、さらっと考えられるようになりたいです;
よろしくお願いします!
0449デフォルトの名無しさん
2009/02/24(火) 12:06:07interim registration information
メアドにこだわる必要ないかなと。
新規登録時にも使えそうだし。
private blacklist
とりあえずprivateを付けてみるメソッド。
0450デフォルトの名無しさん
2009/02/24(火) 20:37:46- ignoreList, denyList, uceList, ignorables, rejects
0451416
2009/02/25(水) 11:48:52>>450
ありがとうございます。
新規登録時にはプロフィールの入力などもあるので、
テーブルは分けようと思ってます。
なので、もう少しメールアドレス変更用というニュアンスが欲しいです。
個人的に、名詞の複数形がいいです。
拒否ユーザーの方は、
テーブルに入っているのは、あくまで個々のユーザーなので
〜listというのは避けたいです。
blacklist_itemsなどとすればよいのかもしれませんが、くどいですし・・・
ignorables、rejectsはいいかもしれませんね!
もう少しいろいろなネーミングが知りたいです。
よろしくお願いします。
0452デフォルトの名無しさん
2009/02/25(水) 13:43:231対1の時は一つのテーブルのほうが便利だけどね
0453デフォルトの名無しさん
2009/02/25(水) 19:02:19基底は2軸、その派生で3軸の座標のみのクラス(構造体?)、
それらにアクセッサ等を加えたクラス、
さらにベクトル計算のメンバ関数を持つ派生クラス
を作るところです
基底クラスとその次のアクセッサを持つクラスで
上下関係が持てそうな名前はないでしょうか
coordinate,position,point,vertex、どれもis a なイメージなんですが・・・
ちなみに上記3種のクラスで、親子関係を持たせる場合
2軸なら2軸だけで、(基底除く)3軸は3軸だけで親子関係を結んだ方がいいのか
それとも3軸の上に、1軸アクセッサをprivateにした2軸派生、さらに3軸派生、と1本の線にしたほうがいいのか、
はたまた多重継承がいいのか、アドバイスもできればお願いします
0454デフォルトの名無しさん
2009/02/25(水) 19:43:03難しいなあ。じゃああとxxxMailInfosとか。
unverifiedMailInfos, unapprovedMailInfos
>>453
個人的には次元が違えば基本的に完全に別物だと思う。
そっち方面やったことないんで自信はないけど。
あと、単純な座標クラスをベースクラスにするのはいいとして、
「その次のアクセッサを持つ」の必要性がよくわからない。
いや、必要なのかもしれんけどどういう機能をもたせるつもりかわからないと
名前の付けようが・・・
0455デフォルトの名無しさん
2009/02/25(水) 20:09:08基底クラスの2軸と3軸を親子関係を結んで、
それ以降2軸は2軸、3軸は3軸と派生させたとして、
3軸の子・孫から2軸の子・孫へdynamic_cast、という手段を確保するつもりでこうなりました
その際、基底クラスには仮想関数も持たせず
単純なデータ群としてやり取りできるようにし、
普段扱う際は子クラスを、と思ったのですが…
今作ってるのは箱庭空間?の基本的な環境を目指しているところです
ですので、基底は座標として、ベクトルとして、等
とにかく2要素・3要素まとまった箱が欲しいな、と
>個人的には次元が違えば基本的に完全に別物だと思う。
確かにそんな気もしますが、こっち方面どころか全方面において経験がないので
設計で四苦八苦しています(ノ∀`)
0456デフォルトの名無しさん
2009/02/25(水) 20:14:530457デフォルトの名無しさん
2009/02/26(木) 13:19:51単純な値クラスはむやみに継承関係に
しないほうが一般に望ましい。
継承というものを知り、金槌を持って
何でも釘に見えてるような状態かも?
ちょっと考え直したほうがいい。
もちろん、スレの趣旨的には、一切
考え直さずに突っ張って、命名を
求め続けてもかまわないけど。w
0458デフォルトの名無しさん
2009/02/26(木) 13:56:40三次元から二次元に変換するときは、基本的に写像が必要になるから、
dynamic_castでなんとかしようとすると後で困るよ。
0459デフォルトの名無しさん
2009/02/26(木) 13:57:500460デフォルトの名無しさん
2009/02/26(木) 14:27:16予約テーブルがあって、そのうち、(実際の来店などで)受付した物を保持するテーブルで、
受付済みテーブルってのを作ろうとしたんですが、
ACCEPT
APPOINTMENT_ACCEPT
ACCEPTED_APPOINTMENT
どれが良いと思います?
もっとよいのがあれば教えてください。
0461デフォルトの名無しさん
2009/02/26(木) 14:48:00普通にorderじゃ駄目なの?
order_historyとか
0462デフォルトの名無しさん
2009/02/26(木) 14:50:24ありがとう。
だけど、Orderだと「注文」的な意味が強くないですかね?
0463デフォルトの名無しさん
2009/02/26(木) 15:03:12じゃあ名前を変えずに解釈を変えて、
新規のほうはSignupXXXInfoとかにすれば区別はつくんじゃない。
>>455
キャストはそんなことに使うべきではないと思うぞ。
>>460
受付したものってなんよ。人なの?物なの?
0464デフォルトの名無しさん
2009/02/26(木) 15:05:49それだいじですね。人です。
0465デフォルトの名無しさん
2009/02/26(木) 15:19:310466デフォルトの名無しさん
2009/02/26(木) 16:05:49reserved
ひょっとすると誤解されやすいかも。
0467デフォルトの名無しさん
2009/02/26(木) 17:25:58ありがとうございました。
Receptionにしようと思います。
0468デフォルトの名無しさん
2009/02/27(金) 01:02:28例えば、関数 f を呼び出すための条件を関数 n に渡し、
その関数 n から True が返ってきたら f を呼び出したいんですが、
そういう、条件を判定させる関数の名称でいい感じのがないんです。
if (p (v1, v2, v3) == TRUE){
f();
}
のような、この関数「p」の名前を模索しております。
0469468
2009/02/27(金) 01:03:45>>468 の「p」、コード上の p (v1... の p は、文中の n の意味です。
すみません。
0470デフォルトの名無しさん
2009/02/27(金) 02:23:06predicate (述語) が一般的だと思う。
あとは condition (条件) とか criterion (基準) とか。
0471デフォルトの名無しさん
2009/02/27(金) 06:47:080472デフォルトの名無しさん
2009/02/27(金) 07:06:32is条件()みたいなメソッド名ってjavaとかじゃよくあるけど。
0473デフォルトの名無しさん
2009/02/27(金) 14:46:31行列(キュー)全体ではなく、行列に並んでる個々のメールに命名したいのですが・・・
queued_mails みたいな感じでしょうか?
0474デフォルトの名無しさん
2009/02/27(金) 14:51:55通し番号でいいと思わないか
0475デフォルトの名無しさん
2009/02/27(金) 19:50:52批判されてるのに追い討ちかけるようだけど、
そんなあいまいな条件だけで命名しようとか命名できるはずだか考えてるのなら
そのセンスはヤバ過ぎると思う。
0476デフォルトの名無しさん
2009/02/28(土) 01:31:31おれなら〜trapとかにしそう
0477デフォルトの名無しさん
2009/02/28(土) 01:51:11perlのforeachで$_の代わりに使う変数かな?
ならフォーカスドメールとかでいいんじゃね
0478476
2009/02/28(土) 02:18:52trap_whithout(条件)とかは?
0479デフォルトの名無しさん
2009/02/28(土) 16:32:35個々のメールに命名したいのになんで複数形なんだろう?
どうでもいいけどmailはuncountableな名詞なのでふつうはmailsって書かないらしいよ。
emailsはアリらしいけど。
0480473
2009/02/28(土) 17:10:36キューからメールを取り出して、
foreach ($queued_mails as $queued_mail) {
みたいな処理をしたいのです。
そのときに、行列待ちのメールであることを分かりやすくしたかったのです。
mailsと書かないというのは知りませんでした;
0481デフォルトの名無しさん
2009/02/28(土) 17:29:11普通に考えれば特に「行列待ちの〜」なんて意味を名前にこめる必要はないと思う。
処理待ち用のキューの中から取り出したんだから処理待ちに決まってる。
処理の文脈をみればそんなの自明かと。
どうしてもって事情があるのならbacklogとか?
0482デフォルトの名無しさん
2009/02/28(土) 17:31:20わかんなくなるならブロックがメソッドが長すぎる。
0483473
2009/03/02(月) 07:45:44そこでの命名にも使いたくて・・・
backlogというのはいいですね。
mailをどうしても複数・単数で扱いたい場合は、
message(s)とかにするのが普通なのでしょうか?
0484デフォルトの名無しさん
2009/03/02(月) 08:05:45ただ、そのメールで何を送るか、例えば注文を送るんだったらorderとかでもいいわけでしょ。
0485473
2009/03/02(月) 08:25:39たしかに、内容に即した名前の方がわかりやすくていいですね。
ただ今回は、オーダーやお知らせなどのあらゆるメールを一箇所に集約するので、
もっと普遍的なネーミングが欲しいのです。
となると、やっぱりmessageになるんでしょうかね・・・
英語うまくなりたい;
0486デフォルトの名無しさん
2009/03/06(金) 07:30:53Bar ConvFooToBar(Foo foo);
のように書いています。
変換する型が複雑になると
Hoge ConvFooBarToHoge(FooBar foobar);
のようにToが見つけにくくなり、読みにくく感じます。
が、読めないこともないのでこれで妥協すべきでしょうか。
0487デフォルトの名無しさん
2009/03/06(金) 07:40:200488デフォルトの名無しさん
2009/03/06(金) 07:54:060489デフォルトの名無しさん
2009/03/06(金) 07:57:38元の型を関数名に含める意味なくね?
0490486
2009/03/06(金) 08:35:26あ、たしかにそうですね。いわれてみれば冗長。
>>487みたいに、
引数を関数名の一部にするようなアイデアは考え付きませんでした。
残る問題は、自分が>>486のスタイルになれきっていることなので、
それから脱却できるようがんばります。
どうも朝早くありがとうございました。
0491デフォルトの名無しさん
2009/03/06(金) 08:51:200492デフォルトの名無しさん
2009/03/07(土) 14:58:03Barクラスに手を入れるのは普通いやじゃない?
そもそもその権限がないかもしれないし。
便乗質問。
487の "Hoge ToHogeFrom(const FooBar &)"の.hファイルと.cppファイルの名前って
どうするのが一般的?
ToHogeFrom_FooBar.cpp あたりかと思うんだけど…
0493デフォルトの名無しさん
2009/03/07(土) 15:51:32別にダメだとは言わんが。
0494デフォルトの名無しさん
2009/03/07(土) 16:00:17なんでC++なのにそんなユーティリティ関数みたいな書き方するんだろう。
Foo ⇒ BarなのにどうしてFooのインスタンスメソッドとして書かないの?
意味わかんない。
0495デフォルトの名無しさん
2009/03/07(土) 16:20:39> どうしてこれまで誰も指摘しないのか不思議でならないんだけど
>>1
> 設計の善し悪しについて議論するのは基本的に禁止。
0496デフォルトの名無しさん
2009/03/07(土) 16:24:19クラスのメンバ関数は最小限のインターフェースにとどめ、
メンバ関数を使って可能なことは大域関数で実現するのがよろしい、という考え方がある
cf. C++ Coding Standards 44項 「非メンバーかつ非friendの関数を書くようにしよう」
Javaに慣れてると何でもかんでもインスタンスメソッドにしたくなるんだけどね
0497デフォルトの名無しさん
2009/03/07(土) 16:32:16なんらかの深い考察が背景にあるのかわからんけど、
ぱっと聞き同意しがたい考え方だな。
0498デフォルトの名無しさん
2009/03/07(土) 16:45:11委譲
0499デフォルトの名無しさん
2009/03/07(土) 16:49:00> Javaに慣れてると何でもかんでもインスタンスメソッドにしたくなるんだけどね
最近のJavaは知らないけど、Javaはグローバル関数が作れないから仕方ないのかな。
C#を最近勉強し始めたけど、C#も同じらしいのでちょっとがっかり。
0500デフォルトの名無しさん
2009/03/07(土) 16:50:370501デフォルトの名無しさん
2009/03/07(土) 19:11:57変換先が一つだけならBarのコンストラクタでFooを受け取る
それが無理ならto_bar(foo)
barが一般的なクラスならbar(foo)でもいい
変換処理がFooの内部構造に依存したり仮想関数にする場合
Fooに変換メンバ関数bar()を作ってフリー関数bar(foo)から呼び出させることもよくある
0502デフォルトの名無しさん
2009/03/07(土) 19:39:34>Foo ⇒ BarなのにどうしてFooのインスタンスメソッドとして書かないの?
なわけで、やり方はいくらでもあるだろうが、委譲という考え方がある限り
そういうメソッドを作ることは何ら不思議じゃないが結論だろ
0503デフォルトの名無しさん
2009/03/07(土) 19:45:59あれないうちにやめてくれよ。
0504デフォルトの名無しさん
2009/03/09(月) 22:56:380505デフォルトの名無しさん
2009/03/09(月) 23:14:52氏ね
0506デフォルトの名無しさん
2009/03/14(土) 08:54:31Nobunaga Hideyosi Ieyasu Masamune 武将シリーズでいくぞ。
0507デフォルトの名無しさん
2009/03/14(土) 09:08:37惣無事令に反して蘆名領に攻め込んだり、葛西大崎一揆を扇動して天下人を困らせた
つまり、管理者の意図に反した入力を受け入れるわけですね、分かります
0508デフォルトの名無しさん
2009/03/14(土) 13:31:57自分で自分が気持ち悪いと思わないんだろうか。
ひょっとしてこういう奴のアイデンティティって「2ちゃんねら」なのか?w
まともな精神構造してたら耐えられないよな。
0509デフォルトの名無しさん
2009/03/14(土) 19:24:230510デフォルトの名無しさん
2009/03/14(土) 19:29:070511デフォルトの名無しさん
2009/03/14(土) 19:29:190512デフォルトの名無しさん
2009/03/14(土) 19:33:040513デフォルトの名無しさん
2009/03/14(土) 19:33:310514デフォルトの名無しさん
2009/03/14(土) 19:34:18名前の由来はヘブライ語のダーグ(魚)ともダーガーン(穀物)ともいわれる。 父親はエル。
伝承によってはバアルの父とされる。魚の頭をもつ海神と考えられてきたが、近年の研究では農耕神であった可能性も強い。
ガザとアシトドに大きな神殿があった。
0515デフォルトの名無しさん
2009/03/14(土) 19:34:340516デフォルトの名無しさん
2009/03/14(土) 19:36:15それhttp://mora.jp/artist/80328008/DKSLG0613/
0517デフォルトの名無しさん
2009/03/14(土) 19:45:00http://en.wikipedia.org/wiki/Jargon
0518デフォルトの名無しさん
2009/03/14(土) 19:45:330519デフォルトの名無しさん
2009/03/14(土) 20:03:08それterminology which has been especially defined in relationship to a specific activity
>>518
それモビルスーツ GMの後継
0520デフォルトの名無しさん
2009/03/14(土) 20:16:53pre_column
modified_colomun
?
何かいいアドバイスあったらいただきたく。。
0521デフォルトの名無しさん
2009/03/14(土) 20:28:080522デフォルトの名無しさん
2009/03/14(土) 22:04:45ありがとうございましたm(__)m
0523デフォルトの名無しさん
2009/03/16(月) 11:27:12Character や CharaObject では、なんかしっくりこない。
0524デフォルトの名無しさん
2009/03/16(月) 13:10:21じんぶつ【人物】
1〔人〕a person,((口)) a character; 〔重要な人〕a figure; 〔小説などに描かれた人間〕a character 危険人物 a dangerous person [char... [さらに]
0525デフォルトの名無しさん
2009/03/16(月) 13:20:150526523
2009/03/16(月) 13:59:01いちおC++なんで、予約語は勘弁してください
>>524-525ありがとう。
とりあえずだけど、personで進めていくことにしまふ
0527デフォルトの名無しさん
2009/03/16(月) 14:14:18はぐれメタルとか登場予定なし?
0528デフォルトの名無しさん
2009/03/16(月) 14:22:33「化身」ってどうだろう?avatar、ちょっと違和感ある?
0529デフォルトの名無しさん
2009/03/16(月) 14:36:480530デフォルトの名無しさん
2009/03/16(月) 15:21:370531デフォルトの名無しさん
2009/03/16(月) 15:29:330532デフォルトの名無しさん
2009/03/16(月) 15:44:390533デフォルトの名無しさん
2009/03/16(月) 19:35:330534デフォルトの名無しさん
2009/03/16(月) 19:57:33無理矢理英語にする
無理矢理日本語にする
どっちも嫌なので難しい。
Get_User_Inputs_4_Process_that_DA_First_Pass
User_no_Key_nyuuryoku_wo_Uketoru
見てるだけでムカつく。
特に4とか2とかDAとか
0535デフォルトの名無しさん
2009/03/16(月) 20:02:08おなじ「だ」でもTHEでいいじゃん。
THE・埼玉はTHE・埼玉だからいいのであって、
DA・埼玉だとヒネリも何もなく、したがって味わいも何もないではないか。
THEが付いてるから、「並ぶもののない」「他に2つとない」というポジティブな意味と
「ダサイ」というネガティブな意味両方あるからTHE・埼玉という表記がすぐれているのに
DAにしたら英語知らない奴からするとストレートな悪口にしか見えん。
0536デフォルトの名無しさん
2009/03/16(月) 20:19:490537デフォルトの名無しさん
2009/03/16(月) 20:26:25// ユーザーのキー入力を受けとる
完璧にコメントの形式ですね
0538デフォルトの名無しさん
2009/03/16(月) 22:45:080539デフォルトの名無しさん
2009/03/17(火) 13:31:390540デフォルトの名無しさん
2009/03/19(木) 09:44:43二つの配列間の挿入、置換、置換、移動による最短編集距離を求めて
それぞれ変更のあった位置と類似度も返す関数を作ったんだけど
なんて名前にすればいいだろう。
0541デフォルトの名無しさん
2009/03/19(木) 10:50:520542デフォルトの名無しさん
2009/03/19(木) 13:21:520543540
2009/03/20(金) 00:17:50順序も考慮するからsetは違う気がする。
圧縮ファイルの中身を比較するのに作った関数だけど
一応他の用途でも使いまわせるような感じにしたいので
汎用性がある名前にしたいなぁとか。
>>542
機能に即した名前がいい。
0544デフォルトの名無しさん
2009/03/20(金) 04:06:18function_that_returns_position_and_degree_of_similarity_it_arranges_ones_verbs_and_objects_to_algorithm_of_Levenstein_and_with_each_change_for_the_shortest_edit_distance_by_the_insertion_between_two_arrays_substitution_substitution_and_movement()
0545デフォルトの名無しさん
2009/03/20(金) 05:17:16じゃあそれにするわ!
0546デフォルトの名無しさん
2009/03/20(金) 05:34:500547デフォルトの名無しさん
2009/03/20(金) 07:26:49英語でおk
0548デフォルトの名無しさん
2009/03/20(金) 13:16:560549デフォルトの名無しさん
2009/03/20(金) 17:26:10「なんで2の力なんですかね?」
って聞いてきた奴もいたものである。
0550デフォルトの名無しさん
2009/03/20(金) 21:18:29まず、そのアルゴリズムを論文発表して、自分の名前を定着させるんだ。
0551デフォルトの名無しさん
2009/03/21(土) 18:17:00<a>hoge</a>
<b length="10">
みたいなを読んで処理をしたいのですが
a...tag
hoge...value
length...attribute
10...parameter
でいいですか?
2つ目と4つ目が何か違う気がして・・・
0552デフォルトの名無しさん
2009/03/21(土) 18:27:12DOMやSAXパーサのソースコードを見て、使われている用語を参考に
すればいいんじゃないだろうか。
tag→a は要素(名)(element (name))
<a> は開始タグ(start tag)
</a> は終了タグ(end tag)
名前空間を考慮する場合、local name とか qualified nameという言い方も目にする。
value→(要素のネストを考慮して)content もしくは (inner) text
attribute→これはOK
parameter→(attributeの)value
あたりじゃないかな。
0553デフォルトの名無しさん
2009/03/21(土) 18:41:55ありがとうございます。
そんな感じでやってみます
0554デフォルトの名無しさん
2009/03/22(日) 01:13:35記事一つがEntryクラスで
それの集合がEntryListクラスなんですが
記事を追加したり削除したり
条件を指定してEntryクラスやEntryListクラスを返す
みたいなものを一括するクラスの名前はどうしたらいいでしょうか?
0555デフォルトの名無しさん
2009/03/22(日) 01:35:330556デフォルトの名無しさん
2009/03/22(日) 02:43:320557デフォルトの名無しさん
2009/03/22(日) 03:25:02EntlyList.add
EntlyList.delete
EntlyList.find
EntlyList.filter
メソッドじゃね?
0558デフォルトの名無しさん
2009/03/22(日) 18:12:320559デフォルトの名無しさん
2009/03/22(日) 21:31:420560デフォルトの名無しさん
2009/03/23(月) 11:20:290561デフォルトの名無しさん
2009/03/23(月) 21:12:19新しいビットマップを返すのか、所与のビットマップを変換するのか
で多少変わるだろうけど。
alpha値を変更するという観点での命名もありえるかもね。
0562デフォルトの名無しさん
2009/03/25(水) 12:32:57クラスなに?
↓
1年のときはAでした。
0563デフォルトの名無しさん
2009/03/25(水) 12:37:300564デフォルトの名無しさん
2009/03/25(水) 17:04:05今度困ったときに相談するよ
余談だが俺の後輩は全部ローマ字読みで命名するんだよね・・・
でも意外だが一部では肯定派もいるらしいね
0565デフォルトの名無しさん
2009/03/25(水) 17:47:430566デフォルトの名無しさん
2009/03/25(水) 18:26:140567デフォルトの名無しさん
2009/03/25(水) 20:59:57習慣が定着しているそうだ。英語が母語な人はどうしてるんだろう。
0568デフォルトの名無しさん
2009/03/25(水) 22:31:110569デフォルトの名無しさん
2009/03/26(木) 01:12:550570デフォルトの名無しさん
2009/03/26(木) 09:34:49BLOODY_URIKAKE
0571デフォルトの名無しさん
2009/03/26(木) 12:24:150572デフォルトの名無しさん
2009/03/26(木) 13:19:300573デフォルトの名無しさん
2009/03/26(木) 23:21:140574デフォルトの名無しさん
2009/03/28(土) 11:21:49key1=value1\nkey2=value2\n...
みたいな文字列をとって
map<std::string,std::string>で返す関数の名前
0575デフォルトの名無しさん
2009/03/28(土) 14:47:480576デフォルトの名無しさん
2009/03/31(火) 17:03:110577デフォルトの名無しさん
2009/03/31(火) 17:08:060578デフォルトの名無しさん
2009/03/31(火) 23:39:430579デフォルトの名無しさん
2009/04/01(水) 09:12:150580デフォルトの名無しさん
2009/04/01(水) 09:15:000581デフォルトの名無しさん
2009/04/01(水) 18:02:250582デフォルトの名無しさん
2009/04/01(水) 21:16:05そんなんもあるのか....
0583デフォルトの名無しさん
2009/04/02(木) 09:43:08google codeは、google提供ツールのソース開示とOSSプロジェクトのホスティング。
0584デフォルトの名無しさん
2009/04/02(木) 12:04:00arrangedObjects?
0585デフォルトの名無しさん
2009/04/02(木) 15:22:02「配置されていないオブジェクト」という概念もあるのか?
0586デフォルトの名無しさん
2009/04/02(木) 18:43:27偉そうに馬鹿な事言うなよ
恥ずかしいw
0587デフォルトの名無しさん
2009/04/02(木) 20:03:25placed object
object on canvas
0588デフォルトの名無しさん
2009/04/02(木) 22:00:33componentsかもしれんが。
585でも訊かれているけど、管理してるけど配置していないオブジェクト
ってのもあるの?
0589デフォルトの名無しさん
2009/04/03(金) 11:10:12void Hoge(Bitmap bmp, PixelProc proc);
と
System.Drawing.Imageを上記のメソッドに渡せる形式のBitmapにして返すメソッド
(具体的にはPixelFormat=PixelFormat.Format32bppArgbなBitmap)
Bitmap Fuga(Image img);
上記2つのメソッドを持つクラス。
PixelProcの定義は
delegate Color PixelProc(Color color);
GetPixel、SetPixelを使った処理よりも高速であることを強調した名前にしたいです。
宜しくお願いします。
てゆーかぶっちゃけこれに名前が欲しい。
http://www.k4.dion.ne.jp/~anis7742/codevault/00180.html
0590デフォルトの名無しさん
2009/04/03(金) 11:33:400591デフォルトの名無しさん
2009/04/03(金) 11:35:03GetRegularizedBitmap
0592589
2009/04/03(金) 11:47:580593デフォルトの名無しさん
2009/04/03(金) 18:22:03どうしようか迷っています。とりあえず Lanczos3_NonZero としているんですが、
チェックを省略している、というニュアンスが出てないので……
0594デフォルトの名無しさん
2009/04/03(金) 18:50:40checkNonZero
じゃぁいかんの?
0595デフォルトの名無しさん
2009/04/03(金) 23:25:340596デフォルトの名無しさん
2009/04/03(金) 23:45:360597デフォルトの名無しさん
2009/04/10(金) 12:34:15変数名などに、同じ単語の単数形と複数形を共存させることってある?
例えば、
file ← ファイル名を格納
files ← 配列など、複数のファイル名を格納
みたいな感じで。
0598デフォルトの名無しさん
2009/04/10(金) 12:57:330599デフォルトの名無しさん
2009/04/10(金) 16:41:3616進数の文字列データを10進数の文字列に変換するクラスの名前
このクラスから桁揃えや値の範囲の判定を追加した子クラスに派生させる予定です
宜しくお願いします
0600デフォルトの名無しさん
2009/04/10(金) 17:56:03マーチン・ファウラー先生のオススメ命名規則らしいんだが
0601デフォルトの名無しさん
2009/04/10(金) 20:15:32それだけ聞くと「単純な話をわざわざ複雑にするだけ」に聞こえる。
hex⇒intもint⇒decimalもintの機能であるんじゃないの?
2行の処理が一行にまとまる「嬉しさ」と、
何を抽象化したクラスか理解する「面倒臭さ」のどっちが勝るかよく考えるべきだと思うな。
0602デフォルトの名無しさん
2009/04/10(金) 20:29:53{
string name;
children_t* children;
attribute_t* attributes;
}
struct children_t
{
std::vector X;
}
struct attribute_t
{
std::map Y
}
みたいなのを書いてみました。XとYはどんな名前がいいでしょうか?
ちなみにXとYをわざわざ別の構造体にしてるのは「存在しないとき」の方が多そうだから
NULLポインタ1個で済ませられればという理由です
0603デフォルトの名無しさん
2009/04/11(土) 05:14:25BaseConvert
RadixConvert
とかかのう。
10進と16進には固定できないが。
0604デフォルトの名無しさん
2009/04/11(土) 05:18:30struct XMLtree_t
{
string name;
std::vector* children;
std::map* attributes;
}
0605デフォルトの名無しさん
2009/04/11(土) 05:44:50TONさんちーっす
相変わらずですね^^;;;
0606デフォルトの名無しさん
2009/04/11(土) 09:26:39>>601
ようTON
お前また設計に口出しするのか。
テンプレ読めないっぷりは相変わらずだな。
そんなんじゃ実生活でも相当使えないやつだろうなwwwwwww
0607デフォルトの名無しさん
2009/04/11(土) 10:34:35どっか行ってくれ
0608デフォルトの名無しさん
2009/04/11(土) 11:54:220609デフォルトの名無しさん
2009/04/11(土) 12:03:590610デフォルトの名無しさん
2009/04/11(土) 16:16:14フィールド変数にアンダースコアを付けるのは
一見でフィールド変数とローカル変数を見分けられる利点がある。
その一方、リファクタリングによって
フィールド変数とローカル変数が入れ替わることは少なくない。
この命名規則を維持するのは多少なりとも労力を必要とするが、
中断すると読み手をミスリードすることになるので
そのコードを保守する限り未来永劫、その労力を必要とする。
さて、近年のIDEでは、フィールド変数とローカル変数を
自動的に視覚的に区別できるように表示してくれるものが多く、
このような開発環境を前提とした場合、先に挙げた利点が必要なくなるため
この命名規則は欠点を残すだけになるだろう。
以上自論
0611デフォルトの名無しさん
2009/04/11(土) 19:46:38命名はどうでも良い
0612デフォルトの名無しさん
2009/04/11(土) 19:56:27なぜ?
0613デフォルトの名無しさん
2009/04/11(土) 21:29:38一度もしたことないけどなあ。
どんな状況でそんな必要に駆られるのか煽り抜きで想像ができない。
ちなみに俺はフィールドにはそれと識別可能なプリフィクスを付ける派。
ただしアンダースコアは視覚的に見難いし醜いしタイプしにくい(少なくともJISキーボードだと)
から小文字のmでプリフィクスすることにしてる。
0614デフォルトの名無しさん
2009/04/11(土) 21:32:51ハンガリアンも似たような理由で嫌われるよな
0615デフォルトの名無しさん
2009/04/11(土) 22:00:09一見して判別可能にすることができるんだから全然気にする必要ない。
変なプレフィクス付けるとかマゾ以外の何者でもない。
異論は認める。
0616デフォルトの名無しさん
2009/04/11(土) 22:22:53むしろ色分けや書体による区別の乱用の方がマゾ的に感じるけどな。
シンタックスカラーまで否定しないけど、スコープの区別までそれでやるのは
関心しないね。
視覚的に「騒々しい」というのもあるけど、人間のパターン認識機能の特性に
あまり適合的じゃないよ。
0617デフォルトの名無しさん
2009/04/11(土) 23:37:150618デフォルトの名無しさん
2009/04/12(日) 00:22:270619デフォルトの名無しさん
2009/04/12(日) 00:28:33端的に言うとむしろ君らの頭の性能が悪い、ってことだと思うよ。
0620デフォルトの名無しさん
2009/04/12(日) 00:43:120621デフォルトの名無しさん
2009/04/12(日) 01:08:390622デフォルトの名無しさん
2009/04/12(日) 01:11:260623デフォルトの名無しさん
2009/04/12(日) 01:25:490624デフォルトの名無しさん
2009/04/12(日) 04:29:42いみふ
0625デフォルトの名無しさん
2009/04/12(日) 09:52:15そういう人は色だけで区別するのは嫌がるだろうな。
0626デフォルトの名無しさん
2009/04/12(日) 12:07:590627デフォルトの名無しさん
2009/04/12(日) 15:37:26触覚でどうだろうか
0628デフォルトの名無しさん
2009/04/12(日) 15:52:280629デフォルトの名無しさん
2009/04/12(日) 17:00:390630デフォルトの名無しさん
2009/04/12(日) 17:02:070631デフォルトの名無しさん
2009/04/12(日) 17:03:57俺は緑だが
VSのデフォはコメントが緑だから困る
0632デフォルトの名無しさん
2009/04/12(日) 17:22:50少なくと俺は色から、これはキーワードだとか、これはクラスメンバだとかいう
情報を積極的に読み取るってことはしない。
俺じゃなくても、シンタクックスカラー主目的はタイプミスとか''""{}[]/**/
のアンバランスを逐次的に見つける一手段ってことなんじゃないの?
まあ、慣れた配色と違うと確かに最初は違和感あるが・・・
0633デフォルトの名無しさん
2009/04/12(日) 21:17:24スレ違い。
0634デフォルトの名無しさん
2009/04/13(月) 00:53:06システムハンガリアンを受け付けない体になってしまったんだが、
Visual Studio C++でもメンバ変数の色分けってできないだろうか?
0635デフォルトの名無しさん
2009/04/14(火) 20:44:07ローカル引数のスコープの狭さは、メソッドの分割などで支障をきたすことが少なくない。
無理に分割しようとうると、金太郎飴のように似た様な引数の並びのメソッドを
次々にコールすることになる。
この状態でこれらのメソッドを複数のクラスに分割すると
金太郎飴引数をクラス間でずりずり引き回すという
なんちゃってオブジェクト指向のスパゲティコードを読まされている俺負組み誰か助けてorz
0636デフォルトの名無しさん
2009/04/14(火) 21:21:330637デフォルトの名無しさん
2009/04/14(火) 21:21:56「多すぎる引数」とか「データの群れ」というやつだな。
0638デフォルトの名無しさん
2009/04/15(水) 01:19:070639デフォルトの名無しさん
2009/04/15(水) 20:10:250640デフォルトの名無しさん
2009/04/16(木) 03:23:390641デフォルトの名無しさん
2009/04/16(木) 08:59:240642デフォルトの名無しさん
2009/04/16(木) 09:01:06○キーワード引数(Pythonとかにあるやつ)
×デフォルト引数
0643デフォルトの名無しさん
2009/04/16(木) 18:12:45しかもなぜかfastcall。かえってややこしいわw
0644デフォルトの名無しさん
2009/04/19(日) 03:11:08recordsとnRecordsならどちらがよいのでしょうか。
recordsだと何かrecordの集合のような物を想像してしまうのですが、
かといって要素数を表す接頭辞をつけるのも不格好な気がします。
records.lengthのように参照できるようにできれば一番いいと思うのですが、
現に手元にrecordがあるわけでないのでそうはできません。
みなさんはどうされていますか。
キャピタライゼーションなどの見た目上の規則ではなく、
意味論的な観点からご意見ください。
0645デフォルトの名無しさん
2009/04/19(日) 03:36:51自分で「レコードの数」って言ってるじゃん。
古い人ほど「直訳みたいな変数名はダメ」という間違った強迫観念に支配されてるけど、
時代錯誤だから考え直した方がいいと思うよ。
0646デフォルトの名無しさん
2009/04/19(日) 03:39:290647デフォルトの名無しさん
2009/04/19(日) 03:40:490648デフォルトの名無しさん
2009/04/19(日) 08:38:33>645
そういうレベルの話じゃないっしょ。たぶん。
>647
nXXXsで個数っていうのは、よく見かけるけどな。
0649デフォルトの名無しさん
2009/04/19(日) 09:02:02きちんと意味付けされた上で接頭辞をつけるのは悪くないと思うんだけどな。
もちろん周りが -Count とか numberOf- とか使ってるならそっちを使うべきだけど。
0650デフォルトの名無しさん
2009/04/20(月) 02:37:110651デフォルトの名無しさん
2009/04/20(月) 17:52:550652デフォルトの名無しさん
2009/04/20(月) 18:20:18でもオーバーロードの無いC言語だと仕方ないと思うんだ。
0653デフォルトの名無しさん
2009/04/20(月) 19:18:02bool CPathString::Exists()
0654デフォルトの名無しさん
2009/04/20(月) 19:20:01「存在すれば何もしない。しなければ作る」という処理なのかな。
0655デフォルトの名無しさん
2009/04/20(月) 20:36:38「ディレクトリの存在を確認する」んだろ。
オレだったらconfirmにするが。
0656デフォルトの名無しさん
2009/04/20(月) 20:38:050657デフォルトの名無しさん
2009/04/21(火) 11:58:52正解。すごいな、分かる奴には分かるもんなんだな。
http://msdn.microsoft.com/ja-jp/library/cc428990.aspx
0658デフォルトの名無しさん
2009/04/21(火) 12:06:170659デフォルトの名無しさん
2009/04/21(火) 12:10:37establish directory path existence without doubt
処理の後に指定されたディレクトリが存在するという事後条件がある
と解釈するのか、make sureに対してそういう見方をしたことはなかった
これからはもっと英英辞典も使うとしよう
0660デフォルトの名無しさん
2009/04/21(火) 12:37:420661デフォルトの名無しさん
2009/04/21(火) 12:40:21ちゃんとした解釈なんて考えた事もないわ。
だから技術系の本しか読めないんだなきっとw
0662デフォルトの名無しさん
2009/04/21(火) 14:32:53死んでるかどうか確認して! と 確実に死んだ状態にして!
の勘違いのアレか。
0663デフォルトの名無しさん
2009/04/21(火) 18:53:18だいたい事後条件を満たせなかったら
どうすんの?死ぬの?
makeDirectoryIfNotExist
とかのがよくね?
0664デフォルトの名無しさん
2009/04/21(火) 19:00:560665デフォルトの名無しさん
2009/04/21(火) 19:03:08失敗したらどうすんの?死ぬの?w
0666デフォルトの名無しさん
2009/04/21(火) 19:26:44お前みたいな頭の悪いガキが生まれても、
親は別に死んだりしない。
0667デフォルトの名無しさん
2009/04/21(火) 19:41:020668デフォルトの名無しさん
2009/04/21(火) 23:58:380669デフォルトの名無しさん
2009/04/22(水) 00:07:53makeDirectoryIfNotExist
俺はどっちも同じ動作を思い浮かべるけどな
0670デフォルトの名無しさん
2009/04/22(水) 03:40:06それほど変わらんかもしれんが、
>MakeSureDirectoryPathExists
はsureに、
>makeDirectoryIfNotExist
はmakeに主旨がある気がしない?
感覚的にはけっこう違うような。
0671デフォルトの名無しさん
2009/04/22(水) 04:50:040672デフォルトの名無しさん
2009/04/22(水) 17:42:44composeかそれともgenerateどちらがいいでしょうか?
〜OutputStr()と言うような感じで考えています
0673デフォルトの名無しさん
2009/04/22(水) 18:48:31目的が重要ならgenerate
0674デフォルトの名無しさん
2009/04/23(木) 09:07:58OutputComposedStringとかならまだ分かるが。
0675デフォルトの名無しさん
2009/04/23(木) 09:47:23OUT: 戻り値
0676デフォルトの名無しさん
2009/04/23(木) 11:14:06joinとかそういうのとは違うの?
0677デフォルトの名無しさん
2009/04/23(木) 11:20:230678デフォルトの名無しさん
2009/04/23(木) 16:31:550679デフォルトの名無しさん
2009/04/23(木) 17:05:20名前は何にしたらよいでしょう?
IsRealNumber にしようとおもったら、実数は無限を含むらしいので。
0680デフォルトの名無しさん
2009/04/23(木) 17:12:170681デフォルトの名無しさん
2009/04/23(木) 17:18:540682デフォルトの名無しさん
2009/04/23(木) 19:39:53正負の零、非正規化数、正規化数をあわせて、finiteとよぶ。
0683676
2009/04/23(木) 20:04:42>>678
それもしかして俺に言ってるの?
joinはセパレータ使って文字列結合するときには普通に使う関数名だよ?
スクリプト言語とかboost.string_algoとか使ったことない?
ちなみにセパレータじゃなくて意味のある文字列ならformatXXXのほうがいいかな
composeとかのほうが意味がわからない
0684デフォルトの名無しさん
2009/04/23(木) 20:25:35つ float.h
0685デフォルトの名無しさん
2009/04/23(木) 20:27:17どうみても674あてだろがw
0686デフォルトの名無しさん
2009/04/23(木) 20:45:460687デフォルトの名無しさん
2009/04/24(金) 04:35:34このスレの住人のTON検出力を甘く見んなw
0688デフォルトの名無しさん
2009/04/24(金) 04:40:170689デフォルトの名無しさん
2009/04/24(金) 04:50:520690デフォルトの名無しさん
2009/04/24(金) 06:31:070691デフォルトの名無しさん
2009/04/24(金) 07:25:310692デフォルトの名無しさん
2009/04/24(金) 13:29:230693デフォルトの名無しさん
2009/04/24(金) 18:26:360694デフォルトの名無しさん
2009/04/27(月) 20:49:56項目名(温度センサーなら温度)とその値を持つ構造体の名前、どうしたらいいでしょうか
単純そうに思えてしっくり来る名前が思いつかないです
0695デフォルトの名無しさん
2009/04/27(月) 21:42:200696デフォルトの名無しさん
2009/04/27(月) 22:43:490697デフォルトの名無しさん
2009/04/27(月) 23:00:42SensedValue
0698デフォルトの名無しさん
2009/04/28(火) 06:39:450699デフォルトの名無しさん
2009/04/28(火) 21:20:060700デフォルトの名無しさん
2009/05/03(日) 14:17:29そうではないが、刺激を与え合う関係であれば、中程度に複雑なものを。
誰もが気流に乗れていない状況であれば、いっその事名前をつけない。
客に媚びたいならば、可能であればジェネリクスを使う(同時に、客にはキッシュでも食わせておく)。
0701デフォルトの名無しさん
2009/05/05(火) 05:06:580702デフォルトの名無しさん
2009/05/06(水) 10:21:450703ムモー
2009/05/10(日) 22:17:00頭文字語を入れると読みにくくなるよね。
たとえば、「ABC法」という方法があって、
それをクラス化する場合、ABCMethod とすると読みにくくない?
AbcMethod にすべき?それだと頭文字であることが分かりにくいよね。
0704デフォルトの名無しさん
2009/05/10(日) 22:25:02_使うっていう俺は素人
0705デフォルトの名無しさん
2009/05/10(日) 22:33:160706デフォルトの名無しさん
2009/05/10(日) 22:39:49俺はマイクロソフトのガイドラインに則って2文字か3文字以上かで分けてる。
IOMode ioMode;
XmlDocument xmlDocument;
0707ムモー
2009/05/10(日) 22:50:28うーん。でも、「AB法」とそれを拡張した「ABC法」というのがあって、
一方は ABMethod でもう一方は AbcMethod っていうのは、よくないかなーって。
実際、今の仕事でそういうのがあるんだけど。
0709デフォルトの名無しさん
2009/05/11(月) 00:52:320710709
2009/05/11(月) 01:07:27その言語の標準の命名規則に盲目的に従っておけば
その言語仕様における名前の解決の方法・順番に纏わる
トラブルに巻き込まれることが少なくなることを期待
なので、AbcMethodに一票
ABMethodは、作った人を殴りに行こう
0711709
2009/05/11(月) 01:10:210712デフォルトの名無しさん
2009/05/11(月) 02:01:230713デフォルトの名無しさん
2009/05/11(月) 03:51:130714デフォルトの名無しさん
2009/05/11(月) 19:11:41押される度にあるdivの表示非表示を切り替える関数は
なんて命名したらいいですか?
switch~~とかchange~~とか付けてたけど、ふと気になった。
0715デフォルトの名無しさん
2009/05/11(月) 19:20:210716デフォルトの名無しさん
2009/05/11(月) 21:15:30命名規則に従わないとコンパイル通らないプログラミング言語でもない限り、
トラブルに巻き込まれるわけがないだろ……
つかコーディング規約ってものは「周囲に合わせる」のが常識だろ?
C++ Coding Standards の冒頭にも書いてるけど、
重要なのはルールに従うことじゃなく、一貫した書き方をしていること。
ABMethodがあるなら当然ABCMethodを期待するだろ。
名前の問題より、期待を裏切られるほうが深刻。
命名規則に盲目的に従うとかそれこそいみふだろ、常識的に考えて
0717デフォルトの名無しさん
2009/05/11(月) 21:37:420718デフォルトの名無しさん
2009/05/11(月) 22:21:19一貫した書き方をするために、盲目的にルールに従う必要があるの。
大体「周囲」って何なんだよ。
命名規約に従うとABMethod、AbcMethodという状況で、
ABCMethodなんて規約に反した命名するのは俺からしたら思いっきり
「期待を裏切る」行為だけどね。
0719デフォルトの名無しさん
2009/05/11(月) 23:02:40最初から関わる場合は途中で変えない。
0720デフォルトの名無しさん
2009/05/11(月) 23:14:31(あと一つあったような)いろいろ面倒な概念が必要になるんだわ。
マイクロソフトは知らね
0721デフォルトの名無しさん
2009/05/12(火) 13:37:29AnyBasicChannel とかナントカ(意味フ)みたいに、略さなければいいこと。
そうすれば ABC なのか Abc なのかで悩む必要はない。
ところで便乗質問。
ラクダ法で名前を付けるとき、最初の1文字は小文字にすべし。たとえば
inputOutputMethod
みたいになるわけだが、頭にアンダースコアを付けると
_InputOutputMethod
でいいの?i は2文字目だから大文字でいいの?
0722デフォルトの名無しさん
2009/05/12(火) 13:52:28inputOutputMethod とかナントカ(意味フ)みたいに、つけなければいいこと。
そうすれば _input なのか _Input なのかで悩む必要は無い。
0723デフォルトの名無しさん
2009/05/12(火) 16:34:540724デフォルトの名無しさん
2009/05/12(火) 21:18:25所詮コーディング規約なんだから、
規約を知らない人間が理不尽だと思うようなルールには従わんでいいだろ。
「ハイフンの次は先頭じゃないから大文字でいいよ!」なんて
馬鹿げた規約が仮にあったとしたら、その規約を10部くらい印刷して全部破り捨てるね。
あとラクダ法 = CamelCaseは厳密には先頭大文字。
先頭小文字は mixedCase。あえて区別しない時もあるけど。
つかコーディング規約にやたら拘る人多いけど釣りなの?
0725デフォルトの名無しさん
2009/05/12(火) 21:52:15その概念は知らなかったが、
見る限り普通にコード書いてりゃわかりそうな概念だったぜ。
shadow: インスタンス変数とパラメータが被るときのルール
hiding: 継承関係でstaticメソッドが被ったときのルール (多態が起こらない)
obscure: パッケージ名、クラス名と変数名が被るときのルール
ABCMethodをAbcMethodにしないと面倒という意味がわからないし、
そもそもこれが面倒になるようなコード書くなよとしか言えない。this.x = x;はよくやるが。
ついでにC++とかのADLとかtypedef typename とかと比べるとだいぶ簡単な気がするぞ。
0726デフォルトの名無しさん
2009/05/12(火) 21:55:36キャメルは先頭小文字で、先頭大文字はPascalだと思うが。
0727デフォルトの名無しさん
2009/05/12(火) 22:07:080728726
2009/05/12(火) 23:09:45先頭小文字のものをlower camel caseまたは単にcamel caseと呼ぶ、だそうな。
0729デフォルトの名無しさん
2009/05/12(火) 23:25:380730デフォルトの名無しさん
2009/05/13(水) 07:25:440731デフォルトの名無しさん
2009/05/13(水) 11:27:170732デフォルトの名無しさん
2009/05/13(水) 12:13:150733デフォルトの名無しさん
2009/05/13(水) 13:45:110734デフォルトの名無しさん
2009/05/14(木) 00:36:23分かりやすいのはどっちだと思いますか?
0735デフォルトの名無しさん
2009/05/14(木) 00:50:19名前だけ見て動作が多少想像できるのは前者
0736デフォルトの名無しさん
2009/05/14(木) 01:02:36IteratorがMementoパターンにどう関連するかわからない。
0737デフォルトの名無しさん
2009/05/14(木) 01:08:410738736
2009/05/14(木) 04:19:18普通のイテレーターの機能に加えて、
・saveState⇒現在のindexをスタックに追加(Push)する
・backState⇒スタックの先頭を取り出して(Pop)、現在のindexをそれに置き換える
ていう機能がついてる感じです。
個人的にはやっぱ前者かなーと。セーブ地点に「戻せる」ようにすることが目的であって、
状態のスナップショットを記録するっていうのはちょっと違うかなぁと。
0739デフォルトの名無しさん
2009/05/14(木) 04:20:030740デフォルトの名無しさん
2009/05/14(木) 04:22:030741デフォルトの名無しさん
2009/05/14(木) 04:31:08iteration
ex) 0->1->2->3->4->5
rewindable iteration
ex) 0->1->2->3->2->1->0
0742デフォルトの名無しさん
2009/05/14(木) 06:17:02RestorableIterator
0743デフォルトの名無しさん
2009/05/14(木) 07:14:210744デフォルトの名無しさん
2009/05/14(木) 08:57:12つ bidirectional iterator
0745デフォルトの名無しさん
2009/05/14(木) 09:04:57だったら、いっそ以下。
StackableIterator
pushState()
popState()
0746デフォルトの名無しさん
2009/05/17(日) 14:12:52int nIndex;
のポインタ変数を、
int* lpnIndex;
にしました。
この場合、int** のポインタ変数のプリフィックスは何にするのが一般的でしょうか。
0747デフォルトの名無しさん
2009/05/17(日) 14:33:20Win32APIとあわせてるの?
0748デフォルトの名無しさん
2009/05/17(日) 14:57:360749746
2009/05/17(日) 15:29:5116bit 時代からプログラミングしてると、どうしても p は 16bit、lp は 32bit って意識が強いから、
lp にしちゃうんだよね
>>748
lplpn しかないか〜。thx!
0750デフォルトの名無しさん
2009/05/17(日) 15:45:010751デフォルトの名無しさん
2009/05/17(日) 18:26:390752デフォルトの名無しさん
2009/05/17(日) 22:23:190753デフォルトの名無しさん
2009/05/17(日) 22:58:08, ‐' ´ ``‐、 / ̄:三}
. /,. -─‐- 、. ヽ / ,.=j
_,.:_'______ヽ、 .! ./ _,ノ
`‐、{ へ '゙⌒ `!~ヽ. ! /{. /
`! し゚ ( ゚j `v‐冫 , '::::::::ヽ、/
. {.l '⌒ ゙ 6',! / :::::::::::::::/ __ そんなことよりTimeOfNowの話しようぜ!
. 〈 < ´ ̄,フ .ノー'_ , ‐'´::::::::::::::;/ (_ノ)‐-、
. ヽ.、 ` ‐", ‐´‐:ラ ':::::::::::::::: ;∠. ヽ_} ゙ヽ
,.r` "´ /:::::::::::::::::::ィ´ `ゝ !、 /
/ / :::::::::::::::: ; '´ /´\ / r'\
. i ! ::::::::::::::/ 墨 | .!::::::::/ヽ、.._!ヽ. ヽ、
{ {:::::::::::;:イ / ‖i:::::::/:::::::::::::/ \
. ヽ ヽ,.ァ‐'´ /ヽ 二 ,/`ヽ、::::::::: / ヽ
ヽ、 ,. ‐'" .ノ ,〈 > `'‐- '
> _,. ‐'´ / / `)
,ゝ _.⊥.-r┬:/
ヽ_,. -‐i"!´「L.=!┘ ヽ
< / / |
/ 、i / __ ./
0754デフォルトの名無しさん
2009/05/18(月) 06:47:56・subscriptions
とかでもおかしくないでしょうか?
それとも
・notificationSettings
みたいな感じのほうがよいでしょうか?
アドバイスお願いします。
0755デフォルトの名無しさん
2009/05/18(月) 06:49:070756デフォルトの名無しさん
2009/05/18(月) 21:59:270757デフォルトの名無しさん
2009/05/23(土) 06:30:19クライアント領域へ出力する派生クラスとファイルへ出力する派生クラス命名をお願いします。
0758デフォルトの名無しさん
2009/05/23(土) 09:56:06ClientPresentation
FilePresentation
0759デフォルトの名無しさん
2009/05/23(土) 12:32:57だがそれがいい
0760デフォルトの名無しさん
2009/05/23(土) 12:38:15何個あるか?を表す変数
が紛らわしくていつも困る。
なんたらnumとか言われてもどっちを指しているのかわからん。
0761デフォルトの名無しさん
2009/05/23(土) 12:55:110762デフォルトの名無しさん
2009/05/23(土) 14:19:18countってなんかループカウントみたいで使ったことないな…
0763デフォルトの名無しさん
2009/05/23(土) 14:30:32index と length に持ってければ length にしちゃう
0764デフォルトの名無しさん
2009/05/23(土) 14:42:54順序はi, j, kもしくはindex,id
0765デフォルトの名無しさん
2009/05/23(土) 15:19:19Code Completeではnumberはさけて、indexとcountを使うとあったよ。
>>762
ループカウンタはi, j, kしか使わない、ってことにすればすっきりするよ。
0766デフォルトの名無しさん
2009/05/23(土) 15:31:52なるほど。thx
0767デフォルトの名無しさん
2009/05/23(土) 21:33:48上と下ってup,above,under,lowのそれぞれどれがいいんだ?
辞書で調べたんだが、今一どれが一般的なのか分からん。
0768デフォルトの名無しさん
2009/05/23(土) 21:37:340769デフォルトの名無しさん
2009/05/23(土) 21:37:48単純に(矢印で表されるような)方向のことならupとdownを使ってる。
上辺とか下辺という意味が強いならRECTにならってtopとbottomにしてる。
0770デフォルトの名無しさん
2009/05/23(土) 21:47:47ありがとう。
0771デフォルトの名無しさん
2009/05/23(土) 23:28:49除算の余りを表す変数名に相応しいものを、それぞれについてお願いします。
0772デフォルトの名無しさん
2009/05/23(土) 23:42:49ttp://en.wikipedia.org/wiki/Euclidean_algorithm#Greatest_common_divisor
0773デフォルトの名無しさん
2009/05/23(土) 23:50:32java、cともにgcdと命名します
0774デフォルトの名無しさん
2009/05/24(日) 06:22:140775デフォルトの名無しさん
2009/05/24(日) 07:52:120776デフォルトの名無しさん
2009/05/24(日) 10:36:040777デフォルトの名無しさん
2009/05/24(日) 15:49:14関数名ならgcdでいいが局所変数は(ry
0778デフォルトの名無しさん
2009/05/24(日) 20:39:06英語的には textfield (that) Enumerates Keywords とか?
textfiledEnumKeywords
とかなんとか。
変ですかすいません。
0779デフォルトの名無しさん
2009/05/24(日) 21:17:000780デフォルトの名無しさん
2009/05/24(日) 21:58:120781デフォルトの名無しさん
2009/05/24(日) 22:18:15キーワードってのが既に曖昧じゃない?改めた方がいい気がする
列挙する機能がそれに付いてるのなら〜sFieldでいいと思う
0782デフォルトの名無しさん
2009/05/24(日) 22:30:570783デフォルトの名無しさん
2009/05/25(月) 13:48:04処理(関数)の名前をお願いします。
0784デフォルトの名無しさん
2009/05/25(月) 14:30:570785デフォルトの名無しさん
2009/05/25(月) 19:24:02指定されたボタンが押されたかどうかをチェックする関数名をお願いします。
●監視対象はゲームパッド、キーボード、マウスを想定しています。
デバイス名に依存しない名前が好ましいです。
●戻り値は、基本的に真/偽の2値として利用しますが、
整数型で受け取った場合は、同じ状態が何フレーム連続で続いたかを返せるようにします。
●オーバーロードまたはデフォルト引数の機能を使って、第2引数に「より詳細な状態(トリガ)」を指定することが出来る。
例:
Func( MOUSE_R ) ; //マウスの右ボタンが押されていれば真
Func( MOUSE_R , PUSH_DOWN ) ; //押した瞬間のみ真
0786デフォルトの名無しさん
2009/05/25(月) 19:38:380787デフォルトの名無しさん
2009/05/25(月) 20:12:45下の関数をIsTriggeredと命名してる
俺の場合
0788デフォルトの名無しさん
2009/05/25(月) 21:38:39inputEventRecieved
0789デフォルトの名無しさん
2009/05/25(月) 21:39:20ネットワーク用語のポーリングと同じ意味?
>787
現状だと僕も同じような名前で使っています。
ただ、関数名を共通にして、引数の違いだけで区別できないかな?と思いまして。
0790デフォルトの名無しさん
2009/05/25(月) 21:42:36スレチだが
0791デフォルトの名無しさん
2009/05/25(月) 22:03:57機能が複雑なのでIs〜とかGet〜とかは付けたくない感じ
0792783
2009/05/26(火) 02:11:38ども。
toSIPrefixだと、なんかおちつかない気分になります。
SI接頭辞はK/M/Gとかいうことですよね?ちょっとあわないような。
4,668,327→4.45Mというような、SI接頭辞を含む変換を行う
処理(関数)を明確にあらわす名前はないでしょうか?
0793デフォルトの名無しさん
2009/05/26(火) 02:32:41human readable と表現することがあるが、そういうこと?
0794デフォルトの名無しさん
2009/05/26(火) 02:40:340795デフォルトの名無しさん
2009/05/26(火) 03:58:39toBinaryPrefixNotation
BinaryPrefixというのがIEEEで定められてるので、そっからとってみた。
0796デフォルトの名無しさん
2009/05/26(火) 04:14:490797デフォルトの名無しさん
2009/05/26(火) 07:25:56SI prefixだと 10^3, 10^6 の意味だからむしろ間違い。
0798デフォルトの名無しさん
2009/05/26(火) 13:02:490799デフォルトの名無しさん
2009/05/26(火) 18:28:46(1)
通常のassertマクロはリリース時には削除されるが、リリース時でも削除されないassertマクロの名前。
ASSSERT_ナントカみたいな名前が良さそうかな?と思っています。
(2)
与えられた文字列をエラーメッセージとして、強制終了するマクロの名前。
EXIT? DIE? HALT?
別スレに誤爆したけどくじけないぞ。
0800デフォルトの名無しさん
2009/05/26(火) 18:58:40ASSERT_PRECAUTION
ASSERT_IN_PRODUCTION_RELEASE
ASSERT_BETA_TEST
ASSERT_BETA_FOREVER
ASSERT_PARANOIA
(2)
perlにならってDIE
0801デフォルトの名無しさん
2009/05/26(火) 19:37:450802デフォルトの名無しさん
2009/05/26(火) 22:37:520803デフォルトの名無しさん
2009/05/26(火) 22:48:350804デフォルトの名無しさん
2009/05/27(水) 01:53:03(1) 強制assertっぽいので、FORCE_ASSERT。
(2) 「強制終了」のイメージがありそうなHALT。
0805783
2009/05/27(水) 02:15:08>有効数字3桁くらいになるように、適当に接頭辞を付けたものを
>human readable と表現することがあるが、そういうこと?
気持ちとしては、まさにそのとおりです。
処理の名前として納得できるものがないようでしたら、そういう
雰囲気重視の名前がいいかもしれないです。
>>795
>toBinaryPrefixNotation
Notationがつくとまた印象がかわりますね。
また、Binary Prefixというのも参考になります。
ただ、名前の結論を待たずに、とりあえず関数を実装したのですが、
ちょっと雰囲気が変わりましたので、あらためてうかがいます。
変換したい値と、1000とか1024とか12とか(基数?)を引数で指定して、
それに基づく変換を行う処理はどんな名前がいいでしょうか?
たとえば :
f(1500,1000) => 1.5 (K)
f(2560,1024) => 2.5 (Ki)
f( 504, 12) => 3.5 (グロス)
0806デフォルトの名無しさん
2009/05/27(水) 08:34:550807デフォルトの名無しさん
2009/05/27(水) 13:55:430808デフォルトの名無しさん
2009/05/27(水) 14:28:041. CHECK, VALIDATE
2. FATAL_ERROR
0809デフォルトの名無しさん
2009/05/27(水) 20:10:44具体的にどれさ
>808
ASSERT関係なくね?
0810デフォルトの名無しさん
2009/05/27(水) 20:30:18引数に名前($name)を受け取って、
その名前がDBのテーブル内に存在すればそのIDを、
存在しなければ、新規に保存して、挿入したIDを返す
というような関数は、どんな名前が考えられますでしょうか?
findIdByNameでは可笑しいでしょうか?
よろしくお願いします。
0811デフォルトの名無しさん
2009/05/27(水) 20:58:400812デフォルトの名無しさん
2009/05/27(水) 21:19:57既にDBにあろうが無かろうが関係なく、指定した名前に対するIDを貰ってくるという見た目は変わらないんじゃない?
0813810
2009/05/27(水) 21:23:13これは私宛でしょうか?
もう少しnameを渡してidを得るというニュアンスが欲しいのですが。
>>812
そうなんです。
というか、それを意識しないでいいようにするための関数なので、
上にも書いたように「nameを渡してidを得る」という意味だけでいいのですが・・・
こういう場合はfindじゃなくてgetのようがいいのでしょうかね・・・
getIdByName??
0814デフォルトの名無しさん
2009/05/27(水) 21:36:140815デフォルトの名無しさん
2009/05/27(水) 21:45:27lispとかのinternはまさにそんな感じの動きするから。
0816デフォルトの名無しさん
2009/05/27(水) 22:40:511.
コレクションからランダムに要素を取得するが削除しないメソッド
2.
コレクションからランダムに要素を取得し削除するメソッド
3.
コレクションのランダムな要素と引数に指定した要素を置き換えるメソッド
0817デフォルトの名無しさん
2009/05/27(水) 23:14:20そのまま GetId ( name ) というパターンもありそう。
Perlなら GetId( 'name' => $name ) とか出来た気がするし。
0818デフォルトの名無しさん
2009/05/27(水) 23:30:57ランダムって、適当にどれでもいいから一つって意味?
それとも呼ぶ側が指定した任意のアイテムって意味?
0819デフォルトの名無しさん
2009/05/27(水) 23:37:331. getRandomItem()
2. getRandomItem_remove()
3. getRandomItem_swap()
>>818
「ランダム」といえば乱数的だろ。jk
0820783
2009/05/27(水) 23:45:55>1回割ったとか2回割ったとかいう情報は失っていいの?
ダメです。w
>>805の例では省いちゃったんですが、より詳しくは次のような感じ。
f(変換したい値,基数) => (変換された値,基数の乗数)
f(1500,1000) => (1.5,1) # 1500=1.5K
f(2560,1024) => (2.5,1) # 2560=2.5Ki
f(2097152,1024) => (2,2) # 2097152=2Mi
f(504,12) => (3.5,2) # 504=3.5グロス
なんか処理が具体的でもあり抽象的でもあり、しっかりした名前を
与えるには中途半端な印象なんですよねー。
0821デフォルトの名無しさん
2009/05/27(水) 23:59:16random_sample
random_pop
random_swap
でもメソッド?
randomな自然数を決めて添字アクセスができればどんなコンテナでもいいし、
関数でいいような気がするけどなー
0822デフォルトの名無しさん
2009/05/28(木) 00:01:34> 「ランダム」といえば乱数的だろ。jk
random access memory って別に乱数的じゃないわけで。ま、どうでもいいけど。
0823デフォルトの名無しさん
2009/05/28(木) 00:09:04NormalizeByRadix
0824デフォルトの名無しさん
2009/05/28(木) 01:07:22ランダムとランダムアクセスをいっしょくたにするやつはいないだろ。
0825デフォルトの名無しさん
2009/05/28(木) 01:10:11>>816の2は「要素の削除」をするようなので、コンテナオブジェクトの
メソッドにするのは当然なんでは。
それとも、まさかstd::remove()みたいな仕様にするのか?
0826デフォルトの名無しさん
2009/05/28(木) 01:21:170827799
2009/05/28(木) 02:12:43ありがとうございます。
0828デフォルトの名無しさん
2009/05/28(木) 02:23:070829デフォルトの名無しさん
2009/05/28(木) 02:39:56「製品版で強制終了させるなら、きちんと別処理にしたほうがいいんじゃね」
なんてやりとりがあったことは秘密ですよ?
0830デフォルトの名無しさん
2009/05/28(木) 14:23:24どんな名前が適切でしょうか?
0831830
2009/05/28(木) 14:26:47要素がすぐ消えてなくなるから VolatileHash とかどうでしょうかね
わかりにくいか……
0832デフォルトの名無しさん
2009/05/28(木) 14:47:16DestructiveReadoutHashSetかな
まあpop(set, key)関数でも作って使わせた方が良いと思うけど
0833デフォルトの名無しさん
2009/05/28(木) 22:12:470834デフォルトの名無しさん
2009/05/28(木) 23:21:570835デフォルトの名無しさん
2009/05/29(金) 01:02:38カラムが固定されたかどうか(それ以上カラムを設定できない)を判定するフラグ変数の名前で迷ってます。
fixedはどうもバグフィックスのイメージが強いので他のキーワードってないでしょうか
0836デフォルトの名無しさん
2009/05/29(金) 01:21:10freezeしてfrozenになる、という話かと思ったら違うね。
必要な要素をいくつか指定していき、指定し終えた、よってさらなる指定は
できない、という判定をするものなら fulfilled はどうだろうか。
0837デフォルトの名無しさん
2009/05/29(金) 03:55:42freezeもいいですね。凍結するって感じで
でもfulfilledの方が「追加できない」って意味で合ってる感じがするので
fulfilledの方を使わせてもらいます。(fullfilledって間違えそう・・・)
ありがとうございました。
0838デフォルトの名無しさん
2009/05/30(土) 09:03:26foreachで変数を回すときに
itemsとかなら foreach ($items as $item) としているのですが、
seriesとかequipmentのように、
複数形と単数形の区別がない名詞の場合、
みなさんならどうしてますか?
かっこいい方法が知りたいです。
0839デフォルトの名無しさん
2009/05/30(土) 09:37:28短い名前にした方が、ぱっと見で区別できて読みやすい。
局所的なのは短く、大域的になるにつれて長く。
自分の場合はね。
0840デフォルトの名無しさん
2009/05/30(土) 10:31:25どうような理由でbooleanを返すメソッドでareで始まるのが文法上ただしくても
あえてisで始めたりする。
0841デフォルトの名無しさん
2009/05/30(土) 12:49:090842838
2009/05/30(土) 12:49:44foreach ($series as $s)
foreach ($equipment as $e)
こんなかんじですかね?
でもループが入れ子になると衝突する可能性がありますね。
$s1、$s2、$e1、$e2なんてのも、あとで手直しするときにめんどくさそうですし・・・
>>局所的なのは短く、大域的になるにつれて長く。
というのは、それを考慮してのことでしょうか?
>>840
foreach ($series as $serie)
foreach ($equipments as $equipment)
みたいに、無理やり複数or単数にするかんじでしょうか?
ここらへん、ネイティブの人がどうしてるのか気になるところですね・・・
後者は
isAdmin()、isAllow()
みたいなのは、全部isで統一するということですね。
自分はareにすべき、というのに出くわしたことがないのですが・・・
(気づいてないだけかも;)
0843デフォルトの名無しさん
2009/05/30(土) 13:17:29>$s1、$s2、$e1、$e2なんてのも、あとで手直しするときにめんどくさそうですし・・・
長かったらもっとめんどくさいんじゃね?
そもそも、混乱するほど何重にもネストしてるのは
ループの中を別の関数にわけた方が良いことを示してるのでは。
>>>局所的なのは短く、大域的になるにつれて長く。
>というのは、それを考慮してのことでしょうか?
局所的なのは、使われてる場所自体が、説明的な長い名前の代わりになる。
大域的になるにつれてそういう情報が少なくなるから、説明的な長い名前にする。
0844デフォルトの名無しさん
2009/05/30(土) 13:18:380845デフォルトの名無しさん
2009/05/30(土) 13:21:230846デフォルトの名無しさん
2009/05/30(土) 14:20:360847デフォルトの名無しさん
2009/05/30(土) 14:26:270848デフォルトの名無しさん
2009/05/30(土) 20:12:44オレならなんでも「it」。
0849デフォルトの名無しさん
2009/05/30(土) 20:47:180850デフォルトの名無しさん
2009/05/30(土) 21:11:030851デフォルトの名無しさん
2009/05/30(土) 21:18:110852デフォルトの名無しさん
2009/05/30(土) 21:47:110853デフォルトの名無しさん
2009/05/30(土) 22:17:230854デフォルトの名無しさん
2009/05/31(日) 08:20:380855855
2009/05/31(日) 08:23:420856デフォルトの名無しさん
2009/05/31(日) 11:31:53型のプレフィックスを付けない場合はどう名付ければいいでしょうか?
0857デフォルトの名無しさん
2009/05/31(日) 11:53:34date
型のプリフィックじゃなくて、入力を示すアプリケーションハンガリアン
0858デフォルトの名無しさん
2009/05/31(日) 18:44:24つverify()
0859デフォルトの名無しさん
2009/06/02(火) 17:04:320860デフォルトの名無しさん
2009/06/02(火) 17:14:160861デフォルトの名無しさん
2009/06/02(火) 18:03:440862デフォルトの名無しさん
2009/06/02(火) 18:15:09誰か論理的に語ってくれよ
0863デフォルトの名無しさん
2009/06/02(火) 18:35:44nHoge
ハンガリアンで何が悪い!
0864デフォルトの名無しさん
2009/06/02(火) 19:02:070865デフォルトの名無しさん
2009/06/02(火) 20:20:57ハンガリアンとか関係ないだろw
略すか略さないかの問題なんだよ
Count消えてるじゃねえか
0866デフォルトの名無しさん
2009/06/02(火) 20:35:170867デフォルトの名無しさん
2009/06/02(火) 20:36:53メソッド名では省略しない。
0868デフォルトの名無しさん
2009/06/02(火) 20:42:24自分も含めてチームの全ての人が一見して即わかるなら省略して良い。
0869デフォルトの名無しさん
2009/06/02(火) 21:31:21どっかでこういうのの一覧みたことあるんだけど、どこだったかなぁ?
0870デフォルトの名無しさん
2009/06/03(水) 00:09:59引き継ぐ人カワイソス
0871デフォルトの名無しさん
2009/06/03(水) 01:17:280872デフォルトの名無しさん
2009/06/03(水) 02:42:14忘れても最悪1ファイル分解読すれば済むし。
publicなら意味が曖昧にならないよう念入りに推敲する。
0873デフォルトの名無しさん
2009/06/03(水) 03:09:290874デフォルトの名無しさん
2009/06/03(水) 11:38:410875デフォルトの名無しさん
2009/06/03(水) 12:47:270876デフォルトの名無しさん
2009/06/03(水) 13:08:44Internationalizationのように美しく略さないと
0877デフォルトの名無しさん
2009/06/03(水) 19:06:290878デフォルトの名無しさん
2009/06/03(水) 19:17:540879デフォルトの名無しさん
2009/06/03(水) 21:44:51で、英語が多くなってくるとプロポーショナルフォントの方が読みやすかったりする。
0880デフォルトの名無しさん
2009/06/03(水) 22:39:39読みやすさだけに限ればなんとか理解できなくもないが、
プログラムにプロポーショナルフォントなんて虫唾が走る
0881デフォルトの名無しさん
2009/06/03(水) 22:54:210882デフォルトの名無しさん
2009/06/03(水) 23:20:08よっぽどひどいディスプレイとIDEとフォントと・・・全部だめなの使ってるんだろうな
0883デフォルトの名無しさん
2009/06/03(水) 23:29:210884デフォルトの名無しさん
2009/06/03(水) 23:47:520885デフォルトの名無しさん
2009/06/04(木) 01:10:06プロポーショナルもありかもなぁ
0886デフォルトの名無しさん
2009/06/04(木) 01:23:04行中のコメント位置を揃えたいとかなると、
フォントが変われば即破綻だな。
つか、スレチだぜ。
0887デフォルトの名無しさん
2009/06/04(木) 18:43:46お気に入り登録し過ぎたか
0888デフォルトの名無しさん
2009/06/04(木) 18:54:08行頭以外でカラムはそろえないようにしたから、特に不自由はない。
0889デフォルトの名無しさん
2009/06/04(木) 19:09:29void setHoge(int hoge){
m_hoge = hoge;
}
void setHoge(int hoge){
this->hoge = hoge;
}
どっちが主流なんだろ?
メンバ変数、引数、ローカル変数名が紛らわしいときいつも困る
0890デフォルトの名無しさん
2009/06/04(木) 19:11:46引数やローカル変数と被ると言うよりはメンバメソッドとの重複を避けるためだが。
0891デフォルトの名無しさん
2009/06/04(木) 19:22:34結構一般的な方法なのかな
あと
メソッドって動詞にしかならないイメージだから
メンバ変数と被るケースってのがちょっと自分には想像できないな…
0892デフォルトの名無しさん
2009/06/04(木) 20:08:57m_ はなんか重くて
this-> はどっかにやるなって書いてなかったっけ?
0893デフォルトの名無しさん
2009/06/04(木) 20:20:49うちではアクセサにget/setを付けないことになってるから。
void count(size_t value) { this->value_ = value; }
size_t count() const { return this->value_; }
末尾_はインテリセンスと相性がいいから、結構使われてると思うよ。
0894デフォルトの名無しさん
2009/06/04(木) 20:52:510895デフォルトの名無しさん
2009/06/04(木) 21:08:15ありがと。
自分もなるべく一般性の高いやり方にしたいから末尾_使うようにする。
>>893
>末尾_はインテリセンスと相性がいいから、
これちょっとわからないんだけど
インテリセンスの候補から視覚的に探しやすいってこと?
―って質問文を書いたら今気付いた。
先頭m_だと候補から選ぶとき最低3文字入力しないといけないからか。
0896デフォルトの名無しさん
2009/06/04(木) 21:34:360897デフォルトの名無しさん
2009/06/04(木) 22:45:07mHoge
視認性が末尾_より高く、インテリセンスもm_よりはshift不要で入力が楽な上に
メンバ変数だけを候補に絞れるから楽
これ最強
あんまし見ないけど
0898デフォルトの名無しさん
2009/06/04(木) 22:58:54色弱対応?
0899デフォルトの名無しさん
2009/06/04(木) 23:00:170900デフォルトの名無しさん
2009/06/04(木) 23:19:220901デフォルトの名無しさん
2009/06/04(木) 23:27:47後ろにつけるのが最近の流行。
0902デフォルトの名無しさん
2009/06/04(木) 23:31:47クラスの頭にCとかも。
0903デフォルトの名無しさん
2009/06/04(木) 23:47:200904デフォルトの名無しさん
2009/06/05(金) 00:07:430905デフォルトの名無しさん
2009/06/05(金) 01:20:58mHogeでも大文字にするためにシフト必要じゃね?
0906デフォルトの名無しさん
2009/06/05(金) 01:24:470907デフォルトの名無しさん
2009/06/05(金) 01:40:01VC2003で確かめてみたがshiftは不要。mhと入力するだけでmHが候補に挙がる。
万が一mhで始まるメンバが他にあるなら小文字のh側が優先されるが、まずないだろうし。
0908デフォルトの名無しさん
2009/06/05(金) 19:25:120909デフォルトの名無しさん
2009/06/05(金) 19:40:100910デフォルトの名無しさん
2009/06/05(金) 21:01:490911デフォルトの名無しさん
2009/06/05(金) 22:13:060912デフォルトの名無しさん
2009/06/05(金) 22:19:280913デフォルトの名無しさん
2009/06/05(金) 23:25:44mAppleというメンバがあって
maxというメソッドがあったり
mIciroというメンバがあって
mixというメソッドがあったり
mUntanというメンバがあって
muteというメソッドがあったり
mEnemyというメンバがあって
mesというメソッドがあったり
mOrangeというメンバがあって
moveというメソッドがあったり
0914デフォルトの名無しさん
2009/06/06(土) 02:36:15命名規約がなかったり無視されたりしがちな社内製作、社内利用の
アプリケーションなんかだと良くあるよね。
とりあえずRubyみたいにメンバ変数は"@"で始まるとか
文法で決めてしまってくれたほうがすっきりして良いと思うんだけど、
Java改良版(と個人的に思っている)のC#でも採用されないところをみると、
みんなあんまり好きじゃないのかな?
0915デフォルトの名無しさん
2009/06/06(土) 02:41:160916デフォルトの名無しさん
2009/06/06(土) 04:45:29命名規約のようなものが見つからないので、
とりあえず自分では以下のように考えているのですが、
何か駄目出しがあったら教えて下さい。
find(一覧取得)とget(一行取得)の使い分けが
微妙かなーと思っているのですが...
count() - レコードの総件数を取得
countByFoo - 条件指定の件数取得
countByFooAndBar - 条件が複数ある場合の件数取得
countByCondition - 条件が多数ある場合の件数取得
findAll() - レコード全て取得
findByFoo - 条件指定の一覧取得
findByFooAndBar - 条件が複数ある場合の一覧取得
findByCondition - 条件が多数ある場合の一覧取得
getByFoo - 条件指定の一行取得
getByFooAndBar - 条件が複数ある場合の一行取得
getByCondition - 条件が多数ある場合の一行取得
insert - 追加
update - 全件更新
updateByFoo - 更新
delete - 全件削除
deleteByFoo - 条件指定の削除
0917デフォルトの名無しさん
2009/06/06(土) 07:07:58○○には、実行、更新、取得などの動詞が入る予定。ちなみに保持する時刻の単位はミリ秒。
last_time_when_do_hoge?
last_time_when_did_hoge?
なんか長いよ…。
>908
言われてみれば、プリフィクス以外で、mhで始まる単語はパッとは思いつかない…気もする。
>914
Perlは前に付ける記号で意味が変わってくるからなあ。
@$hogeみたいに複数くっつく場合とか、もうね……。
0918デフォルトの名無しさん
2009/06/06(土) 07:48:14when
time
hoge
↓
last_XXXed
last_YYYed
0919デフォルトの名無しさん
2009/06/06(土) 08:03:430920デフォルトの名無しさん
2009/06/06(土) 08:18:010921デフォルトの名無しさん
2009/06/06(土) 08:36:27>919さんの方法はちょっと目ウロコでした。
0922デフォルトの名無しさん
2009/06/06(土) 12:12:37time whenのかわりに最後にatを付けるなどして、
last hoge update at (最後にhogeを更新した時刻)などとしては?
0923デフォルトの名無しさん
2009/06/06(土) 12:14:370924デフォルトの名無しさん
2009/06/06(土) 12:14:550925デフォルトの名無しさん
2009/06/06(土) 12:59:24大きいスコープなら長めの変数名でいいと思うけど
0926デフォルトの名無しさん
2009/06/06(土) 18:33:3410行くらいの関数の中。ごめんなさい。
0927デフォルトの名無しさん
2009/06/06(土) 19:37:17lastDoneTime
0928デフォルトの名無しさん
2009/06/07(日) 01:30:50コンボボックスに日付を入れるようなメソッドのプレフィックスは何がいいでしょうか。
今はsetXXXXToComboBox1のようにsetを付けています。
addやappendはなんとなく違うような気がして。
また、引数でbool値を渡して、それによって動作が変わるような変数は
どのような名前が良いでしょうか。
動作自体を切り変えるような場合はshouldXXXX、
戻り値を切り変えるような場合はrequiredXXXXにしています。
0929デフォルトの名無しさん
2009/06/07(日) 01:46:19つか「戻り値を切り替える→required」てのが意味わからん
0930デフォルトの名無しさん
2009/06/07(日) 02:20:390931デフォルトの名無しさん
2009/06/07(日) 10:37:45bXxxxでええよ
0932デフォルトの名無しさん
2009/06/07(日) 11:10:59引数の形式でどうやって命名するんだ。
機能を言ってくれんとなんともいえん。
0933デフォルトの名無しさん
2009/06/07(日) 11:13:330934デフォルトの名無しさん
2009/06/07(日) 11:16:350935デフォルトの名無しさん
2009/06/07(日) 13:36:06混乱させてしまい、すみません。説明が不明瞭でした。
「○○が必要か否かを示すフラグ」の名前を悩んでいたのです。
shouldXXXXの方は例えば以下です
void addCurrentDateToComboBox1(bool 現在の内容を消すフラグ)
requiredXXXXの例は以下
string convertStringToDate(bool 不正時にNULLを返すフラグ)
定石であるisやcan, hasで置き換えられなく、
といってEnumを作るまでもないような…というような場合です。
個人的には>>929さんの案でいいような気がしてきました。
変に接頭辞つけない方が返って分かりやすそうです。
>>931
いったん初期化してしまうような場合は何がよいでしょうか。
例えばLabelに新しい文言をセットするような場合です。
0936デフォルトの名無しさん
2009/06/07(日) 14:08:07discardPreviousState
下
returnNullOnError
みたいにその変数がフラグであるとか意識せずに
単に振舞いの内容を使ってそのまま命名したらいいんじゃないのでしょうか?
0937デフォルトの名無しさん
2009/06/07(日) 14:08:51→2つに分ける。
void ComboBox1::addCurrentDate()
void ComboBox1::replaceToCurrentDate() or ComboBox1::setCurrentDate()
>string convertStringToDate(bool 不正時にNULLを返すフラグ)
→falseを与えたとして不正時にどうするつもりだ?
0938デフォルトの名無しさん
2009/06/07(日) 14:13:49例外が飛んできます(例: emacsのre-search-xxx)
0939デフォルトの名無しさん
2009/06/07(日) 14:17:530940デフォルトの名無しさん
2009/06/07(日) 14:19:57なるほど。
想像できんかったのでてっきり
hoge.do(false); //海を泳ぐ
hoge.do(ture); //空を飛ぶ
↑こんなのかと思った。
自分なら
isCurrentDelete
isNullReturn
英語的にはおかしいが意味が明瞭なので
0941デフォルトの名無しさん
2009/06/07(日) 14:51:07意味不明でしょ。
0942デフォルトの名無しさん
2009/06/07(日) 14:55:06もうちょいマシな代案よろ
0943デフォルトの名無しさん
2009/06/07(日) 15:47:54exceptionDisabled
0944デフォルトの名無しさん
2009/06/07(日) 16:23:22メソッドを使う側から見れば等価じゃないのかな?
あと、.NETはよく分からないんだけど、もし複数の戻り値を設定できるなら(Cのポインタ渡しみたいに)、
いっそのこと全パターン返して、呼び出し側に好きなように使ってもらうとかどうだろうか。
本物の戻り値は、常にエラーや例外があったかどうかを返すようにして。
>941
>英語的にはおかしい
複数形が単数形になってるとか、一部の単語が抜けてるとか、単語の順番が逆とかならよくある……あるよね?
0945デフォルトの名無しさん
2009/06/07(日) 16:58:18接頭辞つけなくていいよ
shouldの方はこういう例と一緒でしょ
http://msdn.microsoft.com/ja-jp/library/36b035cb(VS.80).aspx
public StreamWriter (
string path,
bool append
)
requiredの方はフラグがfalseのとき不正なら例外投げるの?
TryParseとParseとConvertあたりを参考にしてみては?
0946デフォルトの名無しさん
2009/06/07(日) 17:26:00Cを前提としています。
Func1( ); //ループの前に一度だけ行われる初期化
while ( 1 )
{
Func2 (); //ループの先頭で行われる初期化
/* メイン処理 */
}
0947デフォルトの名無しさん
2009/06/07(日) 17:33:31それともどんな処理にも適合する汎用的な名前がほしいってこと?
0948デフォルトの名無しさん
2009/06/07(日) 17:41:42実際にはfooとかbarとか付くことになると思う。
0949デフォルトの名無しさん
2009/06/07(日) 17:53:44例えばファイルを列挙するなら
if(FindFirstFile())
do{
...
}while(FindNextFile())
無理やりつけるならinit, poll/main〜/executeとかか
0950デフォルトの名無しさん
2009/06/07(日) 17:53:46InitializeBar
0951デフォルトの名無しさん
2009/06/07(日) 17:56:45First/Nextみたいなのは面白いなあ。
>950
それ、どっちがどっちだか分かんない。
0952デフォルトの名無しさん
2009/06/07(日) 17:57:370953デフォルトの名無しさん
2009/06/07(日) 18:01:00InitializeInsideLoop
0954デフォルトの名無しさん
2009/06/07(日) 18:14:56initialize_2
0955デフォルトの名無しさん
2009/06/07(日) 19:37:04.NET だと普通は、
Hoge メソッド ― 戻り値は処理の結果、エラー時は例外発生。
TryHoge メソッド ― 戻り値は処理の成否、出力パラメータ(参照渡しみたいなもの)で結果を返す。エラー時は型のデフォルト値。
という使い分けが定石。
どうしても引数で挙動を変えたい場合は throwOnError が鉄板。
0956デフォルトの名無しさん
2009/06/07(日) 22:56:10参った
俺よりは遥かにマシだな
0957デフォルトの名無しさん
2009/06/07(日) 23:33:44addCurrentDateToComboBox1(bReset)
convertStringToDate(bPermitNull;Ret)
0958デフォルトの名無しさん
2009/06/07(日) 23:54:060959デフォルトの名無しさん
2009/06/08(月) 03:48:290960デフォルトの名無しさん
2009/06/08(月) 05:20:020961デフォルトの名無しさん
2009/06/08(月) 16:32:40ローカル変数なので短くしたいと思ってます。
0962デフォルトの名無しさん
2009/06/08(月) 17:25:54historyとhistories、どちらが妥当でしょうか?
それとも、old_pricesなどのほうが分かりやすいでしょうか?
よろしくお願いします。
0963デフォルトの名無しさん
2009/06/08(月) 19:01:27ジャーナルとは違くて?
0964デフォルトの名無しさん
2009/06/08(月) 19:06:32allocate(CInterface *&pInterface, enum EXxx eXxx);
みたいな感じにしたいんですが、何かいい名前はありますでしょうか?
サブクラスの名札という意味でEHogeTagとかEHogeIDを候補に考えてるんですがなんか違うような気がします
0965デフォルトの名無しさん
2009/06/08(月) 20:43:45c
0966デフォルトの名無しさん
2009/06/08(月) 21:17:43クラス内enumで被らないようにしてtypeとかでいいんじゃね?
0967デフォルトの名無しさん
2009/06/08(月) 21:37:44coeff.
0968デフォルトの名無しさん
2009/06/08(月) 23:47:391文字にまでするとさすがに分かりにくそうで・・・。
>>967
これにします。
ありがとうございました。
0969デフォルトの名無しさん
2009/06/09(火) 08:55:15実際に購入できる、商品の最小単位(色、サイズなどの組み合わせなど)を表したいのですが、
なにかよいネーミングはないですか?
Skuじゃかっこわるいし・・・
Variation?
ProductInstanceじゃ変かな・・・
0970デフォルトの名無しさん
2009/06/09(火) 10:06:220971969
2009/06/09(火) 10:18:25かっこわるいというか、
SKUって、名前というより、概念というかんじがするので・・・
もうちょっとcountableな(?)感じにしたいんです。
Variantとか、AttributeCombinationとかも考えたのですが、
そもそも色やサイズが存在しない商品もあるので、ちょっと違うかなと・・・うまく説明できませんが;
0972デフォルトの名無しさん
2009/06/09(火) 10:25:190973デフォルトの名無しさん
2009/06/09(火) 18:43:040974デフォルトの名無しさん
2009/06/09(火) 18:57:230975デフォルトの名無しさん
2009/06/11(木) 20:26:24ちゃんとしたURLかチェックするクラスを作っているんだが、どんな名前がいい?
無難にCheckUrlとかしてみたんだが、似たような事をするメソッドが多くて
0976デフォルトの名無しさん
2009/06/11(木) 20:33:290977デフォルトの名無しさん
2009/06/11(木) 20:33:370978デフォルトの名無しさん
2009/06/11(木) 20:37:360979975
2009/06/11(木) 20:41:10戻り値がboolean&何かをチェックするメソッドなら、普通はisから始まるわけ?
質問ばっかりでスマソ
0980デフォルトの名無しさん
2009/06/11(木) 20:52:41だから状態を調べるメソッドだとisになりやすいね
0982デフォルトの名無しさん
2009/06/11(木) 21:14:070983デフォルトの名無しさん
2009/06/11(木) 21:21:03公衆トイレの落書き並みにコメントが盛り上がっててわらた
0984デフォルトの名無しさん
2009/06/11(木) 22:06:120985デフォルトの名無しさん
2009/06/11(木) 22:12:58で、Validation関連のインタフェース(なければ作成)で定義された
isValidメソッドを実装する、と。
0986デフォルトの名無しさん
2009/06/11(木) 22:26:07お題がクラスっていってるのに何いってんの。
0987975
2009/06/11(木) 22:30:02ありがとうよ〜
0988デフォルトの名無しさん
2009/06/11(木) 22:35:430989デフォルトの名無しさん
2009/06/11(木) 22:35:540990デフォルトの名無しさん
2009/06/11(木) 22:40:04聞きたかったのはメソッド名?クラス名?
0992デフォルトの名無しさん
2009/06/11(木) 22:48:250993デフォルトの名無しさん
2009/06/12(金) 01:25:26この手の出力クラスの基本クラスの名称はどうしたらよいでしょうか?
0994デフォルトの名無しさん
2009/06/12(金) 01:30:030995デフォルトの名無しさん
2009/06/12(金) 08:09:35しかし、そんなクラスが必要なのだろうか。
ちょっと用途が見えない感がある。
0996デフォルトの名無しさん
2009/06/12(金) 08:57:46Canvas
ReportArea
TextBaseCanvas
0997デフォルトの名無しさん
2009/06/12(金) 10:53:250998デフォルトの名無しさん
2009/06/12(金) 12:25:28例えば行列の行がゼロや負だと未定義
配列の確保に失敗してたら無効
みたいな感じで
0999デフォルトの名無しさん
2009/06/12(金) 13:11:521000デフォルトの名無しさん
2009/06/12(金) 16:11:4910011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。