クラス名・変数名に迷ったら書き込むスレ。Part6
いじょ
スペースALC(アルク) ってどうよ?
9 :
デフォルトの名無しさん :2005/10/06(木) 14:25:40
C言語で、以下のような内容の関数があるとします。 void Func ( void ) { //初期化 //Funcの中心となる処理 //終了 } 「Funcの中心となる処理」のみを別の関数にしたいとき、 その関数名は何が適切でしょうか。 FuncMain FuncMainLoop FuncBody FuncAction FuncRun いろいろ考えたのですが…何かあればお願いします。 出来れば汎用性のある語句にしたいです。
FuncCore
>>9 普通は逆じゃない?
FuncInit と FuncDispose なり Finalize なり Erase なり Destroy なりの方が別関数。
12 :
デフォルトの名無しさん :2005/10/06(木) 16:49:41
>>9 ループがあるとは限らないので、FuncMainLoopは避けた方がいいと思います。
>>10 さんのFuncCoreかFuncMain辺りで良いんじゃないでしょうか。
>>11 >1
>命名規則や設計の善し悪しについて議論するのは基本的に禁止。
>>9 そういう命名方法に汎用性を求めるのは基本的に間違っている気がする。
ケースバイケースで適切に命名すべきでしょ。
馬鹿の一つ覚えだよ。あるいかそもそも関数の切り分けが不適切。
>>13 君みたいな馬鹿こそ基本的に禁止したいもんだな。
15 :
9 :2005/10/06(木) 19:29:09
アドヴァイスどうもです。
FuncMainだと、初期化〜終了処理までをまとめた外側なのか、
それとも処理の中心となる内側なのか、イマイチ把握し辛いかなあと感じていました。
自分だけか。
>>11 最終的には初期化と解放も別の関数にするつもりでした。
そっちはどういう名前にすれば良いか悩まずに済みそうなので。
>>13 スレの主旨から言えばそうかもしれません。
この場合、命名方法にもちょこっと関わってくると思うので、それくらいは。
>>14 汎用性を求めてMainやらCoreやらをつけまくるより、
その関数に応じた適切な名前をつけるべきと。
なるほど。
>>9 てか君が作ってるのはゲームかね?MainLoopなんて名前を考えるあたりゲームっぽいと思ったんだが。
多くの場合
>>14 の言うみたいに関数名に汎用性を求めるのは良くないと思うが、
あえて「同じ意味の関数だよ」と明示する為に汎用の名前を使うことはOKだと思うよ。
俺の場合
Initialize/Process/Terminate
みたいな名前で統一してる。
困るのはProcessが動詞と名詞が同型なことか。
17 :
16 :2005/10/06(木) 21:24:12
>>9 読み直して気がついた。
これってメイン処理の中で抜けた場合の終了処理を一箇所でしっかりやりたいって場合かな?
だとしたら
初期化処理 Ready/StandBy
主処理 DoLogic/DoMain
終了処理 CleanUp
なんてのもいいかも
Initialize に対応するのは、普通は Finalize だと思う。
initialize ⇔ finalize initiate ⇔ terminate かね?
20 :
デフォルトの名無しさん :2005/10/07(金) 17:27:40
initialize か create かでなやんだり
オブジェクトの作成を含まないならInitialize 作成も含むならCreateかのう。
initialize か create かで悩むって本当かよ。 俺はありえん悩みだと思う。 日本語にしたら「初期化(する)」と「生成(する)」だよ。 初期化と生成って意味全然違うだろw
constructor (生成子) のヘルプに "初期化する" と書くことは多い。
25 :
9 :2005/10/07(金) 20:44:53
>>16 ええと、ゲームだったり、
コンソールで計算結果を出力するだけだったり色々と。
prepare do the work tidy up
>>18 テメエの普通を万人に強制するなこのフサフサ野郎!
英語の普通だw
ID_BUTTON_01 BUTTON_01_ID BUTTON_ID_01 マクロなんだが、 この三つならどれ?
ID_BUTTON_01しか認めん。
BUTTON_ID_01以外使ったら殺す
下二つは不自然だなぁ。
どういう用途?
ボタン1のID なら
>>31 ボタンIDの1番 なら
>>32
BUTTON_01_IDで決まりかな
36 :
29 :2005/10/08(土) 11:37:18
みんなありがとん。
ボタンIDの一番です。助言に従って
なぜか殺す勢いの
>>32 タンのにしまっす (`・ω・´)
この方式だと、ダイアログのなら
DIALOG_ID_01 でいいかな・・
button 1 id(entification) id(entification) of button 1
先ず ID であることが重要なんだから、 ID_ で始まらんとおかしいだろう。 BUTTON_ID_01 とか BUTTON_01_ID とか使ったら、破門。
39 :
29 :2005/10/08(土) 14:23:04
>>39 冷静に考えればBUTTON_01_ID以外無いだろ
41 :
29 :2005/10/08(土) 14:29:23
BUT_ID_TON_01だな
ButtonID の 1 => BUTTON_ID_1 Button1 の ID => BUTTON_1_ID or ID_BUTTON_1 とりあえず選べ
01は全否定か!
45 :
43 :2005/10/08(土) 14:36:19
気にするなw 些細な間違えだ。
どれも意味が伝わる度合いにおいて差がないんだから好きにすればいいじゃん。 くだらないことで悩むのは愚の骨頂以外のなにものでもない。 まあそうはいってもID_BUTTON_01が一番一般的なようには思うし、 正直BUTTON_01_IDって命名をするヒトのコードは読みたくないと思うけどね。 「ボタン01‘の'ID」って発想なんだろうけど、そりゃ日本語の語順だろw 俺も日本人だから理解できないことはないけど、正直今日日まともな人が書いた コードなりライブラリなりは英語的な語順になってるわけで、そういう混乱を もたらすようなことは普通は避けると思うな。
つまり、要約すると、日本人としての誇りをもってBUTTON_01_IDを使えってことだな
むしろひまわり
50 :
29 :2005/10/08(土) 15:25:23
長文に弱いので
>>46 タンにすることにしました!
>>42 それはないない、わざとでしょw
>>46 ご丁寧にありがとうございまっす m(__)m
>>47 そんな誇りは持ち合わせておりません
考えてくれた人、みんな、あり ノシ
配列変数で表すとしたらButtonId[1]と書くことになり、 語順が同じになるということで俺もBUTTON_ID_1派。 IDだけじゃなくてほかにも色々あるのなら、Button[1].Idという発想でBUTTON_1_ID。
あのさあ、
>>29 はあくまで例として"BUTTON_01"ってしてるだけで、
ボタンってのは普通BUTTON_OKとかBUTTON_FIREとか、機能に準じた
適切な名前をつけるんじゃない?
配列だって?w
もうアホ(以下略
ID_BUTTON_01 ID_BUTTON_02 ID_EDIT_01 ID_EDIT_02 BUTTON_ID_01 BUTTON_ID_02 EDIT_ID_01 EDIT_ID_02 BUTTON_01_ID BUTTON_02_ID EDIT_01_ID EDIT_02_ID どれがいいか、だな。
54 :
デフォルトの名無しさん :2005/10/08(土) 21:49:45
おまえらいいかげんにしる。
>>1 を読め。
>命名規則や設計の善し悪しについて議論するのは基本的に禁止。
>>28 Initializeはコンピュータ技術用語だゴルァ!
普通の英語でInitializeの反対語がFinalizeだという証拠あんのかゴルァ!
普通は略語でもInit、Termだなぁ。
[1] 処理結果を受け取る postResult(Data result) を備えた interface A の名前 [2] interface A を継承し、result.postMessage(obj) を行う class B の名前 [3] interface A を継承し、obj.postMessage(result) を行う class C の名前 作ってるのが俺言語だから、これ以上名前に使えそうな情報が出てこない とりあえず、interface A は ResultHandler にしようかとか考えてるんだけど、良案求む
よー分からんのぅ・・・。
抽象的(?)過ぎて、良い名前が浮かばない…。
とりあえず、[1] には ResultHandler, ResultListener, ResultObserver なんてどうだろう。
[2] には…[3]には…うーん、思い浮ばない。
>>59 は言語処理系を作ってるみたいだけど、[1, 2, 3] がどんな状況で使用されるのかを、
もう少し具体的に説明してくれませんか。
個人的に特に疑問なのは、
- Result って何?
- どんな状況で返ってきた「結果」なの?
- どうして [2], [3] は対照的な処理を行なってるの?
- obj って何?
- [2], [3] の <one>.postMessage(<another>) は、postResult() の中で実行されるコードだよね?
てところです。
62 :
59 :2005/10/09(日) 22:17:34
>>60-61 色々と申し訳ない……
作っているのはインタプリタです。
例えば……
"1 + 2" を実行すると、結果の "3" が interface A に通知されます。
"(1 + 2) + 4" は、先ず "1 + 2" を実行し、class B によって結果の "3" に "+ 4" が渡されます。
"func (1 + 2)" は、先ず "1 + 2" を実行し、class C によって "func" に結果の "3" が渡されます。
こんな感じ。
obj は上記の例で言うと "+ 4" や "func" です。class B, C によって結果と結合するように指定された値。
ちなみに、postMessage は postResult の中で実行されます。
A は Receiver B, C は今一つはっきりしないが、 Messenger, Applier, Caller あたりから選んだらどうだろう。
interpreter パターンってこんなだっけ?
65 :
646 :2005/10/09(日) 22:55:18
>>63 案ありがとうございます。
でも、Message のレシーバ ("1" や "func" など) と Result のレシーバがあるから…… ResultReceiver が適切なのかな。
あと、B, C は Messemger は違うような気がするし、Caller といっても別に関数起動に限ったことじゃないし……。
構造が特殊すぎるのが問題だ (;_ _)
"結合する" を強調して、class B を MessageBinder、class C を ParamBinder とか今考え付いたけど、
これで平気なのかなぁ……。
>>64 ちなみに interpreter パターンは関係ない。
>>62 なるほど。
- result ( : Data) は、演算の結果生成されたオブジェクト (一時オブジェクトも含まれる)
- [2] は左結合的な演算 (をプログラム中で表現したもの)
- [3] は右結合的な演算 (↑に同じ)
文法を意識した名前になるけど、
[2] LeftAssociativeBinder/Expression
[3] RightAssociativeBinder/Expression
あたりはどうだろう。
ちょっとイケてないかもしれんけど。
67 :
59 :2005/10/10(月) 22:06:50
色々とありがとうございました。
>>66 Left, Right の Binder ってのは、覚えると意外と分かり易く、面白いかもしれませんね。
ありがとうございますです。
68 :
デフォルトの名無しさん :2005/10/12(水) 00:11:36
ダイアログのプロシージャなんですが、ゲームとかのマップの新規作成に使うのは DialogProc_CreateNewMap() でいいでしょか?ちょっと長すぎ??
>>68 CreateMapDlgProc()はどうよ?
>>69 お、サンクスです。
ダイアログはいくつかできそうなので、
DialogProcシリーズということでDialogProcの文字を前にもってきてたのですが、
別にどっちでもいいっすね。
Newはメモリ確保の new を連想させるので消した方がいいかも。。
各種フラグ等の設定を行うダイアログは
DialogProc_Setup()
にしようかと思ってたのですが、これも変えよかな・・
ちなみにゲームのマップエディタ用ですじゃ。
俺は
>>68 の命名好きだけどなあ
ぱっと見一瞬で役割のみこめるし。
New も new と混同することはほぼない希ガス
>New も new と混同することはほぼない希ガス 激しく同意できるXe 関数名が"New"ならともかく名前の一部だしな。 まぁ個人的には CreateNewMapDlg()かDlgCreateNewMap()にするかもしれんけど。 あるいはCreateの意味はNewにある程度含まれるということで NewMapDlg()かDlgNewMap()にするかも。先頭につけたほうがもしかすると ツール類のアルファベット順表示でダイアログ・プロシジャをまとめられるから見つけやすいかも。
≡ とりあえず、参考情報 ≡ 携帯端末でよく使われてるSymbianOSのコードの命名規則で オブジェクトの生成メソッドは New() (あるいはNewL(),NewLC()) だ。 こんな感じ (インデントの仕方はSymbian標準とは違う) class CMyObject : public CBase { public: static CMyObject* New() { CMyObject* self = new CMyObject; self->Construct(); return self; } private: void Construct() { /* hehehe. . . */ } }; 実際に使う時は void AnyFunc() { CMyObject* obj = CMyObject::New(); } 慣れればあまり混同しないよw 慣れればねw
当方ノーマルC言語で制御系の開発を行っております. 現在数人のグループでプログラムを書いているのですが, Getなんとか, Setなんとかという 関数が多数定義されていて, ごちゃごちゃになってしまっています. 例えば, GetHogeInfo(... , &hogeInfo) と, SetFugaInfo(... , &fugaInfo) という関数なの ですが, どちらも他の引数から渡されたデータをもとに, 構造体に値を代入するものです. それぞれ設計した人間に聞くと, 「hogeInfoのデータを取得するわけだから, Get だろう ?」 という答えと, 「fugaInfo に値を設定するのだから Set だろう ?」いう答えが返ってきて, どちらも譲りません. 関数の命名ルールはかなり甘いのですが, 動詞が先にくるように, ということだけは決められて います. 個人的に, Set, Get のどちらでもない動詞で統一させた方が角が立たない気がしてるのですが, なかなかピンと来るものが思い付きません. なにかいい名称はないでしょうか.
>>74 C++ で言う所の object.GetHogeInfo(&hogeInfo) みたいな感じだと Get なんだけどな。
C 的に書くと、GetHogeInfo(&object, &hogeInfo)
何か object があって、その object から hogeInfo を取り出す。
何かの object から/に get/set するんじゃなければ get も set も不適な気がする。
グループ開発の工法に問題があるような・・・。 トップダウン的な設計だと、親のモジュールを基準として 「取得する」「設定する」という動作を付けられるのに、 相互のモジュールが対等だとどうしようもない。
俺はGetXXXXは絶対にあり得ないと思う。 SetXXXは許せるというか、こういう場合のオーソドックスな命名だと思う。 WinのDDKでよく見かけた記憶がある。 でも俺ならUpdateとかSetupとかそんな感じにするかも。
makeHogeInfo() assignHogeInfo() constructHogeInfo()
ObtainFugaInfo
C++厨の俺が久々にCで書くとしたらこんな感じかも /* 型定義 */ typedef struct TAG_HogeInfo{ } HogeInfo; typedef struct TAG_Hoge{ HogeInfo info; } Hoge; /* <strike>汗臭</strike> ... アクセサ */ void HOGE_GetInfo(const Hoge* pThis, HogeInfo* pInfo){ memcpy(pInfo, &(pThis->info), sizeof(HogeInfo)); } void HOGE_SetInfo(Hoge* pThis, const HogeInfo* pInfo){ memcpy(&(pThis->info), pInfo, sizeof(HogeInfo)); }
81 :
デフォルトの名無しさん :2005/10/19(水) 04:38:47
ある特殊なヒープエリアがあって、そこに配置するオブジェクトは 特定のインターフェイスを実装したオブジェクトでなければいけないのですが、 そのインターフェイス名はどんな名前が良いでしょうか? HeapArrangable とか英語として意味不明な気がしますし HeapAllocatable だとヒープを割り当てることができるようで意味が反対のように見えてしまって困っています。
>>81 その「ある特殊な」というのはどういう特殊性?
>>81 「ヒープに配置できる」ことを示すためのマーカインタフェースなんでしょうか。
例えばある性質・特質をもったクラス群があって、そいつらがそこに配置できるという
観点から見ることができるのであれば、その「性質・特質」で名前付けるとか。
>>81 > ある特殊なヒープエリアがあって
> そのインターフェイス名はどんな名前が良いでしょうか?
その特殊な特徴と、I/Fの内容で名前を付ければいいのでは?
>>81 単純にAllocSpecialObject/FreeSpecialObjectでいいじゃない('A`)
87 :
デフォルトの名無しさん :2005/10/19(水) 18:16:17
クラス名で悩んでます…。
日付と、URLと、そのURLに関連付けられた文字列情報をひとまとまりにしたクラスです。
インスタンスの例を以下に挙げます。
例1: 更新履歴の各項目
- 2005-**-**
-
ttp://***.html - "〜を新規追加しました。"
例2: ニュース記事
- 2005-**-**
-
ttp://***.html - "〜〜で○○祭が発生 : 台湾"
例3: Webブラウザなどで、あるWebページを最後に閲覧した日付を記録する
- 2005-**-**
-
ttp://****.jp/ - "○○のホームページ"
WebPageInfo
お前ら回答の仕方がなっていないな。 生協の白石さんを見習いなさい。
90 :
81 :2005/10/19(水) 22:45:33
「ある特殊なヒープ」ですが、システムによってメモリコンパクションが起こるのです。 メモリ割り当て関数で返されるのはヒープのハンドルで、 使用時には毎回それをデリファレンスして現在の本当のアドレスを得る必要があります。 最初はスマートポインタで簡単に解決できる問題だと思ったのですが、 ヒープ上に割り当てられたオブジェクトのメンバ変数のアドレスさえも、 コンパクションが起こることを想定していない別の関数に引き渡すことができないことに気づき、 そのヒープ上に割り当てるオブジェクトはすべて特殊なクラスとして設計する必要があると判断し、 まずは共通のベースクラス(インターフェイス)を、と思ったのですが 適切な名前が思い浮かびませんでした。 よろしくお願いします。
ある一連の処理に必要なオブジェクトの生成と、特定オブジェクトの保持をまとめて行うクラスの名前は、なんて付けたら良いですか? 生成だけなら 〜Factory とかにすれば良いんですが……。 ObjectSet とか、そんな感じ?
AllocatableOnSpecialHeap
93 :
91 :2005/10/19(水) 23:07:50
ん!? 俺
>>91 の質問を、このスレに3回くらい落としてるような希ガス。先ずは過去ログ漁ってくるわスマソ。
>>91 ObjectStore
XXXToolKit
>>91 今名前を欲っしているクラスが、その「ある一連の処理」を実行するのかな?
もしそうなら、その「処理」から名前が出せそうな気がする。
あえて「生成」と「保持」という裏舞台を見せる必要も無いだろうし。
97 :
91 :2005/10/20(木) 17:55:44
>>94 ObjectStore を頂きます。すいません。
>>96 いえ。「ある一連の処理」 は別の部分で実行されます。
今回のクラスはコレクション的な役割をする部分です。
なのでごめんなさいです。
98 :
81 :2005/10/20(木) 20:42:54
>>92 やはりそういう説明的な名前になってしまいますかね。
何となく名前の途中に前置詞が挟まるとすっきりしないような気がします。
最近の朝のお通じもなんとなく切れが悪いみたいです。
>>95 率直かつ素敵な名前だと思うのですが、「よーしパパ再配置しちゃうぞ〜」のような
積極的なイメージが浮かんでしまいます。
どちらかというと
「システムが再配置するのに対応しなきゃいけないんだってさ。
昔は良かったねぇ、何事もシンプルでさ。」というような気だるい感じを想像する名前を希望します。
>>97 (名前入れ忘れてましたが
>>94 です)
いえいえお互い様です。
末永くObjectStoreをよろしくお願いします。
生協の白石さん風にやってみたつもりですけどどうでしょうか。
ストップウォッチのクラスを作っているのですが、 終了時刻から開始時刻を減算した値を返すメソッド名に、はたと困りました。 「処理に費やした時間」を意味させたいのですが、 getTime とかだといまいちピンと来ない。 getPaidTimeとか?うぅむ。。。
クラス名で役割が明らかならSecondsなんて単位だけで意味も明らか。 .NETだと TimeSpan.Seconds/Hours/TotalSeconds になってる
double Class::doSomething() const { // // 複雑な計算 // return 複雑な計算の結果; } void Class::doSomethingAndUpdate() { // // 複雑な計算(上と同じだからコピペ) // this->hoge = /* 複雑な計算の計算過程の値その1 */; this->fuga = /* 複雑な計算の計算過程の値その2 */; this->piyo = /* 複雑な計算の計算過程の値そのn */; } あるクラスがこのような構造になってまして,コピペでは効率が悪いので,複雑な計算の部分を別ファイルにし, double Class::doSomething() const { #include "別ファイル" return 複雑な計算の結果; } void Class::doSomethingAndUpdate() { #include "別ファイル" this->hoge = /* 複雑な計算の計算過程の値その1 */; // : } のようにしたいと思ったのですが,このファイルにつける”拡張子”に迷ったので書き込ませていただきました。 このようなコード片のファイルにつける拡張子の一般的なものは何でしょうか。 設計がまずいと言う見方もありますが,doSomethingを高速化する必要があるのでこのような形にしてみました。
.tmp
>>104 (´・ω・`)
いらないと思われて削除されちゃいそうですね。。。
.cxx
拡張子を付けないとか
>>106 それはmakefileに*.cxxと書いてあったらincludeされる前にコンパイルに回されてまずいんジャマイカ?
ということで
>>103 .cc
Pascalだと.incだったり
>>103 MSに倣って*.inlとか(あちらはinline関数置き場ですが)
1の禁止事項がなければ、共通の関数などに切り出す方を提案しますが。
111 :
103 :2005/10/21(金) 21:34:54
いろいろなご意見ありがとうございます。
特に決まったものがないようだということが分かってよかったです。
*.cxx, *.ccなど,普通にC++で使われる拡張子は混乱をきたしそうなのでやめておきます。
ASPでも似たような感覚で用いられてるらしい*.incにしておこうと思います。
ttp://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/jpiis/iishelp/iis/htm/core/iisiinc.asp >>110 さん
設計について触れて下さる人のために前提条件を詳しく書こうと思っていたのですが,書き込み行数制限にかかり,止めてしまいました。
double Class::doSomething2(bool bOk /* デフォルトは false */) {
//
// 複雑な計算
//
if(!bOk) {
return 複雑な計算の結果;
} else {
this->hoge = /* 複雑な計算の計算過程の値その1 */;
this->fuga = /* 複雑な計算の計算過程の値その2 */;
this->piyo = /* 複雑な計算の計算過程の値そのn */;
return 0.0; // dummy value
}
}
実は,初めは上のような構造にしていたのですが,何万回ものループ中で doSomething2 を呼ぶ必要があり,const をつけて最適化を促したい,if(bOk) の条件判断をなくしたいとの事から,doSomethingAndUpdate に分離しました。
共通の関数に切り出す場合ですと,計算過程の値を doSomethingAndUpdate が受け取るためのコードによって,doSomething の処理が遅くなると思っています。どうするのが望ましいかは,どこまで最適化しなければならないかのさじ加減にもよると思いますが。
つ inline
>>111 うーん、そのような処置を取ることが本当に効果があるのか見直したほうがいいような。
おそらく、 複雑な計算のコスト >> 関数呼び出しや判定処理のコスト だと予想されるので、
その部分を改良することが大きな改善に繋がるとは考えにくいです。
(ベタに展開した方が関数呼び出しより速度改善されると検証済みならスイマセン)
以上スレ違いでした。
>>112 に加えて
つ【template】
Cなら仕方ないから
つ【プリプロセッサ・マクロ】
で*.hファイルに置いておけばよろしいような。
馬鹿じゃないの。 白石だかなんだか訳のわからんジャーゴンの内輪ネタって。 もう一生80年代してろよw こういう奴がいまだにとんねるず見て喜んでるんだろうな、みたいな(笑)
>>116 今回新聞ねたになり、
農工大とは縁もゆかりもない部外者の私が
以前から時折耳にしたことあるくらいだから割と有名だとは思う。
でも知らなくても別になんら恥ではないからそう突っかかるなよw
ジャーゴンて今世紀に入って初めて耳にしたなw
ハーゴンって滅ぼせたの結局ムーンブルクだけだよなw
『引数を1個受け取り、それを評価し起動するメソッド』 を表すクラスと 『引数をn個受け取り、評価せずに起動するメソッド』 を表すクラスの名前ってどんな感じになりますか?
「メソッドを表すクラスの名前」ってすごくイメージしにくいが、具体的に。
俺言語
Function・・・?
『引数を1個受け取り、それを評価し起動する』 のを Function と定義して、 それ以外の Method と区別しちゃえば良いのか……。 お時間取らせてしまってすいません。ありがとうございました m(_ _)m
あらら、自己解決しちゃったのか…残念。
expr 引数を評価するメソッド fexpr 引数を評価しないメソッド
いえ、123 は僕じゃないです。 (ちなみに、もし良案があれば今後の為に聞いておきたいのですが……)
>>124 VBプログラマっぽいけど、命名以前に基本がわかってないような気が。。
本で抽象的な話ばっかり読んでもわかりにくいしやる気も萎えるってのはまあそうかもしれないけど、
最低限押さえるべき基本ってのもあると思うよ。
生兵法は。。
VB 知らない。使ってるのは java。ちなみに学生。
「評価」とか「起動」とかの意味を理解できてないのでナンだけど。 UnaryEvaluativeMethod NArityNonEvaluativeMethod 「評価せずに」って、いわゆる遅延評価のこと?
>>128 具体的に、ドコが分かっていないのか指摘してあげた方が良いかと。
>>128 >生兵法
確かに。気をつけるように心がけます。
>>130 >いわゆる遅延評価のこと
そうです。
enum タイプ名で、接頭語とか接尾語どんなんつけてる?
ゲーム作ってて、例えばボスの名前をアンダルフと決めたとするじゃん? 名前決めといた方が変数名もつけやすいから。 で、変数名をandalfx,andalfyとかって書いていったとするじゃん? のめりこんでる間はいいけど、ふと冷めた瞬間に、「けっ、何がアンダルフ だ」とか思わね?
ぇ-
>>133 つけない。
>>134 ゲーム作ってて変数名に個体名がついたりすることなんてまずないだろ
>>133 enum HALIGN
{
HALIGN_LEFT,
HALIGN_CENTER,
HALIGN_RIGHT,
HALIGN_MAX
};
*_MAX の後のカンマは無しの方向で(五月蝿いコンパイラがあるので)
>>134 あるあるw
つーかBOSS1とかのほうがいいよ、後で名前変える必要が出てくる場合がある
>>137 俺も変数名は無いけど定数名はよくある。
敵データインデックスとか。
>>138 その最大値じゃない 〜_MAX が嫌い。
俺は NUM にする。
enumにはMAXなどをつけるべきなんですか?
列挙子として余計なものが紛れ込むのを嫌う人はいる。 俺は得られるメリットの方が大きいと思うから気にしないが。
俺だったら… typedef enum tag_NANIKA { nnkA, nnkB, nnkC, NANIKA_FIRST = nnkA, NANIKA_LAST = nnkC } NANIKA;
>>144 お前は何もわかっていない。
for (int i = 0; i < NANIKA_LAST; ++i){ ... }
bool isLoaded[NANIKA_LAST];
こんなのが使い物になると思っているのか?
お前は今日からコテハン 境界バグ太郎 を名乗れ!
>>144 お前は何も分かっていない。
列挙子を色々いじった際に、
_FIRST, _LAST をいじり忘れるとバグになる。
>>146 だって最大値最小値をコンパイラ側で覚えていてくれない言語なんて今時といわず昔からC/C++ぐらいだべ。
他と同じ感覚で使おうと思えばこうなるのよ。
>>147 最小値 = 0
最大値 = _NUM - 1
何か問題でも?
全ての列挙体が連続値をとっていると思うなよ
どうでもいい スレ違い
>>149 なら _FIRST と _LAST 作っても意味ないじゃんw
俺ルール:
enum TEValue
{
VALUE_A,
VALUE_B,
...,
VALUE_ENUM_SIZE
};
ここまでがっちり決めとくと後から迷うことがない。
>>145 そんなに悪く罵るほどじゃないだろ。
つか、おれの感覚としてはけっこうOKだが。
# C++STL使いとしてはそのLASTのかわりにENDだったら許さんよ。
>>152 スレの趣旨から外れてるけど命名が問題なわけではない。
>>144 のコードを良く見ればわかるはず。
エラーメッセージ等の文字列を一括して保持するクラスには、なんて名前付けたら良いですか? Message 以外でお願いします。
MessageMgr
>155
ムリポ orz
>>156 Message 自体が既に使われてるんで、できればそれとは関係無い名前が良いのですが……。
MessageHolder
159 :
158 :2005/11/03(木) 23:34:32
すまん。 StringHolderならどうだ。
>>154 StringPool # おれならこれ。で、インスタンスをstringPool_errorとかに。
DiagnosticMessagePool # 長っMessageを含むのもいカンザキ?
そもそもあんたの言う「保持」の意味は?
既出のほかにも、pool,list,bag,container,handler,owner,...
>>159-160 色々と済みません。
>保持
文字列が各所に分散するのも問題があるので、全文字列を1つにまとめて持っておくクラスを作ろうと考えました。
文字列が欲しいときには stringpool.getFatalErrorString(now_state) とかで、現在の状態を含む文字列を返してきます。
>>154 そんなクラス作っても静的メソッドの寄せ集めになるだけで無意味な気もするけど。。
>>162 それが困ったことに、各オブジェクトのマネージャクラスに置いておけることが分かったんです。
静的メソッド全く無し。
ついでに言うと、同じ文字列を複数クラスで使用していたんで、その共通化も兼ねてるんですね。
なんか設計の話はスレ違いっぽくて申し訳ないんですが。
そうかそういうクラスが欲しい状況っていうのもあり得るのかな。 じゃ、思いつくままに。 GlobalMessageBag StringTable MessageGenerator SentenceMaker SpeechWriter StringStorage AppMessageDictionary
> StringTable 単純ですが思いつきませんでした。これを使わせていただきます。 皆様ありがとうございました m(_ _)m
166 :
デフォルトの名無しさん :2005/11/04(金) 18:30:32
あるインターフェースをラップし、そのインターフェースのメソッドを いろいろ組み合わせて呼んでくれる便利メソッドを持つクラスを作るんですが、 いい名前はないでしょうか?言語はC++です。 class IFoo{ public: virtual void method1() = 0; virtual void method2() = 0; }; class ??? : public IFoo{ public: ???(IFoo *foo) : foo_(foo){} void call_both() {foo_->method1(); foo_->method2();} void method1() {foo_->method1();} void method2() {foo_->mothod2();} private: Foo *foo_; }; みたいな感じです。よろしくお願いします。
>>166 インターフェイスを思いっきり意識してるクラスなら、
インターフェイス名からIとるだけでいい気がする。
nterfaceってことね。
169 :
166 :2005/11/04(金) 18:52:23
便利だよ〜、というところが目立つクラス名がいいかなと思ったのですが、 Iとるだけが単純でわかりやすそうなので、とりあえずこれを使わせていただきます。 ありがとうございました。m(_ _)m
つかクラス名にCとかTとかつけんの? Foo foo = new Foo();なんて微妙すぎね?
付けないのが最近の流れみたいだね。 ドドネトの命名ガイドラインでもそうなってるし。 おれはクラスにCはやっぱり付けた方が明示的でいいと思うけどね
型安全でない言語ではまあ少しは意味あるんじゃない?
DBから取得したデータを格納するオブジェクトと、そのオブジェクトを複数詰めたListについて、 たとえば、DBのテーブル構造をマッピングしたオブジェクトが class Person() { private String name; private String age; public getName(){ return name; } public getAge(){ return age; } } として、このPersonのインスタンスを格納するコレクションがあったとした場合、 いわゆる「データモデル」として呼んでいいのは、コレクションに詰められた個々の Personインスタンスなのか、それとも、コレクションそのものをモデルとして呼んでいいんでしょうか?
>>1 のテンプレの
〜議論するのは基本的に禁止
の部分、
〜議論するのは"基本的に"禁止
にしませんか?
絶対禁止じゃないという雰囲気がいいと思うんですが...
そもそもあの文面は自分と違うスタイルの人を攻撃する目的だと思われるレスが多かったり
宗教戦争がはじまると収集がつかなくなっていたので必要だったものであって、
有益な議論ならばアリかなと思うのですが。
どうでしょう?
どう考えても偏狭にも話題を厳密に命名に限定することによって 得られる利益よりも失われる不利益の方が大きいに決まってるよな。 こういう簡単なことがわからない馬鹿が多いんだよ。 コントロール感に飢えてる奴ね。 PTAなんかではりきっちゃうオバサンいるでしょ?あれそのものだよね。 お前は世の中や子供の利益考えてモノ言ってるわけじゃなく、 単に自分自身の達成感や世の中操縦してるって感覚が欲しいだけだろ、って。
いわゆる常識の範囲内でいいじゃないか。 命名のための見かたと考えかたについての議論はあり、くらいで。
既に「基本的に」と書いてあるんだから、 不毛な宗教戦争にならない限りはいいんじゃね?
ちょっとでも譲歩の可能性をちらつかせると こういうくだらない流れになるので今後は一切設計ネタおよびメタ設計ネタを禁止します。
早く迷え。
182 :
デフォルトの名無しさん :2005/11/06(日) 14:18:23
>>183 book_id, book_title 本テーブル
1, デスノート
2, カイジ
3, 黒沢
author_id, author_name 著者テーブル
1, 大場
2, 小畑
3, 福本
book_id, author_id
1, 1
1, 2
2, 3
3, 3
↑みたいな感じで
それもう使ってるんで別のがいいんです
>>185 author_id, author_name 著者テーブル ←これです
1, 大場
2, 小畑
3, 福本
>>186 わざわざ確認入れてやったんだからよく見ろバカ。
189 :
デフォルトの名無しさん :2005/11/06(日) 15:38:39
935 名前: デフォルトの名無しさん [sage] 投稿日: 2005/11/06(日) 15:25:10 このsageない基地外なんか過去から全部同じ椰子じゃないかとまで思ってしまう。 (ネタがつまらんのが致命的にキモイ)
java にて、ちょうど Lisp の eq と equal みたいな動作をするメソッドの名前を考えているんですが、 前者は java だと equals なんで、後者にどのような名前をつけるのか、ご意見をよろしくお願いします。
Lispワカラン 簡単にでも説明してくれると考えられるんだが…
参照が同一か、って検査のことかなあ。 Identicalなんてどう?
参照の値だけを比べるのが、java の == に Lisp の eq 中身まで確かめるのが、java の equals に Lisp の equal けど、今回は equals はデフォルト実装のまま (== と等しい) でいきたいんで、 equals 以外の 『中身まで確かめる EQUAL』 みたいな名前が欲しいと思ったんです。
>>194 java知らないけど、そういうのってequalsをオーバーライドするべきなんじゃ。。
第一、任意のクラスの値同一性の検査法なんて未定義なんじゃないの?
かぶった。。。orz じゃあ、equals()とequalsValue()くらいでいいんじゃね?
やっぱり equalsValue になるのかなぁ……。 了解です。しばらくはこれで頑張ってみます。
equivalent に1票。
equivalent だと、形容詞だから is 要らない? あと、equivalent って数学では同値って意味で、 見かけ上 equals ではないんだけど、あるルールの下では2者の区別が付かないもののこと。 {0, 1, 2} と {a, b, c} は not equal だけど equivalent って事があったりするから、 中身見て等しいかどうか確かめるものに equivalent は違和感がちょっとある。
あと、equals value だと、a.equalsValue → a は Value と等しいっぽくて嫌。 compare by value とか、by か with いるかも。
本当にそんな糞設計でいいのかな。 equalsValue だかなんだか知らないけど、値の等価性の検査用のメソッドが 余分にもう一個あるクラスのコードを一年後に見て、そういうクラスを作った 一年前の自分を呪わない自信ある? 普通にequalsをオーバーライドすべきでしょ。 本当に二つも値の等価性の検査用のメソッドが必要なら、なぜそれが二つも必要なのか 少なくともその理由をほのめかすような命名がされてないとイライラすると思うけど。 同義の言い回しをメソッド名にするなんて愚の骨頂でしょ。
>>200 参照が等しくなくても、中身が同じなら true ってのがやりたいんだから、
見かけ上等しくないけど、中身が等しいというルールの下では区別が付かないということで、
equivalent で悪くないと思うんだけど。
まあ、Java ではそれを equals としちゃってるから、
似た別の単語を使うのは混乱の元かもね・・・。
>>203 の通り、メンバー1つだけで比較するなら
そのメンバーの名前を使うのが見た目としても、わかりやすいのでは。
size で比較するなら hasSameSizeAs とか。
A.hasSameSizeAs(B) となると、英文法的にはちょっとおかしいけどね。
>>205 いや、うん。逆なんだ。
比較対象になっちゃいけないメンバが1つあって、それ以外の内容を比較するメソッドが欲しかったんよ。
具体的に言うと、プロトタイプベースのスロットテーブルがそれなんだけど。
>>202 設計とかについてあんまりうるさく言わないようにね。すれ違いなので。
>>206 じゃあequalsNearly()とかでどーだ?だいたい同じっつー感じで。w
>>207 だいたい同じかw それなら equalsFuzzy とかw
equalsExcept**** で、除外する性質の名前を *** に入れる。
スロットテーブルってのがよくわかんないからアドバイスできそうもない。 設計の話を強要するのはいかんというのがスレ趣旨だが 質問者から情報を引き出す場合に「こういう設計じゃいかんの?」と聞くのもNGだろか? 共通に判断する部分だけ別クラスにくくり出して、そいつへのgetter作って、 そいつら同士で==するのはどう? hoge.getValue() == hage.getValue() が真のとき、 hoge == hage が真とは限らない。みたいな。これじゃ駄目?
211 :
191 :2005/11/07(月) 23:30:05
こちらの伝え方が不味かったようですんません。アレだけで十分かと思ったんですが……。
いや、同一性検査と同値性検査の話なんだろ?それはわかってる。 Javaでは同一性の検査には==を、 同値性の検査にはequalsを使う約束になってる。 これはC++で同一性の検査はアドレスとってアドレスを比較し、 同値性の検査にはoperator== を使うと決まってるのと一緒。 lispは知らんがeqとequalがそうなんだろ? それ以外のことをしたいなら同一性と同値性の話を持ち出すのは間違いだったはずだ。 結局何がしたいん?
213 :
191 :2005/11/08(火) 00:17:56
書いてたら糞長くなったんで端折ります。長文になると俺自身読む気がしない……。 ・ java 上で動く俺言語つくっている。 ・俺言語上のオブジェクトのインスタンスは、java 上のインスタンスで表現することにした。 ・オブジェクトは、それ自身が別々のメンバ表 (スロットテーブル) を持っている。つまりプロトタイプベース。 ・ちなみにメンバ表自体は自由に書き換え可能。 ・数値オブジェクト "1" のインスタンスが2個あるとする。 ・『片方』 に "hoge" という名前のメンバを追加する。 ・この時点で、java 上の同値性は偽、俺言語上の同値性を真にしたい。 (なぜなら、java から見たら2つは別々のオブジェクト。しかし俺言語から見たら両方とも "1") ・ java 上の同値性を調べるメソッドは equals ・俺言語上の同値性を調べるメソッドが別に欲しかった。んで equalsValue にした。
equalsAs俺言語
equalsIn俺言語 のほうが良いかな?
216 :
191 :2005/11/08(火) 01:23:19
すると equalsInMyLanguage かぁ……。お騒がせして本当に申し訳ないです (;´Д`) うちだけが占有するのもあれなんで、次の質問どうぞ↓
俺言語の開発ネームでも付けといて、 その略称を使った方がすっきりしそう。
どうせだったらJavaのオブジェクトが脳内言語のインスタンスなんてせこいこといわずに byte[]使ってVMonVMすればいいのに。
>>217 では命名しよう。
開発コード:うんにょらはっぽっで
変数を入れるための変数のtemplate型名、なにかないですか? 作りはBoostのvariantとかanyのような感じで、ただし特定の型しか格納できないやつ。 あるいはauto_ptrの外観がポインタっぽくないやつ。
ポインタのラッパーで、ポインタっぽくないというと、reference type とか?
referenceも、やはり他の何かを参照してる気がします。 もっといかにもそれ自体が持ってるようなの希望。 box, holder, nutshellと考えたんですがどうにも。
variable
>>223 …。
何か踏ん切りがつきました。ありがとう。
variableにします。
>>224 そうそう、命名では踏ん切りって大切だよね。
でもふんぎったせいで、あとから落ち着かない気持ちが膨れ上がってくるわけだが。w
227 :
デフォルトの名無しさん :2005/11/10(木) 06:35:27
DirectXのラッパークラスで何かいい名前ないかな? 今のところDG9とかDI8とか味もそっけもない名前なんだけど…。
俺はラップとヒップホップの区別がつきません。 というネタは置いといて。 DX知らないからなんともいえないけど、 そういうのはラップした対象の名前をベタに使えばいいんじゃないの? DirectXとかCDirectXとかMSDXとか。 ラップするっていってもどうせメソッドの引数のハンドルが省けるって程度の もんだろうから、実際にはデバイスの種類なんかごとにクラス作る必要があるんだろうけど。
どういう目的のラッパーなのかによって名前の付け方も違う気がする。 DirectXのバージョン間の差異の吸収ラッパーとか、 OpenGLとか他のAPIとの差異の吸収ラッパーとか、 各種処理の前後にフックするためのラッパーとか、 色々目的が違うと思うんだよね。
230 :
227 :2005/11/10(木) 10:32:59
>>229 いえ、そう言う物ではなくて、
>>228 さんの言っているように
ちょこっとだけ使いやすくしようってだけの代物です。
激しくショボショボです...orz
>>228 言われて見ればそれでいい気がしてきました。
妙にこった名前にして、後で使うとき「コレなんだっけ?」ってなふうになると鬱陶しいですよね。
ありがとうございました。
いっそのことオリジナルの名称にしちゃってもいい気がする。
232 :
219 :2005/11/10(木) 12:23:55
>>231 うむ。
一度スベったくらいではめげずに再び"UnyolaHoppode"を提案する!
無名祭祀書にも述べられている通り
陰陽五行に照らしてもカバラ的にも風水の観点からベスト。
うんにょら の検索結果 3 件中 1 - 3 件目 (0.33 秒)
234 :
231 :2005/11/10(木) 19:35:54
う、うんにょら…… ウニョラー!!!
トッピロキー!
ほんにゃらもげぴー もけもけさー
ひょんひょろ
こういう幼稚なレスって10代・20代の奴が書いてるのを想像しがちだけど 実は案外40ズラ、50ズラ下げたおっさんだったりするんだよな。 なんだよその70年代的なセンスはw 逆に若い奴だったら凄いよマジでw こういうオッサンって自分の子供や親にその幼稚な姿を見せられるのかね。 ていうかそういう自分の自己イメージによく耐えられるよなw
240 :
デフォルトの名無しさん :2005/11/13(日) 12:52:20
>>239 つーか239は、ひょんひょろも知らないらしいぜw
>>235-237 は魔方陣グルグルのネタなわけだが、
ひょんひょろって何のネタ?
グルグルにあったっけ?
誘拐ヲ実行スル!のヒョンヒョロけ? ひらがなのほうのひょんひょろは知らんが
ヒョンヒョロは名作だよ。いかに自分が常識に囚われてるかわかった。
245 :
デフォルトの名無しさん :2005/11/19(土) 15:37:37
漢字一文字で、さわやかで軽快でワクワクするような字は何かありませんか?
246 :
デフォルトの名無しさん :2005/11/19(土) 15:43:18
韓
247 :
デフォルトの名無しさん :2005/11/19(土) 16:06:20
>>245 朝
でもこれだけだと寂しいのでこうするといい
朝日
248 :
デフォルトの名無しさん :2005/11/19(土) 16:16:58
期間を示す「自〜至」なんだけど、 beginning_period end_period というのが直訳なのかな? でもちょっと長いしバランスが悪いので、他の名前をお願いします。 変数です。
Fdate Tdate
startDate endDate dateStart dateEnd
自至という独特な雰囲気な言葉って無いもんだね・・・ スマートにstart,endかfrom,toしかないならそれで行きます。
ふつう start <-> finish begin <-> end じゃね?
begin, end は良いが、start は stop のような気がする。
アホかw startならstopだろww finishてwwww
ああ、でも 『 from start to finish 』 で 『初めから終わりまで』 っていう熟語はあるな。 start <-> finish でもかまわないか。
ぢゃあ、ホモの対義語はなんなんだよ?
ヘテロだべ。
dateFrom dateTo のほうがオサレ。
俺はレズだと思っていた…orz
ネカマの反対は?
マカネだべ。
なるほど、勉強になりますな
1500を"1.46K" 2600000を"2.48M" のように表示用に補助単位を添えて整形する関数名で何かありませんか
>>263 挙げてる例が妙。ネタのつもりかもしれないけどつまんないよそんなの。
キロ、メガ、ギガ、・・・みたいのはSI接頭辞(SI-Prefix)っていうらしいから
SIPrefix
GetSIPrefix
FormatAsSIPrefix
ConvToSIPrefixFormattedString
こんなとこでしょうか。
SIってなんですか?
>>264 format as よりは format with な気が。
>>265 国際単位系(Systeme International d'Unites:SI)。
フランス語か。
英語で言うと International System of Units。
M, G とかは SI 補助単位っていう。
2^10にKを充てるのはSI単位系とは違うんじゃ?
>2^10にKを充てるのはSI単位系とは違うんじゃ? SIだとkibiだな。 10^3 も、Kじゃなくて小文字のkを使う。
10^3がkで、2^{10,20,30}が{K,M,G}なんじゃないの? 読みかたはともかく、大文字は2^10とかだと思ってた。
大昔に読んだ本にそのへんの論争の話があったな。 「kもKも1000に統一するそうだが、それではマは困る」といかどうとか。
271 :
263 :2005/11/20(日) 21:52:02
逸れやすい話題出してスマソ 用途はHDDの容量表記で、単位はbytes、接頭辞の計算はIEC式 あとは有効桁数3くらいでそれ以下丸め、「文字数を減らすことを目的とした整形」という感じです。
ちなみにWinAPIで同様のことをする関数は StrFormatByteSize64/A/W(@SHLWAPI.DLL)という名前になっている。
du だと --human-readable だっけな summarizeDiskSize とかかなぁ。なんかいまいちだな
>>272 に習って StrFormatByteSize でいいんジャマイカ
もし263がWindows上で動くプログラムを作っていたら実装の必要すらない。 IE4 or 5以降が必要という条件を飲むのなら。
276 :
デフォルトの名無しさん :2005/11/22(火) 11:20:11
pimplとNullObjectの併用時のクラス名の命名について、 構造まで含めたご意見を伺いたく。 あるクラスをpimplで実装しようとしてます。 構築時にimplが与えられなければ(ディフォルトコンストラクタが呼ばれたら) NullObjectのimplを自分で取得するようにしようと思っています。 この時、impl側のベースを継承可能なクラスとして作成する必要がありますが、 本当のimplとNullObjectのimplに共通なinterfaceクラスを作成するべきでしょうか? そうであれば、これの名前はどうしたらいいでしょう? そうでなければ、NullImplObjectを継承したImplを作成するべきでしょうか? しかしこうすると、ガワの方に NullImplObject* m_pImpl; のような記述が入ってしまい、 常にNullObject しか代入されないかのような誤読をされそうな気がします。 クラス設計まで含めてご意見を頂きたいです。
>>276 話が見えない。
> あるクラスをpimplで実装しようとしてます。
> 構築時にimplが与えられなければ(ディフォルトコンストラクタが呼ばれたら)
> NullObjectのimplを自分で取得するようにしようと思っています。
ここまでを、擬似でいいから C++ っぽいソースで晒してみるといいと思う。
279 :
276 :2005/11/22(火) 12:20:09
>>278 こんな感じです
class HogeImpl;
class HogeNullImpl inherits HogeImpl;
class Hoge
{
SmartPrt<HogeImpl> m_pImpl;
};
Hoge::Hoge()
: m_pImpl(HogeNullImpl::getInstance())
{
}
宜しくお願いします
>>278 オツム弱いのね。
Kg, MΩ, GHz,...
>>276 ,279
ふつうに Interface を公開して2つの(本物と Null )実装を提供し、
piml なクラスは Interface* を持つクラスとして別に作ればいいんじゃない?
InterfaceHolder とか。
282 :
276 :2005/11/22(火) 13:02:30
>>281 ガワの方の名前は決まってるんです(
>>279 だとHoge)
HogeImplとHogeNullImplに共通のinterfaceをくくりだすとしたら
その名前をどうしたらいいのかが悩んでいる部分です。
くくりださない場合、HogeNullImpl inherits HogeImpl とすると、
HogeImplがもつメンバ変数等が無駄になりますし、
HogeImpl inherits HogeNullImpl とすると、
Hoge内でSmartPrt<HogeNullImpl> m_pImpl; となってしまい、
誤解を招く表現になると思うのです。
>>282 HogeNullImplではなくHogeImplBaseという名前にしたらどうか。
>>282 HogeNullImplではなくHogeDefaultImplという名前にしたらどうか。
>>282 共通のインターフェイスをくくりだしたいのなら名前もそうすれば。
IHoge
HogeInterface
Parser クラスが入力文字列の続きを要求した時に実行するメソッドと、 そのメソッドを含むインタフェイスの名前はどのように名付ければ良いですか? メソッドの方は public String getMoreInput() { } みたいな感じで良いんですが、 インタフェイスのほうは名前が全く思いつかないです。
IParseStringProvider IParseSource
>>286 全体的に言ってることがよくわからんのは俺の理解力が足りないせいじゃないと思う。
〜を要求した時に実行するメソッドってどういうこと?
Parserクラスが「腹減ったよ」と通知するイベントのようにも聞こえるけど。。
それとそれだけの情報でインターフェイスの命名してくれって無理ないか。
誰もエスパーじゃないんだからさあ。
ParseStringProvider はアレなんで CodeProvider に致します。 本当にありがとうございました m(_ _)m
290 :
デフォルトの名無しさん :2005/11/24(木) 00:15:35
おいみんな、まずいぞ。
>>3 の専門語辞書参照サービス
http://wwwd.nova.co.jp/webdic/webdic.html が有料化してしまうぞ。
無償による専門語辞書参照サービスは、2005年12月末日を持ちまして終了とさせていただきます。
また、専門語辞書参照サービスは、有料翻訳サービス「e翻訳ドットネット」のコンテンツ として継続致します。
e翻訳ドットネットは、11月30日まで無償トライアルキャンペーンを実施しております。
詳しく は、e翻訳ドットネット をご参照ください。
これからは、
スペースアルクの英辞郎on the webに頼るぞ。
http://www.alc.co.jp/ こいつも使える、いや専門語辞書参照サービスよりも使えるかもしれない。
各専門分野ごとではないが、かなり使える。
いや、英辞郎しか使ってないし。
テストを書いてみたいと思い立ったのですが、 テストを入れるディレクトリの名前 test と t どっちが良いんでしょう。 そもそも t にテストを入れることにどういう背景があるのか分かる方いませんか。
293 :
デフォルトの名無しさん :2005/11/27(日) 03:45:56
単にtestの頭文字をとってtなんじゃないですか? 私は、省略すると自分の頭がついていけなくなるのでtestにします。
いえ確かにそうだろうなーとは思うのですが、わざわざ省略する理由が思いつかないので 他に何か t にする理由(既存ツールとの相性など)があるんじゃないかと思って悩んでいたのです。 とりあえず私も test にしてみます。レスthxです。
novaのは出力がシンプルだから 自前のコマンドライン版辞書引きツール作ってよく使ってたのにな。
あるクラスHonyaのインスタンスを生成するときに 性能を指定するためにパラメータとして渡す構造体なのですが HonyaDescriptor HonyaDescription どちらが適切ですか?
>>296 理由はうまく書き表せないけど、構造体なら Description のほうがしっくりくる気がする。
Descriptor だと、たとえば仮想関数で各パラメータの問い合わせを用意した
インターフェースクラスなんかが連想される、気がする。
UNIX とか C とかの界隈だと、「ファイルディスクリプタ」なんて言葉があるけど。
とは言え、個人的には
>>296 に同意。
単純にデータの入れ物として位置付けているなら Hoge、
外からのメッセージに応答して内部状態を変えていくなら Hoger
…って感じに名前付けしてるなぁ。
300000
ちょちょちょ、ベクターの中にベクターを入れとるんですが、 その中のベクターの名前ってなんちゅうのにすればうしゃうしゃですら?
>>301 とりあえず、もちつけ。
内側のベクターには何が入ってるの?
すいません。 内側には文字列std::stringが入っております。 構文解析してわけた文字列でござ。
304 :
301 :2005/12/01(木) 04:32:52
結局Row_にしましたぬーん。ども、ありがとやんした。
字句解析して切り出した要素なら token
ゲームのスプライトを表すクラスを shared_ptr で管理してます で、毎回 boost::shared_ptr<SpriteBase> と書くのは面倒なので、 typedef するんだけど、なんて名前が適当かな shared_ptr でくるんだものを typedef するケースは他にもあると思いますが、 適当な命名法ってあります?
_SpriteBaseあるいはSpriteBase_
SpriteBasePtrとか
ポインタがNULLだったら例外投げる関数ってどんなのがいいですかね foo(AssertAssignedPointer(p)); みたいな感じで使えるもの。ただ常に有効なのでAssertはよくないですよね。
VerifyNotNull(Pointer)
>>307 >>308 レスありがとう
>>307 メンバ変数に _ をつけるって記法は見たことありましたが、
そういう使い方もあるんですね
>>308 検索してみると、Ptr をつけている使い方がいくつか見つかりました
とりあえず今回は Ptr をつけてみます
Delphiだとポインタがnilかどうかチェックするシステム定義関数に Assignedと付けられてる
そもそも「ポインタがNULLだったら例外投げる関数」なんてものに 存在価値はないと思うんだけど。。 いったいどんな場面でそれが必要だったり便利だったりするのか想像できん。
readFile(FILE* fp) { foo(fp); ... } 確かに利点は何一つとしてないな
設計の善し悪しについて議論するのは基本的に禁止。
普通に書いてる分にはデバッグ時にのみ有効とかそんな形でしかいらんだろうけど、
外部から呼ばれる関数かなんかを定型で量産してるときは
あると有り難いのかもしれん、とか想像
で、
>>314 に一票
>>307 C/C++言語において、「_」で始まる識別子は処理系のために予約されています。
すなわち、プログラマが定義するのは禁じられています。
>>318 そのreadFile()ほかの多くの各個関数の中でいちいちエラー処理を書かなくても
よくなるんだろう。
要するにたぶん、ぬるぽなら全部例外投げて、呼び出し側がまとめてエラー処理する、
つー感じにしたがってるのではないか。
あるいはそのプログラムのそこいら辺で起こるヌルポには 何か特定の意味があるのかもしれん。
325 :
デフォルトの名無しさん :2005/12/03(土) 19:05:51
詳しく
318のようなコードなら俺はfooにassertを当てはめるな。
327 :
323 :2005/12/07(水) 10:59:28
たとえばデータの一部を初期化時には空白にして後で補完・追加できるようにして 未設定値をぬるぽ値で表すとかの例を考えるとぬるぽ値は単なる論理エラーではないから エラー報告して終わればよいというものではないだろう。 その場合ぬるぽを判別して処理するメソッドには例えば checkUndefinedData()などという名前が付けられ得よう。 (ただまぁそういうケースでのぬるぽ値は正規のロジックの一部になる訳だから 例外機構で捕捉するんじゃなくてifでちゃんと判別したほうがいいような気はするけどな。)
何でもかんでも投げれば良いってもんじゃないよな。
仕事を投げるのだけはやめてね>某O氏
私信かよ!
331 :
デフォルトの名無しさん :2005/12/12(月) 16:48:17
説明文を作成する関数なんですけど、関数名に含める単語”説明文”として、 律義に"explanatory note"を含めるか、一番短そうな"explain"を含めるのか 迷っとります。 後者だと明確に意味が違うんでしょうか?辞書を見れば見るほど悩むので 助言をお願いします。
CreateDescription CreateExplanation SakuseiSetumei
クスコ。 やぱりその辺ですね。
クスコってのはな。女のあそこをグワッと広げて至急を検査できる医療器具。
クスコってのはな。インカ帝国の首都。初代皇帝の名はマンコ・カパック。
ムスコってのはなむすっとした子なのだよ これ以上、言うんじゃない
ムスカというのはね(ry
メガーメガーM
テラドライブ
オマイラ オモシロイナ
オメガトライブ
メキシコにあるテオティワカンの古代文明の神の名は、ケツアル・コアトル。
スケヴェニンゲン
フロニンゲンってのはな風呂好きな人間なのだよ もう、これ以上、言うんじゃない
インカ帝国は凄いよな。 ネタの宝庫だ。
オマイラ オシロイバナ
クラス名や変数名にインカ語で名づけるのはこのスレでつか?
348 :
デフォルトの名無しさん :2005/12/14(水) 17:26:10
2次連立方程式の関数名なににしたらいい?
function
renritsu_houteishiki
連立方程式を表す関数? …equations(), equations_2() それともそれを解く関数?…solve_equations(), solve_equations_2(), solve()
二次連立方程式なの? 二元連立一次方程式じゃなくて?
実は 二元連立ニ次方程式なのだ!w
2次までの連立微分方程式の線は?
連立方程式 simultaneous equation system of equations 解く solve 関数名 solveSimulEqs solveSystemOfEqs
356 :
デフォルトの名無しさん :2005/12/14(水) 20:27:24
solveSimulEqsで行かせて頂きます。 Renritu2ndHouteisikiでやってましたw サンクスサンクス
357 :
デフォルトの名無しさん :2005/12/14(水) 20:29:09
あっ違った。calc2ndRenrituHouteisikiだったw 上のは途中でやめたんだ
AbcFunction() abcFunction() どっちよ?
>>358 C/C++, Java, Dなら後者
後はシラネ
>>358 add-function (呼び出しに括弧不要)
降順か昇順を入れる変数の名前はどうしたらいいですか?
Direction
order
descending
order
>>362 変数名はSortOrderとかSortMethodみたいな適当な命名して、
enumのメンバ名でこだわった方がわかりやすそう。
そっちはとりあえず降順/昇順をベタに英訳した命名でよかろう。
IsXXX式に命名してboolでやるより発展性もあるしね。
昇順・降順以外の発展性って何だろう?
ランダム
比べる際の指標が色々選べるとか。>369
このスレで関数名を聞くのはだめですか?
許可する
>>373 Thx
登録できるユーザー数の上限が決まっていて
その上限に達しているかどうかをtrue又はfalseで返す
関数の名前を決めたいんですが
アドバイスよろしくお願いします
isUserCapacityFull
MouGenkaiDameDeru()
public void zenbuDashichae();
ERROR(378): Buffer overflow
もうずっと人大杉()
381 :
デフォルトの名無しさん :2005/12/17(土) 11:48:16
数値を渡すと、カンマ付き文字列を返してくれる関数名をお願いします。
token_encode
comma_format
カンマ付き文字列ってどういうもの?
って、分かった。1,111,111 ってやつか。
なら commify で決まりだな。
commanize
388 :
381 :2005/12/17(土) 14:49:59
どうもです。ご提案を検討いたします。
ところで、
>>381 の逆の動作を行なう関数名をどうしようかと今考えています。
よろしければお願いします。
Un〜
>390 不覚にもワラタ
はいはい自演自演
>388 ウンコミファイ
>>388 uncommify or decommify
uncommify はウンコみたいなので decommify に一票。
アプリケーション名もここでいいですか。
仕事でやってることでなければいいんじゃない?
>>395 cureblackなんてのはどうだろうか
398 :
395 :2005/12/19(月) 00:30:17
>>398 仕事のは、命名はかなり大事な事柄だと思うので、
社内で話し合ってくだせぇ。
>>395 TOMOYO Linuxにしようぜ。Linuxとか関係なくても。
Tool(仮)の正式名称がToolのまんまだったりするようなところですが。
>>395 いいじゃん、べつになんでも。
建前としてアプリケーション名がアレなら、アプリケーションクラス名なら
問題ないよな。
theApp
MyApplication
405 :
デフォルトの名無しさん :2005/12/20(火) 17:10:15
ms単位で入力された値を、10ms単位に四捨五入する関数の名称を命名して下さい (使用例) 126ms → 130ms int hoge = 126; int foo = xxx(hoge); // foo == 130
406 :
405 :2005/12/20(火) 17:18:42
追加で恐縮なんですが、 加えて、切り上げの関数も宜しくです。。。 (例) 120ms → 120ms 121ms → 130ms
Order10ms
FourThrowAwayFiveEnter()
409 :
405 :2005/12/20(火) 17:30:00
どうもです。 ありがたく頂戴いたします。
四捨五入とかはround,roundUp,roundDownじゃね?
MyApplicationにすべきか myApplicationにすべきか いつも悩む
Q. クラスなら先頭大文字、関数なら小文字。定数なら全部大文字で境目にアンダースコア。 この回答で悩みは解消しましたか? (a.見事に解消した b.まぁ解消した c.あまり解消しなかった d.まったく解消しなかった)
e. Bull Shit
>>413 先頭大文字はパブリックメソッド、先頭小文字はプライベートメソッド
なんていうルールもあったりするから、なおさら混乱しそうだなw
そんなルール知らんなぁ。 Ruby 使ってると、クラスか定数なら先頭大文字、 変数化関数なら先頭小文字に強制されるから、 この命名規則に矯正されるね。
>>1 から引用。
> 命名規則や設計の善し悪しについて議論するのは基本的に禁止。
>>417 鬱陶しい馬鹿だなお前さんは。
じゃあ次スレの1で君は立ち入り禁止にするから
大人しく従うようにな。
問題は次スレが立つまでこのペースでもあと2ヶ月以上はかかることだな。
ルビ厨ウザ
>>420 ,. -、
_.,,/-....._ヽ
,.-=7..:.:.:.:,:lー、::ヽ...、
〃 /:::/:/lj`_ `;:::l`、.、
// ク:l(::フ l:.::j l::::l l i
,' ;' ゝl −`l =L):! .! l 恥ずかしいセリフ禁止っ!
i l (\..|_」、-,'ニ、 l .!
,! l _,/_ゝ. \/ .} l l
. l ,! (/ _,>、 ´ヽ / l l
l l ゝ-l} /l 丶ノ-' {. l l
l l (´lj/|、ヽ|| _j l l
422 :
デフォルトの名無しさん :2005/12/22(木) 00:18:41
Myとかつけるのってダサい
Your
ツールバーや、ステータスバー、タブコントロールなどを Createするのをまとめた関数の命名をお願いします。 最初、_SetupToolbarでやってたんですが、他のものをまとめるうちに名前が・・・
Init Subcontrols とか?
createControls()
キーボードクラスとかゲームパッドクラスのスーパークラスの名前を考えているのですが、 マウスクラスとは別のツリーのルートなので、命名に困っています。 マウスのようなものがなければ InputDevice とかそういう名前にしようと思うのですが、 マウスのようなものがPointingDeviceという名前であり、 "非ポインティングのインプットデバイス"のような命名は長ったらしいと思うので 妙案があればご教授頂きたく
KeyPadDevice ButtonsDevice ConsoleDevice
全部 InputDevice の下にまとめられんのか?
InputDevice -+- PointingDevice - MouseDevice |- NonPointingDevice - KeyboardDevice
432 :
429 :2005/12/22(木) 19:35:13
まぁ、そうしてもいいだろうが ポインティング・デバイスには方向キー(カーソルキーなど方向指定能力)がなく コンソールデバイスにはポインティング(位置指定)能力がないから 下で分ける必要が出る可能性はあるわな。 とはいえこの手の違いを上げだすとキーボードが持つ 文字指定能力がパッドにはなかったりするからキーボードとパッドを 一緒にすることを正当化するのが難しくなるけどな。 そのあたり厳密にやるなら各能力ごとにコンポーネントに分けて 各デバイスを表現するクラスに集約するんだろうけど、 そこまでモデリングに手をかけるまでもないことも多いっちゃ多い。
っていうかポインティングデバイスの抽象クラス名がPointingDeviceなら キーボード&ゲームパッドの抽象クラス名はInputDeviceって命名で 何も困らない気がするんだが。。 どうしても気にいらないなら(くだらない固執だと思うけど) 頭にCommand(Cmd)とかStandard(Std)とかつけるのはどう?
そもそも、428のクラスはどういうクラスなんだろうか?
ハードウェアを抽象化してボタンやキーの状態をプロパティーで
アクセスできるようにしたり、入力のエッジでイベントを生成したりするクラスか。
その上のレイヤーで、ボタンやキーの機能割り当てを管理するクラスなのか。
前者なら
>>431 でまったく問題ないはず。
>>432 がなんか意味わからないこといってるけど、たとえばマウスのクラスは
方向キーに対してダミーのデータを吐くようにすればいいだけだからね。
デバドラみたいにさ。
435 :
428 :2005/12/24(土) 11:09:41
みなさんありがとう
>>430 やろうとすると
>>431 さんの図式になりますが、InputDeviceにほとんど何のメソッドも定義できなさそうです。
この図のNonPointingDeviceの位置の名前なのですが、この名前だとちょっと…
>>432 キーボードがもってる文字指定能力は考慮していなかったです。必要があればキーボードの具象クラスを使うつもりです。
>>433 他の人がクラス階層を見たときに、マウス関連のクラスを探したい場合
InputDeviceっていう名前のクラスがあって、それをマウスが継承してなかったら
混乱すると思うんですよ。マウスは入力デバイスじゃないのか?って。
頭に何か付ける案、頂こうかと思います。自分的には KeyInputDevice かな。
>>434 このクラス自体はゲームパッドとキーボードが、キーを 押す、放すということができるということに注目したクラスです。
実際のプログラムでは別の階層のオブジェクトからStrategyパターン的に使うことで、
プログラムのロジックを入力デバイスの種類に依存しないようにできるかな、と考えています。
>435 汎用的に考えずに、 「別の階層のオブジェクトの入力クラス」と言う名前の付け方はどうか?
JustAnotherInputDeviceOrSomething
すてきなサムシングにゅ。
カモーンщ(゚Д゚щ)
あなたの近所の
秋
葉
神社
サトー
の御飯
ものすごくよく使うと思うのですが、数を入れる変数名ってどうしてますか? 例えば、掲示板プログラムだとすると、投稿数です。 投稿は、post 投稿数は、英語だと how_many_postsか、numberts_of_postsだと思うのですが、長すぎです。 どのようにしていますか?
count
post_countかな
post_n post_qty
HogeNums、HogeCount
さんすこ numsとcountがいいですね。 countは、動詞なので関数名に使い、変数には、numsを使おうかなとおもいますた。 $post_nums = 0; $post_nums = $this->count_posts(); みたいな。
for (post_count=0; post_count<post_nums; post_count++)
>>454 本当だ
アメリカ留学したことあるのに知らなかった orz
numberも動詞あるのね…
単に posts じゃ駄目なの?
postsだとpostの配列とかコンテナって感じがする 言語によって違うだろうけど
num_posts
nPost # ハンガリアン万歳!
460 :
デフォルトの名無しさん :2006/01/05(木) 19:54:40
以下のプログラムの methodA, B, C, D の名前が思いつきません。 配列の中身をHTML内の文字列にして出力するプログラムです。 public abstract class AbstractItemView{ void printList(String[] item){ if(item.length==0){ System.out.print(this.methodD()); return; } System.out.print(this.methodA()); for(int i = 0; i < item.length; i ++){ System.out.print(this.methodB(item[i])); } System.out.print(this.methodC()); } public abstract String methodA(); public abstract String methodB(String item); public abstract String methodC(); public abstract String methodD(); }
461 :
460 :2006/01/05(木) 19:57:02
あ、↑の printList は public で final です。付け忘れました。 具体的なサブクラスはこうなります class ListItemView extends AbstractItemView{ public String methodA(){ return "<ul>\r\n"; } public String methodB(String item){ return " <li>"+item+"\r\n"; } public String methodC(){ return "</ul>\r\n"; } } class TableItemView extends AbstractItemView{ public String methodA(){ return "<table>\r\n"; } public String methodB(String item){ return "<tr>\r\n<td>"+item+"</td>\r\n</tr>\r\n"; } public String methodC(){ return "</table>\r\n"; } }
462 :
デフォルトの名無しさん :2006/01/05(木) 20:19:09
言語はJAVAです 設定情報や、共通の情報(データベースの接続情報や、ログインIDなど)を保持する クラスの名前を考えてください。 HogeContextかと思ったんですが、なにか違うみたいで・・・ 機能的には、起動時にsetして、後は参照のみです。
A, C は Header, Footer、 B は Item に Format とか Template とかその辺りの単語くっつけて、 D は Empty Message とかで、 それの頭に、Get とかつければメソッドっぽくなるかと。 っつーか、仮想メソッドでやるよりは、 ヘッダとかフッタのフォーマットを外部定義できるようにすればいい気も。 string ItemFormat = "<li> $$"; とかにしといて、"$$" を item で replace。 あと、SetItemFormat とか、外部ファイルから Load するメソッド書いて。
465 :
460 :2006/01/06(金) 02:27:49
>>463 なるほど。Format か〜。その単語が出てこなかった。サンクスコ
ちなみに
>>461 は methodD を継承し忘れているのでたぶんコンパイラに弾かれますw
確かに、ブログのテンプレートみたいなノリで記録させるのもアリですね。
>>464 サンクス
ただ・・・
もうすこしかっこいいのお願いします。
>>466 configはかっこわるくないだろ。つか、おれならそれ。
Generalナントカ
GeneralSpecialOfflineConnection
ぶっちゃけ英語じゃなくてもいいよw
ΣυνεδριασηΠληροφορηση
ЗаседанеИнформаця
「代入する」という意味だとどの辺が一般的っすかね substitute でOKかなぁ、ちと長いのよね
>>477 方程式の x の所に x = y^2 を、とかの意味の代入?
それはやっぱ substitute だしねぇ。
長いから使わないとか、度を越さない限りそんなこと言わない。
>>478 その代入です。合ってますか、ありがとん。
これで行きます
数学の代入は substitute だけど、 プログラムの代入は assign が普通かな。
CloneとかCopyなら話はわかるが、 正直「代入」ってメソッドが必要な場面が思い浮かばない。
動的言語で「=」の代わりに使うんじゃないか?
クローンだとオブジェクトの複製ができるイメージ。 コピーだと同じく複製ができるイメージだが 複製対象はオブジェクトの場合もあり、ポインタの場合もあり。 置換(substitute)の場合はすでにある参照について参照対象を別のものへ置き換えるイメージ。 代入(assign)だと参照にオブジェクトを割り当てるイメージ。置換とイメージがかぶるが計算機用語だと副作用を暗示することが多い。 (置換の場合は必ずしもそうではなく、置換の返すオブジェクトとして置き換えられた参照を保持するオブジェクトが新たに作成されるような場合も含む。)
484 :
483 :2006/01/11(水) 10:26:56
//気持ちとしてはこんな感じか? public class C implements cloneable{ private double vals[]; void setValues(double values[]) {vals=values} double[] getValues(void) {return (vals);} public void copyFrom(C c) {setValues(c.getValues().clone());} public void copyTo(C c) {c.copyFrom(this);} public C (C c){copyFrom(c);} public C clone(void) {return (new C(this));} public static void copy(C source, C destination) {source.copyTo(destination);} public void assign(int which_variable, double value) {vals[which_variable]=value;} public C substitute(int which_variable, double value) {return (clone().assign(which, value));} }
485 :
デフォルトの名無しさん :2006/01/12(木) 16:12:16
指定したサイズをmallocで確保し、成功したらそのvoid*を返し、 失敗したらエラー処理を行う・・・ そんなmallocをラッピングした関数の名前は、いかがいたしましょう?
Mallocでいいよ
487 :
デフォルトの名無しさん :2006/01/12(木) 16:52:18
まじっすか?
malloc2 で
mallocexで
malloc_reloaded で
エムアロークで
malloc_vista
malloc_forError()
nurupo()
myalloc custom_malloc memoryallocation
nalloc
namco
new
supermalloc
collam
>>485 その関数を呼び出した側ではエラー処理しなくていいのかな?
「エラー処理が」 abort() 逝きとかだったら malloc_or_die() とか。
C++ で「エラー処理」が throw だったら malloc_or_throw() とか。
C++ なら new でいいと思うけど。
smart_malloc() あたりはどう?
mallocmalloc
505 :
485 :2006/01/13(金) 00:14:35
多数の御意見ありがとうございます 他の人が見て判る様、mallocの文字は どこかに入れとく方向で考えたいと思います。
newMem
おまえら、DeleteとRemoveを使いわけてる?
>>508 リスト構造を扱うときなんか、使い分けないとダメだろ。
removeの方がより「完全に削除」している感覚はあるけど、ネイティブではどうなんだろうね? ちょっと違うか。それはpermanentの有無になるのかな…
removeは取り外すって感じで使うかな〜
完全に削除しないんなら どっちも使うべきじゃないんでは
Erase ってのもあるな
514 :
大和魂 :2006/01/14(土) 02:08:02
たとえば「質問内容」という項目に対して ・プログラムソース内の変数名:SitsumonNaiyou ・DBのカラム名:SMNY 考えた奴天才('A`)
>removeの方がより「完全に削除」している感覚はあるけど、 おいおい、そりゃ違うんでないの? だって字面みりゃ re-move だよ? どう考えても含意としてはdestroyするんじゃないよ、(どっかに)moveするだけだよ、 って感じだと思うんだけど。
言語じゃないけどMTGだとremoveが完全削除の意味合いになるんだよな
>>517 「場から取り除く」だろ。
願いで持ってこれるから完全削除ではない。
スレ違いもいいところだが。
リバーの固定化を設定・解除するメンバ関数名を考えていただきたいです。 FixRebarPosition、を考えていたのですが、固定化を設定するだけにしか見えなくて・・・
いいんでない?
rebar クラスのメソッドとしてなら setFixed とか Fixed とか、 関数名なら fixRebarPosition の反対で unfixRebarPosition とか、 bool で切り替えなら fix の名詞 fixation を使って setReberFixation とか。 でも fixRebarPosition(bool) で十分意味はわかる気がする
boolで切り替えるつもりだったのでSetうんちゃらで使いたいと思っていた所です。
>>521 さんのsetRebarFixationを使います。ぴったりです。ありがとうございます
すごい初歩だったらすみません。 他人のソースを眺めていると、変数名に「app」が付いている のですが、これは何の略なのでしょうか? たぶんアプリケーションだと思うのですが、変数名に「アプリ ケーション」を付ける意味が良く分かりませんで… そのアプリ(プログラム)内で唯一orメインの変数に付けるの かなーとも思うのですが…
普通はアプリケーションを統括するメインのクラスor構造体の変数名にすると思うけど、 それ以外だったら知らん。
はい、私もそうだと思っていたのですが、このソースだと 至る所に接尾語としてappが付いているんですよね… どうもこれを書いた人は、「main」のような意味で使ってい るようですが…それでアプリケーション以外の単語の略 なのかなーと。 やっぱりこれはこの人だけのやり方で、一般的なものじゃ ないのでしょうね。
瑣末な話だが 接尾じゃなくて接頭じゃね?
いやappそのappプログラムappでは本当に接尾辞appなのかもよapp?
あっぷっぷの略
相談です。言語はPHPです。 SQL文を実行するクラス (sql_executer) を作ったのですが、そいつに 文字列に自動的にエスケープ処理を施すかどうかを表す論理値 をメンバとして付け加えたいと思っています。 そのメンバはどのような名前がよいでしょうか? 個人的には、 is_*** という名前がよいかなーと考えてます。 Java のソースを見るとわかりますが、boolean型のメンバは is*** という名前が定番なようなので。 今のところ、is_escaping とか is_quoting などが候補として挙がったんですが どうもいまいちです。 そのオブジェクトが現在進行中でエスケープをしている状態を表してる わけじゃないですから。
doesEscapeとかneedsEscapeとか
>>526 いえ、そのソースでは接尾語です。
HWND hwndApp;
見たいな感じです。ちなみにこの変数名はメインのウィンドウ
ハンドルなので良いと思うのですが、それ以外のローカルな
変数にも「xxxApp」みたいに付いてまして…
まあ、たぶんこれを書いた人の個人的な癖なのでしょうね。
>>529 is_escaping_string
とすると、「文字列を」エスケープするのがはっきりしていいかも。
でも、やはりingだと違和感がある感じ。
能動的で静的なboolプロパティには、isを付けるべきではないと思う。
Javaでもdoesとかcanとか使うし、isにこだわる必要はないような。
is_to_be_escaped
autoEscapeかなぁ。 そもそもそんなとこでescape処理すんなとは言いたいけどそこで別スレで。
is_escapable
537 :
デフォルトの名無しさん :2006/01/17(火) 13:01:04
doEscape, applyEscape
538 :
529 :2006/01/17(火) 13:29:52
>>530 ,
>>532 ああ、確かに can*** などは見たことがある気がしますね
他にもいろいろ検討してみますです。
>>533 なるほど。autoとescapeを組み合わせればいいのが出来そうですね!
>>534 be動詞 + to不定詞 で 「〜することになっている」 っていうニュアンスになるから
それもいいかなーと考えたこともありました。
でも、なんとなくキザな感じがして、却下・・・(´・ω・`)
>>535 私もそれはずーっと思っていて、だからこそ
エスケープ処理をするかどうかの設定が出来るような設計にしたというわけです。
>>536 それだと「〜することが出来る」っていうニュアンスになっちゃうからなあ〜
皆さま、レスどうもありがとうございました!
結局、メンバ名は is_auto_escaping あたりにしようかなーと思ってます。
ゲッターが is_auto_escaping() ,
セッターが set_auto_escaping($auto_escaping) ですね。
539 :
529 :2006/01/17(火) 13:34:54
>>537 うあ、送信したらレスが来てた。ごめんなさい m(_ _)m
do〜だと、なんとなくイベントハンドラっぽくなる希ガス(´・ω・`)
withとかrequireは?
sage
age
文字列をキーとして、ほかのクラスのインスタンスを登録でき、 要求に応じてそのコピーを作ってくれる クラスの名前に迷っております 何かよい名前はないでしょうか
StringKeyMaid
545 :
543 :2006/01/18(水) 02:58:56
わかりました StringKeyMaidにします
命名の基本は、やはり「動詞+名詞」ですかね? 日本語的に考えると、「名詞+動詞」ってなりがちなんだけど。 StringGetterよりは、GetStringなのか。 クラスとメソッドでも違ってくるかな。 クラスの場合は逆に、「名詞+動詞」でもいいのか。 よく迷う。
>>546 一般には、クラス名が 主語 で、それに続けてメソッド名は 動詞+目的語 で、文章にする。
だから当然、クラス名は名詞で、メソッド名は動詞+名詞とか動詞+副詞句とか。
非OOP言語の場合、
OOP言語では obj.Method(a, b); みたいに書くものを、
Method(obj, a, b); と書くことになるわけだけど、
このとき、obj Method と並べたときに英文になるように名前付ける。
static メソッドとか、obj を持たない関数の場合は頭に we とかクラス名をつけて意味が通じるようにするかな。
we?
we は無いな。
スレとは全然関係ないけど、名前をうまいこと工夫した結果、 if や while の中でうまいこと文章になると気持ちいいよね。 "If x is something, do ○○○." みたいに普通の文っぽく読めてしまう面白さ。 日本語プログラミングの面白さにも通じるところがあるのかな。
ウィムッシュゼニガタ?
>>550 英語は語順で文法的な機能が決まってて語形変化が殆どないからな。
一般の欧州の言語ではそうはいかない。
日本語でも「てにをは」を考えないでカタコトにするか、
構文に「てにをは」を含んだ定型文にしちゃえば結構できるんだろうけど、
それ以外では結構難しかろう。
じゃあ、あれだな、活用一切なくて、語順だけで文法作る 中国語とかタイ語が一番プログラミング言語に向いてるな。
中国語はアルファベットに当たる基本文字セットが大きすぎるから辛いと思う。 といって表音文字に置き換えるとわかりにくい気がする品。 その件がなければ理論上悪くはないだろうが…。タイ語はしらん。
>>555 そこまで言うならもはやアイコンでいいだろ。
>>556 漢字とちがって合意の取れた標準が存在してないからなー。
そしてコード化もされてないし。
双方向通信設定するメソッドを考えてますけど、 双方向って英語でなんていうんですか?
Bi-direction
内容によっちゃfull/half duplexなんて用語もあるぞ。
>>561 それは全然ニュアンス違うでしょ。
全然ニュアンスって言い回しも変だがw
っていうか
>>559 は辞書引くことを知らんのか。
PG以前に人間としてオワットルなw
ユネスコによると、2000年時点において、世界の成人人口の20.6%、 約8億8千万人は読み書きのできない人々(非識字者)であると推定されています。 また、6歳から11歳までの子どものうち、 少なくとも約1億1,300万人が学校教育を受けることができない状況にあります。
>>563 uneCountIlliterates()
かな。
>>562 でもコネクション型の双方向通信なら全二重か半二重かの区別は結構重要だと思う。
メッセージやコネクションレスだとあんまり意味はないが、
その場合「双方向通信」って括りもどうかとは思うしね。
だから大雑把に「双方向通信」と呼んでしまうより
その辺の性質を意識して名付けた方がいいかなとオモタ。
ログイン回数を示すDBフィールド名、変数名はどんなのをつけますか?
CountsLogin
Logins
569 :
デフォルトの名無しさん :2006/01/27(金) 16:25:38
login_count
570 :
デフォルトの名無しさん :2006/01/27(金) 17:11:27
countOfLogin
loadOfCountry
Dim m_ログイン回数 as Long
なんかVBくさい気がするんですが、気のせいでしょうか
574 :
デフォルトの名無しさん :2006/01/28(土) 03:25:15
>ログイン回数を示すDBフィールド名、変数名はどんなのをつけますか? login_cntやlogin_countあたりでよいのでは。 まんまだけど
数値計算で,収束しているかどうかを判定し bool 値を返す関数の命名なんですが... isConverging, converges あたりが候補ですが,他にありませんか?
576 :
デフォルトの名無しさん :2006/01/28(土) 05:22:35
>>575 これで決まり。
bool ShuusokuSuuchi01();
577 :
576 :2006/01/28(土) 05:26:05
金融系末端プログラムの関数・変数名 定石集の中から1つ。 void getFurikomi02(); ゲットしてない!02って!? そもそも振り込みをゲットって何だ!?
578 :
デフォルトの名無しさん :2006/01/28(土) 12:05:42
フリコミ、ゲットだぜ!
アンケートなどの投稿期限を入れておく変数名はどのようにしていますか? post_limit,post_time_limit とかかなと思ったんですが post_limitだと投稿数制限ような post_time_limitだとちょっと長いような…
deadline
それぐらい辞書ひけば解決するような。。 まあいいや、アンケートってのは英語だとニュアンスによって 言葉が違うみたいだから他人も見るコードなら和英ひいて言葉を選んだ方がいいかもね。 とりあえずPostingDeadlineとかどうかな。
toukoukigen
Shimekiri
toukoukigenに一票
みんながローマ字を使えば命名でこんなに悩むことも無いのに
っていうかVBやC#なら Private _投稿期限 as Datetime _投稿期限 Datetime; でいいじゃん
>>585 ソース読む人が日本人だけだったらこんなに悩むことも無いんですけどね…
ALCで期限で調べたけどdeadlineは出てこなかった…
検索に入れる日本語も考えないとダメポ
期限が終わっているかをtrue,falseで返す関数だったら
post_is_end(), post_finished() , postExpired()
#今度は終了と満期で調べてみたぽ
>>587 deadlineで調べれば、期限って出てくるんけど?
世界中の人間が分かるようにという精神ならエスペラント語使えばよろしかろう。広まってないが('A')
590 :
576 :2006/01/28(土) 16:32:49
VC++2005でも日本語いける件について。
>>589 「日本人にしか読めない」が「誰にも読めない」になって平等的ヽ(´ー`)ノ
>>591 ウホッいつの間に
const std::string ぬるぽ = "ガッ";
名前 値
ぬるぽ "ガッ"
何で無駄なことをするんだろう・・・ それとも日本語変数とか意外に需要があったりするの?
596 :
576 :2006/01/28(土) 22:05:31
>>595 UTFになっただけだろ。
UTF知らないわけじゃないよな?
ソースをUTFで保存してる人がいるとは知らなかった 世界は広いんだなw
>>597 手元のVC#で作ったソースはUTFだな。
RedHatの環境がutfに変わってから ソース含めて全部utfで保存するようになった。
>世界で広く使われてるのか については分からないってことね。 ありがとうございました。
>>605 VisualStudioもRedhatも世界で広く使われてるだろ。
マジレスすれば保存形式は関係ない。 VC8の内部処理の文字コードがUNICODEになったということだろ。
UTF-8は世界で広く使われてる。 ただし、なぜか、1バイトの文字ばかりだが。
俺も今作ってるものは全部UTF-8に統一しているが、英語以外書かないから 意味ないかなとも思っている
第何番目の議題という変数を考えています。 いい案をギブミー、ぷりーず。
Subject_00000001
>>611 すまそ
何番目という数値を入れる変数なんだす
>>610 SubjectNumber
でもこれぐらい思いついてるだろ?何が不満なんだ?
SubjectIndex
615 :
576 :2006/01/29(日) 01:16:39
>>610 いや、マテ。仕様を変更することが先決。
何番目の議題を変数で持つなよ。
何番目を変数にwwwwwwwwww そんなコード見たら消す。
>>615 いや、マテ。仕様を変更することが先決。
何番目の議題を定数で持つなよ。
>>617 何番目を定数にwwwwwwwwww
そんなコード見たら消す。
>>615 =617としてはどうすべきだと考えているんだろう
実に興味深い
めずらしくこのスレが荒れてるな
まぁ反射的に書いてしまったことは謝る。
無論、
>>615 ,617が別に定数を使えと言っているとは思ってない。
私の考えとしては、DBで管理するにしても
アプリ内で閉じるテーブル・リスト等で管理するにも
第何番目の議題という変数を持つは妥当だと思ってる。
だって議題番号を表示するのにも必要だろ?
1: Pascalの宿題は俺にやらせろ!!Part2
2: CLDC+MIDP+携帯電話用Javaスレッド part 5
3: バグの出にくい言語仕様を考える2
4: ……(以下議題を追加するたびに数字が増える)
(2chのこれは議題番号じゃないけどな、あくまで例だ)
スレ違いを承知で
>>615 ,617の考えを知りたい。
>スレ違いを承知で 死ね
関連スレで簡単な設計に迷ったら書き込むスレとかねーのかな
>>623 とりあえず立ててみるがよろしかろう!
立てたら教えてね。はーと
625 :
デフォルトの名無しさん :2006/01/30(月) 01:09:45
>>623 >簡単な設計に迷ったら
簡単な(複雑でないものの)設計だったら迷うことないだろ。
複雑さをいかに単純にするかで、みんな迷うんだよ。
結果的にやっぱり複雑になってしまうんだけどな。
ああ、そういえば ASCII は UTF のサブセットだから、確かに UTFは世界で広く使われてるわなw
627 :
デフォルトの名無しさん :2006/02/05(日) 01:03:47
次のような機構や保存先ディレクトリの名前を求めています。 「更新するたびに保存するためのもの(ある程度古いのは消える)」 「意図して保存するためのもの(いつまでも残したい)」 「1ファイルにとどまらず全ファイルまとめて」 例えばarchive, backup, snapshotなど思いつくのですが 対応付けや他の名前などの意見があれば教えて下さい。
628 :
デフォルトの名無しさん :2006/02/05(日) 01:12:17
>>627 抽象的に仕様を言わずに、具体的に言おうよ。
何を保存するの?
テキストとその添付ファイルがありますが、 添付ファイルの方は古い物は残さず捨てます。
第何回目というDBフィールドが必要なのは 俳句や川柳を投稿するWebアプリがあります。 俳句にはお題があってお題に沿った俳句をユーザさんが投稿します。 なので第何回目のお題であったのかを投稿順などとは別に保存する必要があります。 でnumberは既に利用していて投稿数という数の意味に使っています。 そこで第何回目というフィールド、変数名に迷っています。
せっかくだから >「更新するたびに保存するためのもの(ある程度古いのは消える)」 >「意図して保存するためのもの(いつまでも残したい)」 >「1ファイルにとどまらず全ファイルまとめて」 このまんま漢字でディレクトリ名つけたらいいじゃんか。
postIDじゃ投稿を区別するIDになってしまうじゃないか 「何回目」とか「何番目」とかは、英語ではないらしい。 口語だと How manyth 〜とか言ったりするんだけど・・・。
私ならお題テーブルの存在を仮定してそれのキーを保持させる。 ので外部キーの命名規則からいうとodai_id、subject_id、material_idとかかな。 お題テーブルがない場合は、ちょっと行儀がわるいけどお題ID=お題の回数にしておく。
series_num / num_series num → index もありかも
今かかわっているコードでは、filenameといえばフルパスを指しています。 そこで、フルパスではない単純なファイル名を、 さりげなく主張しつつ格納する変数名のアイデアないですか? C++のメンバ変数ですが、そう何個も生成されるオブジェクトではありません。 stripedという単語も考えたのですが、トークンに分解されたフルパスを 格納している変数もあり、そちらに使われています。
641 :
デフォルトの名無しさん :2006/02/06(月) 12:33:46
むしろフルパスの変数名を直した方がいいような気もしますが。 まあ迷ったら愚直に直訳がいいと思うけど俺は。 自分の経験からすら学ばない奴はそうは考えないみたいだけど。 FilenameWithoutPathとか
俺なら多少無駄でもFileクラスを書くな。
まあ、
>>641 がいいと思うけど、
既存コード修正なし&シンプルにというなら short name とかかな。
>>640 POSIXに従ってbasenameとか
645 :
デフォルトの名無しさん :2006/02/06(月) 14:09:34
APIとかで、〜Exとたまに付いてるの見かけるんですが、 あれは、Expand?Extend? 拡張するかどうかを、関数の引数として渡したいので、そのネーミングで悩んでます
647 :
645 :2006/02/06(月) 14:29:15
>>646 ありがとうございました。
MSDNとは、灯台下暗しでしたよ。。。
648 :
640 :2006/02/06(月) 16:08:18
>>641-644 ありがとうございます!
んー、644にします。
以前にもここでお世話になったことあるんですが、
ほんと、他人の頭の中は新鮮ですねー
649 :
630 :2006/02/07(火) 02:13:33
odai_idは、お題テーブルの主キーで利用しているので利用できないです
_idは基本的に主キーで使うという命名規則なのでその他_idも利用できないです
>>636 さんの意見を何回か読んだんですが理解できなかったです。すみません。
seriesとthを使うのは面白いですね。
odai_numberthだと外人でも理解しやすいだろうか
odai_index とか。何番目のお題か。 odai_key なら、お題テーブルでの主キー(odai_id)が入る感じ。
numberth はわかりにくいというかむちゃくちゃ nth ってのは 「n番目の」 という意味だぞ
>>648 >ほんと、他人の頭の中は新鮮ですねー
なんかいいな、そのフレーズ。
もしかして、誰かの言葉?
odai_number あるいは subject_number でキマリだろ。
webアプリもDBも触ったことないんでトンチンカンかもしれないけど、 「お題」レコードの中の、自分自身の通し番号を表すメンバ(odai_id ?)と、 「投稿」レコードの中の、お題の番号を表すメンバは意味論的に同じものなんでしょ? だったら同じメンバ名にするのが自然だと思うんだけど。 レコードのメンバ名がグローバルというか、グローバルにバッティングしないように 命名する必要がある環境なんてあるの?
655 :
636 :2006/02/07(火) 16:43:23
>649 俳句テーブル *-1 お題テーブルっていうように一対多のリレーションになっているんじゃないのか? だったら、俳句テーブルがお題テーブルの外部キーを保持して、それでお題番号を表すのが一般的な設計だと思うのだが。 _idが使えないならodai_foreign_keyとかodai_fidでもいいけど。 要は別のテーブルの外部キーなら、フィールド名を見ただけで外部キーであることがわかるようにするということ。 _numberとかだとデータとしての番号なのか、外部キーなのか区別できないよ。
データベースの「テーブルとビュー」を総称するのに 良い言葉は無いでしょうか。この二つをリストするメソッド名なのですが。 でも DatabaseMetadata は getTables なんですよねえ…
リビング
テービュル。 ビューをテーブルの派生物とみなすならTablesでいいんじゃねの。
>>657 ビューとテーブルでリビングか、ワロタ。
が、しかし!LDKのほうがニポンの住宅事情にあってると桃割れ!!
ソレダ
まーじまじまじまじか?
いつも strXXX とか arrXXX とか 変数名の接頭語で悩むのですが 言語別に例を公開してるようなサイトはないでしょうか? ちなみに今はPHPで悩んでます。
接頭語不要。 PEAR コーディング規約と PEAR の変数名を参考にするのがいいよ。
>>655 俳句だけでなく、短歌や川柳などのお題も扱うのでodai_id = 第何回目のお題には
ならないということです。
投稿テーブルにも俳句、短歌、川柳の内容を入れるのでodai_idは外部キーですが
第何番目は外部キーではありません。
nthは第何番目のという英語なんですね。勉強になります。
666 :
663 :2006/02/09(木) 10:09:29
667 :
648 :2006/02/09(木) 10:46:01
>>652 >もしかして、誰かの言葉?
いやそんな、思っただけです。
668 :
652 :2006/02/09(木) 23:17:08
大文字小文字を区別しない文字列比較関数の名前はどうしたらいいでしょうか?
>>669 case insensitive string compare
っ stricmp strcasecmp 既存のものに合わせろ
比較っていっていうか符合するかどうかのチェックじゃないの。 compare(普通comparisonな気もする)はおかしくないか。 とりあえず最初はハッタリでいいから比較方法を表すenumを引数にとるようにして Matchでいいんじゃないの?
>>672 それだと比較方法を表す enum に「大文字小文字を区別しない文字列比較」
を表す名前が必要になって、振り出しに戻る?
C stricmp strcasecmp Java equalsIgnoreCase PHP strcasecmp 後はよー知らん
戻らんよ。 文字列比較の「モード」を表せばいいんだから。 e.g. enum CompareMode { CaseSensitive, NoCaseSensitive, : : };
ただ、モードに応じてMatchから呼び出すプライベートメソッドの名前は 結局考えなきゃいけないわけで、その意味では確かに振り出しかもね
>>655 >要は別のテーブルの外部キーなら、フィールド名を見ただけで外部キーであることがわかるようにするということ。
外部キーは、それとわかるフィールド名をつけること、というのは一般的なのですか?あるいは、有益ですか?
後からコードやらテーブル見るヤツの身になってみろ。 あるいは一緒に作業するやつの。
クラスのフィールド名なんですが、専門用語が沢山で(というほど多くないけど) 面倒くさいんでローマ字でもいいですか?
だめ
ローマ字なんか使わずに日本語を使え
682 :
デフォルトの名無しさん :2006/02/12(日) 19:37:51
漢字でいい?
使える文字はなんでも使え
検索条件とかの「条件」を和英でひくと"condition"なんですが なんか体調みたいでなんかしっくり来ません。 プログラム特有の言い方があったような希ガスるんですが・・・
>>687 それは条件と言うか・・・
条件そろったときに立てとくものというか・・・
>>684 検索条件を検索キーワードだけだと思ってるからじゃないの?
絞り込み条件はキーワード以外にも色々存在出来る訳で、condition で全く問題無し。
queryが一般的かな 単純なものならkeyでもいいかもしれない
criteria
エアーコンディショナーも体調みたいでなんかしっくり来ません とか言いそうだな。
>>693 コンディションで体調とか言う奴は、
コンディショナーになると、今度はヘアコンディショナーとか言い出すんじゃね?
695 :
デフォルトの名無しさん :2006/02/13(月) 15:17:46
これなんでしょう? AutoMkyakPLSQLController
書き込みテスト 機械語美少女リンカたん
リンカよりシェイラの方がいいと思います
698 :
デフォルトの名無しさん :2006/02/14(火) 14:16:03
万能関数:rds_mkyak_edit(int a , int b) 二つの引数を様々に組み合わせる事によって多種多様な自体に適応できます。(case文が延々と並んでる) 富士通子会社のアホめが…!!!
万能関数呼び出しの嵐なんだろうな・・・ rds_mkyak_edit(1, 2); rds_mkyak_edit(5, 0); rds_mkyak_edit(0, 4); 意味わからなすww
rds_mkyak_edit(rds_mkyak_edit(0, 1), rds_mkyak_edit(3, rds_mkyak_edit(5, 1))); とかもありそうw
保守したくねーw
S 式の文字列や S 式をパースしたオブジェクトを変数に保持したいのですが、 "sexp" とかなんとなく恥ずかしいです。 良い名前はないものでしょうか?
s_expr
>>703 おお、それでいきます。ありがとうございます。ナニ悩んでんだ、俺・・・ orz
706 :
デフォルトの名無しさん :2006/02/14(火) 23:55:14
707 :
デフォルトの名無しさん :2006/02/15(水) 10:02:49
俺さっき書いたPL/SQLで、性別のに表す Sex を使ったけど。 違和感を感じる人がいるのかな?
Gender
>>708 医学系のデータベースなんかだとsexのほうが自然だけどな。
710 :
デフォルトの名無しさん :2006/02/15(水) 10:23:47
>>708 そういう安直な逃げ方をすると意識しているようで嫌になる。
>>710 逃げでもなんでもないんだが
表現が複数あるだけ
712 :
デフォルトの名無しさん :2006/02/15(水) 11:26:52
>>709 名簿(というか管理用のマスタ)でもSexの方が収まりが良いと思うな。
単純に性差のみを問題としたいときgenderという表現は不適切だろ。
村田英雄みたいな言語感覚の奴がプログラマやっちゃダメだろw 恥ずかしいから週3回、とか書くなよw
714 :
デフォルトの名無しさん :2006/02/15(水) 14:38:29
村田英雄みたいな言語感覚の奴 ------->
>>713
>>711 は gender と sex の違いがわかってないんです。ごめんなさい
>>715 711じゃないけど、genderとsexの違いって何?
調べてみたけどいまいち理解できなかった。
それと、今巻取り中のシステムで
内部用の性別を格納する変数が Sex
表示用の性別を格納する変数が RealSex
とかなってるんだけど
正直勘弁してもらいたい。
717 :
デフォルトの名無しさん :2006/02/15(水) 20:07:54
>>716 生物としての「性」の区別がsex。
社会的な役割としての「性」の区別がgender。
ついてれば基本的にsexは男性。
主夫してる男性のgenderは女性(的)。
そんな程度の理解でいいんじゃね?
この界隈には様々な意味で「ややこしい」ヒトが沢山いるから、
深入りしてもあんま面白くないと思う。
つか、内部用の性別と表示用の性別が違う事例ってシステムとしてあるの?
それとも単なる呼称の問題かね。
Sex:野郎
RealSex:殿方
みたく。
>>717 >つか、内部用の性別と表示用の性別が違う事例ってシステムとしてあるの?
>それとも単なる呼称の問題かね。
>Sex:野郎
>RealSex:殿方
いえいえ、マスタのIDと文言の関係です。
それと、SexとRealSexが反対でした
Sex(表示用の性別を格納する変数):男性
RealSex(内部用の性別を格納する変数):1
って感じです。
因みにDBへはSexが登録されています。
別システムと連携する時点でSex→RealSex変換をしているようです。
みんなもっとsexadecimal使おうぜ
>>698-701 嫌な仕事がまわってきたのでソレで行こうと思う
square な波形のことを「方形波」と呼びづらいがさりとて 矩形波、とあえて言いなおすと意識してるようでそれもイヤだ。みたいな話だな。
そういうのは恥ずかしがり始めるとドツボにハマる傾向に有るね。 必要な時には堂々と使うべきかと。
プログラマの会話に「せいきひょうげん」とか混ざってると、 非プログラマな人たちには、どう聞こえてるんだろう?
聞き慣れない言葉の一つで終わる
725 :
デフォルトの名無しさん :2006/02/16(木) 01:07:17
>>721 矩形波って普通に言うだろ。
方形波ははじめて聞くぞ。
コナミ矩形波倶楽部
中学生並に意識しすぎだよ。
「くけいは」でも何か淫靡な語を連想しようと一日頑張ってみたが降参だ。
くぅっけいぃはぁぁぁん(はあと
730 :
デフォルトの名無しさん :2006/02/16(木) 23:03:25
3VLで以下の関数の名前はどう付けたらいいでしょうか? 1) TRUEに対しTRUE、FALSEに対しUNKNOWN、UNKNOWNに対しUNKNOWNを返す関数 2) TRUEに対しUNKNOWN、FALSEに対しFALSE、UNKNOWNに対しTRUEを返す関数
ファイルを展開するマクロのような物を作りたいですが名前と形式はどんなのがいいでしょうか? 下のような感じで使いつつ重複しないような物がいいです。。 foo.c ... // $INCLUDE$foo.inc (foo.incの内容が展開される) // $ENDINCLUDE$ ... foo.bat ... rem $INCLUDE:foo.inc$ (foo.incの内容が展開される) rem $ENDINCLUDE$ ...
>730 2値論理でも名前のつかない関数はあるわけでなぁ。 その真理値表で名前をつけるより、 その論理が何に使ってるどういう述語かという観点で名前をつければ? >731 重複って何と何が? そもそもCならマクロなんか書かなくても#includeで…。
命名規則に関する書籍ってないのかな?
FTPクライアントで接続処理、ダウンロード処理のクラス名は何がいいでしょうか?
FtpRequest FtpResponse
738 :
736 :2006/02/19(日) 14:29:29
>>737 わかりやすいクラス名ありがとうございます。
さっそく利用させて頂きました。
>>723 「せいきひょうげんでちかんする」は電車とかで言い辛いな。
「ダメだったらエスケープしろよ」みたいな。
>>739 ボソボソ
・・・チカン・・テクニック・・え?ワイルドカード?・・
ちがっ、セイキヒョウゲンで・・でさ、対象が「あああいい」ってなってんじゃん・・
いやそれがうまくいく時とだめな時があって
・・・そりゃもちろんスペースはあったらまずいけど・・・
・・・グループでやればいいわけで・・・そう囲むの・・・
・・あー、たしかになー、コロンとか使ってるのはヤバいわ。そんな気なくても
引っかかったりしてしまうよな。・・・
・・・やったことくらいあるって・・・え?Perlのman?たしかに初め見た時は抵抗あったけど・・
strip?これだらニシキヘビ使いは・・・・
ボソボソ
なんつーか精神的に「永遠の中学生」の匂いがするな。 俺はそこまで外道に生まれなくてよかった。 安達祐実ならここで『一生青春してろ』ってつぶやくところかw
つまんね
しかし
>>742 の時計が止っていることは確かだな。
流れがつまんね。別な話しとけ。 安達祐実なんか興味なし。
>>745 すみません あなたのスレだとは つゆ知らず
妄想ゆんゆん
ログインしたユーザが過去に投稿したことがあるかどうかをBoolで返すメソッド名は どんなのをつけますか? is_posted だと文法的に間違ってるのでどうしようかと… had_posted ?とかですかねぇ。
is_habitue だべ。
user{id; account_name; posted_in_past};
>>750 habitue ってなんでつか? 冗談なのかもわからないでつ…
> had_posted これで良いんじゃないかなあ。
had_postedでいいと思うぞ
見た感じわかりやすい
>>750 みたいなのは絶対わかりにくいでしょ
ちなみにis_postedも文法的には間違ってない
コンストラクタの引数に、メンバのコレクションが格納できる最大数を渡します。 その引数の名前は何がいいですか? 正直にmaxNumberOf...だと長すぎるので
maxCapacity
―― 短くなかったらもっと短かっただろう かの哲学者カントはこう言いました。 その心は、 (説明がこんなに)短くなかったら(理解に要する時間は)もっと短かっただろう。 変数名を短くしよう、という努力はいったい何のためでしょうか? 「それ」によって得られる利益は、「それ」によって失われる利益より大きいと 本当に言えるのでしょうか。
>755 capacity limit max_size
>>757 まあ、哲学者がプログラムをメンテするわけじゃなし。
感じの変数名が使えれば、もちろん YES さ。
過去完了? has_postedのほうがいいんでない?
ゆとり世代ですか?
間違ってる? 経験だから現在完了でしょ
has_posted だと、「もう投稿したか」っていう意味にとられるよ。 てか、beforeとかeverとかの時間の幅がついて初めて経験の意味になる。 ただ単に現在完了使ったんじゃ、やっぱり完了の意味にしかならないだろう。
もう、virginにしる
メ欄そのままだった☆(ゝω・)vキャピ
キャッシュが有効である(expiredされていない)のって、何て言えばいいでしょう? alive とも valid とも違うような気がして……
Cached
expired=falseだと駄目な理由は?
でもhad_postedだとどうとっても過去完了にしかならないよ
has_been_postedは?
それだと「(その人が)投稿されたことがある」になるw
おいおい突っ込みの方がボケもやってどうするw
>>771 のことだよw
posted_before でいいんじゃね
has_posted_before でいいじゃんもう 折れは has_posted でいいと思うけどな 英文なら間違いだろうが、これはプログラム上の変数だし、普通は誤解されないと思われ 「完了」の意味に誤解されそうな文脈なら before とか付けて対処すべきだとは思うけど had_posted はどう見ても間違い 変数だからといって意味が全然通じない
775 :
766 :2006/02/24(金) 00:11:06
>>768 expired=false でも駄目ってほどではないと思うけど、
日本語で考えたとき二重否定っぽいのがちょっとひっかかって……
こういう考えっておかしい?
そんなこといったらNULLなんて使えないじゃんw if (a != NULL) DoSomething; Cache が生きているかどうかってのがどういう種類のプログラミングで 必要になるのかわからないんで不適切かもしれないけど、 どうしても「expiredじゃない」って意味の表現にこだわるなら availableとかどうっすか?
scheme とかだと識別子に ? が使えるから posted? で十分なんだけどなぁ
postがどうこうって749から始まってるのか。 要求されたものに対する回答としてはEverPostedだろうね。 俺ならそもそも意味づけを変えてIs1stPostingってすると思う。
管理側視点だったらhas_been_posted_by(user)
このOOPの時代に、かい?
posted-p
783 :
768 :2006/02/24(金) 04:56:19
>>775 expiredって別に否定じゃない気がするが
有効な状態をtrueにしたいということだろうか
メンバ変数ってどうやって区別してますか? ローカル変数はhogeHogeのような書き方だとして。 1. hogeHoge - 区別しない。→俺には無理。 2. _hogeHoge - 行間が詰まってるとアンダースコアがスペースに見える。 3. m_hogeHoge - 2文字は長い。 4. mHogeHoge - カッコ悪い。 5. hogeHoge_ - 2.と同じ問題 + hogeHoge_->open();とかが見づらい。 6. HogeHoge - クラスと区別がつかない。 メリットは自明なので、デメリットだけ書いてみた。 他にもあったら教えて。
publicならHogeHoge privateならhogeHoge
>>784 俺は君のいうところの「カッコ悪い」mHogeHogeだね。
カッコいいか悪いか、あるいはカッコ悪いとしてそれが問題かどうかわからないが
個人的にいろいろ試行錯誤した結果、これが一番コンパクトで視認性もいい。
意味的な識別性も一目瞭然だろう。
ただ、これはキャメル方式の命名を使いたいなら止めた方がいいかもね。
相性が悪いと思う。俺はキャメルなんて一切使わないので問題ないんだけど。
mHogeHogeってキャメル方式の一種でなくて インタフェースにIを付けるようなものだったのか。
>>784 メンバー変数とローカル変数だったら、
ローカル変数側を
temp_hogeHoge
とかって感じにしてローカル変数側になんらかの
意味を付加しなきゃコードの文脈的に変にならない?
ならん。 というか、そんなコード見たことないw
793 :
デフォルトの名無しさん :2006/03/02(木) 17:37:44
ゲームの一時停止と再開を pause(), resume() にしてますが、 これをひとつにまとめて pause_resume(bool) のようにしようと思ってます。 pause_resume の名前ってどんなのがいいでしょうか。
set_paused
pause_and_resume
俺なら普通にpause(bool)だな。
pause_resume や pause_and_resume だと true を指定した時にどっちになるのかわからん。
798 :
デフォルトの名無しさん :2006/03/02(木) 22:29:17
< とか > って英語で何ていうの?
というか、一つにまとめるってのはそもそも愚策だとおもう。 pause, resumeなんて短い名前使うってことはOOP使うんでしょ? だったら無理にメソッド減らすメリットはほとんどなかろう。 .NETみたいにプロパティ使える環境で、getとsetを一緒にしたい、 ってのなら合理性はあると思うけど。
less than greater than
obj.pause(!status); とかやりたいんでしょ。
setActive(bool)とかsetRunning(bool)とかsetGameState(State.Pause)とか
汎用的な関数を集めたファイルとかの名前ってどうしてますか? 今まで common.xxx みたいに common を使ってたのですが なんか違うような気がしまして。
>>803 ヘッダを集めるなよ。目的に合わせて名前を付けろ。
位置や速度を持った基底クラスで、そこからキャラクターなどに派生させようとしているのですが、その基底クラス名が思いつきません。 安直にObjectというのを考えたのですが、C#なのですでにobjectというクラスが存在しています。Object○○○というのも考えたのですが、どうもはじめにObjectを入れるのがパッとしない感じがします。何か、物理物体をあらわすクラスでいい名前はないですか?
○○○Objectじゃだめなの?
MovableType
thing
VectorObject
ゲームオブジェクトならAgentとかEntityとか。
Missile(飛翔体) Mobile(移動体)
814 :
805 :2006/03/03(金) 18:02:54
○○○Objectとしました。 そして、必ずしも加速度が必要ではなく速度だけでよい場合や 位置情報だけでいい場合があるので、それぞれに分けました。 抽象クラスのPhysicalObject 位置を持ったPositionObject : PhysicalObjectを継承 速度を持ったVelocityObject : PositionObjectを継承 加速度を持ったAccelerationObject : VelocityObjectを継承 重さを持ったMassObject : AccelerationObjectを継承 として位置を更新する関数を仮想関数にしました。
815 :
793 :2006/03/03(金) 18:11:59
返事遅れてすみません。
setActivate(bool)にしました。
1つにまとめようとしたのは
>>801 みたいなことがしたいのもありますし、
ゲーム内のオブジェクトにポーズ状態を渡すときも
void setActivate(bool b)
{
//メイン中断処理
//・・
//各オブジェクト中断処理
obj.setActivate(b);
}
ってことができるからです。
816 :
デフォルトの名無しさん :2006/03/03(金) 20:12:30
以下のクラス群で成り立ってるWebアプリケーションの、Hoge クラスの名前を考案していただきたいです。 Form ユーザーが入力したフォームの内容を表すクラス Item データベースに登録されている各項目を表すクラス FormValidationError フォームの不正記述(名前欄が空, 年齢が数値ではない etc...)を表す enum ItemCreater データベースに新しい項目を追加するクラス ItemCreater#create(Form) : Hoge 指定されたフォームの内容をもとに項目を追加し、Hoge オブジェクトを返す関数 Hoge 項目を追加する過程における各種情報を保持するクラス Hoge#item : Item ItemCreater#create によって新しく生成された項目を表すメンバ。生成に失敗した場合は null となる。 Hoge#error : FormValidationError[] フォームのValidation の結果判明した、不正な入力情報を表すメンバ。 生成に成功した(言い換えると、フォーム内容が適切だった)場合は空配列となる。
あ、↑の情報だけだと 「ItemCreationResult」でいいんじゃねーの?とか言われそうな気がするので 補足情報を。 FormValidator 入力されたフォームの内容が正しいかどうかをチェックするクラス FormValidator#validate(Form, Hoge) 入力されたフォームのvalidationを行い、不正な記述が見つかった場合は 引数の Hoge オブジェクトにエラー情報を追加する関数 ItemCreater#formValidator : FormValidator ItemCreater#create 内で、フォームのvalidationを行うためのメンバ 悩んでいることは、もし「〜Result」って名前にしてしまうと、 FormValidator#validate の引数のクラスが 〜Result になってしまうのが不自然になるのが ・・・って書いてたら分かったよ。 validate の引数を Hoge じゃなくて FormValidationError[] にすればいいじゃん。 自己解決しました。スレ汚しスマソ
818 :
デフォルトの名無しさん :2006/03/03(金) 22:22:33
function hoge (atai) { return typeof atai == 'function' ? atai.call(this) : atai; } このように、値が関数であれば一度評価して、 そうでなければそのまま返すような関数はどんな名前にすれば良いでしょう
map
apply
822 :
818 :2006/03/04(土) 09:14:08
>>819-821 ありがとうございます
eval が結構良い響きなので使ってみます……ちょっと違うけど^^;
システムコール名とかぶってる悪寒
この局所情報だけで適切な名前をつけるのは難しいと思う。 thisがどんなオブジェクト(?)かも分からんし、使われるコンテキストにも寄るし。
汎用的なライブラリとして使うつもりなんだろ
826 :
デフォルトの名無しさん :2006/03/06(月) 03:09:15
単語を変えたところで逆にわかりにくくなるだけだと思うけど。 PASSWORD_CONFIRMATION_NOT_MATCH とかは?
828 :
826 :2006/03/06(月) 04:12:50
>>827 なるほどー。
意味の正確さよりも、多少不器用でも分かりやすさを優先したほうがいいかもしれませんね。
>>827 の案も考慮に入れつつ、一晩寝てまた明日考えます。おやすみなさい。
短くしてCONFIRM_FAILED
いきなりこのスレ開いて829を見ても 何の意味だかさっぱりわからんかった。
しかも、「間違ってなきゃだめ」っぽい名前。
うーんと、「一致」って概念にとらわれ過ぎじゃないのかな? 入力フォームを二つ用意する目的は、ユーザーのスペルミス(入力ミス) を防ぐ、あるいは検出するためなのだから、そっちの方向から命名した方が 意味的にはっきりするんじゃないだろうか。 SPELLINGMISS_DETECTED_ONPASSWORDINPUT 長すぎるか。。
ああ、今辞書引いたけどmissには間違いって意味合いはないみたいだね。。 faultとかerrorの方がいいのかな。
retype error
googleとかyahooだと"Passwords do not match."みたいなこと言われた 普通にmismatch(ed)とか、boolならmatch(ed)でも
なんか血の巡りの悪いのが数人いるなあ。。 だからさあ、入力のValidationチェックで"match"なんて単語使っちゃったら 入力された値と(予め登録されている)パスワードが一致するかどうかを チェックする場面はどうすんのよ? つーかそんな簡単な答えで問題なければ826は最初から質問しないでしょ。
むしろパスワード認証のほうを PasswordCertificatedとかCorrectPasswordとかにすればいいんじゃ
だから血の巡りが悪いなあ。。 君さあ、他人の書いたパスワード扱うコードで"Matchxxxx"って出てきたら 君ならどう思うよ?
カマって君がウザイなぁ
やったぁ!って思う。
正直、ちょっとてれると思う。
明日はオレの番だと思う。
認証だとauthenticateとかcerificateとか使わないか?
あほやなぁ、 NOT_SAME でええやんヶ
非ニ鮫ズ
846 :
826 :2006/03/07(火) 02:10:56
すいません・・・たくさんレスもらっておいてなんですが
結局 PASSWORDS_NOT_CONCORDANT にしてしまいました。
どうもありがとうございました。
>>838 なるほど。名前をつけるときには、
「他人がそのコードを初めて見たときにパッと見てどういう意味だと思うか」
なんていうのも一種の目安かもしれませんね。
コメントでしっかりと意味を明示しておくことが大前提だと思うので
名前を良くするだけじゃいけないのはもちろんなんですけど。
different_passwords_given
pitch を 3文字に略すとすればどうなりますかね。
どう略しても意味不明なのでせめて後は略し方を忘れないように pit
うーん。 pchかな。かぶる語があるけど。
PHS
>>848 新しい拡張子でも作るんかな。
たったそれだけの節約のためにわざわざ略さなくても。
弊害のほうが多そうな気がする・・・。
pitch のままで問題解決できないの?
拡張子でも今時3文字に縮める理由は無いんじゃない?
必要もないのに何でも短縮しないと気がすまない奴っているからねリアルで。 習い性というか馬鹿の一つ覚えというかなんと言うか。
>>854 .html はいいけど、.mpeg は気持ち悪かったりするし、
理屈じゃないんよね。
mpegは許せるけどjpegが許せない俺。 なんでだろう。
理屈だろ。 単に、それで通ってた期間が長かったために、他の記法に慣れてないだけ。
You の世界では知らないけど世間ではそれを理屈とは言わないんじゃないか?
.jpe とかね
もっと、ペリー風に。
jpe?ナニソレ!? JPEG?JPEGのつもりデスカ!? 意味わかんない! 何?何を表現しようとシテイルノ!? 怒り? 悲しみ? 喜び? 喜怒哀楽? ネェー jpg jpgにしてくださいよー ネェー
jpeg をエロペグと言う奴がいて 褒めておいた
>>863 確かに、ヨーロッパあたりのどっかの国ではそんな発音してるかもなw
スレッドのループなんかで、ループ一回分の処理をする関数の名前って どうすればいいですか?下の例だとHoge()にふさわしい名前は? VOID MyClass::MyThread(VOID *cookie) { MyClass *myClass = (MyClass*)cookie; while (MyClass->isEnabled==TRUE) { Sleep(1); MyClass->Hoge(); } _endthread(); }
そのHogeがなにしてるかに依るだろう。
単に処理の名前が入るんでないの???
ExecuteとかPollとかThreadMainとかてきとーに
一般に、イベントループの一回分の処理を指すような名前ってありますか?
round roll popEvent
process でええやんけ
OneShot
OneKill
HandleEachEvent
例えば.NETでは全部のイベントを処理するのがDoEventsだから、 1つならDoEvent。 あるいは ProcessEventとか。 1つってことを強調したければ DoSingleEvent あるいは ProcessSingleEvent。
d_o
↑微妙に顔に見える。
>>869 単に Update とか。
ちょっと気取って Heartbeat とか。
そもそも「イベントループ」って何? Win32のメッセージループみたいな奴のことか? だったらその「一回分の処理」ってのは端的にディスパッチって言うんじゃないのか?
もう main でいいんじゃね?
meinkansuu でいいよ
主函数
非同期シリアル通信するクラス作ってるんですが、 送信バッファに積むpublicメソッドと 受信バッファの内容をコピーすると同時に受信バッファをクリアするpublicメソッド を用意してます。それぞれのメソッドの名前はどうするのが良いでしょうか。 送信にSend()使うと、受信はReceive()になるけど、バッファの内容を吐き出すのに Receive()はおかしい気が・・・。
別に普通にRead Writeで問題ないと思うけど。。 例えばReadRxBuffer WriteTxBufferで意味わかるでしょ。
渡した文字列を""で括って返す関数はどんな名前がいいですかね。 既にスクリプト周りでありそうな予感。
quote
メモリダンプユーティリティの名前に迷ってつけたのが geroppa.exeだったのは秘密だぞ
TextSS のWindowsXP(Professional)64bit対応化おながいします もしくは64bitにネイティブ対応したテキスト置換ソフトありますか? そういや64bitにネイティブ対応している2chブラウザてありましたっけ?
文字列を単純に直線状に描画するクラスを拡張して 折り返しやフォント、色変更などの機能を追加するクラスの 名前は何がいいでしょうか
RichEditBox
自分のウィンドウ持ってるとは書いてないよ。 ゆとり教育の(w TextDrawerとしかいいようがない気がする だってその手のものはいろんなバリエーションが考えられるわけで、 それらのすべてに機能をほのめかすような名前をふるなんて不可能でしょ。
894 :
デフォルトの名無しさん :2006/03/19(日) 14:14:37
>>891 文字列を単純に直線状に描画するクラス
の名前を教えてくれよ。
それを拡張してるんだから、それっぽい名前にした
方が良いよ。
Mojiretsu_wo_tanjunn_ni_chokusennjou_ni_byouga_suru_class_Ex
>>865 ネーミングは関係ないけど
_endthread()
は呼ばない方が良い
897 :
デフォルトの名無しさん :2006/03/20(月) 03:47:57
>>895 いいよ、その名前でも。
必ずtypedefして使うから。
>897 Javaだったりして。
名前空間がネストしてクラスもネストして長ったらしいメソッド名だと 普通に895くらい逝きそうなのがこわい。
Windowsで.iniでも.xmlでもないフリーフォーマットのテキストの設定ファイルの拡張子で 一般的なのって何がありますか? .datはなぜかWMPに関連付けられてるし
cfgとか?
yamlとかいってみる っていうか、関連付けを気にするって事は、関連付け変えるって事? もしそうなら専用の拡張子にした方が良いと思うよ。
config.sysにちなんで*.sys
904 :
デフォルトの名無しさん :2006/03/20(月) 21:32:06
generate_tree
lexer って言うんだから lex でもあまり違和感はないな でも構文木を生成するなら慣用的には parser / parse って言うんじゃねえかなあ lexer は字句解析 parser は構文解析 lexical analysis は tokenize する時点で終わっとる
907 :
904 :2006/03/20(月) 22:49:02
ドトネトでのイベントの命名に関してなのですが、 クラスのプロパティの値が変わったときにのイベントは普通“〜Changed”ですよね。 では、プロパティのセッターにアクセスされたときに、 値が変更された/されないにかかわらず生成するイベントの名前って 何かいいのないでしょうか?
〜Set 〜Accessed
SetterAccessed
文句言うわけじゃないんだけどちょっとベタですよねw AccessedじゃGetかSetか分からないし、SetterAccessedはちょっと長い気が。 Writtenってのも考えたんですがどうもしっくりこない。 .NETのクラスライブラリでは該当するようなイベントがあるクラスって何かないのかな。
set の過去分詞は set なんだから 〜Set でいいんじゃねーの
〜Changedは過去分詞じゃなくて動詞の過去形
おいおいw これもゆとり教育の成果(
>>915 じゃあChangingなの?
ただ、
>>908 は雪駄が呼び出されたことを管理する目的を述べるべき。
命名のためにはたぶんそれが有意義なのではないかとも思われ。
917 :
908 :2006/03/22(水) 19:36:43
>>916 例えばこんな場合にそういったイベントが欲しくなると思います。
1) クラスAはプロパティHoge(数値)を持つ。
2) フォーム(ビュー)クラスにはテキストボックスがあり、クラスAのオブジェクトaの
プロパティHogeの入力フォームと表示機を兼ねている。
3) テキストボックスは、オブジェクトaのHogeChangedイベントで表示を更新するようにする。
3) プロパティHogeの数値には設定可能範囲を持たせたい。この場合、この設定可能範囲は
当然ビュー側ではなく、プロパティHogeを持つクラス側で管理したい。
4) 具体的には、セッターで範囲外の数値を設定しようとした場合、
例外を投げるのではなく単純に無視するようにしたい。この場合、
当然HogeChangedイベントは生成しない。
5) ユーザーによってテキストボックスに数値が入力されると、ビューはその値を
Hogeに設定する。このとき、入力された数値がHogeの設定可能範囲外だった場合、
HogeChangedイベントは発生せず、テキストボックスの値は更新されない。
(入力された不正な値のまま!)
こんな場合に件のようなイベントがあれば、テキストボックスの表示の更新を
hogeChangedではなくこのイベントで行うことでこの問題を解決できます。
Delphiなら迷わずchangingだが.netだとそういう名前のは少ないのか?
文字列(というかメモリ)から制御コードを取っ払って表示可能な文字だけにする関数 printablize って変? >ウェブ printablize の検索結果 3 件中 1 - 3 件目 (0.68 秒) ・・・
be_printable
なんで素直にRemoveControlCodeとかRejectControlCodeじゃいけないんすか? ちょっとばかり文字数を節約するため? 可読性を犠牲にして?
>>919 make printable
>>921 意味が違うだろ。コードの意味を名前で表すことは有意義だ。
実際にコントロールコードの削除だけでは望む結果にならないかもしれない。
>>923 --
// 印字可能にする
RemoveControlCode(s);
--
↑のようにコメントが必要になるよりも
↓のようにコードだけで意味が通るようになっているほうが良い。
--
MakePrintable(s);
--
実際には
void MakePrintable(string s) { RemoveControlCode(s); }
になっているかもしれないが、
その場合でもこの関数には存在意義がある。
やっぱり意味わからん、少なくとも俺には・・・ 率直にいって、MakePrintableって表現を「意味が通る」って 言語感覚はちょっとおかしいんじゃないかと。 もう少しマイルドに表現すれば、つまりMakePrintableってのは多義的でしょ。 どうとでも解釈しうる。 今ここでの話の文脈を知らずに"make printable"という表現だけ見て、 それが具体的にどういう動作を意味するか想像可能とは思えないね。
926 :
デフォルトの名無しさん :2006/03/23(木) 01:19:56
>>925 横レスだけど、普通に分かると思うよ
makePrintable()
SanitizeForPrinting() SanitizeStingsForPrinting()
>>925 おまえが "make + 形容詞" で「〜にする」という用法を知らないだけ。
sanitizeって厨臭いな。
受け売り!出た!受け売り出た!得意技!受け売り出た!受け売り!これ!受け売り出たよ〜〜!
>>928 いや、そんなことは知ってますって
使役動詞なんて中学英語でしょw
まあ個人的見解だけど、こういう風に「このフレーズは今俺の頭の中にある文脈から
切り離されて、予備知識なしでこれだけ見て意味わかるだろうか?」を
自己検証できない人が読解不能のウンココードを書くんだと思う。
やりたい事は「印刷可能にする」って事で、「制御文字を除く」ってのは 具体的な手段だよね。 「印刷可能にする」ために具体的に行うことはいろんな可能性があって、 「80桁で改行して左端にタブを付ける」事かもしれないし、 「ページ左側のメニューとバナー広告を消す」事かもしれない。 925が多義的だと言ってるのはこういう事じゃないかと。 で、目的が分かる(makePrintable)と手段が分かる(removeControlCode)と、 どっちが良いかどうかは場合によるんじゃないかな。 具体的に実装を知りたいようなケースもあるだろうし。 オブジェクト指向で設計している時だったら、 「具体的に何をするかはサブクラスによるが、makePrintable()を呼ぶと このインスタンスは印刷可能になる」っていう風に抽象化しておきたい ケースもあるかもしれない。 919がどの状況にあるかは本人が分かってるんじゃない?
>>931 使役って動詞と組み合わせて使うのを言うんじゃないの?
ところで remove unprintable ならいいのか?
>>917 雪駄に不当な値を入れたら冷害を投げる、ってのはどう?
# そうでもしないと、呼び出し側は不当な理由を特定しにくそうだけど、それはいいの?
935 :
デフォルトの名無しさん :2006/03/23(木) 03:53:46
ToPrintableString
936 :
デフォルトの名無しさん :2006/03/23(木) 03:57:34
ConvertToPrintableString
937 :
デフォルトの名無しさん :2006/03/23(木) 08:47:01
RemoveControlCodeとかRejectControlCode これだけだと、なんのための制御文字を取り除くのかわからん こういう奴がアセンブル言語見たいな一行一行コメント書くんだろうな //印刷のために制御文字を取り除く //印刷のために〜
仕様が明らかなユーティリティ関数の用途が何の為かなんてどうでもいいだろ。
というか、普通メソッドの動作仕様がわかれば必要十分で、
そのメソッドをこの目的に使え、なんてことを命名に盛り込むのは
キチガイの所業としか思えんな、悪いけど。
本当にPGなのかな
>>937 は
940 :
デフォルトの名無しさん :2006/03/23(木) 22:37:33
int i(void* var); 最高だよ。やってみな。
>>941 気付かなかった。
どこの山の神様の話かとw
943 :
908 :2006/03/25(土) 00:38:49
>>934 そういう用途に例外ってメカニズムを使うのが正攻法なのかどうか、
っていう神学論争はひとまず置いて例外を投げるようにしたとしても、
それでも困る場合があるんですよね。
具体的には、例えば917の例で数値の表示形式を、小数点第三位まで表示することを
強制したいとします。(e.g. 1.000, 3.142, 1.414)
このとき、プロパティHoge = 1のとき、ユーザーが"1"を入力すると、
当然HogeChangedイベントも例外も発生しないので表示はユーザーが入力した"1"
のままとなってしまいます。
だからやはり、例えばこのような場合には
>>908 で書いているとおりの
セッターにアクセスされたときにとにかく生成されるイベントが必要になってくるんじゃないかなと。
候補一覧があってキーワードを入力して 候補の表示をリアルタイムに絞り込んでいくような 動作、機能は何というでしょうか?
インクリメンタルなんとか
suggest
squeeze
949 :
デフォルトの名無しさん :2006/03/26(日) 17:04:34
AutoComplete
isearch
chikachika
narrow
質問。 categoryとsectionなら階層的にはcategoryの方が上位だよね?
カテゴリは必ずしも等価に扱えるわけではない気がするけど、 セクションは各々がある性質を持っているような気がするから、 カテゴリのほうが上位な気がするよ。
>>955 サンクス。
categoryより上位の分類を新設したいんだけど、
classなんてのが妥当かなあ。
>>954 辞書見てみたけど、section は "物や場所の一部" を表わす言葉という印象だったよ。
実装方法にも依るんだろうけど、
単純に category を入れ子構造にするのはいかが?
category subcategory subsubcategory subsubsubca(ry
最後は catego(ry とするべきだったな
生物分類 phylum/division(門)>class(綱)>order(目)>family(科)>genus(属)>species(種)>variety(変種)
こんな感じで使える機能のクラス名・メソッド名はどんなのがいいでしょうか。 単一スレッドで多重的に呼ばれうるコードを保護するのが目的で、 あまりマルチスレッドを連想させない物がいいです。 bool TryEnter(void *p) { if(Hash[p]) return false; Hash[p] = true; return true; } Leave(void *p) { Hash[p] = false; } sample if(TryEnter(object)) { ... Leave(object); }
>>962 bool TryEnter(void *p)
{
if(Hash[p]) return false;
Hash[p] = true;
return true;
}
これなんかオカシくねえか?
つーか、俺の理解が正しいとすれば、
これってわざわざクラス作ってやるようなことなのかな。
余計分かりにくくなるだけじゃない?策士策に溺れる、だよ。
スレ違い
968 :
デフォルトの名無しさん :2006/04/05(水) 09:21:39
>>962 このコードのどこに排他の仕組みがあるのか
詳しく説明しろよ。
スレ違い
>962 ループがあるかも知れないグラフを辿るときのコードの一部に似てなくもないな。 グラフだとノードを既に調べたかどうかのチェックで似たような処理をする。 (ノード自身のデータ構造ににその情報を書き込めないときにHashとか使う。) その場合だと状態保持に使うデータ構造(例えばHash)にseen, unseenとか使って 見たとマークするのにsawとか書いたコードを見かけたな。
971 :
worm :2006/04/08(土) 20:07:19
。。コ??g、ハ。「奢モテ、ホ・「・アゥ`・ネ・ユ・ゥゥ`・爨ホ・キ・ケ・ニ・爨タヲ、ネ、キ、ニ、、、?、ホ、ヌ、ケ、ャ。「 ・ッ・鬣ケテ、ヌ据、ヌ、、、゙、ケ。」。ク・「・アゥ`・ネ。ケ、テ、ニ・ユ・鬣ケユZ、ハ、ヌ、ケ、ヘ。「ヨェ、熙゙ 、サ、ヌ、キ、ソ。」、ス、ホ、゙、゙抱、ッ、ネ。クenquィコte。ケ、ハ、ホ、ヌ、ケ、ャ。「我、ハe、ャサ?、ク、テ、ニ、、、゙、ケ(^^;。」 。クenquete。ケ、ヌ、筅、、、、ヌ、ケ、ャ。「、チ、遉テ、ネ壥ウヨ、チ杉、、。」、チ、ハ、゚、ヒモ「ユZ、ヒ、ケ、?、ネ 。クquestionnaire。ケ。」、「、ウ、?、ヌ、、、ッ、ォ、。ゥ`。「、キ、ォ、キ、ハ、。。「、、、゙、、、チ、?、ォ、? 、ヒ、ッ、、、キ。「、筅ヲ、チ、遉テ、ネカフ、ッ、ハ、鬢ォ、、、ハ。「、ネ。」 。。、ハ、ォ、、、、テ?テ。「モミ、熙゙、ケ、ヌ、キ、遉ヲ、ォ」ソムヤ、、轍、ィ、?、テ、ニキスマヌ、筍」
972 :
worm :2006/04/08(土) 20:16:41
う、文字化けした、、。なんでや、、。 多分自分で何とかせいという啓示なのだろう、きっと。 すんません失礼しました。
LinuxなどというマイナーOS使ってるから・・・
?Egな、}bのアンケ?トフォ?ムのシステムを恬?、としてい?E里任垢?氈? クラス兆でx魔ナいます。仝アンケ?ト々ってフランス孳なんですね、岑りま せんでした。そのまま{?くと仝enqu┷te々なのですが、uрネeが? E犬辰討い泙宏^^;。 仝enquete々でもいいんですが、ちょっと}ロ隔ちx翌「。ちなみに哂孳にす?E麦 仝questionnaire々。んんん、こ?E任い?C?C?`、しかしなぁ、いまいち?E?Cqd にくいし、もうちょっと玉くならんかいな、と。 なんかいい? E\?ム个蠅泙垢任靴腓Δ?B壬圓qQえ?E辰瞳熟鬚任癲?? Shift_JIS で保存したテキストを EUC-JP で開けば半分くらい解読できる。
>>974 EggなBのアンケートフォームのシステムを まで読めた
以前、文字列を受け取って strncmp 関数でコード中に埋め込まれている正解と比較するという すごく適当なパスワードをかけたときに verifyPassword という名前を付けた。 最初は check〜 にしようかと思ったが何か違うような気がして verify〜 でも違和感はあったが、悩むべきところではなかったので適当に書いてしまった。 今思えば compare にしとけば良かったんだろうか いつも頼りない英語で変な名前ばかり付けてるが これだけが今でも気になってしょうがない
↑命名の対象は関数でした
質問なのかチラシの裏なのかどっちだろw CheckPasswordMatching GetPasswordMatching IsPasswordMatch CertifyPassword
979 :
デフォルトの名無しさん :2006/04/09(日) 22:52:56
文字配列のメンバ変数だけの初期化関数の名前が…
例外を投げるならvalidatePassword、投げないならpasswordIsValidかな。 if文の中で書いたときに英語っぽくなるようにisは先頭に持ってこないことにしてる。 if ( passwordIsValid(pwd) ); オブジェクト自身のメソッドにするときはisから始めるようにしてる。 if ( pwd.isValid() );
パスワードのチェックをインスタンスメソッドでやるの? アリエネ。クラスメソッドにするでしょ。 それに判定結果を例外で投げるって何よそれ。超絶発想だな。 ついでにpasswordIsValidが英語っぽいとかいう感覚も何言ってるかよくわかんない。
>>981 >ついでにpasswordIsValidが英語っぽいとかいう感覚も何言ってるかよくわかんない。
は分からんでもないが、
>パスワードのチェックをインスタンスメソッドでやるの?
>アリエネ。クラスメソッドにするでしょ。
どんな流れのコード、構造かも不明な状態でなんでありえねーのか分からんな。
>それに判定結果を例外で投げるって何よそれ。超絶発想だな。
判定のみを行うメソッドならおれもやらないが、
パスワードの検証失敗時に例外ってのは別にありえなくもない。
入力ストリームのインターフェースクラスを作ってるんだけど、 1単位量あたり何 bit 読み込むかってのを返すメソッドの名前って何て書けばいい? 例えばバイト単位で扱うストリームクラスなら 8、ビット単位で扱うなら 1 を返すメソッドなんだが、いい名前が思いつかない。
多少古めかしいがRecordSize
986 :
984 :2006/04/13(木) 13:03:50
>>985 サンキュ。でもそれだとレコード全体のサイズっぽい感じがする……。
多少賢そうにquanta
988 :
984 :2006/04/13(木) 14:58:05
>>987 それカッコイイなw
でも返す値の単位がビットであるってことがわからない……(´・ω・`)
bitWide
UnitBits UnitBitCount
単位はBitStreamとかクラス名に盛り込むべきでは。 Streamクラスの読み書き単位が1bit単位だったらビビル。
bitsPar〜
993 :
984 :2006/04/13(木) 18:06:13
>>989 ,990
いいね。
両方を併せて BitPerUnit とか思いついた。
英文法的におかしくないのなら使ってみようかと。
>>991 Stream はインターフェースクラスで、それを実装する形で
BitStream やら ByteStream やらを作ろうと思ってる。
で、BitStream は必ず 1 を返して、ByteStream は必ず 8 を返すようにするつもり。
ビット数を返すってマジなの?w 7Bitとか19Bitとか半端なデータ吐かれても 激しくまいっちんぐなだけだと思うんだけど。 なんかフォンノイマン型と全く違うアーキテクチャでプログラミングでもしてるのかなw 普通単位はバイト数でしょ。 名前は、CのSizeOfから意味を連想しやすいSizeOfRecordとかがいいと思う。 これをファイルの全体の長さだと思うなんて普通はありえん。 RecordっていえばデータベースとかPascalのレコードのころ指してるんだなと 普通は思うでしょ。
>>994 >984がどうだかは知らんが、ストリームにも色々あるんだよ。
例えば圧縮符号化された動画のビット・ストリームのデータなら取り出したまとまりは
マシンのワードの幅に対して半端な長さってこともある。
(データは圧縮符号化されていることが重要で
専用ハードウェアとかDSPの利用を専ら意図してたりはするが、
それをPC上のソフトウェアで取り扱わねばならないケースはあろう。)
【設計厨】クラス名・変数名に迷ったら書き込むスレ。Part7【お断り】
↑文字数オーバーだから
↓早く立てなさい
銀河鉄道999
おれは777のデザインが好きなんだが。
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。