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/
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 ] でも勘定科目の英訳とか、普通の辞書には載ってないよね……
567 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 20:59:57 ] コボラは、英単語が多数予約語になってるので、ローマ字日本語で命名する 習慣が定着しているそうだ。英語が母語な人はどうしてるんだろう。
568 名前:デフォルトの名無しさん mailto:sage [2009/03/25(水) 22:31:11 ] プレフィクスにFUCKIN_つける。
569 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 01:12:55 ] イギリス人はBLOODY_をつけるんですね。わかります。
570 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 09:34:49 ] FUCKIN_MIHARAI BLOODY_URIKAKE
571 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 12:24:15 ] なんでそこでローマ字なんだよwww
572 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 13:19:30 ] 血塗られた売掛金
573 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 23:21:14 ] 洗えよ
574 名前:デフォルトの名無しさん mailto:sage [2009/03/28(土) 11:21:49 ] std::stringで key1=value1\nkey2=value2\n... みたいな文字列をとって map<std::string,std::string>で返す関数の名前
575 名前:デフォルトの名無しさん mailto:sage [2009/03/28(土) 14:47:48 ] parse_key_value_pairs
576 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 17:03:11 ] プログラマ的ネーミングセンスってどうやって身につけるんだろう
577 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 17:08:06 ] 他人のコードを読むとか、語彙を増やすとか
578 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 23:39:43 ] あるキーワードを思いついたらgoogle codeで検索して他人がどういう変数名やクラス名をつけているか調べまくる。
579 名前:デフォルトの名無しさん mailto:sage [2009/04/01(水) 09:12:15 ] 英語版googleでネイティブがどんな言い回しをしてるのか調べる。
580 名前:デフォルトの名無しさん mailto:sage [2009/04/01(水) 09:15:00 ] とにかくググる癖をつけないと、TimeOfNowとか付けちゃう酷いネーミングセンスになるから気を付けるんだぞ
581 名前:デフォルトの名無しさん mailto:sage [2009/04/01(水) 18:02:25 ] SIMDを使うようになってから、今までとは全然違う概念の変数を使うようになって、名前がつけにくいったら。
582 名前:デフォルトの名無しさん mailto:sage [2009/04/01(水) 21:16:05 ] google code... そんなんもあるのか....
583 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 09:43:08 ] goodle code searchな。 google codeは、google提供ツールのソース開示とOSSプロジェクトのホスティング。
584 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 12:04:00 ] キャンバス上に配置されてるオブジェクトってなんて言えばいいかな arrangedObjects?
585 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 15:22:02 ] 「配置されてる」とは? 「配置されていないオブジェクト」という概念もあるのか?
586 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 18:43:27 ] >>585 偉そうに馬鹿な事言うなよ 恥ずかしいw
587 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 20:03:25 ] positioned object placed object object on canvas
588 名前:デフォルトの名無しさん mailto:sage [2009/04/02(木) 22:00:33 ] 言語によっては、canvas.objects() とか canvas->getObjects() とか。 componentsかもしれんが。 585でも訊かれているけど、管理してるけど配置していないオブジェクト ってのもあるの?
589 名前:デフォルトの名無しさん [2009/04/03(金) 11:10:12 ] .NETのSystem.Drawing.Bitmapの全ピクセルを高速にループしてforeach的に各ピクセルに対して処理するメソッド void 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を使った処理よりも高速であることを強調した名前にしたいです。 宜しくお願いします。 てゆーかぶっちゃけこれに名前が欲しい。 www.k4.dion.ne.jp/~anis7742/codevault/00180.html
590 名前:デフォルトの名無しさん [2009/04/03(金) 11:33:40 ] TurboRgbaPixelFilter
591 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 11:35:03 ] FastFiltering GetRegularizedBitmap
592 名前:589 mailto:sage [2009/04/03(金) 11:47:58 ] 超THX。使わせて頂きます。
593 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 18:22:03 ] フィルタ処理用のLanczos3関数で、引数がゼロかどうかのチェックを省略したものの名称を どうしようか迷っています。とりあえず Lanczos3_NonZero としているんですが、 チェックを省略している、というニュアンスが出てないので……
594 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 18:50:40 ] 普通に checkNonZero じゃぁいかんの?
595 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 23:25:34 ] NoArgumentValidatedLanczos3
596 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 23:45:36 ] Lanczos3WithoutArgumentCheck
597 名前:デフォルトの名無しさん mailto:sage [2009/04/10(金) 12:34:15 ] ふと昔の自分のソースを見てて思ったんだけど、 変数名などに、同じ単語の単数形と複数形を共存させることってある? 例えば、 file ← ファイル名を格納 files ← 配列など、複数のファイル名を格納 みたいな感じで。
598 名前:デフォルトの名無しさん mailto:sage [2009/04/10(金) 12:57:33 ] foreachがある処理系なら
599 名前:デフォルトの名無しさん mailto:sage [2009/04/10(金) 16:41:36 ] 前処理行程で出てきた 16進数の文字列データを10進数の文字列に変換するクラスの名前 このクラスから桁揃えや値の範囲の判定を追加した子クラスに派生させる予定です 宜しくお願いします
600 名前:デフォルトの名無しさん mailto:sage [2009/04/10(金) 17:56:03 ] Javaでメンバ変数(フィールド変数?)にアンダースコア付けるのって微妙なの? マーチン・ファウラー先生のオススメ命名規則らしいんだが
601 名前:デフォルトの名無しさん mailto:sage [2009/04/10(金) 20:15:32 ] >>599 それだけ聞くと「単純な話をわざわざ複雑にするだけ」に聞こえる。 hex⇒intもint⇒decimalもintの機能であるんじゃないの? 2行の処理が一行にまとまる「嬉しさ」と、 何を抽象化したクラスか理解する「面倒臭さ」のどっちが勝るかよく考えるべきだと思うな。
602 名前:デフォルトの名無しさん mailto:sage [2009/04/10(金) 20:29:53 ] struct XMLtree_t { 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個で済ませられればという理由です
603 名前:デフォルトの名無しさん mailto:sage [2009/04/11(土) 05:14:25 ] >>599 BaseConvert RadixConvert とかかのう。 10進と16進には固定できないが。
604 名前:デフォルトの名無しさん mailto:sage [2009/04/11(土) 05:18:30 ] >>602 struct XMLtree_t { string name; std::vector* children; std::map* attributes; }
605 名前:デフォルトの名無しさん mailto:sage [2009/04/11(土) 05:44:50 ] >>601 TONさんちーっす 相変わらずですね^^;;;
606 名前:デフォルトの名無しさん mailto:sage [2009/04/11(土) 09:26:39 ] (605の内心) >>601 ようTON お前また設計に口出しするのか。 テンプレ読めないっぷりは相変わらずだな。 そんなんじゃ実生活でも相当使えないやつだろうなwwwwwww
607 名前:デフォルトの名無しさん mailto:sage [2009/04/11(土) 10:34:35 ] おちょくってるだけの君らも邪魔 どっか行ってくれ
608 名前:デフォルトの名無しさん mailto:sage [2009/04/11(土) 11:54:22 ] オマエモナ
609 名前:デフォルトの名無しさん mailto:sage [2009/04/11(土) 12:03:59 ] オマエモナ
610 名前:デフォルトの名無しさん mailto:sage [2009/04/11(土) 16:16:14 ] >>600 フィールド変数にアンダースコアを付けるのは 一見でフィールド変数とローカル変数を見分けられる利点がある。 その一方、リファクタリングによって フィールド変数とローカル変数が入れ替わることは少なくない。 この命名規則を維持するのは多少なりとも労力を必要とするが、 中断すると読み手をミスリードすることになるので そのコードを保守する限り未来永劫、その労力を必要とする。 さて、近年のIDEでは、フィールド変数とローカル変数を 自動的に視覚的に区別できるように表示してくれるものが多く、 このような開発環境を前提とした場合、先に挙げた利点が必要なくなるため この命名規則は欠点を残すだけになるだろう。 以上自論
611 名前:デフォルトの名無しさん mailto:sage [2009/04/11(土) 19:46:38 ] メンバ変数へは絶対にthis経由でアクセスすべき 命名はどうでも良い
612 名前:デフォルトの名無しさん mailto:sage [2009/04/11(土) 19:56:27 ] >>611 なぜ?
613 名前:デフォルトの名無しさん mailto:sage [2009/04/11(土) 21:29:38 ] フィールドとメソッド内ローカルを入れ替えるようなリファクタリングなんて 一度もしたことないけどなあ。 どんな状況でそんな必要に駆られるのか煽り抜きで想像ができない。 ちなみに俺はフィールドにはそれと識別可能なプリフィクスを付ける派。 ただしアンダースコアは視覚的に見難いし醜いしタイプしにくい(少なくともJISキーボードだと) から小文字のmでプリフィクスすることにしてる。
614 名前:デフォルトの名無しさん mailto:sage [2009/04/11(土) 21:32:51 ] >>610 ハンガリアンも似たような理由で嫌われるよな
615 名前:デフォルトの名無しさん mailto:sage [2009/04/11(土) 22:00:09 ] いまどきフィールド変数なんて色変えたりボールドにしたり 一見して判別可能にすることができるんだから全然気にする必要ない。 変なプレフィクス付けるとかマゾ以外の何者でもない。 異論は認める。
616 名前:デフォルトの名無しさん mailto:sage [2009/04/11(土) 22:22:53 ] >>615 むしろ色分けや書体による区別の乱用の方がマゾ的に感じるけどな。 シンタックスカラーまで否定しないけど、スコープの区別までそれでやるのは 関心しないね。 視覚的に「騒々しい」というのもあるけど、人間のパターン認識機能の特性に あまり適合的じゃないよ。
617 名前:デフォルトの名無しさん mailto:sage [2009/04/11(土) 23:37:15 ] いみふめい
618 名前:デフォルトの名無しさん mailto:sage [2009/04/12(日) 00:22:27 ] まあ白黒テレビで頑張ってますってことだろ
619 名前:デフォルトの名無しさん mailto:sage [2009/04/12(日) 00:28:33 ] >>617-618 端的に言うとむしろ君らの頭の性能が悪い、ってことだと思うよ。
620 名前:デフォルトの名無しさん mailto:sage [2009/04/12(日) 00:43:12 ] へいへい
621 名前:デフォルトの名無しさん mailto:sage [2009/04/12(日) 01:08:39 ] ここはヌルー
622 名前:デフォルトの名無しさん mailto:sage [2009/04/12(日) 01:11:26 ] ポ
623 名前:デフォルトの名無しさん mailto:sage [2009/04/12(日) 01:25:49 ] ガッ
624 名前:デフォルトの名無しさん mailto:sage [2009/04/12(日) 04:29:42 ] (俺にとっては)視覚的に「騒々しい」から(お前が)それでやるのは関心しないね。 いみふ
625 名前:デフォルトの名無しさん mailto:sage [2009/04/12(日) 09:52:15 ] スレ違いだが色覚異常は男性に多いらしい。 そういう人は色だけで区別するのは嫌がるだろうな。
626 名前:デフォルトの名無しさん mailto:sage [2009/04/12(日) 12:07:59 ] 音なんかどうだろうか
627 名前:デフォルトの名無しさん mailto:sage [2009/04/12(日) 15:37:26 ] 世の中耳の悪い人もいるよな 触覚でどうだろうか
628 名前:デフォルトの名無しさん mailto:sage [2009/04/12(日) 15:52:28 ] 視覚だけでいいよ
629 名前:デフォルトの名無しさん mailto:sage [2009/04/12(日) 17:00:39 ] マジレスすんな低脳w
630 名前:デフォルトの名無しさん mailto:sage [2009/04/12(日) 17:02:07 ] つまんねえよクズ
631 名前:デフォルトの名無しさん mailto:sage [2009/04/12(日) 17:03:57 ] キーワードは何色で表示してる? 俺は緑だが VSのデフォはコメントが緑だから困る
632 名前:デフォルトの名無しさん mailto:sage [2009/04/12(日) 17:22:50 ] 目に優しい色で他と区別ができるのなら何でもいいと思うな。 少なくと俺は色から、これはキーワードだとか、これはクラスメンバだとかいう 情報を積極的に読み取るってことはしない。 俺じゃなくても、シンタクックスカラー主目的はタイプミスとか''""{}[]/**/ のアンバランスを逐次的に見つける一手段ってことなんじゃないの? まあ、慣れた配色と違うと確かに最初は違和感あるが・・・
633 名前:デフォルトの名無しさん mailto:sage [2009/04/12(日) 21:17:24 ] javaでeclipseだと普通に色で読み取れちゃうしそれを使わない手もないとおもうけど スレ違い。
634 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 00:53:06 ] Win32APIのLPCTSTRとかわけのわからんのに触れて以来、 システムハンガリアンを受け付けない体になってしまったんだが、 Visual Studio C++でもメンバ変数の色分けってできないだろうか?
635 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 20:44:07 ] >>613 ローカル引数のスコープの狭さは、メソッドの分割などで支障をきたすことが少なくない。 無理に分割しようとうると、金太郎飴のように似た様な引数の並びのメソッドを 次々にコールすることになる。 この状態でこれらのメソッドを複数のクラスに分割すると 金太郎飴引数をクラス間でずりずり引き回すという なんちゃってオブジェクト指向のスパゲティコードを読まされている俺負組み誰か助けてorz
636 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 21:21:33 ] くそう最後で笑ってしまったw
637 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 21:21:56 ] 「リファクタリング」に出てくる「コードの不吉な臭い」のうち 「多すぎる引数」とか「データの群れ」というやつだな。
638 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 01:19:07 ] 引数は常にデータセット1個に決まってるだろjk・・・
639 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 20:10:25 ] 1箇所弄ると連鎖的に全部変えなきゃならない構造体地獄の現場を思い出した
640 名前:デフォルトの名無しさん mailto:sage [2009/04/16(木) 03:23:39 ] 構造体なんて論外だろw
641 名前:デフォルトの名無しさん mailto:sage [2009/04/16(木) 08:59:24 ] なんでも格納できる辞書かデフォルト引数でもあればまだマシなんだけどなあ
642 名前:デフォルトの名無しさん mailto:sage [2009/04/16(木) 09:01:06 ] ごめん。 ○キーワード引数(Pythonとかにあるやつ) ×デフォルト引数
643 名前:デフォルトの名無しさん mailto:sage [2009/04/16(木) 18:12:45 ] そんな引数が数十個ある関数をアセンブリ言語から呼ぶ羽目になったぜ。 しかもなぜかfastcall。かえってややこしいわw
644 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 03:11:08 ] レコードの数を表す変数として、 recordsとnRecordsならどちらがよいのでしょうか。 recordsだと何かrecordの集合のような物を想像してしまうのですが、 かといって要素数を表す接頭辞をつけるのも不格好な気がします。 records.lengthのように参照できるようにできれば一番いいと思うのですが、 現に手元にrecordがあるわけでないのでそうはできません。 みなさんはどうされていますか。 キャピタライゼーションなどの見た目上の規則ではなく、 意味論的な観点からご意見ください。
645 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 03:36:51 ] だから迷ったらまず素直に直訳してみようといつも・・・ 自分で「レコードの数」って言ってるじゃん。 古い人ほど「直訳みたいな変数名はダメ」という間違った強迫観念に支配されてるけど、 時代錯誤だから考え直した方がいいと思うよ。
646 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 03:39:29 ] recordCount
647 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 03:40:49 ] なぜ比較するのにその二つを選んだのか
648 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 08:38:33 ] 何となくだが、records は配列とかそういう印象がある。 >645 そういうレベルの話じゃないっしょ。たぶん。 >647 nXXXsで個数っていうのは、よく見かけるけどな。
649 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 09:02:02 ] システムハンガリアンと違って、 きちんと意味付けされた上で接頭辞をつけるのは悪くないと思うんだけどな。 もちろん周りが -Count とか numberOf- とか使ってるならそっちを使うべきだけど。
650 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 02:37:11 ] あるある
651 名前:デフォルトの名無しさん [2009/04/20(月) 17:52:55 ] >>209 さ
652 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 18:20:18 ] MakeSureDirectoryPathExists的な関数名を付けては顰蹙を買うおいら。 でもオーバーロードの無いC言語だと仕方ないと思うんだ。
653 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 19:18:02 ] オーバーロードっていうかインスタンスメソッドじゃない。 bool CPathString::Exists()
654 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 19:20:01 ] make sureということは存在するか否かを返すのではなく、 「存在すれば何もしない。しなければ作る」という処理なのかな。
655 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 20:36:38 ] >>654 「ディレクトリの存在を確認する」んだろ。 オレだったらconfirmにするが。
656 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 20:38:05 ] ensure
657 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 11:58:52 ] >>654 正解。すごいな、分かる奴には分かるもんなんだな。 msdn.microsoft.com/ja-jp/library/cc428990.aspx
658 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 12:06:17 ] 技術系の洋書に沢山出てくる言い回しじゃん。
659 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 12:10:37 ] make sure directory path exists establish directory path existence without doubt 処理の後に指定されたディレクトリが存在するという事後条件がある と解釈するのか、make sureに対してそういう見方をしたことはなかった これからはもっと英英辞典も使うとしよう
660 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 12:37:42 ] Let's make sure he's dead. のジョーク思い出した
661 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 12:40:21 ] こういう言い回しは、こんな感じの意味みたいな読み方しかしないから、 ちゃんとした解釈なんて考えた事もないわ。 だから技術系の本しか読めないんだなきっとw
662 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 14:32:53 ] >>660 死んでるかどうか確認して! と 確実に死んだ状態にして! の勘違いのアレか。
663 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 18:53:18 ] 処理内容と事後条件が混ざって嫌。 だいたい事後条件を満たせなかったら どうすんの?死ぬの? makeDirectoryIfNotExist とかのがよくね?
664 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 19:00:56 ] 満たせなかったら例外とかエラーだろ。
665 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 19:03:08 ] >>663 失敗したらどうすんの?死ぬの?w
666 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 19:26:44 ] >>665 お前みたいな頭の悪いガキが生まれても、 親は別に死んだりしない。
667 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 19:41:02 ] 名前変えても何も変わらなくね?って言ってるだけなんだけど。
668 名前:デフォルトの名無しさん mailto:sage [2009/04/21(火) 23:58:38 ] この思い込み具合、またTONくさいな。。。。。
669 名前:デフォルトの名無しさん mailto:sage [2009/04/22(水) 00:07:53 ] MakeSureDirectoryPathExists makeDirectoryIfNotExist 俺はどっちも同じ動作を思い浮かべるけどな
670 名前:デフォルトの名無しさん mailto:sage [2009/04/22(水) 03:40:06 ] >>669 それほど変わらんかもしれんが、 >MakeSureDirectoryPathExists はsureに、 >makeDirectoryIfNotExist はmakeに主旨がある気がしない? 感覚的にはけっこう違うような。
671 名前:デフォルトの名無しさん mailto:sage [2009/04/22(水) 04:50:04 ] TONさんがこんなボンクラセンスなわけねぇだろw
672 名前:デフォルトの名無しさん mailto:sage [2009/04/22(水) 17:42:44 ] 2-3個くらいの文字列変数をルールに従って1つの文字列に合成・生成してOutputする関数を命名したいのですが composeかそれともgenerateどちらがいいでしょうか? 〜OutputStr()と言うような感じで考えています
673 名前:デフォルトの名無しさん mailto:sage [2009/04/22(水) 18:48:31 ] 手段が重要ならcomposeあるいはsynthesize 目的が重要ならgenerate
674 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 09:07:58 ] 〜にcomposeやgenerateが入るのが、outputする関数の名前としては既におかしい。 OutputComposedStringとかならまだ分かるが。
675 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 09:47:23 ] IN: 引数 OUT: 戻り値
676 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 11:14:06 ] ルールとかOutputとかが何を意味するのかわかんないけど joinとかそういうのとは違うの?
677 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 11:20:23 ] やはりTONさんのネーミングセンスは一味違うな
678 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 16:31:55 ] やっぱTONさんパネェっす
679 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 17:05:20 ] 浮動小数点数が非数でも無限でもないことを判定する関数の 名前は何にしたらよいでしょう? IsRealNumber にしようとおもったら、実数は無限を含むらしいので。
680 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 17:12:17 ] IsFinite
681 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 17:18:54 ] 真偽を逆にしてIsNaNOrInfinite
682 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 19:39:53 ] >>679 正負の零、非正規化数、正規化数をあわせて、finiteとよぶ。
683 名前:676 mailto:sage [2009/04/23(木) 20:04:42 ] >>677 >>678 それもしかして俺に言ってるの? joinはセパレータ使って文字列結合するときには普通に使う関数名だよ? スクリプト言語とかboost.string_algoとか使ったことない? ちなみにセパレータじゃなくて意味のある文字列ならformatXXXのほうがいいかな composeとかのほうが意味がわからない
684 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 20:25:35 ] >>679 つ float.h
685 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 20:27:17 ] >>683 どうみても674あてだろがw
686 名前:デフォルトの名無しさん mailto:sage [2009/04/23(木) 20:45:46 ] 疑心暗鬼に陥っているなw
687 名前:デフォルトの名無しさん mailto:sage [2009/04/24(金) 04:35:34 ] >>683 このスレの住人のTON検出力を甘く見んなw
688 名前:デフォルトの名無しさん mailto:sage [2009/04/24(金) 04:40:17 ] 683:(674に言ってるように見える・・・俺がTONなんだが・・・)
689 名前:デフォルトの名無しさん mailto:sage [2009/04/24(金) 04:50:52 ] TONさんは頑なにTONが含まれるレスを無視するからアリエネ
690 名前:デフォルトの名無しさん mailto:sage [2009/04/24(金) 06:31:07 ] ワロタ
691 名前:デフォルトの名無しさん mailto:sage [2009/04/24(金) 07:25:31 ] 質問者はトンさんに絡まれたくない時は冒頭にTONって入れときゃいいのか
692 名前:デフォルトの名無しさん mailto:sage [2009/04/24(金) 13:29:23 ] じゃあsageの代わりにTONって入れればいいんじゃね。
693 名前:デフォルトの名無しさん mailto:sage TON [2009/04/24(金) 18:26:36 ] まじぱねえっす
694 名前:デフォルトの名無しさん mailto:sage [2009/04/27(月) 20:49:56 ] マイコンに接続されてるセンサー(今は温度センサーをつけてる)からデータを受けてviewクラスに値を渡したいのですが 項目名(温度センサーなら温度)とその値を持つ構造体の名前、どうしたらいいでしょうか 単純そうに思えてしっくり来る名前が思いつかないです
695 名前:デフォルトの名無しさん mailto:sage [2009/04/27(月) 21:42:20 ] NameValuePair
696 名前:デフォルトの名無しさん mailto:sage [2009/04/27(月) 22:43:49 ] SensorData
697 名前:デフォルトの名無しさん mailto:sage [2009/04/27(月) 23:00:42 ] SensedData SensedValue
698 名前:デフォルトの名無しさん mailto:sage [2009/04/28(火) 06:39:45 ] DetectedParameter
699 名前:デフォルトの名無しさん mailto:sage [2009/04/28(火) 21:20:06 ] SensorEntry
700 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 14:17:29 ] 項目名と構造体名がお互いに愛し合っているなら、最も単純なものを。 そうではないが、刺激を与え合う関係であれば、中程度に複雑なものを。 誰もが気流に乗れていない状況であれば、いっその事名前をつけない。 客に媚びたいならば、可能であればジェネリクスを使う(同時に、客にはキッシュでも食わせておく)。
701 名前:デフォルトの名無しさん mailto:sage [2009/05/05(火) 05:06:58 ] 書き込む前にもう一度だけ読み返してさえいれば、こんな事にはならなかったのにな
702 名前:デフォルトの名無しさん mailto:sage [2009/05/06(水) 10:21:45 ] むちゃしやがって・・・
703 名前:ムモー [2009/05/10(日) 22:17:00 ] ClassName みたいな方法で名前を書くときって、 頭文字語を入れると読みにくくなるよね。 たとえば、「ABC法」という方法があって、 それをクラス化する場合、ABCMethod とすると読みにくくない? AbcMethod にすべき?それだと頭文字であることが分かりにくいよね。
704 名前:デフォルトの名無しさん mailto:sage [2009/05/10(日) 22:25:02 ] キャメル法って言うんでしたっけか。 _使うっていう俺は素人
705 名前:デフォルトの名無しさん mailto:sage [2009/05/10(日) 22:33:16 ] InitializeAclとか。
706 名前:デフォルトの名無しさん mailto:sage [2009/05/10(日) 22:39:49 ] >>703 俺はマイクロソフトのガイドラインに則って2文字か3文字以上かで分けてる。 IOMode ioMode; XmlDocument xmlDocument;
707 名前:ムモー [2009/05/10(日) 22:50:28 ] >>706 うーん。でも、「AB法」とそれを拡張した「ABC法」というのがあって、 一方は ABMethod でもう一方は AbcMethod っていうのは、よくないかなーって。 実際、今の仕事でそういうのがあるんだけど。
708 名前:706 mailto:sage [2009/05/10(日) 22:54:43 ] >>707 それはさすがにきもいな。 どっちかにそろえるべきだと思う。
709 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 00:52:32 ] 可読性も重要だが、名前の衝突が深刻
710 名前:709 mailto:sage [2009/05/11(月) 01:07:27 ] いみふなので付けたし その言語の標準の命名規則に盲目的に従っておけば その言語仕様における名前の解決の方法・順番に纏わる トラブルに巻き込まれることが少なくなることを期待 なので、AbcMethodに一票 ABMethodは、作った人を殴りに行こう
711 名前:709 mailto:sage [2009/05/11(月) 01:10:21 ] よく読んでなかった。マイクロソフトな言語だったら殴んなくていいのね
712 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 02:01:23 ] Pythonならacronymのケースは全部大文字だな
713 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 03:51:13 ] 709が恥ずかしすぎる件について
714 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 19:11:41 ] JavaScriptでボタンのonclickにセットする関数として、 押される度にあるdivの表示非表示を切り替える関数は なんて命名したらいいですか? switch~~とかchange~~とか付けてたけど、ふと気になった。
715 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 19:20:21 ] Toggle***Visibilityとか
716 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 21:15:30 ] >>710 命名規則に従わないとコンパイル通らないプログラミング言語でもない限り、 トラブルに巻き込まれるわけがないだろ…… つかコーディング規約ってものは「周囲に合わせる」のが常識だろ? C++ Coding Standards の冒頭にも書いてるけど、 重要なのはルールに従うことじゃなく、一貫した書き方をしていること。 ABMethodがあるなら当然ABCMethodを期待するだろ。 名前の問題より、期待を裏切られるほうが深刻。 命名規則に盲目的に従うとかそれこそいみふだろ、常識的に考えて
717 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 21:37:42 ] 709はもんのっすっごい馬鹿なTONさんて感じだな
718 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 22:21:19 ] >>716 一貫した書き方をするために、盲目的にルールに従う必要があるの。 大体「周囲」って何なんだよ。 命名規約に従うとABMethod、AbcMethodという状況で、 ABCMethodなんて規約に反した命名するのは俺からしたら思いっきり 「期待を裏切る」行為だけどね。
719 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 23:02:40 ] 途中から関わる場合は周囲に合わせる。 最初から関わる場合は途中で変えない。
720 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 23:14:31 ] Java だと、名前が衝突したときに、obscure とか hiding とか shadow とか (あと一つあったような)いろいろ面倒な概念が必要になるんだわ。 マイクロソフトは知らね
721 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 13:37:29 ] 命名規約に従うなら、そもそも ABC なんて略語を使うのが規則違反なワケで AnyBasicChannel とかナントカ(意味フ)みたいに、略さなければいいこと。 そうすれば ABC なのか Abc なのかで悩む必要はない。 ところで便乗質問。 ラクダ法で名前を付けるとき、最初の1文字は小文字にすべし。たとえば inputOutputMethod みたいになるわけだが、頭にアンダースコアを付けると _InputOutputMethod でいいの?i は2文字目だから大文字でいいの?
722 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 13:52:28 ] C/C++ の標準規格に従うなら、そもそも _Input なんて頭にアンダースコアをつけるのが規則違反なワケで inputOutputMethod とかナントカ(意味フ)みたいに、つけなければいいこと。 そうすれば _input なのか _Input なのかで悩む必要は無い。
723 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 16:34:54 ] 知らないならレスしないでください
724 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 21:18:25 ] >>721 所詮コーディング規約なんだから、 規約を知らない人間が理不尽だと思うようなルールには従わんでいいだろ。 「ハイフンの次は先頭じゃないから大文字でいいよ!」なんて 馬鹿げた規約が仮にあったとしたら、その規約を10部くらい印刷して全部破り捨てるね。 あとラクダ法 = CamelCaseは厳密には先頭大文字。 先頭小文字は mixedCase。あえて区別しない時もあるけど。 つかコーディング規約にやたら拘る人多いけど釣りなの?
725 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 21:52:15 ] >>720 その概念は知らなかったが、 見る限り普通にコード書いてりゃわかりそうな概念だったぜ。 shadow: インスタンス変数とパラメータが被るときのルール hiding: 継承関係でstaticメソッドが被ったときのルール (多態が起こらない) obscure: パッケージ名、クラス名と変数名が被るときのルール ABCMethodをAbcMethodにしないと面倒という意味がわからないし、 そもそもこれが面倒になるようなコード書くなよとしか言えない。this.x = x;はよくやるが。 ついでにC++とかのADLとかtypedef typename とかと比べるとだいぶ簡単な気がするぞ。
726 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 21:55:36 ] >724 キャメルは先頭小文字で、先頭大文字はPascalだと思うが。
727 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 22:07:08 ] 途中の大文字をラクダのコブに見たててのcamel caseだから、先頭は小文字であれかし。
728 名前:726 mailto:sage [2009/05/12(火) 23:09:45 ] wikipediaによれば総称camel caseで先頭大文字のものをupper camel caseまたはpascal case、 先頭小文字のものをlower camel caseまたは単にcamel caseと呼ぶ、だそうな。
729 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 23:25:38 ] オレの亀は頭がデカい
730 名前:デフォルトの名無しさん mailto:sage [2009/05/13(水) 07:25:44 ] 文中でも文頭でもcamelCase, PascalCaseとかけば誰も間違えないよ。
731 名前:デフォルトの名無しさん mailto:sage [2009/05/13(水) 11:27:17 ] パスカルは天才だから頭がデカイ
732 名前:デフォルトの名無しさん mailto:sage [2009/05/13(水) 12:13:15 ] 頭を上げた状態のラクダがいてもいいんではないだろうか
733 名前:デフォルトの名無しさん mailto:sage [2009/05/13(水) 13:45:11 ] チェザーレにお世話になってるんですね、わかります。
734 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 00:36:23 ] これから作るクラス名、"RewindableIterator" と "MementoIterator" のどっちにしようか悩んでるんだけど 分かりやすいのはどっちだと思いますか?
735 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 00:50:19 ] 何作るのか知らんが 名前だけ見て動作が多少想像できるのは前者
736 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 01:02:36 ] MementoというとMementoパターンに関連したものをイメージするのだが、 IteratorがMementoパターンにどう関連するかわからない。
737 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 01:08:41 ] Mesomesoパターン
738 名前:736 mailto:sage [2009/05/14(木) 04:19:18 ] 名前だけでだいたい通じるかなーと思って敢えて詳細は書かなかったんだけど、 普通のイテレーターの機能に加えて、 ・saveState⇒現在のindexをスタックに追加(Push)する ・backState⇒スタックの先頭を取り出して(Pop)、現在のindexをそれに置き換える ていう機能がついてる感じです。 個人的にはやっぱ前者かなーと。セーブ地点に「戻せる」ようにすることが目的であって、 状態のスナップショットを記録するっていうのはちょっと違うかなぁと。
739 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 04:20:03 ] あ、734だったw
740 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 04:22:03 ] restoreState
741 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 04:31:08 ] rewindableって反復の途中で逆方向に巻き戻せるもののように聞こえる iteration ex) 0->1->2->3->4->5 rewindable iteration ex) 0->1->2->3->2->1->0
742 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 06:17:02 ] StickableIterator RestorableIterator
743 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 07:14:21 ] UnwindableIterator
744 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 08:57:12 ] >>741 つ bidirectional iterator
745 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 09:04:57 ] >>738 だったら、いっそ以下。 StackableIterator pushState() popState()
746 名前:デフォルトの名無しさん [2009/05/17(日) 14:12:52 ] ハンガリアンについての質問です。 int nIndex; のポインタ変数を、 int* lpnIndex; にしました。 この場合、int** のポインタ変数のプリフィックスは何にするのが一般的でしょうか。
747 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 14:33:20 ] 俺はハンガリアン使わないけど、なんでlp(= long pointer)なんだ Win32APIとあわせてるの?
748 名前:デフォルトの名無しさん [2009/05/17(日) 14:57:36 ] lplpn
749 名前:746 [2009/05/17(日) 15:29:51 ] >>747 16bit 時代からプログラミングしてると、どうしても p は 16bit、lp は 32bit って意識が強いから、 lp にしちゃうんだよね >>748 lplpn しかないか〜。thx!
750 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 15:45:01 ] システムハンガリアンなんか使うな
751 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 18:26:39 ] ハンガリアンについての質問だからいいだろ。
752 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 22:23:19 ] 8bit時代からプログラミングしてるが別にそんなこだわりない
753 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 22:58:08 ] __ , ‐' ´ ``‐、 / ̄:三} . /,. -─‐- 、. ヽ / ,.=j _,.:_'______ヽ、 .! ./ _,ノ `‐、{ へ '゙⌒ `!~ヽ. ! /{. / `! し゚ ( ゚j `v‐冫 , '::::::::ヽ、/ . {.l '⌒ ゙ 6',! / :::::::::::::::/ __ そんなことよりTimeOfNowの話しようぜ! . 〈 < ´ ̄,フ .ノー'_ , ‐'´::::::::::::::;/ (_ノ)‐-、 . ヽ.、 ` ‐", ‐´‐:ラ ':::::::::::::::: ;∠. ヽ_} ゙ヽ ,.r` "´ /:::::::::::::::::::ィ´ `ゝ !、 / / / :::::::::::::::: ; '´ /´\ / r'\ . i ! ::::::::::::::/ 墨 | .!::::::::/ヽ、.._!ヽ. ヽ、 { {:::::::::::;:イ / ‖i:::::::/:::::::::::::/ \ . ヽ ヽ,.ァ‐'´ /ヽ 二 ,/`ヽ、::::::::: / ヽ ヽ、 ,. ‐'" .ノ ,〈 > `'‐- ' > _,. ‐'´ / / `) ,ゝ _.⊥.-r┬:/ ヽ_,. -‐i"!´「L.=!┘ ヽ < / / | / 、i / __ ./
754 名前:デフォルトの名無しさん mailto:sage [2009/05/18(月) 06:47:56 ] 通知機能(Yahoo!とかのアラート機能のようなもの)の通知条件を入れておく変数なのですが、 ・subscriptions とかでもおかしくないでしょうか? それとも ・notificationSettings みたいな感じのほうがよいでしょうか? アドバイスお願いします。
755 名前:デフォルトの名無しさん mailto:sage [2009/05/18(月) 06:49:07 ] condition
756 名前:デフォルトの名無しさん mailto:sage [2009/05/18(月) 21:59:27 ] notificationTrigger
757 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 06:30:19 ] 外部に接続してる計器からの値を受けて出力するPresentationに相当する基底クラスと クライアント領域へ出力する派生クラスとファイルへ出力する派生クラス命名をお願いします。
758 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 09:56:06 ] Presentation ClientPresentation FilePresentation
759 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 12:32:57 ] なんという直球 だがそれがいい
760 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 12:38:15 ] 今何番目か?を表す変数と 何個あるか?を表す変数 が紛らわしくていつも困る。 なんたらnumとか言われてもどっちを指しているのかわからん。
761 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 12:55:11 ] 個数はcount、順序はnumber。
762 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 14:19:18 ] あれ?そういうもんなの普通は。 countってなんかループカウントみたいで使ったことないな…
763 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 14:30:32 ] 困るねぇ index と length に持ってければ length にしちゃう
764 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 14:42:54 ] 個数は先頭にnもしくはnumberOfをつける 順序はi, j, kもしくはindex,id
765 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 15:19:19 ] >>760 Code Completeではnumberはさけて、indexとcountを使うとあったよ。 >>762 ループカウンタはi, j, kしか使わない、ってことにすればすっきりするよ。
766 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 15:31:52 ] >>765 なるほど。thx
767 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 21:33:48 ] 今更なんだが、4方向をつけるとしたらrightとleftは迷わないんだが、 上と下ってup,above,under,lowのそれぞれどれがいいんだ? 辞書で調べたんだが、今一どれが一般的なのか分からん。
768 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 21:37:34 ] 一般的にはupとdownでは
769 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 21:37:48 ] >>767 単純に(矢印で表されるような)方向のことならupとdownを使ってる。 上辺とか下辺という意味が強いならRECTにならってtopとbottomにしてる。
770 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 21:47:47 ] やっぱupとdownか。 ありがとう。
771 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 23:28:49 ] javaとCです、ユークリッド互助法で使う 除算の余りを表す変数名に相応しいものを、それぞれについてお願いします。
772 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 23:42:49 ] >>771 ttp://en.wikipedia.org/wiki/Euclidean_algorithm#Greatest_common_divisor
773 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 23:50:32 ] >>772 thx java、cともにgcdと命名します
774 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 06:22:14 ] えっ…?
775 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 07:52:12 ] えっ
776 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 10:36:04 ] キーワードを列挙するテキストフィールドの名前はkeywordFieldか、keywordsFieldか…
777 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 15:49:14 ] >>773 関数名ならgcdでいいが局所変数は(ry
778 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 20:39:06 ] >>776 英語的には textfield (that) Enumerates Keywords とか? textfiledEnumKeywords とかなんとか。 変ですかすいません。
779 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 21:17:00 ] それはネタで言ってるのか
780 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 21:58:12 ] えっ
781 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 22:18:15 ] >>776 キーワードってのが既に曖昧じゃない?改めた方がいい気がする 列挙する機能がそれに付いてるのなら〜sFieldでいいと思う
782 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 22:30:57 ] keywordEnumerationField
783 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 13:48:04 ] 数値をKBとかGBとかの単位に変換する 処理(関数)の名前をお願いします。
784 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 14:30:57 ] toSIPrefix
785 名前:デフォルトの名無しさん [2009/05/25(月) 19:24:02 ] C++を使ったゲームのプログラムで、 指定されたボタンが押されたかどうかをチェックする関数名をお願いします。 ●監視対象はゲームパッド、キーボード、マウスを想定しています。 デバイス名に依存しない名前が好ましいです。 ●戻り値は、基本的に真/偽の2値として利用しますが、 整数型で受け取った場合は、同じ状態が何フレーム連続で続いたかを返せるようにします。 ●オーバーロードまたはデフォルト引数の機能を使って、第2引数に「より詳細な状態(トリガ)」を指定することが出来る。 例: Func( MOUSE_R ) ; //マウスの右ボタンが押されていれば真 Func( MOUSE_R , PUSH_DOWN ) ; //押した瞬間のみ真
786 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 19:38:38 ] PollButton
787 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 20:12:45 ] 上の関数をIsPressed 下の関数をIsTriggeredと命名してる 俺の場合
788 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 21:38:39 ] >>785 inputEventRecieved
789 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 21:39:20 ] >786 ネットワーク用語のポーリングと同じ意味? >787 現状だと僕も同じような名前で使っています。 ただ、関数名を共通にして、引数の違いだけで区別できないかな?と思いまして。
790 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 21:42:36 ] 引数で機能をスイッチする万能関数って俺は好きじゃないな スレチだが
791 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 22:03:57 ] ちょっとMS臭するけどQueryInputStateとか 機能が複雑なのでIs〜とかGet〜とかは付けたくない感じ
792 名前:783 mailto:sage [2009/05/26(火) 02:11:38 ] >>784 ども。 toSIPrefixだと、なんかおちつかない気分になります。 SI接頭辞はK/M/Gとかいうことですよね?ちょっとあわないような。 4,668,327→4.45Mというような、SI接頭辞を含む変換を行う 処理(関数)を明確にあらわす名前はないでしょうか?
793 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 02:32:41 ] 有効数字3桁くらいになるように、適当に接頭辞を付けたものを human readable と表現することがあるが、そういうこと?
794 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 02:40:34 ] ls --human-readableか。
795 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 03:58:39 ] >>783 toBinaryPrefixNotation BinaryPrefixというのがIEEEで定められてるので、そっからとってみた。
796 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 04:14:49 ] BinaryPrefixは違うだろ。
797 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 07:25:56 ] あってるだろ。 SI prefixだと 10^3, 10^6 の意味だからむしろ間違い。
798 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 13:02:49 ] KiBとかMiBに変換するならあってる
799 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 18:28:46 ] Cのマクロについてお願いします。 (1) 通常のassertマクロはリリース時には削除されるが、リリース時でも削除されないassertマクロの名前。 ASSSERT_ナントカみたいな名前が良さそうかな?と思っています。 (2) 与えられた文字列をエラーメッセージとして、強制終了するマクロの名前。 EXIT? DIE? HALT? 別スレに誤爆したけどくじけないぞ。
800 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 18:58:40 ] (1) ASSERT_PRECAUTION ASSERT_IN_PRODUCTION_RELEASE ASSERT_BETA_TEST ASSERT_BETA_FOREVER ASSERT_PARANOIA (2) perlにならってDIE
801 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 19:37:45 ] 手元の本を見てみたら、ASSERT_STRONGとHALTだった
802 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 22:37:52 ] HALTってCPUが止まりそうでイヤンだな
803 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 22:48:35 ] (2)は FATAL ってのをよくつかう。
804 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 01:53:03 ] >>799 (1) 強制assertっぽいので、FORCE_ASSERT。 (2) 「強制終了」のイメージがありそうなHALT。
805 名前:783 mailto:sage [2009/05/27(水) 02:15:08 ] >>793 ,794 >有効数字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 (グロス)
806 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 08:34:55 ] 1回割ったとか2回割ったとかいう情報は失っていいの?
807 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 13:55:43 ] 英語としての ASSERT の意味をわかってないやつがいるようだ。
808 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 14:28:04 ] >>799 1. CHECK, VALIDATE 2. FATAL_ERROR
809 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 20:10:44 ] >807 具体的にどれさ >808 ASSERT関係なくね?
810 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 20:30:18 ] 関数名なのですが、 引数に名前($name)を受け取って、 その名前がDBのテーブル内に存在すればそのIDを、 存在しなければ、新規に保存して、挿入したIDを返す というような関数は、どんな名前が考えられますでしょうか? findIdByNameでは可笑しいでしょうか? よろしくお願いします。
811 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 20:58:40 ] intern
812 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 21:19:57 ] 関数を使う側から見れば 既にDBにあろうが無かろうが関係なく、指定した名前に対するIDを貰ってくるという見た目は変わらないんじゃない?
813 名前:810 mailto:sage [2009/05/27(水) 21:23:13 ] >>811 これは私宛でしょうか? もう少しnameを渡してidを得るというニュアンスが欲しいのですが。 >>812 そうなんです。 というか、それを意識しないでいいようにするための関数なので、 上にも書いたように「nameを渡してidを得る」という意味だけでいいのですが・・・ こういう場合はfindじゃなくてgetのようがいいのでしょうかね・・・ getIdByName??
814 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 21:36:14 ] fetchIdByName
815 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 21:45:27 ] >>813 lispとかのinternはまさにそんな感じの動きするから。
816 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 22:40:51 ] コレクションのメソッド名についてお願いします。 1. コレクションからランダムに要素を取得するが削除しないメソッド 2. コレクションからランダムに要素を取得し削除するメソッド 3. コレクションのランダムな要素と引数に指定した要素を置き換えるメソッド
817 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 23:14:20 ] Cみたいに、仮引数に名前をつけられるなら、関数名にNameをつけないで そのまま GetId ( name ) というパターンもありそう。 Perlなら GetId( 'name' => $name ) とか出来た気がするし。
818 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 23:30:57 ] >>816 ランダムって、適当にどれでもいいから一つって意味? それとも呼ぶ側が指定した任意のアイテムって意味?
819 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 23:37:33 ] >>816 1. getRandomItem() 2. getRandomItem_remove() 3. getRandomItem_swap() >>818 「ランダム」といえば乱数的だろ。jk
820 名前:783 mailto:sage [2009/05/27(水) 23:45:55 ] >>806 >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グロス なんか処理が具体的でもあり抽象的でもあり、しっかりした名前を 与えるには中途半端な印象なんですよねー。
821 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 23:59:16 ] >>816 random_sample random_pop random_swap でもメソッド? randomな自然数を決めて添字アクセスができればどんなコンテナでもいいし、 関数でいいような気がするけどなー
822 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 00:01:34 ] >>819 > 「ランダム」といえば乱数的だろ。jk random access memory って別に乱数的じゃないわけで。ま、どうでもいいけど。
823 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 00:09:04 ] >>820 NormalizeByRadix
824 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 01:07:22 ] >>822 ランダムとランダムアクセスをいっしょくたにするやつはいないだろ。
825 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 01:10:11 ] >>821 >>816 の2は「要素の削除」をするようなので、コンテナオブジェクトの メソッドにするのは当然なんでは。 それとも、まさかstd::remove()みたいな仕様にするのか?
826 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 01:21:17 ] それよりも、>>820 の1つ目の例がケルビンなのが気になる
827 名前:799 mailto:sage [2009/05/28(木) 02:12:43 ] ごめんなさい、お礼言い忘れてました。 ありがとうございます。
828 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 02:23:07 ] そういうときは各回答への感想とかどれを採用したとか書くとなおもりあがるぞ
829 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 02:39:56 ] 「ASSERTはリリース時に全部削ることにしたから」 「製品版で強制終了させるなら、きちんと別処理にしたほうがいいんじゃね」 なんてやりとりがあったことは秘密ですよ?
830 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 14:23:24 ] 要素を参照するとその要素が削除されるハッシュを作っているのですが どんな名前が適切でしょうか?
831 名前:830 mailto:sage [2009/05/28(木) 14:26:47 ] 自己レス 要素がすぐ消えてなくなるから VolatileHash とかどうでしょうかね わかりにくいか……
832 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 14:47:16 ] ハッシュとはハッシュテーブルの集合か? DestructiveReadoutHashSetかな まあpop(set, key)関数でも作って使わせた方が良いと思うけど
833 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 22:12:47 ] すっごく特殊なプライオリティキューみたい。
834 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 23:21:57 ] VerySpecialPriorityQueueLikeHash
835 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 01:02:38 ] メソッドでSQL文の要素(カラム名とか検索キーとか)を指定してSQL文を構築するクラスのフィールドで カラムが固定されたかどうか(それ以上カラムを設定できない)を判定するフラグ変数の名前で迷ってます。 fixedはどうもバグフィックスのイメージが強いので他のキーワードってないでしょうか
836 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 01:21:10 ] >>835 freezeしてfrozenになる、という話かと思ったら違うね。 必要な要素をいくつか指定していき、指定し終えた、よってさらなる指定は できない、という判定をするものなら fulfilled はどうだろうか。
837 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 03:55:42 ] >>836 freezeもいいですね。凍結するって感じで でもfulfilledの方が「追加できない」って意味で合ってる感じがするので fulfilledの方を使わせてもらいます。(fullfilledって間違えそう・・・) ありがとうございました。
838 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 09:03:26 ] 命名とはちょっと違うかもしれないのですが、 foreachで変数を回すときに itemsとかなら foreach ($items as $item) としているのですが、 seriesとかequipmentのように、 複数形と単数形の区別がない名詞の場合、 みなさんならどうしてますか? かっこいい方法が知りたいです。
839 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 09:37:28 ] ごく狭いスコープ内だけの変数は1〜2文字程度の 短い名前にした方が、ぱっと見で区別できて読みやすい。 局所的なのは短く、大域的になるにつれて長く。 自分の場合はね。
840 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 10:31:25 ] なるべく使わないか、複数を表すならuncountな名詞でもあえてs付けたりするな。 どうような理由でbooleanを返すメソッドでareで始まるのが文法上ただしくても あえてisで始めたりする。
841 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 12:49:09 ] 馬鹿が辞書ひっくり返して見つけたアレな単語の変数名とか見るともうゲンナリ
842 名前:838 mailto:sage [2009/05/30(土) 12:49:44 ] >>839 foreach ($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にすべき、というのに出くわしたことがないのですが・・・ (気づいてないだけかも;)
843 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 13:17:29 ] >>842 >$s1、$s2、$e1、$e2なんてのも、あとで手直しするときにめんどくさそうですし・・・ 長かったらもっとめんどくさいんじゃね? そもそも、混乱するほど何重にもネストしてるのは ループの中を別の関数にわけた方が良いことを示してるのでは。 >>>局所的なのは短く、大域的になるにつれて長く。 >というのは、それを考慮してのことでしょうか? 局所的なのは、使われてる場所自体が、説明的な長い名前の代わりになる。 大域的になるにつれてそういう情報が少なくなるから、説明的な長い名前にする。
844 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 13:18:38 ] 部屋にものが2個しかなければ、「あれ」と「それ」で事足りるみたいな感じね。
845 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 13:21:23 ] 一文字違いの変数名を使うのは、泣きそうな間違いをする可能性がある
846 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 14:20:36 ] javaで今時のideだとそんなに大きな問題じゃないよ
847 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 14:26:27 ] eclipse で リファクタリングすればいいしね
848 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 20:12:44 ] >>838 オレならなんでも「it」。
849 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 20:47:18 ] 「it」と呼ばれた変数
850 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 21:11:03 ] $_ でいいやん
851 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 21:18:11 ] itとかアナフォリックなマクロみたいだな
852 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 21:47:11 ] 穴掘りっ苦
853 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 22:17:23 ] オナホ立国
854 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 08:20:38 ] ある変数にprefixを適用した後の名前って、どんなのがいいですかね?
855 名前:855 mailto:sage [2009/05/31(日) 08:23:42 ] fixed〜とかかな?
856 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 11:31:53 ] 日付形式の画面入力項目(txtCloseDate)を受け取るstring型変数と、それを変換したDateTime型変数。 型のプレフィックスを付けない場合はどう名付ければいいでしょうか?
857 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 11:53:34 ] in_str date 型のプリフィックじゃなくて、入力を示すアプリケーションハンガリアン
858 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 18:44:24 ] >>799 つverify()
859 名前:デフォルトの名無しさん mailto:sage [2009/06/02(火) 17:04:32 ] 構造体のメンバ変数名なんだけど、hogeCountってhogeCntみたいに省略します?
860 名前:デフォルトの名無しさん mailto:sage [2009/06/02(火) 17:14:16 ] 俺は省略しない派
861 名前:デフォルトの名無しさん mailto:sage [2009/06/02(火) 18:03:44 ] 俺は省略する派
862 名前:デフォルトの名無しさん mailto:sage [2009/06/02(火) 18:15:09 ] どっちだよw 誰か論理的に語ってくれよ
863 名前:デフォルトの名無しさん mailto:sage [2009/06/02(火) 18:35:44 ] >>859 nHoge ハンガリアンで何が悪い!
864 名前:デフォルトの名無しさん mailto:sage [2009/06/02(火) 19:02:07 ] 省略する必要がなければ省略しなきゃいい
865 名前:デフォルトの名無しさん mailto:sage [2009/06/02(火) 20:20:57 ] >>863 ハンガリアンとか関係ないだろw 略すか略さないかの問題なんだよ Count消えてるじゃねえか
866 名前:デフォルトの名無しさん mailto:sage [2009/06/02(火) 20:35:17 ] じゃ cHoge
867 名前:デフォルトの名無しさん mailto:sage [2009/06/02(火) 20:36:53 ] 変数名では省略 メソッド名では省略しない。
868 名前:デフォルトの名無しさん mailto:sage [2009/06/02(火) 20:42:24 ] 原則省略しない。 自分も含めてチームの全ての人が一見して即わかるなら省略して良い。
869 名前:デフォルトの名無しさん mailto:sage [2009/06/02(火) 21:31:21 ] msgとかresとかは? どっかでこういうのの一覧みたことあるんだけど、どこだったかなぁ?
870 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 00:09:59 ] >>868 引き継ぐ人カワイソス
871 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 01:17:28 ] msg=マッサージ
872 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 02:42:14 ] privateなシンボルならそれ程気にしないで略称使う。 忘れても最悪1ファイル分解読すれば済むし。 publicなら意味が曖昧にならないよう念入りに推敲する。
873 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 03:09:29 ] 状況によるってのが結論っすね。
874 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 11:38:41 ] str,msg,cntくらいなら略しても意味が伝わらないことは無いんじゃないかなあ。
875 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 12:47:27 ] initとか全部書きたくないっすよ。
876 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 13:08:44 ] やっぱりここは国際化 Internationalizationのように美しく略さないと
877 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 19:06:29 ] 一つのモジュールの中にinitとinitialize(cntとcount、msgとmessage)の両方が定義してあるとか勘弁してくれ
878 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 19:17:54 ] privateなinitなんちゃらがいくつかあって、それらの親玉のinitializeが1個publicになってるのとかよく書いてる。
879 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 21:44:51 ] 今時の補完って結構かしこいから単語は必要なだけ長くてもいい。 で、英語が多くなってくるとプロポーショナルフォントの方が読みやすかったりする。
880 名前:デフォルトの名無しさん [2009/06/03(水) 22:39:39 ] >>879 読みやすさだけに限ればなんとか理解できなくもないが、 プログラムにプロポーショナルフォントなんて虫唾が走る
881 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 22:54:21 ] そう思ってたことが僕ry
882 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 23:20:08 ] プロポーショナルで満足できるって よっぽどひどいディスプレイとIDEとフォントと・・・全部だめなの使ってるんだろうな
883 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 23:29:21 ] わざわざやらないけど、タブでちゃんとインデントさえ出来れば意外と我慢できるよ。
884 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 23:47:52 ] 我慢なんてやだね
885 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 01:10:06 ] インデントが破綻しないなら プロポーショナルもありかもなぁ
886 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 01:23:04 ] 行頭だけならタブの個数で制御できるけど、 行中のコメント位置を揃えたいとかなると、 フォントが変われば即破綻だな。 つか、スレチだぜ。
887 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 18:43:46 ] このスレチェックするの忘れてた。 お気に入り登録し過ぎたか
888 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 18:54:08 ] 俺も最近はプロポーショナルだわ。 行頭以外でカラムはそろえないようにしたから、特に不自由はない。
889 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 19:09:29 ] C++だけどメンバ変数にm_って付ける? void setHoge(int hoge){ m_hoge = hoge; } void setHoge(int hoge){ this->hoge = hoge; } どっちが主流なんだろ? メンバ変数、引数、ローカル変数名が紛らわしいときいつも困る
890 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 19:11:46 ] 俺は尻に_付ける。 引数やローカル変数と被ると言うよりはメンバメソッドとの重複を避けるためだが。
891 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 19:22:34 ] メンバ変数の尻に_ってのは初耳だなぁ 結構一般的な方法なのかな あと メソッドって動詞にしかならないイメージだから メンバ変数と被るケースってのがちょっと自分には想像できないな…
892 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 20:08:57 ] そお? ケツに _ は、わりとメジャーだと思うけどなぁ m_ はなんか重くて this-> はどっかにやるなって書いてなかったっけ?
893 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 20:20:49 ] >>891 うちではアクセサにget/setを付けないことになってるから。 void count(size_t value) { this->value_ = value; } size_t count() const { return this->value_; } 末尾_はインテリセンスと相性がいいから、結構使われてると思うよ。
894 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 20:52:51 ] 俺も末尾_派
895 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 21:08:15 ] 結構一般的なのね。 ありがと。 自分もなるべく一般性の高いやり方にしたいから末尾_使うようにする。 >>893 >末尾_はインテリセンスと相性がいいから、 これちょっとわからないんだけど インテリセンスの候補から視覚的に探しやすいってこと? ―って質問文を書いたら今気付いた。 先頭m_だと候補から選ぶとき最低3文字入力しないといけないからか。
896 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 21:34:36 ] 末尾にアンダースコアはunix系で良く見る。
897 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 22:45:07 ] メンバ変数は mHoge 視認性が末尾_より高く、インテリセンスもm_よりはshift不要で入力が楽な上に メンバ変数だけを候補に絞れるから楽 これ最強 あんまし見ないけど
898 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 22:58:54 ] 視認性つっても色変えればいいだけじゃん。 色弱対応?
899 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 23:00:17 ] エディターの機能が充実してくると要らなくなるよね
900 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 23:19:22 ] そりゃVSでメンバだけ色替えできたら助かるけど
901 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 23:27:47 ] m_はVC使いに多い(MFCとかで一般的だから)。_を前につけるのがC/C++標準で非推奨になったので 後ろにつけるのが最近の流行。
902 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 23:31:47 ] MFCで作るときだけはm_の慣習に従うな。 クラスの頭にCとかも。
903 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 23:47:20 ] m_ は古めなイメージ
904 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 00:07:43 ] 土下座AAみたいだ
905 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 01:20:58 ] >>897 mHogeでも大文字にするためにシフト必要じゃね?
906 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 01:24:47 ] MetrowerksのPowerPlantがそれを採用していた。
907 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 01:40:01 ] >>905 VC2003で確かめてみたがshiftは不要。mhと入力するだけでmHが候補に挙がる。 万が一mhで始まるメンバが他にあるなら小文字のh側が優先されるが、まずないだろうし。
908 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 19:25:12 ] まずないと言い切れる根拠が判らんが、お前がそう言うんならそうなんだろう。
909 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 19:40:10 ] C#だと付ける場合は先頭に_が主流かな。
910 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 21:01:49 ] javaも付けるなら前だな。付けないけど。
911 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 22:13:06 ] m_H_m 前後に付けるのが流行る
912 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 22:19:28 ] for (; ;) { m_OoO_m ; ; }
913 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 23:25:44 ] >>907 mAppleというメンバがあって maxというメソッドがあったり mIciroというメンバがあって mixというメソッドがあったり mUntanというメンバがあって muteというメソッドがあったり mEnemyというメンバがあって mesというメソッドがあったり mOrangeというメンバがあって moveというメソッドがあったり
914 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 02:36:15 ] >>913 命名規約がなかったり無視されたりしがちな社内製作、社内利用の アプリケーションなんかだと良くあるよね。 とりあえずRubyみたいにメンバ変数は"@"で始まるとか 文法で決めてしまってくれたほうがすっきりして良いと思うんだけど、 Java改良版(と個人的に思っている)のC#でも採用されないところをみると、 みんなあんまり好きじゃないのかな?
915 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 02:41:16 ] いっそのことJSやらPythonやらみたいにthis強制でいいと思う
916 名前:デフォルトの名無しさん [2009/06/06(土) 04:45:29 ] DAOのメソッド名を考えています。 命名規約のようなものが見つからないので、 とりあえず自分では以下のように考えているのですが、 何か駄目出しがあったら教えて下さい。 find(一覧取得)とget(一行取得)の使い分けが 微妙かなーと思っているのですが... count() - レコードの総件数を取得 countByFoo - 条件指定の件数取得 countByFooAndBar - 条件が複数ある場合の件数取得 countByCondition - 条件が多数ある場合の件数取得 findAll() - レコード全て取得 findByFoo - 条件指定の一覧取得 findByFooAndBar - 条件が複数ある場合の一覧取得 findByCondition - 条件が多数ある場合の一覧取得 getByFoo - 条件指定の一行取得 getByFooAndBar - 条件が複数ある場合の一行取得 getByCondition - 条件が多数ある場合の一行取得 insert - 追加 update - 全件更新 updateByFoo - 更新 delete - 全件削除 deleteByFoo - 条件指定の削除
917 名前:デフォルトの名無しさん [2009/06/06(土) 07:07:58 ] 「最後にHogeを○○した時刻」を示す変数は、どういう名前にしたら良さげかな? ○○には、実行、更新、取得などの動詞が入る予定。ちなみに保持する時刻の単位はミリ秒。 last_time_when_do_hoge? last_time_when_did_hoge? なんか長いよ…。 >908 言われてみれば、プリフィクス以外で、mhで始まる単語はパッとは思いつかない…気もする。 >914 Perlは前に付ける記号で意味が変わってくるからなあ。 @$hogeみたいに複数くっつく場合とか、もうね……。
918 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 07:48:14 ] 一番要らないものを順に省いてってよさげなところでとめてみる when time hoge ↓ last_XXXed last_YYYed
919 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 08:03:43 ] XXXed_at
920 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 08:18:01 ] latest_XXed_msec
921 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 08:36:27 ] ありがとうございます。参考にしてやってみます。 >919さんの方法はちょっと目ウロコでした。
922 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 12:12:37 ] 必要な語を全部入れなければいけないなら長くはなるだろうな。 time whenのかわりに最後にatを付けるなどして、 last hoge update at (最後にhogeを更新した時刻)などとしては?
923 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 12:14:37 ] りろー(ry
924 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 12:14:55 ] MS的にはLastWriteTime, LastAccessTime
925 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 12:59:24 ] どれくらいのスコープで使うの? 大きいスコープなら長めの変数名でいいと思うけど
926 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 18:33:34 ] >925 10行くらいの関数の中。ごめんなさい。
927 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 19:37:17 ] >>917 lastDoneTime
928 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 01:30:50 ] .NETでフォームアプリケーションを作っているのですが、 コンボボックスに日付を入れるようなメソッドのプレフィックスは何がいいでしょうか。 今はsetXXXXToComboBox1のようにsetを付けています。 addやappendはなんとなく違うような気がして。 また、引数でbool値を渡して、それによって動作が変わるような変数は どのような名前が良いでしょうか。 動作自体を切り変えるような場合はshouldXXXX、 戻り値を切り変えるような場合はrequiredXXXXにしています。
929 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 01:46:19 ] shouldもrequiredも無くしてXXXXだけの方がいい つか「戻り値を切り替える→required」てのが意味わからん
930 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 02:20:39 ] booleanを与えて動作自体を切り替えるがshouldていうのもわけわからん。
931 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 10:37:45 ] Addがいいよ。 bXxxxでええよ
932 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 11:10:59 ] >bool値を渡して、それによって動作が変わるような変数 引数の形式でどうやって命名するんだ。 機能を言ってくれんとなんともいえん。
933 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 11:13:33 ] cmd というプリフィクスも、ないことはない
934 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 11:16:35 ] ここは定石通りにhogehogeflagという方向でですね