クラス名・変数名に迷 ..
[2ch|▼Menu]
369:364
05/05/27 11:23:53
>>368
destinationっぽいです
ありがとうございました m(_ _)m

370:デフォルトの名無しさん
05/05/27 11:41:08
蛇足だが、DestならSourceもSrcでもいいような気がする。

371:デフォルトの名無しさん
05/05/27 12:09:37
>364
p, q


372:デフォルトの名無しさん
05/05/27 13:20:07
ディスティネーションはつづりが覚えられないから、
from, to, でやってる。

373:デフォルトの名無しさん
05/05/27 13:24:00
toは予約語だから,
tinko, manko, でやってる。

374:デフォルトの名無しさん
05/05/27 13:32:52
mankoは予約語だから,
bou, ana, でやってる。

375:デフォルトの名無しさん
05/05/27 14:17:35
>>366
ディレクトリを再帰的に巡って消費ファイルサイズを多い順にソートするクラス名(というかツール名


class dsmsfsojs


376:デフォルトの名無しさん
05/05/27 14:50:47
見るだけならls -RS か ls -lRS

ListFilesRecursiveOrderedBySizeDescending

こっから先は命名でなく設計の話になっちゃうけど、順序を
決める部分は比較関数として別に引数として渡すようにする
と後ろの長ったらしい部分はその引数の方に吸収できるね。


377:デフォルトの名無しさん
05/05/27 20:50:57
>>362
変数名を無駄に短く略して暗号化するのは脳内だけにしてほしいよね・・・

378:デフォルトの名無しさん
05/05/29 18:44:28
>>366
>ディレクトリを『再帰的に巡って』『消費ファイルサイズを』『多い順にソート』する
……ってだけで俺は少なくとも3つのクラスが必要だと思った

379:デフォルトの名無しさん
05/05/29 21:48:29
>>366
それは機能の説明でクラスの説明じゃないな。
その機能を使って何をするのか、を考えればそれがクラス名。

380:デフォルトの名無しさん
05/05/30 10:52:18
STLの<functional>にあるlessの大文字小文字を区別しないバージョンを作ろうと思うのですが
どういう名前にしたらよいでしょうか?

381:デフォルトの名無しさん
05/05/30 11:25:10
>>380
caselessでいいじゃん

382:デフォルトの名無しさん
05/05/30 11:29:10
あぁcaseですか。なんで思いつかなかったかな>自分
ありがとうございました。

383:デフォルトの名無しさん
05/05/30 11:57:36
普通はilessにすると思うが…

384:デフォルトの名無しさん
05/05/30 12:00:48
_stricmpやlstrcmpiのiって何の略なんでしょうね?

385:デフォルトの名無しさん
05/05/30 12:02:06
ignorecase

386:デフォルトの名無しさん
05/05/30 12:09:08
あ、な〜る

387:デフォルトの名無しさん
05/05/30 17:55:19
配列の名前に、適当な名前が見つからないときは要素の型の複数
を使うという俺ルールを採用していて、

Data

の配列を作ろうとして手が止まったことがある。

ほんとはたぶんDataっていう要素型名自体がよくないんだけど。

388:デフォルトの名無しさん
05/05/30 17:56:54
Datumでいいやん

389:デフォルトの名無しさん
05/05/30 17:58:52
>>387
C/C++なら型名と変数名は同じでも平気だよ。良いスタイルとは言えないだろうけど。
もちろんintとかの組み込み型は予約語だから駄目だけど。

390:デフォルトの名無しさん
05/05/30 18:21:14
>>388
要素の方を datum ってことよね。

それ以前に、dataとかinfoとかいう漠然とした名前はよくないわけで。

あり得ない話だけど sheep とか fish とか carp の配列を作ろうとすると
悩みそうだな。

391:デフォルトの名無しさん
05/05/30 18:28:24
俺なら sheeps, fishes, childs って堂々と書くなw

392:デフォルトの名無しさん
05/05/30 21:03:14
DataArrayとか。
配列が名前に表れるのをきらうならDataCollectionとか。

393:デフォルトの名無しさん
05/05/30 22:27:31
英文法的に正しいかどうかより意味がわかるかどうか、簡潔かどうかを
優先した方がいいと思うけどね俺は。英文法なんて全然一貫性がないんだからさ。

別にDatasとかでいいじゃん。
setの過去分詞をsetedって記述するでしょ?(っていうと必ずシネーヨって
奴が出てくるんだが。ググッてみろよNativeだってそうしてる)

394:デフォルトの名無しさん
05/05/30 22:28:38
ボタン描画に関する関数なんですが、
・通常時
・ボタン上にマウスカーソルがある時
・ボタンが押されている時

でなにか良い関数名ありますでしょうか?


395:デフォルトの名無しさん
05/05/30 22:38:39
>393
Googleでsetedを検索しても、Nativeらしき使用例が見あたらないんだが。


396:デフォルトの名無しさん
05/05/30 22:46:04
すまんsettedね

397:デフォルトの名無しさん
05/05/30 22:54:14
>>394
慣例に従えば

OnIdle
OnMouseHover
OnPress

ついでに言うと

OnMouseEnter>OnMouseHover>OnMouseLeave
OnPress>OnRelease

398:デフォルトの名無しさん
05/05/30 23:03:25
>>397
すばらしいです。
ありがとうございました!

399:デフォルトの名無しさん
05/05/30 23:27:22
Onってのはエッジ検出的な語感だと思うんだけど。。変化が起きたその時、って感じ。
だからイベント処理のメソッド名に使われるわけだよねえ。

だとしたら
>・ボタン上にマウスカーソルがある時
この描画処理がOnMouseHoverってのはちょっと違うと思う。

400:デフォルトの名無しさん
05/05/31 08:18:18
「〜のとき」はいつも変化を表すわけじゃなくて

401:デフォルトの名無しさん
05/05/31 09:16:34
>>399
その理論でいくとOnIdleもダメなわけだが

402:デフォルトの名無しさん
05/05/31 09:54:58
つまりOnじゃなくてWhileにしろと?

403:デフォルトの名無しさん
05/05/31 10:49:59
bsNone, bsMouseOver, bsDown

404:デフォルトの名無しさん
05/05/31 12:09:19
bsって何?

405:デフォルトの名無しさん
05/05/31 13:41:09
たぶん、Button State


406:デフォルトの名無しさん
05/05/31 16:40:03
明らかにdata自体がよくない。
だいたいすべての変数はデータじゃんかよ。

407:デフォルトの名無しさん
05/05/31 19:27:48
>>406
個人的には、info, manager あたりも使いたくない。

408:デフォルトの名無しさん
05/06/01 00:42:23
datum

409:デフォルトの名無しさん
05/06/03 11:43:00
Javascrip/DOM

変数名(かプロパティ名)で、「開始時間」と「所要時間」をつけたいんですが、
var startTime, time;
だと、timeが抽象的で分かりにくいかなぁと思いまして、
何かしっくりくる1単語ありませんかね?

使い方は、
obj[i+1].startTime = obj[i].startTime + obj[i].time;
若しくは
var searchingTime = obj[i].startTime + obj[i].time;
とかやって、使うつもりです。

良い名をお願いします。


410:デフォルトの名無しさん
05/06/03 11:52:28
所要時間については、elapsedTime とか。

411:デフォルトの名無しさん
05/06/03 13:40:49
ネットワーク先へのファイル書き込みの際、アプリケーションがネットワーク通信速度の
遅さに影響されないよう、書き込み処理だけバックグラウンドで動作するモジュール
(関数名も含む)の名前はどんなのが最適でしょうか?

モジュール名は FsDelay か、FsBackground。
関数名なら WriteDelayData か、WriteBackgroundData という感じのが思い付きました。
(用語の使い方以前に命名規則(文法)も変な気もしますが)

なにか良い案がありましたらご意見下さい。

412:デフォルトの名無しさん
05/06/03 13:46:45
出会い系サイト 一覧ホームページ作りました

全部無料でしかもフリーメールでも登録できるサイトばかりです

URLリンク(www.geocities.jp)

413:デフォルトの名無しさん
05/06/03 13:49:01
AsynchronousTransmitter
AsynchronousWriter

AsynchronousWrite
WriteAsynchronously


414:413
05/06/03 14:04:47
>>413
Async…なるほど、ずばりですね。
ありがとうございました!

415:411
05/06/03 14:05:19
スマソ。名前間違いorz

416:デフォルトの名無しさん
05/06/03 17:26:36
Registerの反対語はなんでしょうかね?
ちなみに、Register==登録の解釈です。

417:デフォルトの名無しさん
05/06/03 17:39:12
unregister の検索結果 約 891,000 件中 1 - 10 件目 (0.24 秒)
deregister の検索結果 約 90,400 件中 1 - 10 件目 (0.03 秒)


418:デフォルトの名無しさん
05/06/03 17:40:01
>>416
Register/Unregisterでよく対で使われてる

419:デフォルトの名無しさん
05/06/03 17:42:20
ゴメン。そうだった。
頭にFreeがはこびっていた。unregします。オレモナー

420:デフォルトの名無しさん
05/06/03 17:42:50
unregistered は登録していないのニュアンスもある。
deregister は、明らかな「登録解除」の意味。


421:デフォルトの名無しさん
05/06/03 17:51:12
unregisterとunregisteredではニュアンスが違う気が

422:デフォルトの名無しさん
05/06/03 18:05:02
unregister 登録抹消する
unregistered 登録抹消されている状態
not registered 登録 ( し | され ) ていない

423:デフォルトの名無しさん
05/06/03 18:32:26
unregistered 登録抹消されている状態または未登録の状態


424:デフォルトの名無しさん
05/06/03 18:36:06
intialize の反対で一番しっくりくるのはどれだろうか。

uninitialize
deinitialize
finalize
terminate
exit

これ以外にも何かある?

425:デフォルトの名無しさん
05/06/03 18:56:29
>424
たまに cleanup を使うことがある。


426:デフォルトの名無しさん
05/06/03 18:58:47
finzlize
次点がexit

427:デフォルトの名無しさん
05/06/03 19:03:09
>>424
initializeにはfinalizeしかないだろう
uninitializeとは初期化に失敗した場合呼び出すメソッドに思える
「初期化されてない」という意味でuninitializedとは言う
ただライブラリなどでuninitialize、deinitialize、cleanup、release
といった命名がされているのを見たことはある
しかしdeというprefixは「逆」を意味するから、方向性のないinitializeには
いまいちピンと来ない
「登録 register」や「接続 attach」は主従関係という方向性があるので
deregister、dettachと言える

ちなみに提示された案の反対語

uninitialize < initialize
deinitialize < ???
finalize < initialize
terminate < execute
exit < enter

428:デフォルトの名無しさん
05/06/03 19:06:37
enterならleaveだな

429:デフォルトの名無しさん
05/06/03 19:15:58
un-
形容詞・副詞・名詞につけて「反対」の意を表す.
・unhappy
=不幸な.
・unemployment
=失業.
動詞につけて,もとの意味とは反対の動作を表す動詞を作る.
・untie
=ほどく.
名詞につけて,その性質・状態を「除去」「離脱」する意味の動詞を作る.
・uncage
=解放する.
・un-Japanese
=非日本人的.

de-
「分離」「低下」「反対」の意を表す.
・defrost
=…の霜を取る.
・descend
=降下する.
・demerit
=短所.

430:デフォルトの名無しさん
05/06/03 19:23:51
dehappy
deemployment
detie
decage
de-Japanese

unfrost
unscend
unmerit

431:デフォルトの名無しさん
05/06/03 21:12:54
ホモを入れる方と入れられる方で明示的に区別したい場合、それぞれなんと呼べばいいですか?

432:デフォルトの名無しさん
05/06/03 21:25:26
class CTachi : public CHomo
class CNeko : public CHomo

433:デフォルトの名無しさん
05/06/03 21:28:48
inserter タチ
receiver ネコ


434:デフォルトの名無しさん
05/06/03 23:47:58
移動先の座標を表す変数名は何にしたら良いでしょうか?

435:デフォルトの名無しさん
05/06/03 23:52:51
DestinationXY

436:デフォルトの名無しさん
05/06/03 23:54:11
X,Y

437:デフォルトの名無しさん
05/06/04 00:04:30
>>435
そうします。どうも。

>>436
それは元の座標に使っているので無理です。すみません。

438:デフォルトの名無しさん
05/06/04 18:41:34
頻繁に読み出すファイルをあらかじめメモリに読み出しておく関数、e
既にメモリに読み出されているか調べる関数、f
ロード済みのメモリを取得する関数、g
ロード済みのメモリを解放する関数、h
で、いいのがあったら教えてください。

下のようなことをしたいのです。

void init()
{
 e(0); //ファイル0をよく使うのでメモリに読み出しておく
}

byte[] load(int index)
{
if(f(index))return g(0);
else return load_imp(index); //load_impは実際にファイルを読み込む関数
}

ソースは Java ですが、命名スタイルは特にこだわりません。


439:デフォルトの名無しさん
05/06/04 18:46:44
FileBuffer.Load/Loaded/Unload

440:デフォルトの名無しさん
05/06/04 19:33:33
Cache

441:デフォルトの名無しさん
05/06/06 00:54:44
cacheで行きます。ありがとうございます。

442:デフォルトの名無しさん
05/06/07 10:14:09
3DでZ軸の「奥」と「手前」のことをそれぞれ英語で普通何と言いますか?

443:デフォルトの名無しさん
05/06/07 10:37:43
16777216 -> "16,777,216"
の変換関数の名前は何がいいですか?

444:デフォルトの名無しさん
05/06/07 10:51:16
under
above

445:デフォルトの名無しさん
05/06/07 12:13:26
>442
far, near


446:デフォルトの名無しさん
05/06/07 15:41:39
>>443
数値に3桁ごとにコンマを入れるという意味か?
commifyというのを見たことがある。


447:デフォルトの名無しさん
05/06/09 01:19:22
OSのアドレス変換で分散した通常のメモリ領域と対比される、
物理メモリ上での連続性を持ったメモリ領域の呼び方。

CPU以外のハードウェア(DMAなど)と共有するために使います。

今は physically contiguous を使ってますが、
もっと短い名前はないものか、と悩んでいます。

448:デフォルトの名無しさん
05/06/09 01:43:39
>>447
そもそも形容詞を二つ繋げて名詞にしてる時点でおかしいだろ
ContiguousMemorySpaceとかにしないとヘン

対比させるならSerialMemorySpace<>PartialMemorySpaceはどうか

449:447
05/06/09 02:30:34
>>448
physically coutiguous は memory とか allocator とか、
通常のメモリ管理で使ってた言葉にくっつけて区別するように使ってます。
通常版が memory で、物理連続版が physically_contiguous_memory って感じです。

「メモリ領域の呼び方」と聞いているので、>447でそこを省いたのは間違いでした。
すいません。

450:デフォルトの名無しさん
05/06/09 07:15:34
連続領域を仮想アドレスで返す奇天烈なAPIを作らないなら
ContiguousMemoryで十分じゃないの
URLリンク(msdn.microsoft.com)

451:デフォルトの名無しさん
05/06/11 13:29:57
だーいぶ昔に作ったプログラムというか微妙なもののソースを
久々に発掘したら変数名がアホだった

 int hoge,hogeho,hogehoge,hohoho;

何でもいいとはいえコレは酷い

452:デフォルトの名無しさん
05/06/11 19:31:22
Delphiでリスト内に保持している一意のNoを再割り当てするメソッド名は何がよいのでしょう?
ReUniqueNoが現在候補にあがっています。

453:デフォルトの名無しさん
05/06/11 19:42:41
BASICを思い出した俺

454:デフォルトの名無しさん
05/06/11 19:44:05
renumber?


455:デフォルトの名無しさん
05/06/11 19:57:21
愚直に ReassignUniqueNumber

456:デフォルトの名無しさん
05/06/12 12:44:42
"一意のNo"を表すメンバなりプロパティなりをなんと命名してるかにも依存する、
というかすべきだよよね。「再」を表す接頭語が会ったほうが良いかどうかも
「リスト」の実装しだいの気がする。

普通、番号がリストの中で一意であることがわかるような命名をしていると思うので
(ItemNoとかItemIDとか)一意を表す"Unique"はメソッド名には不要じゃないだろうか。

総合すると(Re)AssignItemNoとか(Re)AssignItemIDみたいな感じか。

457:デフォルトの名無しさん
05/06/12 17:19:49
ReIdentify

458:デフォルトの名無しさん
05/06/12 21:34:29
ブラウザやフォルダの進む・戻る(移動のUndoRedo的なもの)情報の管理クラスの名前は何がいいですか。

459:デフォルトの名無しさん
05/06/12 21:48:53
なんたらHistory


460:デフォルトの名無しさん
05/06/12 21:56:31
HistoryMgr

461:458
05/06/12 22:06:00
Historyは最近使ったファイルで使ってしまってます(RecentFilesとでもすべきですかね)。
もう少し明示的なものはないですか。

462:デフォルトの名無しさん
05/06/12 22:59:47
ForwardBackward

463:デフォルトの名無しさん
05/06/12 23:07:18
NavigationLog

464:デフォルトの名無しさん
05/06/12 23:15:09
PageHistoryManager

465:デフォルトの名無しさん
05/06/15 08:12:43
頁履歴管理者

466:デフォルトの名無しさん
05/06/15 09:20:43
NavigationHistory
でどうよ?

467:デフォルトの名無しさん
05/06/16 10:34:05
ウィンドウを以下の状態にする関数名はどんなのがいいでしょう?
・入力禁止にする
・灰色表示にする
・マウスカーソルを砂時計にする
・再描画など最低限の処理は許可する

要は、EnableWindowという名前がガイシュツなので、代わりに良いのが無いかなと。

468:デフォルトの名無しさん
05/06/16 12:38:30
「ウィンドウ」のメソッドじゃなくて
その「ウィンドウ」を持ってるオブジェクトが「ウィンドウ」を操作するメソッドなわけ?

特別な理由がなければ、「ウィンドウ」をステートマシンにした方がいいんじゃないの?

「ウィンドウ」のステートを現す列挙型を作って、それを引数に取る
メソッドなりプロパティなりでステートを変更するようにする。

まあ、こういうUIの問題は前後の細かい文脈がわからないと
適切なアドバイスは誰もできない気がする。命名に関してすらもね。

469:デフォルトの名無しさん
05/06/16 13:38:39


470:467
05/06/16 13:44:57
>>468
単にWindowsAPIのEnableWindowに機能を追加したようなものを作りたいのです。
なのでクラス云々は考慮無しでおながいします。

471:467
05/06/16 13:48:10
で、連カキで申し訳ないですが、これにちょっと関連する以下の別関数もおながいします。

・WM_PAINTのみを処理(メッセージループ)する関数名

先の質問と併せて、WinSDKのマーの方ならよく作られる機能じゃないかなと思ったり。

472:デフォルトの名無しさん
05/06/16 14:08:11
変数名じゃなくマクロ名なんだけど

#ifdef __cplusplus
extern "C" {
#endif



#indef __cplusplus
}
#endif

をそれぞれマクロにしたいんだけど
いいのないでつか?半ばスタンダードになってるやつとか。

473:デフォルトの名無しさん
05/06/16 14:22:23
C_COMPATIBLE

474:デフォルトの名無しさん
05/06/16 15:16:42
#pragma once

つか混乱するからそれくらい毎回書け。
重複でさえあれば何でもかんでもマクロ化していくというのはよくないぞ。

475:デフォルトの名無しさん
05/06/16 17:13:09
#pragma once
は一度しか読まないようにするためのやつじゃ?

476:デフォルトの名無しさん
05/06/16 17:26:50
>>470
じゃあEnableWindowEx

477:デフォルトの名無しさん
05/06/16 17:56:27
>>467
>>468のアドバイスは的確だと思うが無理矢理命名するなら
SuspendWindowOperation()といったところか
戻す時はResumeWindowOperation()

>>471はProcWM_PAINT()かな
ProcはProceedとかProcessとか

478:デフォルトの名無しさん
05/06/16 18:06:45
LockWindow / UnlockWindow
SetWindowWaiting
SuspendWindow

うーん、イマイチ。
てか、関数のする事が多すぎて、役割がはっきりしないからだと思う。

479:478
05/06/16 18:08:57
>>477
あら、被っちゃった… ごめんなさい、更新し忘れてました。 orz

>>471 は単純に PaintLoop でどうだろう。

480:467
05/06/16 19:35:44
>>476
…('A`)
奥の手ですねぃw

>>477
いや、的確でないというか、MFCベースやOOPで作り込んでいるなら
オブジェクト〜メソッドの話で完璧だと思うんですけど、今回は単なる
APIの置き換えを狙ってたので…。

>>478
何をするかって、端的に書きすぎました。スマソ。
どんな時にこれを使うかと言うと「長い処理をしている間」です。
この時にウィンドウを入力禁止にしつつ、マウスカーソルを砂時計(ry
てな感じで、ついでに再描画もやらせる必要があったので、WM_PAINTの
質問もさせていただいた訳であります。

そういう訳で、SuspendWindow辺りがいい感じかも。
再描画はとりあえず、RePaintLoopにしてみました。

481:デフォルトの名無しさん
05/06/16 19:47:56
(*゚Д゚)ネタスレかと思ったら違うのか。

482:デフォルトの名無しさん
05/06/16 22:56:52
>>472
#ifdef をマクロの中に書けたっけ?

483:デフォルトの名無しさん
05/06/16 22:59:03
>>480
何か勘違いしている悪寒。

484:デフォルトの名無しさん
05/06/17 03:03:43
>>482
#ifdef __cplusplus
#define HOGE 1
#else
#define HOGE 0
#endif
でいいだろ

485:デフォルトの名無しさん
05/06/17 13:00:39
同一商品のサイズ違いや色違いをまとめたテーブル名なんだけどなんかいいのないかな
Group、ItemGroup以外で頼む

486:デフォルトの名無しさん
05/06/17 13:12:32
>>485
「変種」という意味で variant が使えるかも。
VariantItemGroup

487:デフォルトの名無しさん
05/06/17 13:27:09
>>486
他にはどんなのがよさそう?

488:デフォルトの名無しさん
05/06/17 14:01:28
>>487
サイズ違い、色違いがそれぞれ独立していれば
Sizes, Colors になるのだと思う。
しかしまとめるとなると…。

custom-made オーダーメイド
product 製品
→ CustomProducts

sample 見本
catalog 目録
showcase 陳列棚

これでは抽象的すぎるかな。

489:デフォルトの名無しさん
05/06/17 15:19:32
ばりえーしょん

490:デフォルトの名無しさん
05/06/18 13:30:08
テキストフィールドがあって、エンターキーを押すと action() が呼ばれます。
action() の中でテキストフィールドの値を検査するために verify() が呼ばれます。
verify() はエンターキーが押されたときだけでなく、マウスでフォーカスを
はずしたときにも呼ばれます。

verify() の中で action() から呼ばれているのかどうかを知るために
テキストフィールド field にメソッド(プロパティ) を追加しようとしています。
どのような名前が良いでしょうか?

field.isInAction() ?

491:デフォルトの名無しさん
05/06/18 13:37:58
CallByAction

492:デフォルトの名無しさん
05/06/18 13:53:35
caller

493:デフォルトの名無しさん
05/06/18 13:55:06
field.isInAction()

494:デフォルトの名無しさん
05/06/18 14:37:33
verify_on_action()
verify_on_focus_lost()

495:デフォルトの名無しさん
05/06/18 15:20:31
>>490
なんかプロパティの名前をどうこうすべきっていう以前に糞設計の匂いがする。

読んだ限りでは、actionとかverifyってのはfield自身のメソッドではなく
それを持っているオブジェクトのメソッドに読めるけど、
本当にその設計に必然性はあるのか?

それにactionからverifyを呼び出すってのも、本当にそうである必要があるの?

エンターキーが押されたときに実行されるメソッドから直接verify(どうでもいいけど
validateとかの方が適切じゃないか?)を呼ぶようにすれば、単に引数で
verifyの動作を指示するということで解決しそうに思えるが。

496:デフォルトの名無しさん
05/06/18 16:19:03
>>490
verifyメソッドのプロトタイプ宣言をこんな感じにして
void verify(const Object& sender);
actionメソッドからverify(this);で呼び出せば良いように設計してください
あるプロパティを設定してからあるメソッドを呼ぶなんてのは
間違いなく設計ミスです

497:デフォルトの名無しさん
05/06/18 16:31:25
GUIプログラミングでは内部的に状態を持つなんて普通のことなんだが。
busy = true; try{ ... } finally { busy = false; }
〜別の関数〜
if(busy) return; paint(); // 無駄な再描画をスキップ
とかね。

498:デフォルトの名無しさん
05/06/18 16:52:47
そういうの馬鹿の一つ覚えっていうんじゃないの?
>>490の話のどこにステートマシンの必要性を感じるのか理解不能だね。
入力に対して常に同じ応答をするようなものをステートマシンに仕立てる必然性がない。

499:デフォルトの名無しさん
05/06/18 16:57:39
>>1
>命名規則や設計の善し悪しについて議論するのは基本的に禁止。

500:デフォルトの名無しさん
05/06/18 17:09:17
>>499
こういううっとうしい奴って定期的に湧いてくるよなあ。
いかにも論理的・目的合理的に物事考えるのが苦手な日本人らしいが、
しかしそんな奴がプログラマにもいるってのはどういうことだろう。

いいかい?「命名規則や設計の善し悪しについて議論するのは基本的に禁止」
これは何のため?

話題が拡散することによって、本スレの目的(命名について話し合うこと)が
阻害されることを防ぐため。

逆を言えば、阻害されなければ問題がないわけだ。
で、現実はどうよ?設計法を話題にすることによって命名に関する話題が阻害されてるか?
そんなこたあねえよ。

ていうか、そもそも本スレの目的、それ自体の上位目的は何よ?
ざっくり言ってプログラマとしての能力向上だろ?

設計について話題にすることは、この上位目的にとって有意義じゃないの?
つーか、>>499や俺のようなレスこそまったく意義がないことについてはどう思ってるのだろうか。
馬鹿特有の俺様棚上げ?

501:デフォルトの名無しさん
05/06/18 17:14:29
スレ違いだけど暇だから粘れるだけ粘ってやるぜ
まで読んだ

502:デフォルトの名無しさん
05/06/18 18:03:05
○(バイナリ)ファイルのダウンロード

respnse〜〜〜("appli/〜stream") ←コンテントタイプを『application/octed-stream』に設定。これはバイナリファイルを送受する時に指定。
outputstrean ops〜           ←OutputStreamインスタンスを取得。


sercletcontext con =〜         ←別のページとデータのやり取りをするインスタンス。
fname = con.getRealPath("/WEB-INF/"〜)   ←ServletContextインスタンスのgetRealPathメソッドで、相対パスを絶対パスに変換。


response.setHeader("Context-Disposi〜〜〜");   ←ダウンロードのデフォルトの保存ファイル名を指定している。


fis = new
bis = new
int n =
while(n = {        ←1バイトずつ読み込む。
ops.write(n);      ←OutputStreamインスタンスへ出力。
}




503:デフォルトの名無しさん
05/06/18 18:03:31

○(バイナリ)ファイルのアップロード

ServletInputStream in = request 〜    ←ServletInputStreamインスタンスの取得
int max = 10240;
byte[] buf = new byte[max];
int eof = in.readLine();         ←クライアントから送信されるデータはMIME形式に変換されているので、MIME部分を取り除く必要がある。
 bufにデータを読み込む。最初の4行分のデータを取得。この4行がMIMEの情報を記述してある部分。
                      ファイルが転送されるとき、MIMEではこのような形でデータが送られる。
---------------XXXX(Boundary)
 Content-Disposition form-data: name=XX; filename=XX
Content-Type:XX
  空白行
  〜〜 実際のデータ 〜〜
---------------XXXX(Boundary)


fos = new FileOutputString(fname);     ←
bos = new BufferdOut〜            ←
ByteArrayOut ba〜              ←メモリ上にbyte配列データとして出力するためのストリーム


ba.write(buf,0,eof);             ←


byte[] data = ba.toByteArray();     ←ByteArrayOutputStreamからbyte配列を取り出す。
bos.write(data,0,data.length - 2);    ←改行コード(\r\n)以外の部分をファイルに書き出して保存。





504:デフォルトの名無しさん
05/06/18 18:04:29
○カスタムタグで使う3ファイル
//Javaソースコード(カスタムタグのプログラムを書く)
<ファイル>⇒<新規>⇒<クラス>
ソースフォルダー:パッケージ > WEB-INF > src に作成
スーパークラス:javax.servlet.jsp.tagext.SimpleTagSupport(シンプルタグサポート)


(書式)
class クラス 〜 {
public doTag(){ ←タグが呼び出されたときに処理されるメソッド

}
}
//TLDファイル(XML)の作成  (どのクラスが、どういうタグとして利用されるかを定義したもの)
<ファイル>⇒<新規>⇒<ファイル>
親フォルダー:パッケージ > WEB-INF  に作成


(書式)
<taglib 〜>
〜〜〜
</taglib>

//カスタムタグを利用しているJSP
<%@ taglib prefix="my" uri="/WEB-INF/MyTag.tld" %>      ←my(プレフィクス)はタグの名前として使われるもの。
 ←uriでTLDファイルのパスを指定。


<my:today /> ←todayはカスタムタグの『javaソースコードの名前』
              ここで『my(MyTag.tid)』と『today(javaソース)』を関連付けている。

505:デフォルトの名無しさん
05/06/18 18:04:47


// (予備知識) web.xmlにTLDを記登録する。 (taglibディレクティブでTLDファイルの相対パスを指定しなくて良くなる)

//web.xmlに以下のコードを追加するだけ
<jsp-config>
<taglib>
<taglib-uri> mytag </taglib-uri>
<taglib-location> /WEB-INF/MyTag.tld(TLDファイルのパス) </taglib-location>
</taglib>
</jsp-config>


//これにより、カスタムタグの呼び出しはこれでよくなる。
<%@ taglib prefix="my" uri="mytag" %>      ←my(プレフィクス)はタグの名前として使われるもの。




506:デフォルトの名無しさん
05/06/18 18:05:37

○TagSupportクラス と BodyTagSupportクラス
○TagSupportクラスの作り方
<ファイル>⇒<新規>⇒<クラス>
ソースフォルダー:パッケージ > WEB-INF > src に作成
スーパークラス:javax.servlet.jsp.tagext.TagSupport(タグサポート)

○TagSupportクラスのメソッド
開始タグ(doStartTagメソッド)
(返値がSKIP_BODY ⇒ 終了タグにジャンプ)
(返値がEVAL_BODY_INCLUDE ⇒ ボディの処理にジャンプ)
ボディの処理(doAfterBodyメソッド)
(返値がEVAL_BODY_AGAIN ⇒ 再度ボディの処理にジャンプ)
(返値がSKIP_BODY ⇒ 終了タグにジャンプ)
終了タグ(doEndTagメソッド)
(返値がEVAL_PAGE ⇒ 残りのページ処理に戻る)
(返値がSKIP_PAGE ⇒ 残りのページ処理をスキップ)

(使用例)
//カスタムタグを利用しているJSP
Public class クラス〜{
スタートメソッド{
print <font color = ''>
}
エンドメソッド{
print </font>
}
}


507:デフォルトの名無しさん
05/06/18 18:27:16
↑これは何?

英語で言うなら、"What is this?"

508:デフォルトの名無しさん
05/06/18 18:33:04
インドネシア語で言うなら、"Apa ini?"

509:デフォルトの名無しさん
05/06/18 19:22:51
javaの覚書のようですね。
ってかこんな所に書くな。

510:デフォルトの名無しさん
05/06/18 19:26:45
上のほうでファビョってた奴の嵐だろ

511:デフォルトの名無しさん
05/06/18 19:45:44
ネーミングで困ってます。

節点
要素
節点番号
要素番号
総節点数
総要素数

この六つについて、お願いします。


512:デフォルトの名無しさん
05/06/18 19:48:06
Node
Element
Node number
Element number
Number of total nodes
Number of total elements


513:デフォルトの名無しさん
05/06/18 20:04:16
長すぎだろw

514:デフォルトの名無しさん
05/06/18 20:05:05
節点番号というのが節点を一意に区別するものならnode id
総節点数:node count

515:デフォルトの名無しさん
05/06/18 20:10:07
> 節点番号というのが節点を一意に区別するものならnode id
(゜∀゜)ソレダ!

516:デフォルトの名無しさん
05/06/18 20:11:42
ここは辞書引き代行スレじゃないんだが

517:デフォルトの名無しさん
05/06/18 21:44:44
ここは命名規則や設計の善し悪しについて議論するスレでしょう


518:デフォルトの名無しさん
05/06/18 22:29:28
いやまぁ、確かに。あまりにも淡々と質問に答えるだけなのは淋しいものだよ。
いい命名規則やら設計やらを提示することでも、いい名前が出てくるんじゃないかな。
ええじゃないか、ちょっとくらいなら。なんてね。

519:デフォルトの名無しさん
05/06/18 23:40:56
〜番号は xxxId
総〜数は numXxx とか xxxCount とかかな。

520:デフォルトの名無しさん
05/06/18 23:46:12
>>519
ID は識別子だろう。
〜番号なら、

  〜No or 〜Number

の方がいいかと。


521:デフォルトの名無しさん
05/06/18 23:59:21
文脈によってはIDも大いにありでしょ。というより実際使われてるし俺も使ってる。
デバドラ書く人ならVendorIDみたいなのはお馴染みだね。


522:デフォルトの名無しさん
05/06/19 00:14:17
>>521
> VendorID

それは業者毎に固有に割り当てる識別子の事だろ?

523:デフォルトの名無しさん
05/06/19 00:32:43
だから「文脈によっては」。
学籍「番号」、社員「番号」― こういうのを君の世界ではIDと呼ばないのかえ?

524:デフォルトの名無しさん
05/06/19 00:35:12
>>523
それを総じて識別子と呼ぶんじゃないか。

525:デフォルトの名無しさん
05/06/19 00:37:39
頭悪いなあ。。。
だから識別子と呼んだらなんなの?

識別子≒番号、しかし、識別子∩番号≒Φだよ


526:デフォルトの名無しさん
05/06/19 00:39:15
もうお前このスレにいなくていいよ邪魔だから

527:デフォルトの名無しさん
05/06/19 00:39:22
> 〜番号は xxxId

これで「文脈によっては」とは読めないしな。
この書き方だと、全ての番号は「ID」とする様に読める。

528:デフォルトの名無しさん
05/06/19 00:47:35
>>523
それのどこが文脈なのか?
と問いたい。

その「番号が持つ意味」として、

 「識別するための番号」

と言う意味合いが与えられているから「識別子」と言われるのであって、
決して文脈で変わるものではない。

文脈で変わるなら、同じ番号を表すのに、

 xxxNumber
 xxxId

が同一プログラムで混在して出てくる事になる。

529:デフォルトの名無しさん
05/06/19 00:49:30
>>527
そりゃ、言葉としては No ≠ ID だけどさ。
直訳すればいいってもんでもないでしょ。

プログラミングで「〜番号」って言葉を使うときって往々にして
識別子として番号を振りたいって状況だし。

あるいは、ほんとに作った順に1番、2番、・・・と番号を振って行きたいって
場面だと思うけど、この場合自然と Unique な数値を振ることになって、
結果的に識別子=IDだと考えても差し支えないはず。

問題は no は number の略、num だと個数と取られかねない、
だから個数と総数を混在させたい場合には no, num は避けたいと言う所。
番号だから直訳で no, num にすると言うのができない状況下で、
言葉をどう置き換えるかといわれると ID でいいことが多い。

530:デフォルトの名無しさん
05/06/19 00:50:20
あっ、なんか一部分日本語変。

×個数と総数を混在させたい場合
○識別番号と総数を

531:デフォルトの名無しさん
05/06/19 00:58:35
>>528
なんか頭悪い人が多いなあ。。
例えば日本語で同じ「番号」といっても「社員番号」の番号と
キャッシュカードなどの「暗証番号」の番号では意味あいが違う。

文脈によっては、とは、別の表現を使うなら
「その」番号のニュアンスによっては、ということだよ。

532:デフォルトの名無しさん
05/06/19 00:59:39
>>529
オレは全ての番号を「xxxNo」にしろ等とは言っていない。

>>519
> 〜番号は xxxId

で「全ての番号はID」とする、
と読めたので「それはどうか?」と言っているだけだ。

この書き方をされると、行番号やログ番号なども

 LineID
 LogID

とする様に聞こえる。
さすがにこれはどうか?と思っただけだ。


「社員番号」や「学籍番号」などは、

 社員や学生を識別するための番号

と言う意味合いを番号なのでIDで良いだろう。


行番号やログ番号は、シーケンシャルな番号であって識別子ではない。
同じ番号でも、「番号の持つ意味」で区別するべきじゃないのか?
と言う話だ。


533:デフォルトの名無しさん
05/06/19 01:04:15
>>532
今さ、>>511 からの流れで話進んでるよね?
文脈的に、「〜番号」と「総〜数」の混在下における話よね?

534:デフォルトの名無しさん
05/06/19 01:07:32
>>531
> なんか頭悪い人が多いなあ

その言葉、そっくりそのままお返ししよう。
藻前は「文脈」の意味をはき違えてないか?


> 例えば日本語で同じ「番号」といっても「社員番号」の番号と
> キャッシュカードなどの「暗証番号」の番号では意味あいが違う。

「社員番号」、「暗証番号」で一つの語だろう。
これらの意味合いが、
文脈 - つまりは前後の文との関係 - で意味がどう変わるのか?

どんな文脈で現れようと、
「社員番号」は「社員を識別する番号」であって、
文脈では変わらないだろう?

535:デフォルトの名無しさん
05/06/19 01:18:00
>>529
文脈、文脈と言うなら、
総数は「Total〜」にすべきジャマイカ?

536:デフォルトの名無しさん
05/06/19 01:24:37
>>534
もういっぺん中学生あたりから勉強やり直した方が。。。
「社員番号」、「暗証番号」で一つの語ってそういう問題だろうか(笑)

もともと、話はXX番号を表現する変数をどう命名するか、というところから
始まっているのだが。

だからこそ、「同じXX番号といっても文脈によって様々なニュアンスがありうる」
という話になるわけでして。

本当、最近こういう話の「文脈」に鈍感な御仁が多くて困るんだよねえ。
鶏のように三歩あるくと前のこと忘れてる、みたいな。。。

537:デフォルトの名無しさん
05/06/19 01:32:28
盛り上がってまいりました

538:デフォルトの名無しさん
05/06/19 01:40:02
>>536
そんなに文脈を大事にしたいになら、
>>514の様に書けばすむ話だろう。

何の脈絡もなく

> 〜番号は xxxId

と書かれれば、

> ID は識別子だろう

と言いたくもなる。

539:デフォルトの名無しさん
05/06/19 01:42:53
>>535
実際、どうしてる人が多いかということで言うと、
num, totalNum よりも id, count にしてる人の方が多いよ。
total number だと長ったらしくて嫌。
まあ、amout とかでもいい気はするけどさ。

あと、number は、個数、順番、数値、識別番号と
多義的な言葉だから、極力避けたい。

540:デフォルトの名無しさん
05/06/19 01:47:34
>>533
>>519の書込では、

> 「〜番号」と「総〜数」の混在下における話

とは受け取れない。

541:デフォルトの名無しさん
05/06/19 01:51:21
>>539
漏れ的には、

 番号 → 〜No、〜Number
 識別子・識別番号 → 〜ID
 総数 → 〜Total、Total〜
 個数 → 〜Count

辺りかな。

542:デフォルトの名無しさん
05/06/19 01:59:41
>>536
> 話はXX番号を表現する変数をどう命名するか、というところから始まっているのだが。
> だからこそ、「同じXX番号といっても文脈によって様々なニュアンスがありうる」
> という話になるわけでして。

> 〜番号は xxxId

この書込のどこに

> 同じXX番号といっても文脈によって様々なニュアンスがありうる

ととれる要素があるのか?


> 話はXX番号を表現する変数をどう命名するか、というところから始まっている

時に、

> 〜番号は xxxId

と書かれれば、

 「番号であればどれでも一律で'xxxId'とする」

としか読めないだろう。
藻前こそ、文脈を読めよ。

543:デフォルトの名無しさん
05/06/19 02:40:14
>>540
空気嫁よ。

544:デフォルトの名無しさん
05/06/19 03:02:34
そろそろ飽きてきた漏れがいますよ

545:デフォルトの名無しさん
05/06/19 09:07:58
こいつら口論できるならmalloc/free, gotoでも何でもいいんだろうな・・・
くだらね

546:デフォルトの名無しさん
05/06/19 12:45:41
>〜番号は xxxId

>ID は識別子だろう。〜番号なら、〜No or 〜Numberの方がいいかと。

>文脈によってはIDも大いにありでしょ。

>その「番号が持つ意味」として、「識別するための番号」と言う意味合いが与えられているから「識別子」と言われるのであって、 決して文脈で変わるものではない。

>文脈によっては、とは、別の表現を使うなら「その」番号のニュアンスによっては、ということだよ。
>「その」番号のニュアンスによってはIDも大いにありでしょ。

>同じ番号でも、「番号の持つ意味」で区別するべきじゃないのか? と言う話だ。
>どんな文脈で現れようと、「社員番号」は「社員を識別する番号」であって、文脈では変わらないだろう?

>同じXX番号といっても文脈によって様々なニュアンスがありうる
>同じXX番号といっても「その」番号のニュアンスによって様々なニュアンスがありうる

547:デフォルトの名無しさん
05/06/19 12:57:58
・社員番号
・社員ID
・総社員数

とあったら、>>519氏はどうするのだろう?


> 〜番号は xxxId
> 総〜数は numXxx とか xxxCount とかかな。

この理論で行くと、

・社員番号 → EmployeeId
・総社員数 → numEmployee、EmployeeCount
・社員ID  → …?

よけい混乱しそうだ。

548:デフォルトの名無しさん
05/06/19 12:58:44
社員番号と社員IDはどう違うのかね

549:デフォルトの名無しさん
05/06/19 13:01:16
IDは番号とは限らない。

550:デフォルトの名無しさん
05/06/19 13:05:26
>>547
ありえない仮定をする。は詭弁IDいくつだったっけ?

551:547
05/06/19 13:05:51
例えば、以下のような感じでどうよ?

社員番号 … 部署毎などに付けられた社員の番号
社員ID  … 社内で重複しないように割り振られた社員を識別する識別子 (英数字表現)

552:デフォルトの名無しさん
05/06/19 13:08:55
そういう(あるかどうかもわからない)特殊例を持ち出して何を言いたいんだ?

553:デフォルトの名無しさん
05/06/19 13:28:58
幼女を管理するクラスを作っていたら、
熟女(ママ)まで扱うことになってしまいました。
名前はどうしたら良いでしょうか?

554:デフォルトの名無しさん
05/06/19 13:42:40
っつーか、まだID論争やってたのかよ。
空気嫁って。

555:デフォルトの名無しさん
05/06/19 13:57:57
自分が適当に考えてつけてる変数名やクラス名。
別の会社のソースを見ると、まったく同じ発想で命名してる
のを良く見かける。そのたびに、
「バカはみんな発想の仕方が同じなのだな・・・」
と、つくづく思う。

556:デフォルトの名無しさん
05/06/19 14:44:36
二つの文字列を比較して同じか違うかを返す関数の名前ってどうしたらいいですか?

557:デフォルトの名無しさん
05/06/19 14:45:22
strcmp

558:デフォルトの名無しさん
05/06/19 14:50:27
ありがとうござました

559:デフォルトの名無しさん
05/06/19 15:33:40
CompareStrings

560:デフォルトの名無しさん
05/06/19 16:00:17
558のコード
if(strcmp(a,b)) ; /* 同じだ */ else ; /* 違うぞ */

561:デフォルトの名無しさん
05/06/19 17:05:46
>>559
こっちにしました

562:デフォルトの名無しさん
05/06/19 20:26:10
>>560
言いたいことは分かるが、別にそういう仕様の関数にしたっていいと思う。
ANSI C の文化圏外なら。

563:デフォルトの名無しさん
05/06/19 20:28:33
Cのstrcmpを意識しないならcompareなんて論外だな。最悪のネーミング。
equalsのように明示すべきだ。

564:デフォルトの名無しさん
05/06/19 21:11:28
なる。たしかにそうだな。

565:デフォルトの名無しさん
05/06/19 23:17:15
なんか頭悪い人が多いなあ。。

566:デフォルトの名無しさん
05/06/21 01:00:12
>>565
中学生?

567:デフォルトの名無しさん
05/06/21 15:28:39
>>566
いや,年少組さん

568:デフォルトの名無しさん
05/06/22 16:55:38
ネットゲームでプレーヤーのデータを追加したり呼び出したりみたいなことをするクラスは
どんな名前がいいですか?

569:デフォルトの名無しさん
05/06/22 17:05:01
player

570:デフォルトの名無しさん
05/06/22 17:07:07
やっぱりそれでいいんですか

571:デフォルトの名無しさん
05/06/22 18:30:24
human

572:デフォルトの名無しさん
05/06/22 18:41:57
PlayerDataManager

573:デフォルトの名無しさん
05/06/25 16:39:46
DBにキー値でアクセスして、それが存在するならtrueを返すメソッド名を考えてくれ

574:デフォルトの名無しさん
05/06/25 16:46:45
bool ExistKeyInDataBase(String KeyName);

575:デフォルトの名無しさん
05/06/25 17:10:48
DBオブジェクトがあってそいつのメソッドに出来るなら
db.hasKey(key) がいいかもね。


576:デフォルトの名無しさん
05/06/25 19:24:44
なんか変だな。キーってのはデータを集約するDBのなかでデータを
特定するための値ってことだろ?だからDBにキーがあるか?ってこ
とじゃなくて、そのキーに対応するデータがあるか?ってことじゃないの?

>>573
>DBにキー値でアクセスして、それが存在するならtrueを返すメソッド名を考えてくれ
「それ」って何かがはっきりしてんなら
bool db.Hasそれ(keyType key)
じゃないの?

577:デフォルトの名無しさん
05/06/25 20:18:16 BE:379290896-
Database.hasKey(String)に一票。

>>576
「それ」ってフィールド以外の何物でもないと思う。

578:デフォルトの名無しさん
05/06/25 20:35:22
ContainsKey

579:デフォルトの名無しさん
05/06/26 00:57:31
ちょっと前の議論を蒸し返させてもらうけど、
「xxの数」という意味の変数を命名するときにはxxCountにする、って意見は
このスレ以外でもよく目にするんだけど、こういう人は正直言葉のセンスに問題があると思うな。

どう考えてもCountという言葉には「〜の数」なんてニュアンスはない。
Countの語意はそのように静的に何かの数を指すものではなく、むしろ動的に
何かを数えた結果、というような感じだろう。
あまり使わない日本語だが、「計数」という言葉の意味に近い。

だから例えば受信したパケットの数やボタンがクリックされた回数を表すのは
PacketCount,ClickCountでいいが、ユーザーが入力した発注数量や行の最大数をあらわす定数を
OrderCountとかMAX_ROW_COUNTとするのはやや語感的におかしいと思う。

単純に「〜の数」ならNumber、「注文番号」と「注文数量」のような区別をする必要がある場合は
前者はID,Idx、後者はAmountのようにするのが自然だろう。

Numberが多義的だから使うなって意見もよく見るが、正直意味不明な戯言にしか思えない。
Numberという語が多義的な程度には、英語の単語はどれも多義的だろう。
英語はそういう風に単語の意味が文脈に依存する言葉なんだから。

580:デフォルトの名無しさん
05/06/26 02:12:01
>>579
> どう考えてもCountという言葉には「〜の数」なんてニュアンスはない。

body count: 戦死者数
blood count: 血球数
head count: 人数
pollen count: 大気中の花粉数(値)

『Countという言葉には「〜の数」なんてニュアンスはない』なんて言う奴は
正直言葉のセンスに問題があると思うな。

581:デフォルトの名無しさん
05/06/26 02:20:18
ヒツケー

582:デフォルトの名無しさん
05/06/26 02:23:49
>>579
> だから例えば受信したパケットの数やボタンがクリックされた回数を表すのは
> PacketCount,ClickCountでいいが、ユーザーが入力した発注数量や行の最大数をあらわす定数を
> OrderCountとかMAX_ROW_COUNTとするのはやや語感的におかしいと思う。
MAX_ROW_COUNTのほうは君の主張とずれてはいないんじゃないか?
受信したパケット数はPacketCountでいいんだろ?
入力した行数はRowCountでいいんだろ?
入力した行数のとりうる最大値がMAX_ROW_COUNT。(またはROW_COUNT_MAXかな。)
こういうとき君はどうすんの?ROW_NUMBERまたはNUMBER_OF_ROW?
それが分かりやすいの?


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5364日前に更新/204 KB
担当:undef