1 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 00:20:32 ] クラス名、変数名のつけ方に悩んだら書き込むスレです。 質問する人は、その変数に何を格納するのか(クラスだったらその役割) プログラミング言語は何なのかを、それぞれ書いて、 いい変数名を思いついた人は、それに答えてあげましょう。 命名規則や設計の善し悪しについて議論するのは基本的に禁止。 >>2 英和・和英・英英など各国語辞書と翻訳サイト。 >>3 類義語(シソーラス)辞書、図形・数式・数学用語の英単語。 >>4 関連スレと、いろいろな言語規約。 >>2-10 諸事情によりリンクがずれた場合。 前スレ。 ◆ネーミング倶楽部◆: pc3.2ch.net/tech/kako/1035/10353/1035362308.html Part1: pc5.2ch.net/tech/kako/1046/10465/1046541730.html Part2: pc5.2ch.net/tech/kako/1058/10582/1058213523.html Part3: pc5.2ch.net/test/read.cgi/tech/1067171530/ Part4: pc5.2ch.net/test/read.cgi/tech/1087209526/ Part5: pc8.2ch.net/test/read.cgi/tech/1109330204/ Part6: pc8.2ch.net/test/read.cgi/tech/1128266018/ Part7: pc8.2ch.net/test/read.cgi/tech/1144978008/ Part8: pc10.2ch.net/test/read.cgi/tech/1154448184/ Part9: pc11.2ch.net/test/read.cgi/tech/1168356029/ Part10: pc11.2ch.net/test/read.cgi/tech/1180146315/ Part11: pc11.2ch.net/test/read.cgi/tech/1191250784/ Part12: pc11.2ch.net/test/read.cgi/tech/1206118762/ Part13: pc11.2ch.net/test/read.cgi/tech/1222661623/
2 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 00:21:04 ] 英和・和英など各国語辞書と、翻訳サイト。 英和・和英辞典。 dictionary.goo.ne.jp/ www.excite.co.jp/dictionary/ 英英辞典のリンク集。 外国語広場: 英語: オンラインで使える英英辞典 英和・和英辞典 www.gaikoku.info/english/dictionary.htm 英語←→各国語辞典。(英語) Dictionaries www.freedict.com/ 日英・英日、日中・中日、日韓・韓日翻訳。 www.excite.co.jp/world/ POP jisyo.com www.popjisyo.com/WebHint/Portal.aspx 訳GO YAKUGO.COM www.yakugo.com/WebHint/Quick.aspx
3 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 00:22:02 ] 専門語、類語辞書。 シソーラス(類語)検索 www.gengokk.co.jp/thesaurus/ Thesaurus - Yahoo! Reference (英語) education.yahoo.com/reference/thesaurus/ 図形や数式などの英単語。 すうがく探検隊・数式と図形の英語 i.lekton.co.jp/ara/tanken/english/ リスコレ No.24 図形の名前を英語で…… homepage1.nifty.com/tadahiko/LISTCOLE/024-FIGURE.HTML 各業種いろいろ 250の辞書を一度に検索 Webdio www.weblio.jp/
4 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 00:34:48 ] 関連スレ。 変数名って、どの位こだわりますか? pc.2ch.net/prog/kako/1038/10383/1038306623.html ローマ字変数を使う奴は馬鹿 pc8.2ch.net/test/read.cgi/prog/1054319927/l50 ゲーム内で使う長い変数を縮めてあげるスレ pc10.2ch.net/test/read.cgi/gamedev/1024902432/l50 ★★★コーディングマナー★★★ pc5.2ch.net/test/read.cgi/tech/1056508692/l50 ちょっと待て!ハンガリアン pc8.2ch.net/test/read.cgi/tech/1011026963/l50 Cのマナーいろいろ pc8.2ch.net/test/read.cgi/tech/1029584140/l50 Cのマナー pc.2ch.net/test/read.cgi/prog/1030001269/l50 バカなコーディング規約 pc.2ch.net/tech/kako/1012/10127/1012715148.html いろいろな言語規約。 Hungarian Notation(英語) msdn.microsoft.com/library/default.asp?url=/library/en-us/dnvs600/html/hunganotat.asp Java言語規定。6.8 名前付け規約 www.y-adagio.com/public/standards/tr_javalang/6.doc.htm#11186 参考書籍 翻訳に役立つGoogle活用テクニック www.amazon.co.jp/exec/obidos/ASIN/4621072943/
5 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 01:16:21 ] 「>>1 乙」 と表示する関数の名前お願いします
6 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 05:50:32 ] ozuieren
7 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 10:30:00 ] printGoodJobFor1
8 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 14:29:13 ] __ , ‐' ´ ``‐、 / ̄:三} . /,. -─‐- 、. ヽ / ,.=j _,.:_'______ヽ、 .! ./ _,ノ `‐、{ へ '゙⌒ `!~ヽ. ! /{. / `! し゚ ( ゚j `v‐冫 , '::::::::ヽ、/ . {.l '⌒ ゙ 6',! / :::::::::::::::/ __ そんなことよりTimeOfNowの話しようぜ! . 〈 < ´ ̄,フ .ノー'_ , ‐'´::::::::::::::;/ (_ノ)‐-、 . ヽ.、 ` ‐", ‐´‐:ラ ':::::::::::::::: ;∠. ヽ_} ゙ヽ ,.r` "´ /:::::::::::::::::::ィ´ `ゝ !、 / / / :::::::::::::::: ; '´ /´\ / r'\ . i ! ::::::::::::::/ 墨 | .!::::::::/ヽ、.._!ヽ. ヽ、 { {:::::::::::;:イ / ‖i:::::::/:::::::::::::/ \ . ヽ ヽ,.ァ‐'´ /ヽ 二 ,/`ヽ、::::::::: / ヽ ヽ、 ,. ‐'" .ノ ,〈 > `'‐- ' > _,. ‐'´ / / `) ,ゝ _.⊥.-r┬:/ ヽ_,. -‐i"!´「L.=!┘ ヽ < / / | / 、i / __ ./
9 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 14:32:58 ] なんでドイツ語なんだよ
10 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 15:12:08 ] aktuelle Zeit
11 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 16:45:29 ] bless(1)
12 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 20:04:23 ] ─┬─| . . _ /| . ._ . . _ . │ |⌒i /_) . / _|. レヽ. (__ | //_) レ⌒ │ | | ヽ_ / ̄ | | | ._).|/|/. ヽ_ | ... ─┬─ ・. . _ γ⌒ヽ ./ |\ | . │ | レγヽ /_) .| | ┼ | \ | /⌒ヽ| / │ | | | |. ヽ_ .ヽ___ノ. │ | \| ヽ__ノ.|/|/. /\___/ヽ (.`ヽ(`> 、 /'''''' ''''''::::::\ `'<`ゝr'フ\ + |(●), 、(●)、.:| + ⊂コ二Lフ^´ ノ, /⌒) | ,,,ノ(、_, )ヽ、,, .::::| ⊂l二L7_ / -ゝ-')´ + | `-=ニ=- ' .:::::::| + \_ 、__,.イ\ + \ `ニニ´ .:::/ + (T__ノ Tヽ , -r'⌒! ̄ `":::7ヽ.`- 、 ./| ヽ¬. / ノ`ー-、ヘ<ー1´| ヽ | :::::::::::::ト、 \ ( ./ヽ \l__,./ i l.ヽ! | .| ::::::::::::::l ヽ `7ー.、‐'´ |\-、
13 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 23:40:03 ] 必死になってるのTimeOfNow本人だろw
14 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 23:41:44 ] 「名前=値」形式の文字列を編集するフォームの名前と そのフォームを表示する関数の名前は何がいいかな?
15 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 01:41:03 ] formAssign showFormAssign みたいな。
16 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 03:07:25 ] >>14 いつも言うことだけど、その >「名前=値」形式の文字列 の集合がどういう意味を持つのかがわからなきゃ命名なんてできないだろう。 普通はその「意味」を名前に盛り込むんだから。 いや特定の意味なんて持たない、汎用の“「名前=値」形式の文字列”を編集するための フォームなんだ、ってことかもしれないけど、でもそうだとしたらそれって ただのテキストエディタ以上の利便性があるのかね?
17 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 03:13:41 ] >>16 テーマを持ってテキストエディタを作っちゃいけないのかね?
18 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 03:57:19 ] >>16 答えられないなら取りあえず黙ってれば? 別にお前が聞かれたわけじゃないんだしさ。
19 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 04:01:32 ] 例えば「名前=値」形式をPropertyなんて呼ぶことにしたとして、 PropertyEditor EditProperty
20 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 10:57:18 ] 名前が用意されてて、それに対するフィールドを編集するフォームって普遍的にあるもんだと思うんだけど >>16 は何を言いたかったんだろう どういう意味を持つのかが具体的にわからなきゃ命名なんてできないっていうけれど、 どのレベルの抽象度を持たせたいのかわかんなきゃマズいだろ?
21 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 11:11:23 ] 少なくとも>>16 の文面から読み取れるようなデータを編集するような、 汎用的なソフトウェアがあるとは思えないけどね。 だって入力された名前と値をイコールで連結するだけなんでしょ? それテキストエディタで編集するのと比べてどこが便利なの? >>20 がどういうものを想像しているのか分からないし、 もちろん>>16 の説明が要領を得てないだけかもしれないけどさ。 まあ「名前が用意されてて」とあるから、>>20 は特定の用途向けのデータに 特化したものを想像しているのかもしれない。 それなら>>16 で俺が言ってることと一緒じゃん
22 名前:21 mailto:sage [2008/12/30(火) 11:14:15 ] ごめん三つ出てくる">>16 "のうち最初の二つは">>14 "の間違い。
23 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 14:33:57 ] まーたお前か
24 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 15:24:00 ] ・設定ファイルをテキストエディタで修正してください ・設定画面を開いて設定してください ではユーザに与える印象がずいぶん違う。 ライトユーザに対しては稚拙であっても設定画面を用意する方が間違いが起きにくい。 が、たぶん>>21 が言いたいのは、果たしてそれは「設定項目」なのかどうかと。 テキストエディタと比べて云々がよけいなんじゃないかなー。
25 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 16:28:19 ] KeyValuePairEditor
26 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 19:40:00 ] >>21 お前の視野の狭さと実務経験の無さは十分わかったから 答えられないなら黙ってろよ
27 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 21:00:39 ] >>24 余計じゃないよ。 俺が言ってるのは単純かつごく当たり前のこと。 まず>>14 の「フォーム」が(1)特定用途向けのデータのみを編集する画面である可能性と (2)「名前=値」形式の文字列によるデータを編集するための汎用的な画面である可能性が あることまではいいよね? 後者の場合、値だけでなくフィールド名もユーザーが入力する必要がある(というより、そのための画面) のだから、だったらそれにはただのテキストエディタ以上の利便性は何もない。 ライトユーザ云々って、それをいうならフィールド名を入力させる時点でライトユーザ向きじゃないよ。
28 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 21:03:00 ] 名前が思いつかないならレスしなくていいよ。
29 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 23:38:23 ] 名前が思いつかないならレスしなくていいよ。
30 名前:デフォルトの名無しさん mailto:sage [2008/12/31(水) 01:02:29 ] 当たり前の事ならイチイチ言わなくていいよね。 名前が思いつかないならレスしなくていいよ。
31 名前:デフォルトの名無しさん mailto:sage [2008/12/31(水) 01:17:14 ] 名前が思いつかないならレスしなくていいよ。
32 名前:デフォルトの名無しさん mailto:sage [2008/12/31(水) 02:54:44 ] bHasIdeaAboutName
33 名前:デフォルトの名無しさん mailto:sage [2008/12/31(水) 06:58:51 ] このスレには 相手のバックグラウンドを斜め下に妄想してぶっ飛びセンスで名前を提案するTimeOfNowの人と 相手のバックグラウンドを根掘り葉掘り聞いた挙句結局何の提案もしない>>27 の 二人のキチガイが居るでおk? 同一人物ってことは無いよね?
34 名前:デフォルトの名無しさん mailto:sage [2008/12/31(水) 08:34:05 ] 名前が思いつかないならレスしなくていいよ。
35 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 12:09:57 ] >>16 が至極当然のことを言っている気がして仕方がねえw
36 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 12:39:50 ] >>35 前スレ前々スレ読めばどれ程の基地外か分かるよ このスレは俺の物宣言した兵
37 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 13:45:21 ] >>36 やれやれまだやってるのか。 言わせてもらえば、「このスレは俺の物宣言した兵」って、それって(君がそうかどうかは知らんが) むしろ俺に妙な突っかかりかたしてたお馬鹿さんの方だろう。 俺はそいつに「お前(ら)は俺のやり方に従え」なんていってない。 だがそいつは「お前は俺と同じように振舞え」と、居丈高なことを言っている。 だから俺は「俺は俺であってお前じゃないから俺自身の考えに従う」と言っただけだろう。 いったいどっちが自我の肥大した自己中野郎なんだよ。 おまけに、言い負かされて腹が立てばAAや繰言を投稿しまくるこの幼稚さ。 なんども言ってるように、精神的に幼稚な上に目的合理的思考ができないからそういう風になる。 いったいどの口下げて「命名だけに限定して議論すべき」と言ってたんだ? 荒れることを防ぐために(目的)命名だけに限定して議論すべきだ(手段)と ほざいてた奴が率先して荒らすってどういう了見だよ。 頭オカシイだろ。
38 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 14:11:20 ] お前が自覚の無い香ばしいかまってちゃんだから弄られてるだけじゃないの で、マジレスするとだ たとえば10人が10人ともルール(テンプレ>>1 )に同意した上で一応の和をもって場(このスレ)を形成してる中に お前が後から割り込んできて、 俺はこの場で俺の思うままに振舞う。元からあるルールなんざ糞食らえ、 俺はお前らに何も押し付けているつもりは無いんだから、お前らも俺のやり方に一切の口出しをするなと、 その場に居る全員に「お前のルール」を押し付けるのはいかがなものかな? コミュニケーション不全を開き直るにも程がある
39 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 14:19:39 ] 設問中の対象の意味を知るのは命名には必要だろ? それが >>1 にあるルールに反するとは思わないな。 質問者の意図や対象の意味を明らかにした後に、それの 「善し悪しについて議論」するのが禁止されてるのは妥当だとは思う。 つまり >16 は以下の二行だけなら妥当な書き込み。それ以外は蛇足。 > >「名前=値」形式の文字列 > の集合がどういう意味を持つのかがわからなきゃ命名なんてできないだろう。
40 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 14:52:52 ] >>39 >>37 の奴は毎回 >ただのテキストエディタ以上の利便性があるのかね? みたいに良し悪しについて言及し、最終的にそちらが主題になるから問題視されてるんだよな >>37 本人も「命名は手段であり、本来の目的は命名を通じて設計の良し悪しを語ることだ」と明言してたわけで それにスレ違いと返されたら、発狂して俺は俺の信じるままに動く!口出し無用!とか言い出したんだわ だからこのスレで基地外扱いされてるの
41 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 14:56:48 ] 「俺は俺であってお前じゃないから俺自身の考えに従う」と言った方が自我の肥大した自己中野郎なんだと思いますです。 自虐芸は程々にした方がいいと思います。
42 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 15:39:55 ] つまり >16 にとって以下の二行は正当性を確保するための蛇足。それ以外が主題。 > >「名前=値」形式の文字列 > の集合がどういう意味を持つのかがわからなきゃ命名なんてできないだろう。
43 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 17:48:36 ] つまり>16の最初についてはみんな意識できてる訳ね。 その視点なしに名前考えてみても、ある意味ゴミの生産してるだけだからなあ。
44 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 20:31:07 ] まあこの際だから調子こいてるこのお馬鹿さんを徹底的に叩き潰すか。 >>40 そんなこと言ってないけど。 言ってるというのなら該当レスを引用してみ? 執念深く過去ログ持ってるらしいからできるよね?w 俺は以下ような意味のことしか言ってないはずだ。 つまり、命名とは「可読的なコードを書くこと」という上位目的の手段に過ぎず、 またこんなスレにいるのはプログラマに決まってるのだから、 (1) 「可読的なコードを書く」という上位目的に資する議論が 「困る」という人間はいないはずだ(もし、彼がプログラマならば) (2) そもそも設計に無理があるから適切な命名がし難くなっているようなケースでは、 その無理な設計に固執して命名するのは手段と目的が倒錯した愚行だ。 (3) 設計議論をすると荒れる、と主張する人間がいるが、俺の知る限りそんな事実は今までない。 (というか、荒らしてるのはそう言ってるお前自身じゃないか馬鹿)
45 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 20:42:05 ] 念のために付け加えるけど、俺は積極的に「命名だけでなく設計議論もさせろ」とか 「したっていいじゃないか」なんて言ってないから。 命名だけでは問題が解決しようがないケースでも盲目的に命名に固執するのは 愚かだって言ってるだけだからな。 当たり前だろこんなこと。 手段に過ぎんものに固執して目的が遂行できないんじゃなんの意味があるんだよ。
46 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 20:42:57 ] 馬鹿が2人以上いると荒れるね
47 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 21:29:10 ] じゃあ僕が3人目のバカになる
48 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 21:39:17 ] 名前を考えるにあたって、最初のお題だけではイメージわかないなと思うなら、 それを伝えて追加情報を求めれば良いだけの話。 ただそれだけなのに、毎回毎回偉そうに説教たれ始めるから話がややこしくなる。
49 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 23:33:38 ] TimeOfNowさんお久しぶりです。 相変わらず人間分析がお得意のようですね。 是非去年聞かれていた自己分析の結果をお聞きしたいのですが、あなた自身はどのような人間でしたか?
50 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 21:37:33 ] >>45 >手段に過ぎんものに固執して目的が遂行できないんじゃなんの意味があるんだよ。 ところが、まさにその「手段」に固執して 回答することこそがこのスレの用途。 納得がいかないからって、わざわざ主張 しに来るなよ。 ぐだぐだ言わずにどっかいけ。 なんなら新スレをたてたらいいよ。
51 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 22:47:21 ] 何度も同じこと言わせるなよ。 >>50 >ところが、まさにその「手段」に固執して >回答することこそがこのスレの用途。 それは「チミの勝手な解釈」、あるいは「チミの独りよがりな願望」に過ぎん。 もちろん、勝手で独りよがりであろうと君がこのスレの意義に関して 「どうあるべき」と考えるのも自由で、その信念に従って君が行動するのも自由だ。 (正直、俺的には「アンタ本物の馬鹿だね」としか思えんけれどもね) だが、たかだか君の解釈だったり願望だったり過ぎないものを、居丈高に俺に 強制しないでくれる? 俺は俺であって君じゃないんだよわかる?
52 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 23:26:38 ] 50の言うことも一理あるんじゃないかと思う人もいるかもしれんから、 愚かだと思うと書いた責任上一応理由つきで否定しとく。 問題設定が非現実的であっても意味をもつのは、 (1) それが何らかの能力向上のための (2) 演習問題になるとき だろう。 さて、命名以前の問題があるために命名が困難になってる「お題」(例えば>>14 )は この要件を満たすだろうか? 俺の考えでは答えはNo。 なぜなら、現実のプログラミングではそんな無理くり名前をつけるような「法外な」 命名能力なんて必要とされないからだ。 まともなプログラマなら横車を押して命名するよりも、名前が付けやすいような 別の視点を採用するなり(>>14 なら、データのもつ意味から名前を付ければわかりやすい)、 設計を変更するなりすることを選択するからね。
53 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 23:31:16 ] ゲームで遊んだりクイズを解くのに「意味」なんかいらんと思うが
54 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 23:33:02 ] いっそ>>16 前半をテンプレに書いておいて、 言及がなければ、例えば>>19 の回答がほしいことにすればいいだろう。 いい加減不毛だからやめてよ。
55 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 23:37:50 ] >>53 もちろん、それはそう。 俺はそういう人がいてもいいと思うし、そういう回答をする人に 自分からケチつけたり突っかかったことは一度もない。 俺は自分と違う考えの人を一概に否定したりしないし、少なくとも消極的容認だよ。 「彼」は違うようだがね。
56 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 23:45:44 ] みんな真面目すぎる。 Q)この名前何がいい〜? ホニョニョ~ン A)こんな感じで良いんじゃね〜 ハニャニャ~ン という緩いスレじゃないのか。
57 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 02:18:11 ] 無理くりw 道民かよ 通りで日本語が通じないわけだ 一部道民は本当に酷い思考回路を持ってるからな
58 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 02:56:16 ] >>52 > 俺の考えでは答えはNo。 そう思ったら、はじめからレスしないか、意図を聞くなどしながら 「設計見直したほうが良いんじゃないの?スレ違いになるから他所でやってもらうけど」 あたりで済ませておくのがこのスレの趣旨から考えて望ましいと思います。
59 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 03:11:53 ] Part12での出来事 585 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 01:13:15 >>572 そもそも弾の初期位置も初速度も各「砲台」が個別に知っていれば済むはずの情報で、 そんな情報を配列にまとめることが設計として間違ってる気がするんだが。 586 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 01:27:39 >>585 >>1 587 名前:585じゃないけど[sage] 投稿日:2008/08/30(土) 01:43:57 >>586 このスレのあり方を否定するようで悪いが、 「これ英語だとなんて言うの?」っていうレベルじゃなくて 「一体どんな名前を付けるのやら」なんてレベルで迷ってしまうのは、 ドメイン分析に失敗しているからだと思うんだよね。 ちゃんとした設計なら悩まずに命名できる。 ダメな命名になるのは設計からしてダメなんだよ。 名前を付けられないと思ったら設計から見直したほうがいい。 588 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 01:44:44 >>587 >>1 589 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 01:45:43 >>587 お前みたいなこと言い出す奴が過去に何人もいて、 その都度スレが荒れたから>>1 に注意書きしてあるの。おk? 590 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 02:09:25 おk。すまない。 ただ俺なら、名前で悩むなら違う事で悩みたいな、って思っただけだ。
60 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 03:14:17 ] 591 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 02:14:16 >>590 なんで名前で迷ったら書き込むスレに迷い込んでるのかが分からない 592 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 02:33:25 >>591 名前が無意味なものだとは考えてないからだよ。 デザパタなんかは「何かに名前をつけること」に意味を見いだしている例だよね。 このスレで言えば、>>496-498 みたいに、 機能にぴたっと当てはまる名前が提示されることで、 496自身が「自分が何をしようとしていたか」が定まったと思うし、 さらに勉強してみようという前向きな気もちにもなっている。 名前を考える事は、考え方をみつめ直すことで、 良い方向に成長する入口になっていると思う。 名前に悩んで設計に悩まないのはもったいない。 余計なおせっかいかもしれないが。
61 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 03:14:44 ] 593 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 04:34:27 言いたい事は分かるんだけど、その言い方は無いよ このスレで泥臭いながらも行われてる事を、臭い物に蓋をして理想型で語ってるだけじゃん 設計の仕方までは口を出さずに、ただ名前を付けていけばそれがベターなの 594 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 07:06:39 >>592 > 名前に悩んで設計に悩まないのはもったいない。 >> そ の 都 度 ス レ が 荒 れ た か ら そう言う議論がしたいなら、別にスレ立ててくれ。 多分収拾つかなくなると思うが。 597 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 14:58:18 >>593-594 俺的にはこういう連中こそ本末転倒の馬鹿に見えるよ。 たぶん物事ゼロベースで考える頭のない奴なんだろうな。 まあこんな馬鹿な連中が何いっても今後も設計に首を突っ込む姿勢は止めないけどねw 598 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 15:06:17 君が時と場合をわきまえてないだけ。 599 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/30(土) 15:34:30 命名の前提となるもの(例えば設計)を語らないと根本的な解決にならない場合であっても あえて盲目的に命名限定の議論をしろ、などという物言いこそ「時と場所をわきまえない」 愚かなものだと思うが。 一般にはそういうのは「フェティシズム」と言うんだよ。
62 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 03:18:43 ] たまに方言で道民と認定してる人いるけど、今回の「無理くり」というのは別に北海道に限った言葉じゃないと思うんだけどなぁ。 なまら辺りでなら道民と決めていいと思うけどさ
63 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 03:21:11 ] 615 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/31(日) 14:37:54 >>610 なんか命名以前にただ単にObserverパターンをちゃんと理解してないだけの気がする。 Observerパターンっていうのは、(当たり前だけど)通知者側が観測者の 特定のメソッドを(インターフェイスを介して)呼び出すパターンのはずだよね? あなたの例で言えば、aはbでイベントがあったときにbから呼ばれるメソッド b_ValueChanged()と、a自身のイベントを他に通知するOnValueChanged()を持ってるはずで、 だとすればb_ValueChanged()の中からOnValueChanged()を呼び出せば済むはずの 問題だと思うんだけど。 616 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/31(日) 14:57:16 > 命名規則や設計の善し悪しについて議論するのは基本的に禁止。 617 名前:デフォルトの名無しさん[sage] 投稿日:2008/08/31(日) 15:01:11 悪いけど俺はそんなものに同意した覚えはないんでね。 この後突然独り言のようにセカイ系について講釈が始まってるけど、もういいや
64 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 08:59:21 ] かといって、質問の行間を読むのを競い合うクイズスレってのもノイズ多すぎてやだな
65 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 10:11:40 ] 別に足りない情報を聞くってのは一切制限されて無いし、そもそも誰も咎めてなくね? 設計にまで口出しする事がスレ違いって言われてるだけで
66 名前:50 mailto:sage [2009/01/07(水) 13:22:56 ] 「彼」とかまるで特定一名のように言われても困る。 オレはその「彼」じゃないんで、そう思ってるのは 少なくとも2人いるってこと。たぶんもっといる。 まあ、もういいや。 TimeOfNow氏は酷く個性的な考えの持ち主だと 認識することにした。 死ねばいいのに。
67 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 17:03:33 ] class Buyer { void Sell(); }; class Seller { void Buy(); }; 名前にBuyと付くクラスのメソッドがSellで、名前にSellと付くクラスのメソッドがBuy。 一瞬違和感を感じたんですが、これで合ってますよね?
68 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 17:31:37 ] ドラマーがギターを弾いてもいいし ギタリストがトライアングル叩いてもいいと思うよ
69 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 17:56:53 ] >>68 このスレ的に言えば「ギターを弾くものにドラマーと命名するべきではない」ということになりませんか? 私が訊きたかったのは、買い手に対して物を売るメソッドの名前は、 「買い手が買う」という意味ではなく、「買い手に対して売る」という意味の命名で合っているか、ということです。
70 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 19:05:03 ] 少なくとも俺は買い手が、買うで命名するけどな
71 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 19:15:13 ] 「Buyerのメソッド」だからねぇ。 買い手の行動は「買う」ことだろう。 「買い手に対して物を売る」ということなら、 「売り手の売るメソッドの引数に買い手インスタンスを指定」って感じがするが。
72 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 19:42:27 ] >>67 BuyerとかSeller とかいうクラスはあくまでただの例えで言ってるのなら >>70-71 の言うとおりだと思う。 ただの例えじゃなくて実用にするものなら、BuyerとかSellerにメソッドをもたせるより 製品クラス(ProductとかGoodsとか?)にTrade()とかSell()を持たせた方が賢い気がする。
73 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 19:49:55 ] >>72 >>1
74 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 20:00:28 ] >>70-72 レスありがとうございます。 ちょっと意外に感じました。 A.GetB()が「AがBを取得する」ではなく、「AからBを取得する」という意味なので、BuyerにSell、SellerからBuyと考えていました。 質問とは違うので答えも違うのかもしれませんが、1つのクラスがBuy/Sellを持っている場合にも同じ方法で命名すると、 shop.Sell(item, money);// 店に対してアイテムを売っているように見える? shop.Buy(item, money);// 店からアイテムを買っているように見える? この感覚は私だけなんでしょうか? > 製品クラス(ProductとかGoodsとか?)にTrade()とかSell()を持たせた方が賢い気がする。 これはTradeの引数に買い手と売り手を渡すということになりますか? 商品は所有者が扱うものと思っていたので、こちらも意外に感じました。
75 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 20:13:54 ] >>74 「売られた」時に、製品が必ずその所有者への参照を内部に持つようにすれば、 Trade()の引数は買い手と売価だけでよくなるんじゃない?
76 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 20:27:52 ] >>74 A.GetB()は「Aが(自分の持つ)Bを取得する」って意味だ AはBを取り出してくるが、その後どうされるかまでは知ったこっちゃ無い
77 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 20:48:04 ] >>75 なるほど。 >>76 そういう意味だったんですか。 今まで勘違いしていました。
78 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 21:04:10 ] >>74 ふつうは、主語.述語(目的語)とするものだと思う。 とくに、述語が他動詞の場合には。 下駄雪駄がそうじゃないというのは、今指摘されて 初めて感じた。w たしかにそうかもしれないけど、むしろこっちが パターンとしてはレアなのでは。
79 名前:デフォルトの名無しさん mailto:sage [2009/01/08(木) 00:03:38 ] >>74 「AからBを取得する」は主体(主語)が抜けてね? 主体がメソッドのレシーヴァになるはずだよね。 主体がオブジェクト化されてないから混乱してるんじゃない?
80 名前:デフォルトの名無しさん mailto:sage [2009/01/08(木) 12:11:45 ] >>78 たしかにgetter/setter以外は主語.述語で自然に読めるものばかりでした。 >>79 x = a.GetX(); xが主体ということですか? ちなみにこういうケースではどちらの命名が自然に見えます? item = shop.Buy(itemID, money); // アイテムの種類を示すIDと代金を渡しアイテムを得る item = shop.Sell(itemID, money); // アイテムの種類を示すIDと代金を渡しアイテムを得る
81 名前:デフォルトの名無しさん mailto:sage [2009/01/08(木) 12:19:53 ] >>80 どちらも虫唾が走るほど気持ち悪い 指摘するとなると完全に命名の範疇外の話になるんで、どっかOOP初心者スレにでも行って下さい
82 名前:デフォルトの名無しさん mailto:sage [2009/01/08(木) 13:42:00 ] >>81 >>80 のメソッドにBuy/Sellを名付ける事自体が間違ってましたか。 どうもでした。
83 名前:デフォルトの名無しさん mailto:sage [2009/01/08(木) 17:51:05 ] >>80 そういう系にしたいならこんなのは? player.buy(shop,item,price) オレ的にはかなり自然。
84 名前:デフォルトの名無しさん mailto:sage [2009/01/08(木) 18:08:39 ] >>83 なるほど、参考にします。
85 名前:デフォルトの名無しさん mailto:sage [2009/01/08(木) 18:10:01 ] (new Transaction(buyer, seller, item)).commit()
86 名前:デフォルトの名無しさん mailto:sage [2009/01/08(木) 19:19:11 ] >>80 真ん中 aだろ。 aが自分のXを取得する。 それをプログラマがxに渡してるだけ。
87 名前:デフォルトの名無しさん mailto:sage [2009/01/09(金) 00:22:41 ] >>85 トランザクション処理というぴったりのものがあったんですね。 >>86 なるほど。
88 名前:デフォルトの名無しさん mailto:sage [2009/01/09(金) 01:09:34 ] >>80 私の経験では クラス名.メソッド名 で自然な英語になるようにメソッド名をつける場合もあるし、 クラス名を意識せず、メソッド名単独で意味を主張するようにメソッド名をつける場合もある。 両方あります。 例えば頻繁に使われる get なんかでも shop.getItem は意味の取りようによっては、 ・店が得るのだから、アイテム引数をともなって、店にアイテムを設定する(メンバー変数に登録、setterのような意味) ・店のアイテムを得る。(メンバー変数をを得る、普通のgetterの意味) などのように、2通りの解釈ができないこともない。 どのようにメソッド名をつけるかはコーダーのセンスよると思います。 したがって、自然に読めるのが一番ですが、限界があるのでどうしようもないというわけです。 一人で開発するときは、統一さえしておけばそんなに大きな問題ではありません。 しかしチームで開発するときは、 「これこれの動詞はbuyで統一しよう、getはこういう意味にしよう」 等のように、コーディング規約が必要になるでしょう。
89 名前:デフォルトの名無しさん mailto:sage [2009/01/09(金) 01:19:43 ] なんか生活に物足りなさがあると思ったら、このスレが次スレになってて お気に漏れしてたのか
90 名前:68 mailto:sage [2009/01/09(金) 02:22:29 ] 今頃出てきてあれだが、アクセサについて。 あるオブジェクトに対してset/get指示をだすが、オブジェクトからみれば自身のメンバに対して やはり同じようにset/getを行うので、逆になっているわけではないよ。 >>83 オレ的にもそんな感じ。 一点、priceが商品の値段を意図しているのであれば、buyメソッド内でshopに問い合わせを行うようにする。 今回の焦点ではないけどね。
91 名前:83 mailto:sage [2009/01/09(金) 09:11:24 ] >>90 質問者が引数にmoneyって書いてたからな。 そこは値段だろうと思ってpriceにした。 個人的にも、priceは明示的なほうがいいと思う。 shop.getPrice(item)とか。 >>85 いわゆるトランザクションには、プログラム的に ちょっと特定的な意味がありがちなので、念のため。 プログラマにそう言ったら混乱することもありそう。
92 名前:デフォルトの名無しさん mailto:sage [2009/01/09(金) 15:41:04 ] >>91 >>80 のmoneyは商品の価格ではなく、購入者が提出するお金だと思う。 なので何らかの手段でおつり、不足エラーなどを通知する必要が出てくるものだろうと思った。 一方、buyer.buy(shop, item)とすれば、関数内で if (所持金<shop.getPrice(item)) エラーリターン this.money -= shop.getPrice(item) のようにできる。 基本的に店って主体になりにくいよね。ザ・コンビニみたいなゲームなら別だろうけど。
93 名前:質問者 mailto:sage [2009/01/09(金) 18:39:39 ] >>88 GetItem→BuyItemと置き換えると、 ・店が(引数に指定された)アイテムを得る→店が(引数に指定された)アイテムを買う ・店が(保持している)アイテムを得る→店が(保持している)アイテムを買う まさにここですね。 getterは後者の意味、Buyに関しては前者の意味が一般的というところに混乱しました。 >>90-92 moneyに関しては購入者が提出するお金のつもりで書きました。 トランザクション処理を勉強して>>83 か>>85 にしようと思います。 ありがとうございました。
94 名前:95 mailto:sage [2009/01/09(金) 18:44:09 ] > 店が(保持している)アイテムを買う 書いてから気が付いたんですが、自分が保持してる物を買う?というのは変ですね。 ということは自然と前者になるということでしょうか。
95 名前:デフォルトの名無しさん mailto:sage [2009/01/09(金) 18:44:54 ] ↑95じゃなくて93でした。
96 名前:デフォルトの名無しさん mailto:sage [2009/01/09(金) 21:45:10 ] >>94 あんまりヘンに考え込まないことを勧める。 命名は慣習的なところも多いので、だいたい 納得できたら、自分ルールにしてパクッと 飲み込め。 完全な名前を定義することが目的じゃないだろ?
97 名前:デフォルトの名無しさん mailto:sage [2009/01/13(火) 22:49:43 ] >>94 あんたの目的は、命名法を究めることじゃないはずだ。 妥協も大切だ。
98 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 02:15:34 ] 命名以前に、95は思考が絶望的にオブジェクト指向じゃないだけ ほんと、絶望的
99 名前:デフォルトの名無しさん mailto:sage [2009/01/14(水) 23:56:01 ] ttp://google-styleguide.googlecode.com/svn/trunk/cppguide.xml Google?
100 名前:デフォルトの名無しさん [2009/01/15(木) 13:10:27 ] 100
101 名前:デフォルトの名無しさん [2009/01/15(木) 13:11:00 ] 101
102 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 01:45:08 ] sampleとexampleの違いって何ですか?
103 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 01:46:44 ] 板違い
104 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 21:37:36 ] example は例として一般的な語。 sample は実例というか、ちゃんと動くようなもの。 境目は適当。
105 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 16:16:44 ] >>104 なるほどー。ありがとうございます〜
106 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 16:17:27 ] 失せろボケ
107 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 16:25:58 ] TimeOfNowの人はまた逃げたのか >>44 で偉そうにログ出せといってログ張られて逃げ出すとか まね出来ない
108 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 19:49:08 ] >>107 本格的にアタマおかしいだろw いや逃げてないし、君が望むなら君のような馬鹿は徹底的に叩き潰して差し上げるけど? で、どこで>>40 のようなことをこの俺が言ったと言うんだ、ん?
109 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 19:52:31 ] っていうかこの馬鹿、"time of now"っていう言い回しが英語として 成立してないと思ってるから、嘲笑のつもりで「TimeOfNowの人」とか言ってるんだろうが、 それが自分自身の馬鹿を曝け出しているに過ぎんことにすら気づかないんだから おめでたいとしか言いようがねえなw
110 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 20:02:58 ] >>107 スレが静かになったからって、 わざわざ悪魔召還すんな!
111 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 20:19:40 ] >>109 検索して引っ掛かるけど特殊な言い回しだよ。そこは蒸し返すなよ
112 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 20:21:47 ] Jetztzeit
113 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 21:01:53 ] >>111 別に「蒸し返す」つもりもないけど、別に特殊でもなんでもないよ。 前スレでそういうことを主張している人間がいたのは記憶しているが、 その人が何もわかってないだけだな。 前にも名詞的に使われてるnowを「倒置構文だ」とトンチンカンなことを 言ってる人がいたけど、このスレはそういうのが多い。
114 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 21:08:55 ] Now is the time. が特殊な使い方といっていた人を指してトンチンカンと?
115 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 21:31:29 ] >>114 相手が言ったことに反論する能力を身につけようよ。 俺は言った。 名詞的用法をさして「倒置構文だ」とトンチンカンなことを言っている人がいた、と。 君に問うが、>>114 のそれは倒置構文ですか?
116 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 21:34:01 ] ああごめん、>>114 のそれは確かに倒置構文ととることもできる、 というかそういう解釈の方が一般的かも知れんね。 でも俺の言っているのはそれじゃない。
117 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 21:40:09 ] 俺がトンチンカンと言うのは、 "Now is the time to 〜." これを倒置構文と言った人がいたんだな。 これは倒置構文じゃないよ。ただnowを名詞的に使ってるだけ。
118 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 00:47:47 ] 英語どうこうじゃなく、センスを笑われてる事にそろそろ気付いたら?
119 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 01:05:26 ] そういう物言いが「セカイ系」のそれだと言ってるんだけどね。 まあ頭悪いから言ってる意味が理解できないのだろうけど。 そのセンスっていってる奴の答えが「コインいっこ入れる」式のぎこちない命名だから なお笑わせてくれるんだがw
120 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 01:21:45 ] コインいっこ入れる
121 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 01:36:58 ] >>119 本格的にアタマおかしいだろw いや言ってないし、君が望むなら君のような馬鹿は徹底的に叩き潰して差し上げるけど? で、どこで>>119 のようなことをこの俺が言ったと言うんだ、ん?
122 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 01:37:48 ] 改変してて吐き気がしたわ 自分からやっといてなんだけどなw
123 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 09:13:21 ] 名前が英語の文としてどれだけ自然かよりも、 同じプログラム内で一貫した名前の付け方をする事の方が重要だと思う。 接頭辞+名前みたいなのは自然な英語にはならないだろうし、 一貫して使うなら略記的な名前でもぜんぜん問題ない。 (母音を省略して書くとか普通にするし) コインに関するモジュールを書いていたら、 ・コイン_いっこ入れる ・コイン_いっこ取り出す とかもありそう。
124 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 10:27:10 ] >>109 「TimeOfNowの人」って呼ばれるのが嫌なのか? そう呼ばれるとお前さんは嘲笑されてると感じるのか?なぜ? まぁその点はどうでもいいけど 嫌なら自分でコテハン付けてくれよ いい加減お前さんには固有名詞が必要なんだよ
125 名前:デフォルトの名無しさん mailto:sage [2009/01/23(金) 02:34:34 ] TimeOfNowはなんか笑いがこみ上げて来るんだよな…。
126 名前:デフォルトの名無しさん mailto:sage [2009/01/23(金) 04:25:47 ] lヽ ノ l l l l ヽ ヽ )'ーーノ( | | | 、 / l| l ハヽ |ー‐''"l / T | | |/| ハ / / ,/ /|ノ /l / l l l| l T ヽ l ・ i´ | ヽ、| |r|| | //--‐'" `'メ、_lノ| / ・ / | o l トー-トヽ| |ノ ''"´` rー-/// | o | | ・ |/ | l ||、 ''""" j ""''/ | |ヽl ・ | | N | | l | ヽ, ― / | | l N | | !! | / | | | ` ー-‐ ' ´|| ,ノ| | | !! | ノー‐---、,| / │l、l |レ' ,ノノ ノハ、_ノヽ / / ノ⌒ヾ、 ヽ ノハ, | ,/ ,イーf'´ /´ \ | ,/´ |ヽl | /-ト、| ┼―- 、_ヽメr' , -=l''"ハ | l ,/ | ヽ \ _,ノーf' ´ ノノ ヽ | | 、_ _ ‐''l `ー‐―''" ⌒'ー--‐'´`ヽ、_ _,ノ ノ
127 名前:デフォルトの名無しさん mailto:sage [2009/01/25(日) 00:04:20 ] また逃げてるw これはもう芸の領域だなw
128 名前:デフォルトの名無しさん mailto:sage [2009/01/25(日) 01:24:31 ] 荒らすなヴォケ
129 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 16:08:05 ] よろしく 以下、それぞれを文字列として格納する変数なんだけど、 半角文字全部→string 半角英字→alphabet 半角数字→num 半角記号→character 半角英数→symbol string とcharacterとsymbolがごっちゃになってわかりにくそうなんだけど、 他にいいアイデアがあるかな?
130 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 16:08:59 ] ごめんまちごうた 半角文字全部→string 半角英字→alphabet 半角数字→num 半角記号→symbol 半角英数→character だったorz
131 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 16:37:16 ] is系の関数に従ってみればどうだろう。 半角英数はalnum 半角文字全部はascii など。
132 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 16:57:59 ] なるほど、サンクス 半角文字全部→ascii 半角英字→alpha 半角英字大文字→upper 半角英字小文字→lower 半角数字→num 半角記号→symbol 半角英数→alNum 記号がなかったのでSymbolを流用して、全角の場合は修飾詞でWideをつければよさそうだ。 これでいってみるぜ
133 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 21:40:59 ] ctypeだとispunct(punctuation)ってのはあるね。 記号という意味じゃなく区切り記号という意味になってしまうが。 ASCIIの範囲では、印字可能な文字のうち、スペースと英数「以外」
134 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 15:41:57 ] >>133 区切り記号とは違うと思うのでsymbolにしてみた 半角全部-半角英字-半角数字-半角スペースというイメージなので。 んだが、半角文字全部asciiで、全角文字全部のとき 修飾詞つけてwideAsciiってなんか変な感じw 文字全部→ascii wideAscii 英字→alpha wideAlpha 英字大文字→upper wideUpper 英字小文字→lower wideLower 数字→num wideNum 記号→symbol wideSymbol 英数→alNum wideAlNum カナ→katakana wideKatakana ひらがな→none wideHiragana 漢字→none wideKanji 半角のほうに修飾詞singleをつけて、文字全部をsingle(半角全部)とwide(全角全部)にしようかしら。 つか、こんなの自分が理解してればどうだっていいよな・・・ privateなメンバだし・・
135 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 16:53:48 ] singleはない
136 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 17:10:34 ] ispunctの説明を見てくれば良かったのに。 半角英数、半角スペース以外の表示可能な文字なんだけどな
137 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 22:04:31 ] >>134 1バイト文字以外も考慮するのなら、 UNICODEの文字カテゴリの名前を参考に したら? 多すぎてイヤになるかもしれんが。w
138 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 19:22:44 ] お題が来ないな・・・
139 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 21:38:20 ] じゃあTimeOfNowの話でもしようぜ
140 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 21:45:54 ] アメリカ旅行で時間聞きたいときは Excuse me, do you have the time? っていえばいいんよね
141 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 21:48:04 ] 掘った芋いじくんな と聞いたけど……
142 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 22:53:52 ] 掘った芋いじんな だよ
143 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 22:59:23 ] サンクス!
144 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 23:03:26 ] アメリカ人でも見ず知らず相手なら婉曲に>>140 使うよ
145 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 23:05:54 ] 変なジョークで返されるかもしれないけどね
146 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 23:21:33 ] Excuse me, do you have the time of now?
147 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 23:25:05 ] ─┬─ ・. . _ γ⌒ヽ ./ |\ | . │ | レγヽ /_) .| | ┼ | \ | /⌒ヽ| / │ | | | |. ヽ_ .ヽ___ノ. │ | \| ヽ__ノ.|/|/. /\___/ヽ (.`ヽ(`> 、 /'''''' ''''''::::::\ `'<`ゝr'フ\ + |(●), 、(●)、.:| + ⊂コ二Lフ^´ ノ, /⌒) | ,,,ノ(、_, )ヽ、,, .::::| ⊂l二L7_ / -ゝ-')´ + | `-=ニ=- ' .:::::::| + \_ 、__,.イ\ + \ `ニニ´ .:::/ + (T__ノ Tヽ , -r'⌒! ̄ `":::7ヽ.`- 、 ./| ヽ¬. / ノ`ー-、ヘ<ー1´| ヽ | :::::::::::::ト、 \ ( ./ヽ \l__,./ i l.ヽ! | .| ::::::::::::::l ヽ `7ー.、‐'´ |\-、
148 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 23:28:37 ] はいはいわろすわろす
149 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 00:01:42 ] ちょっといいですか?だと思っていたが、時間を聞くための婉曲表現でもあったのは知らなかった。
150 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 00:03:25 ] と思って調べたらちょっといいですかはtheがいらないみたいだっていうかそれだけの違いで! メリケンこええ。
151 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 00:18:12 ] もう死ぬ もう死ね とか、日本も外人にとっては怖そうだぞ
152 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 01:40:09 ] TimePartOfNowならすんなり受け入れられるんだがな それ以前に定数に対してNow,Today,TimeOfNowと付けるんだから半端ないわ
153 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 02:15:30 ] だんだん慣れてきた
154 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 20:15:30 ] >>152 今頃になってネチネチいうって難儀な性格だねホント。 正直精神分析の対象に思える。 しかも言うことが素っ頓狂だし。 まず結論から言うとTimePartOfNowとTimeOfNowは同じ'Now'を使ってもそれの 意味しているものが違うだけで、どちらもお題の答えとして正しい。 君のいうTimePartOfNowの'Now'はNowという名前のデータ構造が存在していることを 前提とした命名だろ。 俺の言ったTimeOfNowの'Now'は文字通りのNowだから。 普通の英会話で"date of today"とは言っても"date part of today"なんて言ったら意味不明だろ。 それから、定数(というかマクロで定義された即値)を大文字をアンダースコアで区切りで 表現するのってC/C++の慣習だろ。 他の言語じゃあまりやらないよ。(そもそもマクロで即値定義なんて原始的なことやってるの C/C++とアセンブラぐらいしかないし。) つーか基本的に意味ない習慣だからCでも自分だけで完結するコードなら俺は従わない。
155 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 20:17:56 ] >>154 今頃になってネチネ(ry
156 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 20:21:54 ] 最後に肝心なことを言い忘れたが、キャメルかパスカルかアンダーバー区切りか、 なんて命名の本質と何も関係ねえだろw なんていうか、語るに落ちてるんだよな。 「命名以外の話題は禁止」と執拗にイチャモンをつける一方で、 同じ口で平気で命名の本質と何も関係ないことに固執する、この一貫性のなさ。 一貫してるのは、要するに「執拗に他人にケチをつけている」という一点においてのみ。
157 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 22:05:14 ] >>154 なにを言っているのだお前は。1行目からおかしいだろ
158 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 22:25:35 ] >>154 びっくりした。 本当に、びっくりした。
159 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 22:27:42 ] >>154 C++もマクロで即値定義なんてことはやらないよ。 やってると思った?
160 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 22:46:24 ] >>154 やっぱり期待通りに笑わせてくれるのなw date part of today w 作為的なT.O.N.でもない例えでフイタw
161 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 23:19:52 ] >>154 馬鹿か。 慣習は情報伝達コストを大幅に下げる。 命名に拘る理由の大部分が伝わり易さを求めている以上、基本的に意味ない習慣とか厨二馬鹿にしか言えないわ。 お前が慣習に従うかなんて誰も興味ないっつーの。 お前の狭量自慢もいい加減にしてくれ。 そして自分だけで完結しないこのスレで俺ルールを撒き散らすな。
162 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 23:20:07 ] こうしてTONさんは芸風を磨いていくんだな。 エールをおくらせてもらうよ!!! T.O.N!!! T.O.N!!!
163 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 23:29:43 ] >>157-161 自演乙
164 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 23:32:37 ] 奥義!敵は全て一人の自演発動!
165 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 00:00:57 ] 久しぶりにわろたw これは真性w
166 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 00:13:24 ] 自演って。言葉の意味を気にする割には、これを見て自演って。
167 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 00:19:45 ] また神が降臨したよね!ね!
168 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 00:30:37 ] >>154 >>156 すごい・・・粘着質です・・・
169 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 00:44:38 ] なにかホッとした。
170 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 01:07:17 ] >>161 君それに後続する人の話をちゃんと読んで突っかかってる? 俺は、キャメルとかアンダースコア区切りとか、その種のスタイルの違いは命名の本質と 関係がないから(つまりスレの趣旨に従えばどうでもいいことだから)自分の好きなスタイルで 書いただけで、別に「アンダースコアで区切る書き方をするのは無意味だから止めるべき」などとは いってないから。 わけのわからんことで突っかからないでくれる? こんな頭悪い奴に馬鹿呼ばわりされたくないよまったくw まあ、言いがかりに目をつぶってあえて君の話にのっかかると、 >慣習は情報伝達コストを大幅に下げる。 これはまったく同意なんだが、件の即値を大文字でアンダースコア区切りで 表現する慣習に関して言えば、これによって伝達される情報が本当に 必要不可欠な情報かどうかは俺は大いに疑問を持ってる。 他人が書いたコードを読むとき、たいがいの場合は「それ」が即値か定数か変更可能な変数か、 なんてことはどうでもいい場合が多いからね。 システムハンガリアン的な無意味で時代遅れな偏執に過ぎないでしょ。
171 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 01:11:04 ] 言い合いは英語でお願いします 加えて簡潔な単語でお願いします
172 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 02:04:47 ] >>171 ゴミはゴミ箱に入ってろ
173 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 02:18:06 ] 誰だよ召還したやつは
174 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 02:26:25 ] 煽ると必ず面白い反応するから癖になる
175 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 03:01:34 ] くど過ぎワロタ TONでもなくウザい人種だなw
176 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 03:02:18 ] >>170 で、C++でも#define HOGE 5とか書いちゃうの?
177 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 03:02:53 ] まだまだいくよー!
178 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 03:11:21 ] >>176 余り虐めるなよw Java以外の経験があるわけが無い
179 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 04:28:49 ] #define FiveOfNumbers 5
180 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 08:25:29 ] FiveOfNumだな
181 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 12:46:16 ] ちょっとかっこよくFifthNumberにしようぜ!
182 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 16:01:51 ] それって4?
183 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 17:26:46 ] >>170 このスレで最上級に偉そうな君の言語経験を教えては貰えまいか? それぞれ実務何年で頼みます。
184 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 20:28:56 ] そんなの知りたくないし
185 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 00:42:29 ] もうお前ら大好きw
186 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 00:45:48 ] 俺はお前が嫌いだ
187 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 23:36:03 ] TimeOfNowって何? ぐぐっても、2chのスレくらいいしか見つからないけど、それって面白い話題?
188 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 23:45:49 ] 実をいうと馬鹿馬鹿しくて真面目に読んでなかったので どんなネタなのか俺にも分からない
189 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 23:45:54 ] 時々現れるアホのニックネーム
190 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 00:28:13 ] 訳してみるか まさに今の時間 みたいな強調表現かもな
191 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 00:37:39 ] 凡人並の知能は持ち合わせている様なんだけど 何故かとても あたまがわるい それがTimeOfNow
192 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 02:54:36 ] セカイ系とか自演とかに特殊な俺定義を行っているのも特徴 簡潔に表すなら、重度の中二病患者
193 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 08:03:28 ] 今進行中の世界の時間っても訳せる
194 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 16:18:56 ] 301リダイレクトされた場合に、正しいURLを求める関数名は何がいいかな? 暫定的に、getResolvedURLとしているけど、これは相対パスから絶対URLを 作成するときに使うような名前だよね?
195 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 16:20:27 ] getRedirectedURL
196 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 16:30:32 ] >>195 ありがとん
197 名前:デフォルトの名無しさん [2009/02/07(土) 15:44:51 ] 質問です。 いわゆるフラグという言葉は、本来は2値のみを意味するときに使う言葉でしょうか。 例えば1変数のビットごとに定数を当ててオプション指定するなんて例があったとして ビットごとに見れば(アリかナシかの)フラグだし、変数としてみれば2値ではないし こういう場合に変数名にフラグと入れるのは変でしょうか
198 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 15:46:44 ] flagsにすればいいじゃん。
199 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 15:51:07 ] >>197 ありがとうございます。 こういうビット演算によって複数のオプション指定したりする手法にあつらえ向きの名前なんてのはないんでしょうか。
200 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 15:51:32 ] >>198 の間違えです
201 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 16:02:28 ] ビットフィールド?
202 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 16:14:48 ] なんか検索したらビットフラグとかビット配列(これは多分違うかも)とか出てきました。 >>201 ビットフィールドはC/C++のイメージがあるのでニュアンスが違う気もします・・・
203 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 16:19:07 ] >>199 普通は「その値の特殊な扱い方」、つまりビットマスクを使ってビットごとに 情報を格納したり取得したりする必要がある、なんてことを変数の名前に 盛り込む必要はないはずだと思う。 そんなことより、そのビットごとの値の集合であるその変数の「意味」に注目して名前をつけるべき。 hogeOptionsとかhogeMethodとかhogeModeとかhogeSettingsでいいじゃん。
204 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 16:23:16 ] >>203 なるほど!確かにそうですね・・・ 変なところにこだわっておりました。どうも。
205 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 17:56:44 ] __ , ‐' ´ ``‐、 / ̄:三} . /,. -─‐- 、. ヽ / ,.=j _,.:_'______ヽ、 .! ./ _,ノ `‐、{ へ '゙⌒ `!~ヽ. ! /{. / `! し゚ ( ゚j `v‐冫 , '::::::::ヽ、/ . {.l '⌒ ゙ 6',! / :::::::::::::::/ __ そんなことよりTimeOfNowの話しようぜ! . 〈 < ´ ̄,フ .ノー'_ , ‐'´::::::::::::::;/ (_ノ)‐-、 . ヽ.、 ` ‐", ‐´‐:ラ ':::::::::::::::: ;∠. ヽ_} ゙ヽ ,.r` "´ /:::::::::::::::::::ィ´ `ゝ !、 / / / :::::::::::::::: ; '´ /´\ / r'\ . i ! ::::::::::::::/ 墨 | .!::::::::/ヽ、.._!ヽ. ヽ、 { {:::::::::::;:イ / ‖i:::::::/:::::::::::::/ \ . ヽ ヽ,.ァ‐'´ /ヽ 二 ,/`ヽ、::::::::: / ヽ ヽ、 ,. ‐'" .ノ ,〈 > `'‐- ' > _,. ‐'´ / / `) ,ゝ _.⊥.-r┬:/ ヽ_,. -‐i"!´「L.=!┘ ヽ < / / | / 、i / __ ./
206 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 19:42:42 ] 爽やかだなw
207 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 06:01:57 ] フラグと聞いて真っ先に頭に浮かんだのがツンデレ オレって…
208 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 12:51:28 ] 死亡フラグ
209 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 00:03:15 ] 画像のサイズを2のn乗にするプログラムを書いてるのですが、 int xを与えられたときに、xより小さくない2の乗数を返す関数の名前はどういうのがよいでしょうか。 自分で考えたのはint up_to_pow2(int x);といった具合ですが、WEB辞書を見てみると、up to というのが どうやら思っていたのと違う意味のようでした。
210 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 00:11:33 ] ? 条件をもっとはっきり。 x以下の2の乗数のうち最大のものを返すのか、x以上の2の乗数のうち最小のものを返すのか、 どっちだ?
211 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 00:12:47 ] ceil
212 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 00:13:35 ] 逃げのような気もするが、normalize_image_sizeとか。
213 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 00:14:11 ] すいません。xより小さくない、最小の2の乗数 です。
214 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 00:15:06 ] up to じゃなくて、round up to じゃないかね?
215 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 00:19:03 ] いろいろ出してくれてありがとうございます。 cの数学関数にちなんでceilにしようかとも思いましたが、 ceil_pow2, ceil_to_pow2で意図した意味を成すのか不安なのでround_up_to_pow2にします。
216 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 00:19:37 ] 汎用的に使う関数なら、round_up_to_power_of_2()かなあ。 画像サイズの正規化にしか使わないと決まっているものなら、>>212 でいいんじゃね。
217 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 00:20:27 ] ぐぐると、 power of two round up とか rounding up an int to a power of two とか 出てくるからそれでいいとおもう。
218 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 01:10:25 ] 実験屋さんとかが使うMATLABだとnextpow2らしい。 俺ならとりあえずGetMinPowerOf2()とかGetMinPow2()とかしておいて、 必要ならオプションでFloorかCeilingを指定できるオーバーロードを追加するとかすると思う。 というか、過去にそんなの作った気がする。
219 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 01:16:32 ] まてよfloor指定するのなら名前にMinとか入ってると矛盾するのか。。
220 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 05:10:13 ] この際func001()で
221 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 08:25:21 ] 1度になぜ2つのことをする
222 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 08:27:59 ] はぁ???????・・・・・・
223 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 11:10:40 ] Part11にて。 265 :デフォルトの名無しさん[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 www.informit.com/content/images/0201914654/samplechapter/warrench03.pdf 270 :265[sage]:2007/11/22(木) 21:09:54 どうもありがとうございました。 CeilPowerOf2にします。
224 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 01:36:48 ] 質問です。 3Dモデルのボーンマトリクス等で親を継承する前のマトリクスをLocalMatrix、 継承後のマトリクスをGlobalMatrixと表していますが、 頂点カラー等はライトが当たる前の元の色をLocalColor、ライトの色を適応した 最終的なカラーを保持するメンバ名をGlobalColorと言うものなんでしょうか? より適切な名前があるような気がしてなりません。 どなたかより良い名前があればご指摘お願いします。
225 名前:224 mailto:sage [2009/02/11(水) 01:44:12 ] すいません、質問を変更します。 上記の、元データLocalに対して親を継承したものをGlobalとつけていますが、 マトリクス以外の親を継承したデータの名前に対してGlobal〜とつけるのは適切でしょうか? 継承したデータ、の内容は、色加算等の描画フラグ、ソートの補正値等が含まれます。
226 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 20:57:36 ] >>225 るーとまとりくす(ry
227 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 23:01:41 ] ロシアンパブはパブから派生だお( ^ω^)おっおっ
228 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 03:59:03 ] 「TimeOfNow」って命名がセンスないっていうのが、 正直理解できてない…。 もしかしたら言葉にしづらい感覚的なことなのかもしれないが、 そこんところ、教えてもらえないかな
229 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 04:30:27 ] 前置詞っツーのは、前置詞っツーのは
230 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 18:03:17 ] よろしくおねがいします 「入力必須であることを設定、取得するプロバティ名」と、 「入力必須なのに入力されていない事を示すプロパティ名」に悩んでいるんだが、 何かいいアイデアないかな? 例えば、Requireと、IsRequireとか付けてみたんだが、 これじゃどっちがどっちだかわからないので、他のを考えてるんだけど思いつかない。
231 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 18:17:56 ] Required Missing
232 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 18:28:07 ] SetRequired IsRequired IsRequiredButNotFilledIn
233 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 18:33:04 ] IsRequired IsMissing
234 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 18:39:25 ] なるほど参考させてもらって IsRequiredとIsFilledがわかりやすそうなので、これにしました。 ありがとうございました
235 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 18:59:44 ] In...
236 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 19:14:00 ] (・∀・)インポ!!
237 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 19:21:58 ] それは Im... ぢゃ
238 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 20:53:05 ] しかし、「入力必須であることを設定、取得するプロバティ名」ってのはどういうことかのう。。 そのクラスは、文字列か何かの別のプロパティを一つだけ持っていて、 そのプロパティが必須かどうかを表すプロパティ、って意味なのか? だとしたらなんだか無駄な気がするんだけどな。 「それ」が必須かどうかを表現するためだけに、ただの文字列をラップするのか。 「それ」が必須かどうかなんてことは、そのデータを持つクラスが知ってればいいことだと思うけど。
239 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 21:03:22 ] 入力で未入力を許容するかどうかを確認する例はよくあるだろ
240 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 21:06:16 ] ToNじゃ!ToNがでたぞ! ま、開発経験の無いでっかちド馬鹿に一つだけ教えてやるけど よくある入力フォームでの話だろ お前は何の経験も無いから知らないだろうけど そんな理想論掲げるだけ無駄だし無意味だし金にもならないし社会活動として破綻してる
241 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 21:34:51 ] >>239 それはそうなんだが、俺(>>238 )の言ってる意味わかってる? 普通は>>230 みたいな変な実装しないと思うよ。 これじゃたわざわざ述する手間を増やして可読性を落としてるだけじゃん。
242 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 21:38:07 ] だからバリデータを自分で実装するからだろ
243 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 21:46:09 ] 必須は、mandatoryともいうな。
244 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 21:46:47 ] 設定するのが義務的な意味で。
245 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 21:48:31 ] >>241 例えばTextBoxの派生クラスを作るのに、 Require属性がなかったら、いちいち項目ごとに異なる派生クラスを作って、 いちいち入力必須かどうか記述しなくちゃいけないじゃん。 そのほうが手間だし可読性は最悪だろ Require属性があればプロパティを設定するだけですべてに応用ができる。
246 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 21:51:16 ] UserやらNameから派生したテキストボックスとかあったら爆笑しちゃう
247 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 21:55:44 ] >>246 バリデートもそれぞれ別にやらなきゃいけないしな User.IsMissing Name.IsMissing MailAddress.IsMissing ・・・・・ Address.IsMissing とか、いちいち全部チェックするのかしら。 手間だし可読性も最悪。
248 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 22:01:03 ] >>245 その入力欄が必須かどうかを表す値をGUI部品に持たせるって 普通は変な設計だと思うけどなw もちろん必須かどうかをユーザーに対して表示する機能を持たせるため、 というような事情はありうるだろうけど。 それ以前に、それって>>230 の話と違うことない? >>230 はGUI部品の話をしてたんだろうか?
249 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 22:01:56 ] >>241 ごめん、変じゃない実装って何? >>238 だけじゃいまいち分からん。
250 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 22:06:03 ] >>230 は「入力」の話をしてるのに GUIで入力しないで何で入力するんだ?念力? ユーザーオブジェクトの必須フィールドについてとかなら 全然違う書き方で質問してくると思うが
251 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 22:08:25 ] >>248 インターフェースでIsRequire属性を、それぞれのクラスに継承させ、 ファクトリークラスからインスタンスを生成する。 ファクトリークラスでは foreach(IInterface object in ObjectList) boolValue = boolValue & Object.IsMissing; これだけですべての項目のバリデートができる user、name、mailAddress、birthDay、age等すべてでValidateするのとどちらが可読性が上かい? そして、こんな設計は変なのかい? なんか書いていてむなしいぜ。
252 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 22:17:29 ] >>249 例えば、Customerクラスに氏を表すFamilyNameというメンバがあるとする。 そのFamilyNameが「入力必須」であることを表現するためだけに、 IsMissingをプロパティに持つ新たな型を導入するのは無駄だということ。 素直にFamilyNameは単純に文字列で持てばいい。 それが必須かどうかの情報はCustomerが持っている方が直感的だ。
253 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 22:17:39 ] >>248 だからバリデータを自分で実装するからだろ 俺(>>242 )の言ってる意味わかってる?
254 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 22:21:38 ] >>252 そりゃ無駄だわw そして、当たり前の事だわw 最後に、ただのお前の勘違いだわw
255 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 22:24:43 ] >>252 逆 その理屈だと、どんな属性もそれを抱えるクラスが持てばいいことになる。 Formに貼り付けたUI部品のVisibleをすべてFormで管理するなんて煩雑過ぎる そのオブジェクトの属性は、そのオブジェクトが持つのが常識 かつ>>251 の書いているとおりインターフェースを利用した場合のほうが、 拡張すべき実装(例えば誰が入力したか)がでた場合に簡単に拡張できる。 インターフェースにUserを追加するだけだからな。
256 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 22:33:57 ] >>254 そうでもないよ。 例えばnullを許容するかどうかの場合を考えるとわかりやすいよ。 これは空文字とは別にnullなんだという情報をCustomerクラスに持つなんてしないでしょ。 その属性は、そのオブジェクトに持たせるのが常識。
257 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 22:43:20 ] そのCustomerオブジェクトがValidであるかどうかのチェックが必要な場合はCustomerクラスに記述すべきじゃない? 今回のお題とは全く別件だけどさ
258 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 23:08:54 ] >>255 >その理屈だと、どんな属性もそれを抱えるクラスが持てばいいことになる。 いや、そうは言ってないよ。 「そのオブジェクトの属性は、そのオブジェクトが持つのが常識」には完全に同意するけど、 FamilyNameが入力必須かどうかは普通に考えれば「Customerクラスの都合」であって FamilyNameの属性ではない。 ただ、>>251 の言うことが正しい(少なくとも一理ある)のは理解した。 >>251 の言う利点は正直あまり同意できないけど、確かに、例えば ある値に「不正な入力がされている」ことをUIに反映するようなことを考えるときには プロパティから取得したデータ自身が「自分が不正な値かどうか」を知っている方が便利だ。 言い訳がましいけど、俺は普段(「入力」ボタンが押されたときまとめて、ではなく) 個別のコントロールに入力された時点でプロパティの値を設定して、プロパティのセッタの中で バリデーションを行って結果はイベントで通知してUIに反映する、というコードを書く場合が多いので >>251 の発想はなかった。 「変」とか言ったのが気に障ったらそれは謝る。
259 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 23:13:20 ] ここは属性プログラミングの出番だと思うね。 まあ、 >命名規則や設計の善し悪しについて議論するのは基本的に禁止。 なんで、ほどほどに。
260 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 00:10:01 ] >>258 Webアプリじゃそんな贅沢な事出来ないしな
261 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 00:12:16 ] TONさんさー 今回は出なくていいよ。 正直これはどうでもいい。
262 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 00:15:26 ] >>258 それだとコントロールが追加されるごとに、 ・新たなプロパティ値を設定する部分 ・バリデーションをする部分 ・イベント通知をする部分 ・そのコントロールが未入力を許容するかどうか という項目をCustomerクラスに追加していかなきゃいけなくなるでしょ ファクトリークラスとインターフェースを利用すれば、 インスタンスを生成するだけで、それが自動的にできる。 そのためには、それぞれのコントロールにRequired属性が必要になるってこと。 >>259 これで最後にするよ。
263 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 00:26:49 ] T.O.N.さんは質問者が解決って言った後に愚痴り出すのが趣味だから、しょうがないよ
264 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 01:20:04 ] >>262 >インスタンスを生成するだけで、それが自動的にできる。 それはちょっとミスリードな言い方だな。 単にそれらの処理が書かれる場所がデータを所有するクラスからデータ自身のクラスに 変わるだけ、でしょ? もちろん、>>251 のコードのように列挙してチェックする必要がある項目が 多数になる可能性があるのなら、(1)データ自身に、(2)同じインターフェイスとして実装する ことによるポリモーフィズムの利点が利いてくるのは確か。 でも>>230 のような用途でそんな可能性があるのかなあ。 やっぱり正直、一見エレガントに見えて「策士策に溺れる」的に思える。 >そのためには、それぞれのコントロールにRequired属性が必要になるってこと。 ごめんこれは何を言っているのかよくわからん。 最後に、確かにこれはスレ違いと言われても仕方がない話題だねすまんかった。
265 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 01:21:52 ] >>258 解決済みの件を無駄だの変だのと蒸し返した挙句、 今日一番の長文が殆ど全部言い訳で占められてるってどうよ? 本当に性格悪いな、あんた。
266 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 01:29:07 ] >>264 何で質問者がいるうちに言わないの? 何で質問者が居なくなった頃を見計らって「ぼくのかんがえたしつもんしゃがいいたかったこと」を語りだすの? 何で質問者がそこまで間抜けな質問をしていると仮定するの?
267 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 01:47:57 ] >>264 >単にそれらの処理が書かれる場所がデータを所有するクラスからデータ自身のクラスに変わるだけ、でしょ? 「単に」ではなく、それが最も重要な利点。 Validateする内容が文字列だけだと勝手に決めてないか? stringだけなら、配列にいれた文字をstring == ""ですべてチェックできるが、 intやstringが混在する場合だと、その都度、異なるメソッドに割り振ってチェックしなきゃいけないから効率が悪い。 データ自身が処理を持っていれば、インターフェースで指定したValidateの返値を得るだけでチェックできる。 そしてユーザ指定型を追加して拡張したい場合でも、インターフェースさえ設定すれば、 所有クラスは何も変えずに使い続けることができる。 >でも>>230 のような用途でそんな可能性があるのかなあ。 十分にある。 ・Webアプリのコントロール→ボタン押下時に一斉にチェックする必要がある ・入力をチェックする再利用可能なValidationクラスの設計→メアド、数値など、 入力値をチェックするコントロールを再利用可能なクラスとして設計し、一斉にチェックする場合 ・データベースへInsertするための汎用クラスの設計→DateTime値、int値、nullかどうかなど、 それぞれの入力値を一斉にチェックする場合 >ごめんこれは何を言っているのかよくわからん。 これを理解できないのに、なんでインターフェースを語れるんだ?
268 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 02:09:32 ] 経験値不足な彼相手によくそこまで付き合ってあげられるなぁ。 ちょっと涙が出てきた。
269 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 02:55:17 ] >>264 >それはちょっとミスリードな言い方だな。 いや自動にできる >単にそれらの処理が書かれる場所がデータを所有するクラスからデータ自身のクラスに >変わるだけ、でしょ? データ自身のクラスに、そんな処理を書くわけないだろ 処理はデータ自身の基底クラスに記述 データ自身はそれを継承しているだけ だから自動でできる
270 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 02:58:57 ] 案の定いつも通りの流れでワロタ
271 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 03:01:59 ] そろそろTONさんバックレます また2週間くらい
272 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 03:10:32 ] >>230 読んでクラスのメンバフィールドの話をしてると思った人ってTimeOfNowの人意外にいるの?
273 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 03:34:59 ] 俺は入力フォームみたいのを作って実行する、データ自体には依存しない一般的な仕掛けを実装したいのかなと思った。
274 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 05:23:45 ] とりあえずTONのひとはコテハンかトリップでもつけてくれねぇかなぁ。
275 名前:TimeOfNow ◆g72UvIyAhI mailto:sage [2009/02/13(金) 05:41:07 ] トリ付けました。
276 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 05:42:01 ] >>274 フルボッコされると自演乙とか言っちゃう人だから、まぁ無理でしょ
277 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 05:44:00 ] TONが「ました」 なんて言う訳が無い
278 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 09:00:15 ] >>273 「普通」はそうとしか取れないよな
279 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 13:48:04 ] 年度末、年度初めって何かある? startNendoOfYearとかベタなのしかおもいつかんw
280 名前:279 mailto:sage [2009/02/13(金) 13:49:40 ] ああ、ごめん年度開始月と、年度末月でした。 startMonthOfNendoとか、endMonthOfNendoとかしか思い浮かばない・・
281 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 14:02:28 ] >>280 それでいいじゃん。何か不満なの?
282 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 16:04:55 ] Nendo -> FiscalYear (会計年度) Nendo -> BusinessYear (事業年度) Nendo -> AcademicYear, SchoolYear (学校年度)
283 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 18:59:25 ] of yearっているの? ToN!
284 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 20:13:55 ] >>267 いや、「<コントロールに>Required属性が必要」というのはやはり意味不明に聞こえる。 コントロール、に? 前半の話は理念的に美しいのは認めるが、現実解としてはやはり間違いだと思う。 >>230 のような話は、ベタにやった方がずっと早くわかりやすく書ける。 >>269 それ自分で言ってることの意味がわかって言ってるの?
285 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 20:22:21 ] >>284 スレ違いの話題いいかげんにしろや池沼
286 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 20:25:25 ] >>284 >前半の話は理念的に美しいのは認めるが、現実解としてはやはり間違いだと思う。 なら汚いスパゲッティコードしか書けてないんだろ object指向ならあらゆる処理を行うコードが、それぞれまとまっているわけだが? int.ToString(); string.Substring(0, 0); datetime.AddDays(0); そしてintなどには未入力であることを示すプロパティが無いから、 自前で実装しておきたい需要は普通にあるだろ。 それこそ機能を作っておいて>>269 の言うとおり継承するだけでいいんだから そのほうが簡単で確実だし可読性も良い。 お前の言う方法だと、いちいちその都度、Customerクラスを専用に作り直さなければ ならないので遅いし、クラスによって実装が異なるから分かりにくく可動性に欠ける。
287 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 20:44:50 ] >>286 いきなりお前呼ばわり? まあいいけど、既に書いたとおり、>>230 のような情報は本来「データを所有しているクラス」 が知っているべきことであって、データそのものに属する情報じゃない。 OOP云々いうのなら、こういう「意味論的なおかしさ」にも敏感になってよ。 それだけでなく、年齢(普通ただの数値であることを期待するだろう)が、「必須項目かどうか」 を年齢自体に持たせるために、本来ただの数値で済むものに専用型を導入するわけ? int age = Customer.Age.Value; みたいなまどろっこしいことを強制されるわけ? 策に溺れてるじゃん。 それと、その継承の使い方はおかしいと思うよ。 継承って「見たくないコード」を隠すために使うものなの? 違うと思うけど。
288 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 20:47:41 ] >>287 暗黙の型変換ができればいい。
289 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 01:22:06 ] >287 継承の使われ方は結果論であって、 親クラスがその責務をもつのが妥当かって話で その観点からは個人的にはアリだと思うけど。 まどろっこしいかどうかは言語によっても変わるだろうし。 でもお二人ともスレ違いだしそろそろやめたら?
290 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 02:04:47 ] >>287 そこで暗黙の型変換使わないでどうするの? もう少し知識を揃えようね。 それにオブジェクト指向の根本が見たくないものを隠すからなってるだろが。
291 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 02:12:27 ] o(・_・= ・_・)o キョロキョロ
292 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 02:18:46 ] Webアプリだと普通にベストプラクティスの一つだと思うけどな。 それを「少なくとも一理ある」だの「正直あまり同意できない」だの、どんだけ言い訳まみれの人生なんですかw
293 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 02:44:55 ] >>1 >命名規則や設計の善し悪しについて議論するのは基本的に禁止。
294 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 06:12:10 ] >>238 の時点でブッチギリにスレ違いなのに、何をいまさらw
295 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 11:35:18 ] 所持数とか使用数みたいな 変数名はいまだに悩む
296 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 19:23:01 ] 結局残るのはTimeOfNowを肯定する人間は一人も現れないと言う事実のみ
297 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 21:41:34 ] いまはこーのばしょで〜TimeOf Now〜
298 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 21:45:21 ] >>287 >OOP云々いうのなら、こういう「意味論的なおかしさ」にも敏感になってよ。 なるほど組み込み型の変数以外は、どんなクラスであれ、データそのものでなく、 データを所有するクラスだから、未入力属性が存在することは認めるということね。 つまり、バリデーションを受け持つクラスや、GUI部品が 未入力であることを示すプロパティを持ってる事には納得したってことだな。 じゃなんで、>>238 のような質問をするんだ? >>230 はどう考えても、お前の言うところのデータを所有しているクラスのプロパティだろ。 >int age = Customer.Age.Value; みたいなまどろっこしいことを強制されるわけ? 暗黙の型変換、拡張メソッドがあるじゃん >継承って「見たくないコード」を隠すために使うものなの? すべてではないが、一つの機能だろ。 継承とカプセル化が無縁のものなら、なんでprivateとprotectedの違いがそもそもあるんだ?
299 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 22:38:32 ] >>298 だからいきなり人をお前呼ばわりするなって。 最低限の礼儀も弁えない糞ガキなの?(まあ、やってることは疑念の余地なくそう。) 悪いけど前半は何を言ってるのかさっぱり理解できん。 最後の三行について言えば、>>269 ,>>286 が言っているような目的、 つまり、例えばEMailAddrクラスがあるとして、そのクラスの中に直接Validateメソッドを 書くことを避けるためだけに無理に(つまり何の「汎化」にもなってない!) ベースクラスEMailAddrBaseクラスを作る、なんていう継承の使い方を良しとする まともなプログラマって見たことないよ。 それって、例えばCで、「関数の行数が長すぎるからもっと短くしろ」と叱られた 馬鹿な新米プログラマが、 int hogeFunc(int x, int y) { #include "hogeFuncの中身.h" } とやってるのと何が違うの? ついでに言えば、こういう愚行を「カプセル化」と呼ぶ人間も見たことない。 (まあこれは普通そんな頭の悪いことはしないから当たり前だけど。)
300 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 22:57:46 ] 俺が設計してやろうか?
301 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 22:58:36 ] 2chでお前って言われてブチ切れるやつ始めて見たwwww
302 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 23:04:15 ] ひょっとして40過ぎのおっちゃん?
303 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 23:09:47 ] >298,299 お前らもう最低だな。早く死ねや
304 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 23:34:55 ] 老害すぎる
305 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 02:37:36 ] つかNullable型のような物を自前で実装するってだけだろ 何そのEMailAddrBaseってw ダサすぎw
306 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 02:43:12 ] つまりやっぱりTONの人なの?
307 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 02:45:37 ] >>299 は総称型も暗黙の型変換もない言語を使ってるんだよ…
308 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 02:51:28 ] IsMissingだけをサポートするMyStringって型作ってEMailAddrやらFirstNameやらPostalCodeやらがそれを継承するだけじゃん なんでEMailAddrBaseやらFirstNameBaseやらPostalCodeBaseまでつくらにゃならんの?
309 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 03:09:49 ] EMailAddrBaseさん、落ち着いてくださいよ 糞ガキ呼ばわりも十分に無礼っすよ 無礼者同士、仲良くしたらいいじゃないっすか
310 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 10:50:13 ] 議論も仲良くもここでやんな。
311 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 15:37:35 ] 荒らしにはスルーが基本。読む価値なし
312 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 19:54:42 ] だれかToNさんに鏡を渡してあげないと
313 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 21:40:08 ] 質問ですが、ToNとTONとT.O.Nとどれが一番いいと思いますか?
314 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 21:45:57 ] ToNがいいと思うけど顔文字に見えてしまう
315 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 21:54:14 ] >>313 もういっこピリオドを付けてT.O.N.にする
316 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 00:22:31 ] >>299 >クラスの中に直接Validateメソッドを書くことを避けるためだけに無理にベースクラスEMailAddrBaseクラスを作る お前バカだろ。電子メールアドレスの基底クラスを作って、それを派生させるのはメアド入力だけかよw 個々のオブジェクトに普遍、共通な機能をクラスに記述し、それを継承できるとこにobject指向の意味があるんだよ。 例えばメアドでも住所でも、バリデートが必要なデータは、すべて使用者が入力するデータなんだから、 入力値とIsMissiongプロパティを所有するValidateStringとか言う自作クラスを作って、それを継承するだけだろ。 ついでに入力値を設やりとりするプロパティとか、文字数とか、nullかどうかをチェックする機能も 基底クラスに記述すればいいわけだ。 >(つまり何の「汎化」にもなってない!) お前の脳内で汎化してないだけだろ。 EMailAddressでも、ZipCodeでも、Addressでも、FaxNumberでも、 すべて未入力を許容する可能性があるんだからValidateStringを継承すればいいだけ。 いちいち未入力であるかどうかを個々に記述してたらばからしいだろ。 >こういう愚行を「カプセル化」と呼ぶ人間も見たことない。 お前、継承の機能を全然理解してないだろ。 customerクラスが、未入力を許可するかどうかを所持していたら、 項目が増えるごとにメンバを増やさなければいけないから、 入力するフォームが増えるだけ異なる別個のクラスができて非効率的だろ。 データが所有クラスが、自分自身に未入力を許容するかどうかを持っていれば Customerクラスを改変せずに利用できるから非常に便利。
317 名前:デフォルトの名無しさん [2009/02/16(月) 00:44:03 ] >>299 もう面倒だから俺が設計してやんよ 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 //電話番号かどうか 汎用化できるじゃん。しかも継承させたほうがすっきりして可読性が良い。
318 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 00:46:53 ] >>316 ここでもいつも言ってることだが、人が言ったことに反論してもらえるかな? 人が言ってもいない、ただの君自身の被害妄想的な妄想に対して一生懸命反論して 何か意味あるの? いつも思うんだが、こういう人間ってどういう思考回路してんだろ意味がわからない。
319 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 01:24:14 ] >>317 一応反論(と言っていいかわからんが…)しとくけど、俺が使った言葉は「汎化」ね。 >>269 ,>>286 が言っているような継承の使い方は、なんの汎化にもなってない愚行だ、 と言ったんだよ俺は。 しかし、君に言ってもしょうがないけど>>269 がどういう意味で自動って言ってるのか さっぱり意味がわからんな。 この人継承って魔法か何かとでも思ってるのかしらん。 まあIsRequiredのようにメンバ変数の値を返すだけプロパティやメソッドなら コンストラクタでメンバ変数に適切な値を入れるとかで見かけ上「自動」にできるけど (でも普通はそんなことせず、素直に派生クラスでオーバライドする作りにした方が早いよな) Validateのようなメソッドがどう「自動」にできるのか聞いてみたいもんだ。 コンパイラの中の小人さんが適当にValidateの中身を書いてくれるのかw
320 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 01:47:04 ] >>313 1番目のToNがお気に入りです
321 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 01:49:25 ] あと、一つ思ったんだが、>>230 がいうような情報をデータ自身に持たせることが 意味論的におかしいことは既に書いたけど、そのことの帰結として、 例えば同じ型のデータが2つ以上必要で、それぞれ入力必須かどうかが 違ってたらどうするの? もちろん、例えば入力必須かどうかで別の型にするとか、いろいろ技巧的に解決法があろうとは 思うけど、それって本当に直感的と言える? むしろそんな技巧を凝らさなければならなくなるのは、最初の考え方に無理があるからじゃないの? もちろん物事何でもトレードオフだから、多少意味的におかしくてもコードが簡潔になるとか、 それ以上のメリットがあれば良いとは思うんだけど、>>251 が提案しているような方法は ある種エレガントではあっても冗長なだけにしかならんよ。 まるで庭の焚き火用の穴を掘るのにユンボ使ってるようだ。
322 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 01:59:24 ] >ある種エレガントではあっても冗長なだけにしかならんよ。
323 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 04:19:31 ] 設計の話か。俺になんか聞きたいことある?
324 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 05:23:07 ] \(ToN)/設計オワタ
325 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 01:22:01 ] >>264 でスレ違いを謝罪してるのに何故未だに続けてるの?
326 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 01:37:10 ] 「確かにこれはスレ違いと言われても仕方がない話題」であり、 「紛らわしい事については認めるが、スレ違いでは無い」からです。 「スレ違いな話題だと勘違いする馬鹿」に対して「お気の毒に」と言っているのが>>264 です。 これを「TimeOfNowメソッド」と呼びます。
327 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 01:50:08 ] >>319 >>>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 に書いてるじゃん
328 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 01:51:34 ] >>321 >>>230 がいうような情報をデータ自身に持たせることが意味論的におかしい おかしくないよ 例 JAVAのString.isEmpty() >例えば同じ型のデータが2つ以上必要で、それぞれ入力必須かどうかが違ってたらどうするの? その型を格納するクラスが二つになるだけだよ。 メールアドレスを格納するクラス MailAddress mailAddress1 = new MailAddress(); MailAddress mailAddress2 = new MailAddress(); とするだけだよ。参照渡しと値渡し理解してる? >例えば入力必須かどうかで別の型にするとか、いろいろ技巧的に解決法があろうとは >思うけど、それって本当に直感的と言える? オブジェクトにそのプロパティがあるほうが直感的だよ。 どんな入力内容にも、入力必須が入力必須でないかの二つしかないよ。 入力必須でなければ、入力必須をfalseにして普通に使えばいいだけだよ。 一般化できる昨日をスーパークラスに記述するobjectの仕組み理解してる?
329 名前:デフォルトの名無しさん [2009/02/17(火) 02:02:00 ] >>321 >あと、一つ思ったんだが、>>230 がいうような情報をデータ自身に持たせることが >意味論的におかしいことは既に書いたけど、そのことの帰結として、 >例えば同じ型のデータが2つ以上必要で、それぞれ入力必須かどうかが >違ってたらどうするの? 異なるインスタンスを生成するだけじゃねーか なにいってんだ?
330 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 02:12:45 ] >>318 お前も人の言ったことに反論してねーじゃねーかw
331 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 02:16:45 ] >>324 ToN入ってたのかw
332 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 02:27:10 ] おかしくないよ 例 C#のNullable<string> >>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 = "hoge1@hogemail.hoge"; //mailAddress1.IsMissing ⇒ false & mailAddress1.IsCheck ⇒ true mailAddress2 = "hoge2@hogemail.hoge"; //mailAddress2.IsMissing ⇒ false & mailAddress2.IsCheck ⇒ true ほんと、書いててむなしくなるな・・・
333 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 02:31:49 ] >>330 >>318 はどこかの誰かのアンカミスで、ToNに宛てて言ってるんだろ? そうとしか思えない。いや、それ以外ありえない。
334 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 02:52:12 ] >>318 、ミ川川川彡 ,ィ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
335 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 02:54:57 ] >>332 その結果、入力内容が正しい(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 = "hoge1@hogemail.hoge"; //mailAddress1.IsMissing ⇒ false & mailAddress1.IsCheck ⇒ true & mailAddress.IsValidate ⇒ true mailAddress2 = "hoge2@hogemail.hoge"; //mailAddress2.IsMissing ⇒ false & mailAddress2.IsCheck ⇒ true & mailAddress.IsValidate ⇒ true つか、そう考えると入力判定にIsRequire属性必須だよな 空文字はメアドチェックにははじかれるけど、入力必須でなければバリデート結果はtrueだからな。 まさに書いててむなしくなるな・・・
336 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 03:49:58 ] >>335 IsCheck==IsValidate 俺ならIsValidプロパティかValidateメソッドで実装するな
337 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 06:16:46 ] TONさん議論の入り口にも立ててなくてワロス ワザとやってるんだろうか
338 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 06:23:06 ] IsValidate はまず品詞がおかしい
339 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 09:43:08 ] IsCheked IsValid
340 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 09:58:20 ] 論旨に影響しない瑣末な違いだ
341 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 10:11:52 ] このスレにとっての本題だがな
342 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 10:17:46 ] いつの間にか設計の話するスレになってたんだな
343 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 10:21:41 ] 設計の話と言うか おぶじぇくとしこういちねんせいのToNに虚しさを感じながらも無駄な説明を繰り返すスレ
344 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 10:29:51 ] トンはもう秋田
345 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 17:28:10 ] さぁTONさんタイムがやってまいりますた!!
346 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 19:33:32 ] >>327 さすがに頭おかしくないか? >>317 とかそれのどこが「自動」なんだ。 >>264 で指摘しているように、ただ判定処理が書かれるコードの場所が変わってるだけだろ。 >>328 ,>>332 >>335 君ら(複数人だよね?)それ本気で書いてるのか? こんなこと一々説明しなくても当然分かるだろうと思って書かなかったが、 IsRequiredはゲッタのみかつ定数を返すようにしないとマズいだろう。 IsRequiredをインスタンスメンバとして実装しちまったら 外からMailAddressをセットできなくなるだろ。 言ってる意味分かる? なんていうか、まともなコード書いたことない奴が本読んだだけで 物を言ってるのがバレバレだなw
347 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 19:44:20 ] >>346 >>>264 で指摘しているように、ただ判定処理が書かれるコードの場所が変わってるだけだろ。 それがobject指向の目的だよ。 データと判定処理をクラスが持っていたら、クラスの所有するデータが増えるたびに、 そのデータの判定処理をするプログラムを書かなければいけないよ。 データそのものが判定処理を持っていれば、データを持つ所有クラスは何も改変せず、 自動的に処理されるよ。 >IsRequiredはゲッタのみかつ定数を返すようにしないとマズいだろう。 別にまずくないよ。設定するのが嫌だったら、初期値でfalseにしといて使いまわせばいいだけだよ。 >IsRequiredをインスタンスメンバとして実装しちまったら >外からMailAddressをセットできなくなるだろ。 MilAddressは、IsRequiredを所有するクラスなんだから、セットも糞もないよ。 何が困るのか実際のコードで示してくれよ。
348 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 19:54:53 ] >>347 ではCustomer.MailAddress1のIsRequiredはtrueであって欲しいとして、 Customerの外のクラスから MailAddress ma = new MailAddress(); ma.IsRequired = true; Customer.MailAddress = ma; とかされた場合、どうするの?
349 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 19:55:40 ] ごめん ma.IsRequired = false; に訂正
350 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 19:57:14 ] っていうか、ここまで言ってまだ分からんかなあ。。
351 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 20:01:53 ] 横に長いコード書くなよ。うちの専ブラの使い方で見づらい
352 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 20:05:16 ] >>348 trueであって欲しいのに、 ma.IsRequired = true; をし、さらに Customer.MailAddress = ma; をすることが間違い じゃあ、 Form.TextBox1のVisibleはtrueであって欲しいとして、 Formの外のクラスから TextBox tb = new TextBox(); tb.Visible = false; Form.TextBox = tb; とかされる可能性は問題ないの? むしろ、そんな設定をするほうが悪いんじゃないの?
353 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 20:07:53 ] >>348 IsRequiredをtrueなりfalseと設定したいから、そう記述するんだろ? お前はいちいちプロパティが改変されることを予見してすべてプログラムするのか?
354 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 20:09:51 ] >>352 おいおい何を言ってるんだよトチ狂ったかw そもそも外(UI)から操作される値の話をしてるのに、 外から操作してはダメな値を操作するのがおかしい、ってどういう意味だよ。 もう一度>>230 から読んで話の文脈をちゃんと理解して何かいってよ。
355 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 20:12:13 ] >>353 それこそOOPを理解してる? 普通に考えれば、IsRequiredは外から操作されたくない値だろう。 >>230 の意図はそうじゃないよ、って言いたいの? じゃあまあ>>230 の意図はおくとして、IsRequiredが外から操作されたくない 値だったら(普通にありふれたシナリオだと思うが)どうするの・
356 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 20:15:42 ] >>354 おいおい、お前頭がおかしいんじゃないか? なら、絶対に表示しなければならないGUI部品のTextBoxがあったとして、 そのTextBox.Visibleを絶対に変更されないような仕組みをわざわざ作る必要なんてないだろ? 使う本人が分かればいいんだから。IsRequiredも同じだろ。
357 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 20:17:19 ] >>355 >普通に考えれば、IsRequiredは外から操作されたくない値だろう。 いや、汎用のクラスライブラリとしては、普通に操作できて当たり前だろ。
358 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 20:18:12 ] っていうか、正直>>230 のような目的で>>251 式にデータ自身に メソッドやプロパティを持たせるかどうかは意見が分かれるところだとは思うけど、 IsRequiredはクラスメンバの値を公開するようにすべき、ってのは まともなプログラマが100人いたら100人が同意する話だと思うぜ。
359 名前:デフォルトの名無しさん [2009/02/17(火) 20:19:25 ] 質問 bool値を返す関数ってよくIs〜って名前付けるよね? でも『A君はB君の方を見ていますか?』みたいな文の場合、 英語にするとDoes〜で始まると思うんだけど、 こういうときの関数名はどうするべき?
360 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 20:21:00 ] >>359 CanASeeB
361 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 20:25:25 ] >>360 それ可能・不可能の意味合いに変わってるじゃないですか
362 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 20:25:53 ] >>356 外から変更されたくない値は変更できないようにしておくのが当たり前。 君は「アクセス修飾なんてぜんぶpublicでいいじゃん」っていう初心者様? >>357 汎用クラスライブラリの話なんかしてないの。 ベタベタに特定用途専用のクラスの話をしてるんでしょ。 だいじょうぶかよ。 CustomerクラスのMailAddress1プロパティが必須かどうか、なんて値を 外から操作できてどうするんだよw もちろんそういう用途が皆無とはいえないはずだが、普通はないよ。
363 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 20:31:54 ] >>362 変更されたくない値かどうかは、設計者次第 汎用クラスとして設定できるようにしておいて、その継承クラスで隠蔽しておけばいいだけでしょ。 >>230 の使い方もわからないのに、勝手に変更されたくないと決めつけて意見するほうが間違い。 とはいえ、汎用的に利用するために、IsRequireのようなプロパティは公開しとくのが当たり前だろな。 >汎用クラスライブラリの話なんかしてないの。 >ベタベタに特定用途専用のクラスの話をしてるんでしょ。 ユーザが入力した文字列のバリデーションなら汎用だろ。 勝手に特定用途専用なんて決めつけるほうがおかしい。 >CustomerクラスのMailAddress1プロパティが必須かどうか、なんて値を >外から操作できてどうするんだよw CustomerクラスのMailAddressプロパティなんて>>230 は話してないだろ? 何で勝手に自分の都合のいい解釈してんの? それに>>317 をみれば、それぞれのデータにIsRequiredプロパティがあるほうが わかりやすいだろ?
364 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 20:32:26 ] >>359 A.IsLook( B ); でいーんじゃないかなぁ。もしくは A.IsLooking( B ); これで伝わると思うんだけど。。。
365 名前:デフォルトの名無しさん [2009/02/17(火) 20:44:00 ] >>362 業務ソフトは入力値のvalidationばかりだから それにリソースを取られないようにクラスライブラリ化するのは当たり前でしょ mailaddressの未入力を許可するみたいなのこそベタベタの汎用処理だと思うぞ
366 名前:デフォルトの名無しさん [2009/02/17(火) 21:02:15 ] ToN敗走
367 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 21:10:43 ] >>363 んもー鳥頭さん? >それに>>317 をみれば、それぞれのデータにIsRequiredプロパティがあるほうが >わかりやすいだろ? まず最初に、そこは異論ないよ。 何度も言うように、意味論的にはオカシイんだけど。(正直これに違和感感じない人間にOOP論じる資格なし) ただ、何度も言うようにデータにIsRequiredがあるのは意味論的には間違ってるから、 (それは本来Customerクラスが知っているべきことだ)その当然の帰結として、IsRequiredを フールプルーフに出来なくなっちゃうよ、これって問題じゃないのかい、と言ってるの。 フールプルーフに出来なくなっちゃ、とは Customer.MailAddress1に触るコードを書くときは、MailAddress.IsRequiredの値を間違って 破壊しないようにCustomerクラスを使う人が注意を払わなきゃならんということ。 どっかのトンマがIsRequiredを間違って破壊しちゃう可能性が機構的に排除できないってこと。 >>365 自分で自分の足を(撃とうと思えば)撃てるのはかまわないが、 安全装置を(組み込もうと思っても)組み込めないようなライブラリなんかに価値はないよ。
368 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 21:12:58 ] つーか、だからそもそもライブラリの話してないしさ。
369 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 21:18:57 ] >>367 >何度も言うように、意味論的にはオカシイんだけど。 おかしくないよ。これをおかしいと思うひとにオブジェクト指向を語る資格なし。 >どっかのトンマがIsRequiredを間違って破壊しちゃう可能性が機構的に排除できないってこと。 だからフールプルーフについては既に記述してるじゃん。 お前は絶対に表示しなければ成り立たないGUI部品があったとして、 そのVisibleをfalseにできないようわざわざ設定しているのか? >安全装置を(組み込もうと思っても)組み込めないようなライブラリなんかに価値はないよ。 継承して隠蔽すればいいじゃん。 汎用的に使えないライブラリなんかに価値はないよ。
370 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 21:23:10 ] はいはい、そうだねお前らが正しいよ お前ら釣られまくりでバカじゃねーの?wwwwww しねばいいよwwwwwwwwwwwwwwww
371 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 21:25:56 ] >>370 ton氏ね
372 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 21:40:06 ] 230は foreach(inputField in Fields){ if(inputField.IsRequired && inputField.IsMissin){ // なんかする。メッセージのappendとか。 } } ってことだろうとふつーに思った。ふつーに思った。(IsRequiredは冗長かもしらんが。) 238を読んで、あーこういう脳みそがななめってるうざいやつってうちの現場にもいるなーって オレも思ったし、お前も思っただろう。そいつは多分今も仕事中ww
373 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 22:01:53 ] >>372 >>238 は bool tmpBool = false; tmpBool = MailAddressCheck(mailText); tmpBool = MailAddressCheck(mailText1); tmpBool = PostalCodeCheck(postalText); tmpBool = PostalCodeCheck(postalText1); tmpBool = TelCheck(telText); とか、オブジェクト指向がわからず、いちいち関数で処理しちゃう奴だろ? しかも、tmpBoolが最後のTelCheck()だけで決定されてしまってバグに気づかず大慌てするタイプ。 もっというと、tmpBoolとか死ねって感じのタイプ。
374 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 22:04:43 ] いくらバカでもせいぜいflagとかにしちゃうぐらいだと思うがなぁ
375 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 22:12:16 ] IsRequiredプロパティ設定可否だの、定数での設定だの、 方法論はいろいろあるけど、変更できる人には、変更できちゃうんだから、 定数値でも意味がないだろ。 変更したくなければプロパティを隠蔽すりゃいいんだから。
376 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 22:14:58 ] なんかへそ茶だな。 2chで(馬鹿な)君に賛同してる奴なんて君と同じレベルの馬鹿なのに。 「オブジェクト指向が分からない」とは、>>230 のいうIsRequiredのような値は データの所有者に属する情報であってデータ自身に属する情報ではないことが 理解できない人間の事を言う。
377 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 22:15:56 ] >>375 だから、どうやって?
378 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 22:20:34 ] >>377 隠蔽する方法の言語仕様を知りたいの? private new string MethodName(); で隠蔽できるじゃん
379 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 22:27:59 ] 言い争ってるやつらは経験不足なんじゃないかな。決め付け多いし。 いつの世も理想主義と現実主義の話は平行線。 極論ばかりだと現実社会では生きていけないように プログラマーとしても成長できませんよ。 ここから上から目線のやつが現れてもっと解説 ↓↓
380 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 22:30:48 ] ___ /::::::::::::::::\ /:::::─三三─\ /:::::::::(○)三(○).\ /⌒)⌒)⌒.:::::::::: (__人__) :::::: \ /⌒)⌒)⌒) | / / /.. ` ⌒´ | (⌒)/ / / /,,-''ヽ、 | :::::::::::(⌒) / ゝ ::::::.,,-''" \ | ノ \ /_,-'" \ ヽ / ヽ /\ \ | | __ //\\ \ /|[]::::::|_ / \/\\ / ./| ̄ ̄ ̄ ̄ //\ \/ \ // ___ | |:::「「「「「「 / \/\ /\\ /:::/ ./| |__ _..| |:::LLLLL//\ \/ \/\\/::::::/ / | ロ .|lllllllllllll / llllll| |:::「「「「 / \/\ /\ .\/ ./::::::::/ / ./ .| |lllllllllllll __ llllll| |:::LLL.//\ \/ \/\ /::::::::/ | / .| ロ .|lllllllllllll | |:::「./ .\/\ /\ \/ /::::::::/⌒ヽ、| ||/ ..| | |:::l//\ \/ \/\_, -― 、 ''"⌒ヽ,_ (⌒ヽ、_,ノ⌒Y" Y .....⌒) (⌒ヽー゙ ....::( ..::....... .__人.....::::::::::::::::::::
381 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 22:31:31 ] >>376 データ所有者が欲しいから、データそのものと、IsRequiredプロパティを同時に所有しているんだろ 「オブジェクト指向が分からない」とは、データが様様な属性を所有していることを理解できない人のことを言う。
382 名前:デフォルトの名無しさん [2009/02/17(火) 22:33:12 ] >>379 ToNさんお疲れ 決めつけじゃなくて言語仕様そのものの理解が間違ってるんですよ。 それを他人のせいにしたら、一生、オブジェクト指向が理解できないっすよ?
383 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 22:37:12 ] この手の話は結局、どっちのオブジェクト指向論が正しいのかニュートン法で収束
384 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 22:39:00 ] >>379 極論ばかりだと生きていけない=ToNみたいな存在も許容しろ 言い争ってる=喧嘩両成敗=ToNみたいな無理難題な喧嘩を売られても認めろ っていいたいのか? お前こそ人間として最低だろう
385 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 22:39:29 ] C#って日本語のプロパティ名使えたのな。結構いいかもしれんわ。 大体「中途受任日」って英語でなんていうねん。
386 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 22:41:29 ] >>383 いやオブジェクト指向論にすらなってない >>321 >例えば同じ型のデータが2つ以上必要で、それぞれ入力必須かどうかが >違ってたらどうするの? を読めばオブジェクト指向すら理解できていないことがわかる。
387 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 22:48:33 ] >>386 あのさあw なんか本当に鳥頭の人がいるな。 どうして「同じ型のデータが2つ以上必要で、それぞれ入力必須かどうかが違ってたら」 問題かさっき説明したでしょ。 それは、IsRequiredをデータ自身に持たせて、かつフールプルーフに実装しようと思ったら クラスメンバの値を返すようにする必要があるから(すくなくともそれが一番簡単で 標準的なやり方だから)だよ。 こんな馬鹿にOOP云々言われたくないわまったく。
388 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 22:54:00 ] >>387 >それは、IsRequiredをデータ自身に持たせて、かつフールプルーフに実装しようと思ったら >クラスメンバの値を返すようにする必要があるから 隠蔽できるから返されないって言ってるじゃん。
389 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 22:56:09 ] メアド交換して当事者同士でやってくれよ。たまらん。
390 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 22:56:31 ] >>388 ごめんどういう意味? 真面目にわかりません。 具体的なコードで説明してくれると助かるかも。
391 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 22:58:41 ] >>390 >>378
392 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 22:59:49 ] >>384 そんなんだからお前はいつも底辺で働いているんだろ まぁがんばれよ
393 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 23:00:42 ] >>392 そんなんだからお前はいつも底辺で働いているんだろ まぁがんばれよ
394 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 23:02:34 ] >>393 言うことなくなったか。責めてごめんな。 みんな怒ってるから空気読んで、もうやめとこうな?
395 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 23:04:44 ] >>393 相手のレスが無くなるまでレスしたほうが勝ちですか?w
396 名前:デフォルトの名無しさん [2009/02/17(火) 23:05:45 ] そうとう口惜しかったんだろ許してやれよ
397 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 23:10:24 ] >>395 勘弁してやれよ
398 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 23:12:08 ] >>359 if (aHash.containsKey(aKey)) { ... } みたいな例が一杯あるし、 a.looksAt(b) みたく、三単現の動詞を使えばいいと思うよ。
399 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 00:03:11 ] さっきから意味論意味論恥ずかしい奴が居るなw
400 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 00:04:18 ] 意味論=自分が理解できる範囲の論
401 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 00:07:35 ] 汎化とか、意味論とか言うところをみると、 情報処理関連の専門、短大、大学を出たが実際に設計をしたこともない池沼という感じだな
402 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 00:17:05 ] >>364 あと A.Looks(B); もあり
403 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 00:21:08 ] >>398 すまんこのレスで既出な上に、Atまできっちり付いてたアル
404 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 00:28:58 ] オブジェクトが主語にならないときに、O.SIsCとするかO.IsSCとするか悩む。 例えば「Oの髪が金色か否か?」みたいな。 あー、もちろん「髪が金色」に相当する1単語の形容詞があるのは知ってるぜ。 ただ「そもそもOが主語にならないようなプロパティはおかしい」とか言ってしっちゃかめっちゃかにされるのを避けてみた。
405 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 00:35:57 ] 「値」から「ユーザーの入力した値」が派生しているだけの話なのに、意味論的におかしいの?
406 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 00:41:03 ] 値←ユーザの入力した値←ユーザの入力した文字列値←ユーザの入力した文字列であるメアドの値 というクラス階層が大真面目に書いてあったら 絶対笑うか泣く。
407 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 00:48:02 ] >>340-341 吹いたwwww
408 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 00:49:52 ] 局所的にバリデートの手間をすっ飛ばせればそれで良いリーマンと 意味論を重要視し、体系的に完璧でなければ許し難い無収入者の戦い
409 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 01:13:38 ] >>405 まったくおかしくないよ ユーザが入力できる値は基本的に文字列だからな 基本的に文字列から派生することになる 直接に数値として得られるのは配列の要素だけ。
410 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 01:31:54 ] >>367 包丁も車も完璧な安全装置を組み込めないから価値は無いよね。 マグカップでも人が死ぬ事もあるから使えないよね。 どこかのトンマがPC投げつけてきたら危ないからPCも捨てようね。
411 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 01:38:13 ] TONの定義するTONMAが空想上の動物で無いとすると PI=3.14159って定数が勝手にPI=3に書き換えられてもおかしくないな さて、これをフールプルーフするには一体どうすれば良いのだろうか
412 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 01:40:39 ] >>359 A is looking at B A.isLookingAt(B) this.AisLookingAtB() 好きにしろ。
413 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 02:04:44 ] >>411 TONからPCを取り上げる
414 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 07:56:30 ] >>412 嫌だね
415 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 11:11:40 ] >>404 凄くわかるw お前って俺なの?
416 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 11:23:01 ] Webアプリなんですが、 仮登録中のユーザー(users)を格納しておくテーブル名、 あるユーザーのプロフィールを見たユーザーの「足あと」を格納しておくテーブル名、 ある記事を見た人(ユーザーに限らない)の日時やIPを格納しておくテーブル名。 それぞれ、なんかいいのないですか?
417 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 12:02:37 ] >>385 いちいち変換しないといけないからめんどくさい事この上ないよ。
418 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 15:01:05 ] >>416 Pre Signup Users Profile Footprints :: user_id -> footprint Article Viewer Infomations :: article_id -> viewer_info てきと。
419 名前:416 mailto:sage [2009/02/18(水) 15:23:36 ] >>418 おおぉ、いい感じです! ありがとうございます!
420 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 18:44:24 ] お題を出した人が満足してからが本番!
421 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 21:17:40 ] さあ、TONさんの出番です
422 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 16:58:41 ] >>419 まちがえた。 infomationじゃねえ、 informationだ。 恥ずかしい。
423 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 18:55:13 ] >>418 Web的?にはviewerよりvisitorのがよくね? >>421 悪魔召還すな。
424 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 20:08:28 ] >>423 あー。そういやWebはVisitだなー。 もう質問者いないだろうけどw
425 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 20:38:29 ] そりゃ違うだろう。 visitor or not: (ウェブサイトの)中に入ったかどうかの違い viewer or not: (記事を)見たかどうかの違い >>416 が求めているものがどちらか言うまでもない。
426 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 21:36:34 ] visitor or not (笑) viewer or not (笑)
427 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 21:55:54 ] >>425 英語圏のソースを片っ端から見てきた方がいいよ 間違ってるから
428 名前:デフォルトの名無しさん [2009/02/19(木) 22:02:05 ] ToN改めVoNさんキタ━━━━(゚∀゚)━━━━!!
429 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 22:02:57 ] 失せろゴミ
430 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 22:55:51 ] VoNw w ww wwww さすがにネタだろ
431 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 22:57:09 ] >>425 具体的に例えばどのコード? というか、もし仮に記事を見た人間のことをvisitorと呼ぶのなら(どう考えても変過ぎるが…) ウェブサイトの訪問者はそれと区別してなんと呼ぶの?
432 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 22:58:19 ] アンカミス?
433 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 23:00:50 ] >>432 うん。 >>427 のつもりだった。。
434 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 23:09:01 ] ToNさん お疲れ また来たの?
435 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 23:35:36 ] >>431 www.google.co.jp/codesearch この辺りで[web visitor]とか[web viewer]とか検索して それぞれどんなのが引っかかってくるか比べてみたら。
436 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 23:54:13 ] みんなTONに優しいな
437 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 00:16:18 ] TONさんのプロフィール ・40過ぎ ・英語は苦手 ・リーダークラスSE
438 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 00:19:23 ] >・リーダークラスSE オブジェクト指向しらなくて、それはない VB6しか触ったことないならあり得るが
439 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 00:38:27 ] >>438 ×Leader ○Reader ソースは読んだ事しかありません
440 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 06:41:45 ] 連鎖あぼーんって便利だなwwwwwwwww
441 名前:234 [2009/02/21(土) 00:34:22 ] 参考にさせてもらおうと、またきてみたのですが、 なんか私のせいで荒れてしまったみたいですいません。 あれから、設計をいろいろ見直しまして、そこそこのものができたかなぁと思っています。 まだ足りない部分があるので、考えているのですが、また迷ったらよろしくお願いします。
442 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 11:31:07 ] 誰がどんなお題を出してもその後の流れは決まってるからまったく気にする必要なす
443 名前:デフォルトの名無しさん [2009/02/23(月) 20:36:08 ] 送信したパケット群でACKが受信できていない最初のパケットを返す関数 の名前を募集中です
444 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 20:57:20 ] FirstPacketAtCantRecvACKOfSendedPacket
445 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 20:58:21 ] NACK、ではなくて「ACKではない」なのか。 Packet FindNotAcknoledged(Packet[] packetsSent) とか。 二つ目以降を探すときは、 Packet FindNotAcknoledged(Packet[] packetsSent, int startIndex)
446 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 21:05:18 ] NAKは今のところ存在しません。 判りやすいところでFindNotACKにします。 ありがとうございました。
447 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 21:08:11 ] いちおう訂正 Acknoledged ⇒ Acknowledged
448 名前:416 mailto:sage [2009/02/24(火) 10:29:03 ] たくさんレスが付いててびっくりしました! みなさんありがとうございます。勉強になります。 またWebアプリで考えて欲しい名前があるのですが・・・ ・ユーザーがメールアドレスを変更するときに、 アドレスの存在確認のために、一時的にそのアドレスとランダムな文字列、期限を保存しておくテーブルの名前。 (そのアドレスに確認メールを出して、記載されているURLをクリックすると変更完了というやつです。) ・プライベートメッセージ機能で、拒否したいユーザーを記録しておくテーブル名。 blacklistとかだと複数・単数の扱いがややこしいので・・・ (block_usersとかでいいのかな。reject_users?) こういうの、さらっと考えられるようになりたいです; よろしくお願いします!
449 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 12:06:07 ] てきと。 interim registration information メアドにこだわる必要ないかなと。 新規登録時にも使えそうだし。 private blacklist とりあえずprivateを付けてみるメソッド。
450 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 20:37:46 ] - tempUsers, provisionals, moratoriums, unapprovedProfiles - ignoreList, denyList, uceList, ignorables, rejects
451 名前:416 mailto:sage [2009/02/25(水) 11:48:52 ] >>449 >>450 ありがとうございます。 新規登録時にはプロフィールの入力などもあるので、 テーブルは分けようと思ってます。 なので、もう少しメールアドレス変更用というニュアンスが欲しいです。 個人的に、名詞の複数形がいいです。 拒否ユーザーの方は、 テーブルに入っているのは、あくまで個々のユーザーなので 〜listというのは避けたいです。 blacklist_itemsなどとすればよいのかもしれませんが、くどいですし・・・ ignorables、rejectsはいいかもしれませんね! もう少しいろいろなネーミングが知りたいです。 よろしくお願いします。
452 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 13:43:23 ] 正規化できるときはしといたほうがいいけど、 1対1の時は一つのテーブルのほうが便利だけどね
453 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 19:02:19 ] C++で座標を扱うクラス名についてです 基底は2軸、その派生で3軸の座標のみのクラス(構造体?)、 それらにアクセッサ等を加えたクラス、 さらにベクトル計算のメンバ関数を持つ派生クラス を作るところです 基底クラスとその次のアクセッサを持つクラスで 上下関係が持てそうな名前はないでしょうか coordinate,position,point,vertex、どれもis a なイメージなんですが・・・ ちなみに上記3種のクラスで、親子関係を持たせる場合 2軸なら2軸だけで、(基底除く)3軸は3軸だけで親子関係を結んだ方がいいのか それとも3軸の上に、1軸アクセッサをprivateにした2軸派生、さらに3軸派生、と1本の線にしたほうがいいのか、 はたまた多重継承がいいのか、アドバイスもできればお願いします
454 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 19:43:03 ] >>451 難しいなあ。じゃああとxxxMailInfosとか。 unverifiedMailInfos, unapprovedMailInfos >>453 個人的には次元が違えば基本的に完全に別物だと思う。 そっち方面やったことないんで自信はないけど。 あと、単純な座標クラスをベースクラスにするのはいいとして、 「その次のアクセッサを持つ」の必要性がよくわからない。 いや、必要なのかもしれんけどどういう機能をもたせるつもりかわからないと 名前の付けようが・・・
455 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 20:09:08 ] >>454 基底クラスの2軸と3軸を親子関係を結んで、 それ以降2軸は2軸、3軸は3軸と派生させたとして、 3軸の子・孫から2軸の子・孫へdynamic_cast、という手段を確保するつもりでこうなりました その際、基底クラスには仮想関数も持たせず 単純なデータ群としてやり取りできるようにし、 普段扱う際は子クラスを、と思ったのですが… 今作ってるのは箱庭空間?の基本的な環境を目指しているところです ですので、基底は座標として、ベクトルとして、等 とにかく2要素・3要素まとまった箱が欲しいな、と >個人的には次元が違えば基本的に完全に別物だと思う。 確かにそんな気もしますが、こっち方面どころか全方面において経験がないので 設計で四苦八苦しています(ノ∀`)
456 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 20:14:53 ] ねみい
457 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 13:19:51 ] >>455 単純な値クラスはむやみに継承関係に しないほうが一般に望ましい。 継承というものを知り、金槌を持って 何でも釘に見えてるような状態かも? ちょっと考え直したほうがいい。 もちろん、スレの趣旨的には、一切 考え直さずに突っ張って、命名を 求め続けてもかまわないけど。w
458 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 13:56:40 ] >>455 三次元から二次元に変換するときは、基本的に写像が必要になるから、 dynamic_castでなんとかしようとすると後で困るよ。
459 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 13:57:50 ] 写像、つまりは変換関数
460 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 14:27:16 ] 変数じゃなくてテーブル名なんですが。 予約テーブルがあって、そのうち、(実際の来店などで)受付した物を保持するテーブルで、 受付済みテーブルってのを作ろうとしたんですが、 ACCEPT APPOINTMENT_ACCEPT ACCEPTED_APPOINTMENT どれが良いと思います? もっとよいのがあれば教えてください。
461 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 14:48:00 ] >>460 普通にorderじゃ駄目なの? order_historyとか
462 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 14:50:24 ] >>461 ありがとう。 だけど、Orderだと「注文」的な意味が強くないですかね?
463 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 15:03:12 ] >>451 じゃあ名前を変えずに解釈を変えて、 新規のほうはSignupXXXInfoとかにすれば区別はつくんじゃない。 >>455 キャストはそんなことに使うべきではないと思うぞ。 >>460 受付したものってなんよ。人なの?物なの?
464 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 15:05:49 ] >>463 それだいじですね。人です。
465 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 15:19:31 ] 人を受け付けるなら Reception
466 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 16:05:49 ] >>460 reserved ひょっとすると誤解されやすいかも。
467 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 17:25:58 ] >>465 ,464 ありがとうございました。 Receptionにしようと思います。
468 名前:デフォルトの名無しさん [2009/02/27(金) 01:02:28 ] 汎用的な質問でごめんなさい 例えば、関数 f を呼び出すための条件を関数 n に渡し、 その関数 n から True が返ってきたら f を呼び出したいんですが、 そういう、条件を判定させる関数の名称でいい感じのがないんです。 if (p (v1, v2, v3) == TRUE){ f(); } のような、この関数「p」の名前を模索しております。
469 名前:468 [2009/02/27(金) 01:03:45 ] しまったーorz >>468 の「p」、コード上の p (v1... の p は、文中の n の意味です。 すみません。
470 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 02:23:06 ] >>468 predicate (述語) が一般的だと思う。 あとは condition (条件) とか criterion (基準) とか。
471 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 06:47:08 ] 〜かどうかを判定する関数に、「〜p」ってつけるのはLISPの常識。ってのはもう古いのか?
472 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 07:06:32 ] その条件が何かによって変わると思う。 is条件()みたいなメソッド名ってjavaとかじゃよくあるけど。
473 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 14:46:31 ] キューにたまったメールに名前をつけるとしたら、どんな感じになりますか? 行列(キュー)全体ではなく、行列に並んでる個々のメールに命名したいのですが・・・ queued_mails みたいな感じでしょうか?
474 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 14:51:55 ] そのアホな名前を誰が読むのか知らないけど 通し番号でいいと思わないか
475 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 19:50:52 ] >>468 批判されてるのに追い討ちかけるようだけど、 そんなあいまいな条件だけで命名しようとか命名できるはずだか考えてるのなら そのセンスはヤバ過ぎると思う。
476 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 01:31:31 ] >>468 おれなら〜trapとかにしそう
477 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 01:51:11 ] >>473 perlのforeachで$_の代わりに使う変数かな? ならフォーカスドメールとかでいいんじゃね
478 名前:476 mailto:sage [2009/02/28(土) 02:18:52 ] あー通すのは引値か… trap_whithout(条件)とかは?
479 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 16:32:35 ] >>473 個々のメールに命名したいのになんで複数形なんだろう? どうでもいいけどmailはuncountableな名詞なのでふつうはmailsって書かないらしいよ。 emailsはアリらしいけど。
480 名前:473 mailto:sage [2009/02/28(土) 17:10:36 ] 説明が足りずすみません。 キューからメールを取り出して、 foreach ($queued_mails as $queued_mail) { みたいな処理をしたいのです。 そのときに、行列待ちのメールであることを分かりやすくしたかったのです。 mailsと書かないというのは知りませんでした;
481 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 17:29:11 ] >>480 普通に考えれば特に「行列待ちの〜」なんて意味を名前にこめる必要はないと思う。 処理待ち用のキューの中から取り出したんだから処理待ちに決まってる。 処理の文脈をみればそんなの自明かと。 どうしてもって事情があるのならbacklogとか?
482 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 17:31:20 ] $mailとか$iで十分じゃね。 わかんなくなるならブロックがメソッドが長すぎる。
483 名前:473 mailto:sage [2009/03/02(月) 07:45:44 ] メールキューをデータベースのテーブルに格納しているので、 そこでの命名にも使いたくて・・・ backlogというのはいいですね。 mailをどうしても複数・単数で扱いたい場合は、 message(s)とかにするのが普通なのでしょうか?
484 名前:デフォルトの名無しさん mailto:sage [2009/03/02(月) 08:05:45 ] mqueueとくればmessageに一票。 ただ、そのメールで何を送るか、例えば注文を送るんだったらorderとかでもいいわけでしょ。
485 名前:473 mailto:sage [2009/03/02(月) 08:25:39 ] なるほど。 たしかに、内容に即した名前の方がわかりやすくていいですね。 ただ今回は、オーダーやお知らせなどのあらゆるメールを一箇所に集約するので、 もっと普遍的なネーミングが欲しいのです。 となると、やっぱりmessageになるんでしょうかね・・・ 英語うまくなりたい;
486 名前:デフォルトの名無しさん [2009/03/06(金) 07:30:53 ] C++で型FooをBarに変換する関数を Bar ConvFooToBar(Foo foo); のように書いています。 変換する型が複雑になると Hoge ConvFooBarToHoge(FooBar foobar); のようにToが見つけにくくなり、読みにくく感じます。 が、読めないこともないのでこれで妥協すべきでしょうか。
487 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 07:40:20 ] hoge = ToHogeFrom(fooBar)
488 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 07:54:06 ] Toを2にしてみるとか駄目?
489 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 07:57:38 ] オーバーロード可なら 元の型を関数名に含める意味なくね?
490 名前:486 [2009/03/06(金) 08:35:26 ] >>489 あ、たしかにそうですね。いわれてみれば冗長。 >>487 みたいに、 引数を関数名の一部にするようなアイデアは考え付きませんでした。 残る問題は、自分が>>486 のスタイルになれきっていることなので、 それから脱却できるようがんばります。 どうも朝早くありがとうございました。
491 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 08:51:20 ] キャスト用の1引数コンストラクタじゃだめなん?
492 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 14:58:03 ] >>491 Barクラスに手を入れるのは普通いやじゃない? そもそもその権限がないかもしれないし。 便乗質問。 487の "Hoge ToHogeFrom(const FooBar &)"の.hファイルと.cppファイルの名前って どうするのが一般的? ToHogeFrom_FooBar.cpp あたりかと思うんだけど…
493 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 15:51:32 ] 一関数、一コンパイルにするのか。 別にダメだとは言わんが。
494 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 16:00:17 ] そもそも、(どうしてこれまで誰も指摘しないのか不思議でならないんだけど) なんでC++なのにそんなユーティリティ関数みたいな書き方するんだろう。 Foo ⇒ BarなのにどうしてFooのインスタンスメソッドとして書かないの? 意味わかんない。
495 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 16:20:39 ] >>494 > どうしてこれまで誰も指摘しないのか不思議でならないんだけど >>1 > 設計の善し悪しについて議論するのは基本的に禁止。
496 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 16:24:19 ] >>494 クラスのメンバ関数は最小限のインターフェースにとどめ、 メンバ関数を使って可能なことは大域関数で実現するのがよろしい、という考え方がある cf. C++ Coding Standards 44項 「非メンバーかつ非friendの関数を書くようにしよう」 Javaに慣れてると何でもかんでもインスタンスメソッドにしたくなるんだけどね
497 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 16:32:16 ] >>496 なんらかの深い考察が背景にあるのかわからんけど、 ぱっと聞き同意しがたい考え方だな。
498 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 16:45:11 ] >>494 委譲
499 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 16:49:00 ] >>496 > Javaに慣れてると何でもかんでもインスタンスメソッドにしたくなるんだけどね 最近のJavaは知らないけど、Javaはグローバル関数が作れないから仕方ないのかな。 C#を最近勉強し始めたけど、C#も同じらしいのでちょっとがっかり。
500 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 16:50:37 ] staticでいいじゃん
501 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 19:11:57 ] C++なら foo_cast<Bar>(foo) だろ 変換先が一つだけならBarのコンストラクタでFooを受け取る それが無理ならto_bar(foo) barが一般的なクラスならbar(foo)でもいい 変換処理がFooの内部構造に依存したり仮想関数にする場合 Fooに変換メンバ関数bar()を作ってフリー関数bar(foo)から呼び出させることもよくある
502 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 19:39:34 ] >なんでC++なのにそんなユーティリティ関数みたいな書き方するんだろう。 >Foo ⇒ BarなのにどうしてFooのインスタンスメソッドとして書かないの? なわけで、やり方はいくらでもあるだろうが、委譲という考え方がある限り そういうメソッドを作ることは何ら不思議じゃないが結論だろ
503 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 19:45:59 ] はいはい あれないうちにやめてくれよ。
504 名前:デフォルトの名無しさん mailto:sage [2009/03/09(月) 22:56:38 ] C++なら bar = foo;
505 名前:デフォルトの名無しさん mailto:sage [2009/03/09(月) 23:14:52 ] >>504 氏ね
506 名前:デフォルトの名無しさん [2009/03/14(土) 08:54:31 ] よし、こんどのプロジェクトの変数は、 Nobunaga Hideyosi Ieyasu Masamune 武将シリーズでいくぞ。
507 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 09:08:37 ] >Masamune 惣無事令に反して蘆名領に攻め込んだり、葛西大崎一揆を扇動して天下人を困らせた つまり、管理者の意図に反した入力を受け入れるわけですね、分かります
508 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 13:31:57 ] 平気で2chジャゴンを使える、使う気になる奴の神経が理解できん。 自分で自分が気持ち悪いと思わないんだろうか。 ひょっとしてこういう奴のアイデンティティって「2ちゃんねら」なのか?w まともな精神構造してたら耐えられないよな。
509 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:24:23 ] ジャゴンなんて初めて見る単語だな
510 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:29:07 ] 双頭怪獣 ジャゴン
511 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:29:19 ] ほらあの人魚伝説の元になった海獣
512 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:33:04 ] ダゴンか
513 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:33:31 ] それジュゴン
514 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:34:18 ] それ古代パレスチナにおいてペリシテ人が信奉していた神。 名前の由来はヘブライ語のダーグ(魚)ともダーガーン(穀物)ともいわれる。 父親はエル。 伝承によってはバアルの父とされる。魚の頭をもつ海神と考えられてきたが、近年の研究では農耕神であった可能性も強い。 ガザとアシトドに大きな神殿があった。
515 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:34:34 ] jargon
516 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:36:15 ] >>515 それmora.jp/artist/80328008/DKSLG0613/
517 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:45:00 ] Jargon - Wikipedia, the free encyclopedia en.wikipedia.org/wiki/Jargon
518 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:45:33 ] RGM-89 ジェガン
519 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:03:08 ] >>517 それterminology which has been especially defined in relationship to a specific activity >>518 それモビルスーツ GMの後継
520 名前:デフォルトの名無しさん [2009/03/14(土) 20:16:53 ] SQLでカラム名を変更する際に前のカラム名と変更後のカラム名を変数に保持したいんですが、こういうと時って変数名どうすればいいでしょうか? pre_column modified_colomun ? 何かいいアドバイスあったらいただきたく。。
521 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:28:08 ] suffixで_oldと_newを付けるとか。
522 名前:デフォルトの名無しさん [2009/03/14(土) 22:04:45 ] そーか、old&new良いですね。 ありがとうございましたm(__)m
523 名前:デフォルトの名無しさん [2009/03/16(月) 11:27:12 ] たとえばRPGなんかで敵味方のデータの基底になるクラスの名前って、なんか定番ある? Character や CharaObject では、なんかしっくりこない。
524 名前:デフォルトの名無しさん [2009/03/16(月) 13:10:21 ] 和英辞書との一致 (1〜1件目 / 1件) 検索辞書:プログレッシブ和英中辞典 提供:JapanKnowledge じんぶつ【人物】 1〔人〕a person,((口)) a character; 〔重要な人〕a figure; 〔小説などに描かれた人間〕a character 危険人物 a dangerous person [char... [さらに]
525 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 13:20:15 ] char
526 名前:523 mailto:sage [2009/03/16(月) 13:59:01 ] >>525 いちおC++なんで、予約語は勘弁してください >>524-525 ありがとう。 とりあえずだけど、personで進めていくことにしまふ
527 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 14:14:18 ] 出演者は人物だけなのか? はぐれメタルとか登場予定なし?
528 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 14:22:33 ] じゃあ「生物」はどうかなと思ったけど、はぐれメタルは「無生物」に近いよね・・・「神霊」ってタイプのキャラもいるかもしれないし 「化身」ってどうだろう?avatar、ちょっと違和感ある?
529 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 14:36:48 ] object
530 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 15:21:37 ] actor
531 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 15:29:33 ] じゃあunit
532 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 15:44:39 ] actorいいね!次からそれ使う
533 名前:デフォルトの名無しさん [2009/03/16(月) 19:35:33 ] creature
534 名前:デフォルトの名無しさん [2009/03/16(月) 19:57:33 ] 無理矢理英語にする 無理矢理日本語にする どっちも嫌なので難しい。 Get_User_Inputs_4_Process_that_DA_First_Pass User_no_Key_nyuuryoku_wo_Uketoru 見てるだけでムカつく。 特に4とか2とかDAとか
535 名前:デフォルトの名無しさん [2009/03/16(月) 20:02:08 ] なんでこう、英語をちょっとくさ知るとDAとか黒人スラング使いたがるのか。 おなじ「だ」でもTHEでいいじゃん。 THE・埼玉はTHE・埼玉だからいいのであって、 DA・埼玉だとヒネリも何もなく、したがって味わいも何もないではないか。 THEが付いてるから、「並ぶもののない」「他に2つとない」というポジティブな意味と 「ダサイ」というネガティブな意味両方あるからTHE・埼玉という表記がすぐれているのに DAにしたら英語知らない奴からするとストレートな悪口にしか見えん。
536 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 20:19:49 ] 坊やだからさ
537 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 20:26:25 ] // get user inputs for process that the first pass // ユーザーのキー入力を受けとる 完璧にコメントの形式ですね
538 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 22:45:08 ] 意味が変わっとる
539 名前:デフォルトの名無しさん mailto:sage [2009/03/17(火) 13:31:39 ] 意味もなく冠詞とか接続詞とか前置詞とかは付けないものだと思ってた
540 名前:デフォルトの名無しさん mailto:sage [2009/03/19(木) 09:44:43 ] Levensteinのアルゴリズムに手を加えて、 二つの配列間の挿入、置換、置換、移動による最短編集距離を求めて それぞれ変更のあった位置と類似度も返す関数を作ったんだけど なんて名前にすればいいだろう。
541 名前:デフォルトの名無しさん mailto:sage [2009/03/19(木) 10:50:52 ] changeset
542 名前:デフォルトの名無しさん mailto:sage [2009/03/19(木) 13:21:52 ] 自分の名前つけとけば
543 名前:540 mailto:sage [2009/03/20(金) 00:17:50 ] >>541 順序も考慮するからsetは違う気がする。 圧縮ファイルの中身を比較するのに作った関数だけど 一応他の用途でも使いまわせるような感じにしたいので 汎用性がある名前にしたいなぁとか。 >>542 機能に即した名前がいい。
544 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 04:06:18 ] >>543 function_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()
545 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 05:17:16 ] >>544 じゃあそれにするわ!
546 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 05:34:50 ] MyLevensteinDistance()
547 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 07:26:49 ] >>544 英語でおk
548 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 13:16:56 ] マイクロソフトに倣ってLevensteinDistanceExでいいじゃん。
549 名前:デフォルトの名無しさん [2009/03/20(金) 17:26:10 ] non_power_of_2 「なんで2の力なんですかね?」 って聞いてきた奴もいたものである。
550 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 21:18:29 ] >>540 まず、そのアルゴリズムを論文発表して、自分の名前を定着させるんだ。
551 名前:デフォルトの名無しさん [2009/03/21(土) 18:17:00 ] XMLで <a>hoge</a> <b length="10"> みたいなを読んで処理をしたいのですが a...tag hoge...value length...attribute 10...parameter でいいですか? 2つ目と4つ目が何か違う気がして・・・
552 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 18:27:12 ] >>551 DOMやSAXパーサのソースコードを見て、使われている用語を参考に すればいいんじゃないだろうか。 tag→a は要素(名)(element (name)) <a> は開始タグ(start tag) </a> は終了タグ(end tag) 名前空間を考慮する場合、local name とか qualified nameという言い方も目にする。 value→(要素のネストを考慮して)content もしくは (inner) text attribute→これはOK parameter→(attributeの)value あたりじゃないかな。
553 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 18:41:55 ] >>552 ありがとうございます。 そんな感じでやってみます
554 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 01:13:35 ] ブログツール作ってるんですけど 記事一つがEntryクラスで それの集合がEntryListクラスなんですが 記事を追加したり削除したり 条件を指定してEntryクラスやEntryListクラスを返す みたいなものを一括するクラスの名前はどうしたらいいでしょうか?
555 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 01:35:33 ] EntryManager
556 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 02:43:32 ] EntryRepository
557 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 03:25:02 ] >>554 EntlyList.add EntlyList.delete EntlyList.find EntlyList.filter メソッドじゃね?
558 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 18:12:32 ] スレ違い
559 名前:デフォルトの名無しさん mailto:sage [2009/03/22(日) 21:31:42 ] EntryStore
560 名前:デフォルトの名無しさん [2009/03/23(月) 11:20:29 ] ビットマップの透過色を指定して32ビットのビットマップにする関数
561 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 21:12:19 ] create transparent image(source image, transparent color) とか。 新しいビットマップを返すのか、所与のビットマップを変換するのか で多少変わるだろうけど。 alpha値を変更するという観点での命名もありえるかもね。
562 名前:デフォルトの名無しさん [2009/03/25(水) 12:32:57 ] 新人にありがちな例 クラスなに? ↓ 1年のときはAでした。
563 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 12:37:30 ] vipでやれ
564 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 17:04:05 ] おお、こんなスレあったんだな 今度困ったときに相談するよ 余談だが俺の後輩は全部ローマ字読みで命名するんだよね・・・ でも意外だが一部では肯定派もいるらしいね
565 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 17:47:43 ] 後輩に和英辞書をプレゼントしてあげてください
566 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 18:26:14 ] でも勘定科目の英訳とか、普通の辞書には載ってないよね……