クラス名・変数名に迷ったら書き込むスレ。Part21
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2012/01/22(日) 11:04:44.57命名規則や設計の善し悪しについて議論するのは基本的に禁止。
前スレ
クラス名・変数名に迷ったら書き込むスレ。Part20
http://toro.2ch.net/test/read.cgi/tech/1311942721/
0002デフォルトの名無しさん
2012/01/22(日) 12:13:51.18> 前スレファイル名議論
住所の最後が名前、
パスの最後がファイル名、みたいなもんだな。
できるだけ簡潔なものを選ぶ余地がある。
0003デフォルトの名無しさん
2012/01/22(日) 12:16:17.02>>前1000
極論ではなく一般論
それもコーディングだけではなく自然言語も含めたより広い世界での一般論
極論してるのはそっちだよ
0004デフォルトの名無しさん
2012/01/22(日) 12:21:28.44馬鹿は来るな
0005デフォルトの名無しさん
2012/01/22(日) 12:27:47.26じゃあお前が帰れよ
0006デフォルトの名無しさん
2012/01/22(日) 12:29:10.59だからお前が失せろ
0007デフォルトの名無しさん
2012/01/22(日) 12:35:28.15だから馬鹿はお前なんだからお前が消えねーとだめだろ
説明しないとわからんほど馬鹿なのか
0008デフォルトの名無しさん
2012/01/22(日) 12:36:44.58さっさと失せろ馬鹿
0009デフォルトの名無しさん
2012/01/22(日) 12:43:01.20>>4
0010デフォルトの名無しさん
2012/01/22(日) 12:44:05.39>>4
0011デフォルトの名無しさん
2012/01/22(日) 12:46:09.870012デフォルトの名無しさん
2012/01/22(日) 12:53:51.51それ同じ事を言い方を変えただけ。
「その機能や概念を示す」のと「機能を読み取れること」のどこが違うんだ。
それなりに複雑な機能をもったクラスやメソッドの機能を短い名前で完全に表現
できないのは当たり前で、仔細な点は捨象して大枠の機能を抽象した名前を付けるに決まっている。
馬鹿じゃないのか。
0013デフォルトの名無しさん
2012/01/22(日) 13:04:44.98>「その機能や概念を示す」のと「機能を読み取れること」のどこが違うんだ。
例を出して言えば「オイラー方程式」が前者で「理想流体の運動法則」が後者だ
どちらも同じ物を示しているが前者は機能や概念を隠蔽した名称だ
ぜんぜん違うだろ?
そして議論で使うのはどちらが自然かといえば前者だ
後者をいちいち使うのはあまりにもクドい
0014デフォルトの名無しさん
2012/01/22(日) 13:05:17.16> だったらutf8だとかeucだとか文字エンコードも併記すべきな気がするぞ…
併記すべきかどうかは場合による
複数の文字コードを扱っているのであれば、併記しなければ分からない
扱っている文字コードがOSや環境のデフォルトだけであり、
あるファイルフォーマット内の文字列部分を処理しているなどなら、
文字エンコードを併記する必要性は感じない
0015デフォルトの名無しさん
2012/01/22(日) 13:07:17.15>できないのは当たり前で、仔細な点は捨象して大枠の機能を抽象した名前を付けるに決まっている。
あと一応言っておくが俺はクラス名やメソッド名を短く省略しろとは言っていない
狭い範囲、スコープに限定された文脈の中では短いものを使えと言っているのだ
>馬鹿じゃないのか。
それを読み取れなかったお前がBAKAです
0016デフォルトの名無しさん
2012/01/22(日) 13:10:00.14まだいたのか
消えろ馬鹿
0017デフォルトの名無しさん
2012/01/22(日) 13:10:33.50>>16
0018デフォルトの名無しさん
2012/01/22(日) 13:11:54.27>>16
0019デフォルトの名無しさん
2012/01/22(日) 13:14:00.67神様ももうすこしIQ平等に分けてあげればよかったのに罪なことするぜ
0020デフォルトの名無しさん
2012/01/22(日) 13:14:28.26なるほど俺の誤解みたいだね。っていうかまさかそこまで馬鹿とは思わなかったw
要するに、
String.GetLength()
などという機能をそのまま表現した名前はよくないから、
String.func001()
String.YamadaTarou001()
のように単なる識別子以上のものではない名前を付けろという訳だ。
関数名と機能の対応を参照するバインダーがないと読めないコードが存在するって
都市伝説、あれは本当だったんだなw
こんなガチ馬鹿がどうしてこんなスレにいるんだろう。
0021デフォルトの名無しさん
2012/01/22(日) 13:15:55.22>>15
ちょっと前のレスも読めない馬鹿がなんでいまだに生きてるんだろう
0022デフォルトの名無しさん
2012/01/22(日) 13:17:47.36死ねよ馬鹿
0023デフォルトの名無しさん
2012/01/22(日) 13:18:08.58>>19
0024デフォルトの名無しさん
2012/01/22(日) 13:19:25.56>>19
0025デフォルトの名無しさん
2012/01/22(日) 13:21:25.86それはクラスというひとつの大きな単位の中のメソッド名ですよね
>>15 で彼は
> あと一応言っておくが俺はクラス名やメソッド名を短く省略しろとは言っていない
> 狭い範囲、スコープに限定された文脈の中では短いものを使えと言っているのだ
と言っているので、それは反論の方向としては間違っていると思うのですが
たとえば、
void func () {
*** = String.GetLength()
場合の***の部分などの場合の事だと思います
0026デフォルトの名無しさん
2012/01/22(日) 13:23:04.17間違いを指摘されると「俺の真意はお前の理解と違う」ってか。
みっともない奴だな。
前スレの>>992は俺が書いた>>982に対する反論なんだから、そんな言い訳が通用する訳がない。
どんなクルクルパーだよ。
0027デフォルトの名無しさん
2012/01/22(日) 13:29:28.19なんて言ってる奴が一人でも居たか?
そんな奴いねえよ一人も。
誰と戦ってるつもりなんだろうなまったく。
0028デフォルトの名無しさん
2012/01/22(日) 16:13:41.990029デフォルトの名無しさん
2012/01/22(日) 16:20:24.34superHogeCountWithPiyo
pugeraDescription
スコープの狭さに応じて単語を省く
例えばローカル関数であれば、
countWithPiyo もしくは count
pugeraDesc または desc
できる限り略語を使わない
×superHogeCountWithPiyo → shCountWithPiyo
×pugeraDescription → pDesc, pdesc
そもそも短い単語を略す必要はない
×cnt ○count
×idx ○index
0030デフォルトの名無しさん
2012/01/22(日) 16:25:59.61○ i
0031デフォルトの名無しさん
2012/01/22(日) 16:31:58.47単語を略すのであれば、number (of) → num みたいな中途半端な略し方ではムラが生じてしまう(numでは生じないだろうが)ので、一文字 number (of) → nまで略す
その単語の略語にムラが生じることはないだろうと自分で確信が持てるのであれば、使うことはある
例えば、Description は desc 以外に略語を持たないと判断できるし、Information は info 以外の略語を持たないので、狭域スコープではこれを使う
Temporary は temp と tmp が存在するので、略したいときは 一文字「t」まで略する
0032デフォルトの名無しさん
2012/01/22(日) 16:34:16.89ごく短い、例えば3行以下の関数ローカルスコープであれば一文字でもかまわない
またはループカウンタとしてのcやiは、自分では許可している
0033デフォルトの名無しさん
2012/01/22(日) 17:32:24.150034デフォルトの名無しさん
2012/01/22(日) 18:27:30.31既にメソッドが大きすぎるか、メンバ変数の場合はそれらが多すぎる。
fooBarBazList =
appleBeerList =
codeDoorList =
みたいに併記しているような場合、うまくいくと
list =
これで住むような可能性がある。
0035デフォルトの名無しさん
2012/01/22(日) 18:45:00.42うむ。コーディングの技術がしっかりしてればほとんどの識別子は最低限まで縮めても問題は起こらないよね
というか問題が起こらないように作れると良い設計になってることが多い
0036デフォルトの名無しさん
2012/01/22(日) 18:50:51.46struct A{int x,y;}a;のaじゃなく
後から読み解く奴の身になってx,yのどちらか必要な方だけを取り出して書けよと
0037デフォルトの名無しさん
2012/01/22(日) 18:54:09.00クラスはまずあり得ない。
皆無とは言わないが、むしろ例外的。
そういう特殊な前提がないと成立しないようなアホみたいな議論はするだけ時間の無駄。
0038デフォルトの名無しさん
2012/01/22(日) 18:55:18.87丁寧なコメントが消臭剤でしか無いような場合があるのと同様に、
説明的な変数が消臭剤でしか無いような場合があるな。
早い段階ですべきは、元の悪臭漂うクソ構造を改めること。
0039デフォルトの名無しさん
2012/01/22(日) 21:51:39.52就活中
(p)http://livedoor.blogimg.jp/jin115/imgs/3/1/31a6f8e6.jpg
就職後
(p)http://livedoor.blogimg.jp/jin115/imgs/2/b/2b790359.jpg
街の人(やらせ業者)募集中です
0040デフォルトの名無しさん
2012/01/22(日) 21:55:46.452枚の画像は1年間開いてるからね
その娘は就活うまく行ってそのインタビュー場所の近くの会社に勤めてるって事
0041デフォルトの名無しさん
2012/01/22(日) 22:02:09.67インタビュワーも停まってる車も天候も変わってないな
0042デフォルトの名無しさん
2012/01/22(日) 22:05:40.980043デフォルトの名無しさん
2012/01/22(日) 23:01:57.25とりあえずつけたクラス名やメソッド名が外人的にあり得るか?否かをしらべるのに便利やった。
0044デフォルトの名無しさん
2012/01/22(日) 23:02:32.000045デフォルトの名無しさん
2012/01/22(日) 23:06:42.210046デフォルトの名無しさん
2012/01/22(日) 23:49:04.93count_hogeもcHogeもほとんど見易さ変わらないだろ
0047デフォルトの名無しさん
2012/01/22(日) 23:50:37.150048デフォルトの名無しさん
2012/01/23(月) 00:07:11.95もはやなんだかわからんだろそれ
0049デフォルトの名無しさん
2012/01/23(月) 00:07:43.46チャンネルだよ
0050デフォルトの名無しさん
2012/01/23(月) 00:24:34.38その発音の方がより本物に近いのは分かるが、なんか気取ってて嫌
0051デフォルトの名無しさん
2012/01/23(月) 00:51:54.960052デフォルトの名無しさん
2012/01/23(月) 00:55:35.950053デフォルトの名無しさん
2012/01/23(月) 01:00:44.280054デフォルトの名無しさん
2012/01/23(月) 01:35:21.35まさか論争に発展するとは見通し甘かった。
私が書いているのはゲームの為の周辺ツールで、個人作業です。
ですから厳密な命名規則が欲しいって程でもないんです。
#報告
一度フルスペルで書いたのですが、書き進める内に用途が広がって
キャラクターの意味に相応しくなくなったので一切なくなってしまいました。
計画性のないプログラムは、これだから・・・!
0055デフォルトの名無しさん
2012/01/23(月) 07:12:24.76違う
JISに合わせる、合わせないは全く関係ない
チャネルという言い方が気取っているように感じるだけ
>>53の中ではたった一例を挙げて、それがたまたまJISに合ってただけで
「JISに合わせること=気取っている」と解釈するのか
0056デフォルトの名無しさん
2012/01/23(月) 09:29:02.79論争になったらなったで、それを話題に盛り上がる訳で、面白いものなのだよ・・・
0057デフォルトの名無しさん
2012/01/24(火) 08:47:46.61"foo.name": "value1",
"foo.text": "value2",
"bar.name": "value3",
"bar.text": "value4"
}
みたいなデータから
{ "foo.name": "value1", "foo.text": "value2" }
だけをとりだす関数の名前を考えて下さい。
prefix = "foo."
print func(hashtable, prefix) #=> { "foo.name": "value1", "foo.text": "value2" }
今の候補
・get
・matched
・retrieve
お願いします。
0058デフォルトの名無しさん
2012/01/24(火) 12:44:06.320059デフォルトの名無しさん
2012/01/24(火) 12:59:43.820060デフォルトの名無しさん
2012/01/24(火) 13:53:38.970061デフォルトの名無しさん
2012/01/24(火) 19:31:24.01PickUpPrefixMatches
0062デフォルトの名無しさん
2012/01/24(火) 22:25:13.420063デフォルトの名無しさん
2012/01/25(水) 05:09:39.26をお願いします
0064デフォルトの名無しさん
2012/01/25(水) 05:52:35.180065デフォルトの名無しさん
2012/01/25(水) 06:42:48.58戻り値なし、引数は画面のRECTとウィンドウのRECTです
0066デフォルトの名無しさん
2012/01/25(水) 06:56:09.400067デフォルトの名無しさん
2012/01/25(水) 06:58:36.62「(ウィンドウが画面の外に出ないように防ぎつつ)ウィンドウ移動する処理」なのでは?
0068デフォルトの名無しさん
2012/01/25(水) 07:16:33.89Perlっぽいけどfilterできんじゃねーの?
0069デフォルトの名無しさん
2012/01/25(水) 07:33:33.770070デフォルトの名無しさん
2012/01/25(水) 07:35:18.000071デフォルトの名無しさん
2012/01/25(水) 08:35:58.47ウィンドウが画面の外に出ないように防ぐ処理
をお願いします
0072デフォルトの名無しさん
2012/01/25(水) 10:04:00.940073デフォルトの名無しさん
2012/01/25(水) 10:18:31.820074デフォルトの名無しさん
2012/01/25(水) 10:35:32.47const RECT & windowRect,
const RECT & screenRect);
0075デフォルトの名無しさん
2012/01/25(水) 10:38:35.72const RECT & windowRect,
const RECT & screenRect,
RECT * pOutput);
0076デフォルトの名無しさん
2012/01/25(水) 15:53:22.59消えろゴミ
0077デフォルトの名無しさん
2012/01/25(水) 16:52:12.720078デフォルトの名無しさん
2012/01/25(水) 16:56:08.63矩形 const & ウィンドウ,
矩形 const & スクリーン,
矩形 & 結果) ;
いい加減英語識別子から脱却しろ
いちいち名前付なんてくだらない作業で悩む必要がなくなって捗るぞ
0079デフォルトの名無しさん
2012/01/25(水) 17:44:29.320080デフォルトの名無しさん
2012/01/25(水) 19:34:42.510081デフォルトの名無しさん
2012/01/25(水) 20:27:27.47この手のことをする場合、例えばWindowsなら普通は、
(1) 移動中にデスクトップの上下左右いずれかの隅に達したら、その方向にはそれ以上
移動できないようにする。
(2) 移動完了(マウスアップとか)時、ウィンドウがデスクトップの上下左右のいずれかの隅を
超えていたらデスクトップの範囲内に戻す。
のどちらかじゃいかと思うんだが、ニュアンス的にどっちとも取れないな。
0082デフォルトの名無しさん
2012/01/25(水) 20:31:22.50KeepInsideDisplay()
0083デフォルトの名無しさん
2012/01/26(木) 14:55:02.780084デフォルトの名無しさん
2012/01/26(木) 15:19:16.350085デフォルトの名無しさん
2012/01/26(木) 17:50:42.230086デフォルトの名無しさん
2012/01/29(日) 22:15:43.41c=[a1, b1, a2, b2, a3, b3, ・・・] の様に1つのリストに合成するのは interleave ですが、
この逆方向の様にリスト c をリスト a とリスト b に分ける関数の名前は何が良いでしょうか
単純にリスト c のある要素を境に2つに分けるなら split や break が適切だと思いますが・・・
とりあえず今のところ、トランプカードを配る様に見えるので deal と名付けていますが、
もっと適切な名前はありますか?
0087デフォルトの名無しさん
2012/01/29(日) 22:23:01.920088デフォルトの名無しさん
2012/01/29(日) 22:29:04.30いや、だから interleave とは逆なんですけど・・・
c=[a1, b1, a2, b2, a3, b3, ・・・] を
a=[a1, a2, a3, ・・・] と b=[b1, b2, b3, ・・・] に分ける
0089デフォルトの名無しさん
2012/01/29(日) 22:32:37.46言葉で説明すると
リストcの n/2 番目の要素をリストaのn番目の要素に
リストcの (n/2)+1 番目の要素をリストbのn番目の要素に入れる
そんな分け方です
009089
2012/01/29(日) 22:34:00.99リストcの 2n 番目の要素をリストaのn番目の要素に
リストcの 2n+1 番目の要素をリストbのn番目の要素に入れる
でした
0091デフォルトの名無しさん
2012/01/29(日) 22:36:04.19distribute なり divide とかでいいんじゃね?
0092デフォルトの名無しさん
2012/01/29(日) 22:49:12.440093デフォルトの名無しさん
2012/01/29(日) 22:58:01.90公開するとなるとさらに慎重になりますよね
0094デフォルトの名無しさん
2012/01/29(日) 23:09:25.39interleave ⇔ deinterleave
で良いのでは?
単に1つ(or n)おきに取り出すだけならdecimateもありだと思う。
0095デフォルトの名無しさん
2012/01/29(日) 23:12:20.48>>94
decimateはdec-に「10ごと」という意味があるのと、
その10ごとの1を「処刑する」という意味があるのがよろしくない気がする。
0096デフォルトの名無しさん
2012/01/29(日) 23:34:20.860097デフォルトの名無しさん
2012/01/30(月) 00:51:30.28状況次第だけど、ソフトウェアの名前そのまま、もしくは逆に一般名詞にすることが多いかなあ。
0098デフォルトの名無しさん
2012/01/30(月) 00:54:32.50そうするとカフェで仲間と話し合うときにハッカーっぽさがましてカッコイイ気分になれる
0099デフォルトの名無しさん
2012/01/30(月) 20:54:02.35(0.5なら弧度法でのpiに、1.0なら弧度法での2piに相当する)
0100デフォルトの名無しさん
2012/01/30(月) 21:19:54.86意外と難しいな。
正規化って言葉がダブルミーニングになってるから、ベタにNormalizedAngleとかすると
[0, 360)だと思われそう。
それでもあえてNormalizedAngleにするしかないかもw
010189
2012/01/30(月) 22:24:10.66色々ありがとうございます
distribute は既に distributed という名前で使ってました、すいません
divide は簡潔で良さそうですね、ただ私は真っ先に割り算を連想してしまいますが
cut はどちらかというと、カードの山をざっくり2つか3つくらいに分ける事では?
deinterleave はやや長いですが、けっこうしっくりきます
関数の結果として得られる状態が容易に想像できるのがいいですね
uninterlive はググっても1件しかヒットしない貴重な言葉です
大事にしたいと思います
decimate は意味が深すぎて、使うのがなんが怖いです
と言うわけで、deinterleave の採用が決まりました
0102デフォルトの名無しさん
2012/01/30(月) 23:28:27.47このアルゴリズムを使っているプログラム内の
分割部分を divide 処理、統治部分を conquer 処理とか言ったりするの?
0103デフォルトの名無しさん
2012/01/31(火) 00:56:34.39結論から言うと言わないと思う。
だって分割部分とか統治部分とか、そもそもそんなものないでしょ。
だって分割統治ってコーディングの技法
0104デフォルトの名無しさん
2012/01/31(火) 06:20:14.45angleByRate, angleRatio
0105デフォルトの名無しさん
2012/01/31(火) 06:23:05.50クイックソートって知ってる?
0106デフォルトの名無しさん
2012/01/31(火) 07:18:22.15> 分割統治アルゴリズムは初めて聞いた
http://en.wikipedia.org/wiki/Divide_and_conquer_algorithm
http://e-words.jp/w/E58886E589B2E7B5B1E6B2BBE6B395.html
http://www.google.co.jp/search?hl=ja&site=&q=%22divide+and+conquer+algorithm%22&oq=%22divide+and+conquer+algorithm%22&aq=f&aqi=&aql=&gs_sm=e&gs_upl=771l15594l0l16076l30l30l0l0l0l0l179l2936l22.8l30l0
0107デフォルトの名無しさん
2012/01/31(火) 07:24:36.220108デフォルトの名無しさん
2012/01/31(火) 08:07:51.78お前の出す結論にまるで意味がない事はわかったからもういいよ
0109デフォルトの名無しさん
2012/01/31(火) 20:12:18.60下衆な奴だなほんと。
その「分割統治アルゴリズム」っていうのは、分割統治を使ってるアルゴリズム、
という以上の意味ないでしょ。
コード上の処理としては分割する部分も統治する部分も、そんなものはない。
なぜなら分割統治とは、コーディングの手法に過ぎないからだ。
(問題を)分割統治するのはプログラマであってプログラムじゃない。
0110デフォルトの名無しさん
2012/01/31(火) 20:16:55.150111デフォルトの名無しさん
2012/01/31(火) 20:19:11.12お前がな。
だからどう過ちか言ってみろ。
0112デフォルトの名無しさん
2012/01/31(火) 20:20:50.510113デフォルトの名無しさん
2012/01/31(火) 20:23:25.78コーディングの手法じゃなくて問題解決の手法だよ。
アルゴリズムってのはコーディング以前に考えておくものなんだよ。
0114デフォルトの名無しさん
2012/01/31(火) 20:29:33.64では「分割部分」と「統治部分」を含むアルゴリズムの話を具体的にしてみてください。
まあ無理しなくていいよ。
こんな馬鹿、そもそも分割統治の意味が分かってないとしか思えない。
0115デフォルトの名無しさん
2012/01/31(火) 20:35:20.09俺は君に一方的に馬鹿呼ばわりされただけ
誰彼かまわず攻撃してるだけなんだろうが
とりあえず訂正してもらおうか
0116102
2012/01/31(火) 20:41:50.75A という型の値に c :: A -> B という計算を行って
B という型の値が得られるとする
この時、A という型と B という型、および c という計算によっては、
f :: A -> [A']、c' :: A' -> B'、g :: [B'] -> B
という計算を用意することができて、c' を並列処理できる場合がある
自分の今まで作ってきたプログラムソースを色々分析したところ、
何となく分割統治がある種のパターンとして抽出できそうな感じがしてきた
まだ分析途中だけど、型クラス化する実験を始めている
(失敗に終わる可能性ももちろんある)
もし型クラス化できれば、型をそのインスタンスにすることで、
c' の計算を並列化した方が速いのか、直列化した方が速いのか、
LAN経由でマシン間で同時計算するとどうなるのかなどの実験が、
いちいち個別のプログラムソースの内部深くを弄らなくても簡単にできるようになる
で、c' の関数名は compute に決定したんだけど、
f の関数名と g の関数名をどうしようか考えてた
安直に divide and conquer の divide と conquer をそのまま使おうかと思ったけど、
divide はともかく、やっぱり conquer はおかしいかな
長くなりましたが、こういう経緯です
0117デフォルトの名無しさん
2012/01/31(火) 21:06:12.57分割した個々を「統治」するとみるか、個々を統治することで全体としても「統治」するとみるか。
0118デフォルトの名無しさん
2012/01/31(火) 21:10:22.17ならさっきから何を言ってるんだよ。
っていうか、どんだけ鳥頭?
>>102-103
0119デフォルトの名無しさん
2012/01/31(火) 21:15:46.550120102
2012/01/31(火) 21:27:56.98なるほど、そういう見方もあるのか
と言うか、それが分割統治の意味なのか
確かに分割統合じゃなく分割統治なんですよね
今までとくに深く考えず統治=統合で考えてた
では改めて、f は divide にして、c' はとりあえず compute にしておく
(Aを計算してBを得るのが目的なので、conquer ではやはりちょっとね・・・)
で、g に相当する部分は何が良いかな?
抽象度の高い関数なので、具体的に狭い意味を表す名前は避けたいのですが、
integrate 辺りが無難かな
aggregate って、どちらかと言うと、かつ集めてくるイメージですよね
0121デフォルトの名無しさん
2012/01/31(火) 21:34:15.220122デフォルトの名無しさん
2012/01/31(火) 21:36:17.49もともとプログラマが問題(=目的のプログラム)を小さな処理に分割して制服する、
ってだけの意味だから、統治という言葉に違和感を感じるのは当たり前。
0123デフォルトの名無しさん
2012/01/31(火) 21:45:57.67「統治」が使われてるのは政治用語の訳をそのままもってきただけだからね
「(問題の)克服」と思っておけばいいよ
0124102
2012/01/31(火) 21:50:09.67あぁ、merge は良いね
divide や compute と同じくらい短いし
>>122 >>123
そうだったんですね
勉強になります
0125デフォルトの名無しさん
2012/01/31(火) 21:51:21.740126デフォルトの名無しさん
2012/01/31(火) 21:54:07.030127102
2012/01/31(火) 22:50:03.27分割して統治したものを最後に統合する関数は merge にしました
みなさん、ありがとうございました
0128デフォルトの名無しさん
2012/01/31(火) 23:13:42.12also known as divide and conquer と書いてあるではないか。
0129デフォルトの名無しさん
2012/01/31(火) 23:16:45.50英訳なわけで、英訳時点での訳の揺れを気にしてもしょうがないよ。
0130デフォルトの名無しさん
2012/01/31(火) 23:54:31.45うむ
0131デフォルトの名無しさん
2012/01/31(火) 23:56:56.49( ´,_ゝ`)ハイハイ かわいそうに
0132デフォルトの名無しさん
2012/02/04(土) 21:31:02.378分木などの具体的な実装を意識させない名前
0133デフォルトの名無しさん
2012/02/04(土) 21:43:06.000134デフォルトの名無しさん
2012/02/04(土) 21:47:10.928分木って言葉は今日初めて聞いたから全然自信はないがw
0135デフォルトの名無しさん
2012/02/04(土) 21:53:06.05partial space
partitioned space
0136デフォルトの名無しさん
2012/02/05(日) 00:44:09.290137デフォルトの名無しさん
2012/02/05(日) 17:17:09.480138デフォルトの名無しさん
2012/02/08(水) 23:58:52.76用語どこかにのってませんか
0139デフォルトの名無しさん
2012/02/09(木) 07:15:31.160140デフォルトの名無しさん
2012/02/09(木) 08:33:13.630141デフォルトの名無しさん
2012/02/09(木) 10:37:27.66どんな変数名の付け方してるか教えてくれよん
0142デフォルトの名無しさん
2012/02/09(木) 11:14:55.910143デフォルトの名無しさん
2012/02/09(木) 11:26:28.69どういう用途なのか説明も大変ですしおすし
0144デフォルトの名無しさん
2012/02/09(木) 11:38:01.100145デフォルトの名無しさん
2012/02/09(木) 11:39:08.59解決しました
0146デフォルトの名無しさん
2012/02/10(金) 04:19:57.33・英語的には完璧とは言えない(通じるレベル)だが、日本人でも意味を連想できる単語や用法。
ちょっと迷う時がある。
前にスレで聞いたときは前者の方が良いという意見が出てた気がするが、
海外の人にソースを見せたり、外国人PGと一緒に作業したりしないのなら、後者もアリかもしれない。
0147デフォルトの名無しさん
2012/02/10(金) 07:15:46.25それでいい
0148デフォルトの名無しさん
2012/02/11(土) 20:19:39.12クラスの中のメゾットなのですが
そのクラスは「コールバックを管理する」クラスです。
そして、そのメゾットの機能は
「自分のクラスから『コールバックの実行』の機能を持つメゾットを取り除いたクラス(オブジェクト)を返す」
というものです
0149デフォルトの名無しさん
2012/02/11(土) 20:21:35.94○メソッド
0150デフォルトの名無しさん
2012/02/11(土) 20:26:18.21イタリアでは下記の料理法で調理した米料理のみを指すが、フランスではピラフの別名として用いられてきた。
0151デフォルトの名無しさん
2012/02/11(土) 20:28:05.49どうしてもメソッドにするならgetBase
0152デフォルトの名無しさん
2012/02/11(土) 20:31:21.24返すようにするんだろうね。
どっちにしろ、>>148だけの内容で名前付けろとか無理筋過ぎるけど。
0153デフォルトの名無しさん
2012/02/11(土) 20:33:03.79一応付属的な機能ですので、
継承関係は作りませんでした
0154デフォルトの名無しさん
2012/02/11(土) 20:39:37.12log.writeにしちゃったんだけど
やっぱり変?
0155デフォルトの名無しさん
2012/02/11(土) 20:39:42.74返すのは単なるコールバックのコレクション?
実行機能を除いて残った管理機能には何がある?
0156デフォルトの名無しさん
2012/02/11(土) 20:41:31.39変じゃないよ
0157デフォルトの名無しさん
2012/02/12(日) 00:39:31.96log.writtenが正しい
0158デフォルトの名無しさん
2012/02/12(日) 01:47:13.290159デフォルトの名無しさん
2012/02/12(日) 03:31:59.67プログラムをシステム側とユーザ側の2つに分けるとき、
システム側に呼ばれる、ユーザ側の関数のこと
・(イベント)ハンドラ
イベントを受信する関数
・イベント
何らかの現象が発生したことを示す
発生したことをイベントハンドラなどに伝えることを「イベントの送信」、
イベントハンドラがイベントを受け取ることを「イベントの受信」といい、
これらを活用することをイベントドリブンという
0160デフォルトの名無しさん
2012/02/12(日) 19:40:46.14};
class HogeBase : public IHoge { // ry
};
class HogeX : public HogeBase { // ry
};
class HogeY : public HogeBase { // ry
};
上のように派生クラスでよく使う共通機能を〜Baseと名付けているのですが
同じような目的で、しかし継承ではなく集約での利用を前提にしたクラスがあります
class Hoge??? { // ry
};
class HogeX : public IHoge {
Hoge??? ??????;
// ry
};
class HogeY : public IHoge {
Hoge??? ??????;
// ry
};
継承をしていないのでBaseという名前を変えたいのですが
なにか適切でシンプルな名前はありますか?
0161デフォルトの名無しさん
2012/02/12(日) 19:47:12.95HogeEngine とかいろいろ考えられる。Driverとかいろいろあるやん
0162デフォルトの名無しさん
2012/02/12(日) 19:53:55.05b = f(a, ";"); // b = "aaa", a = "bbb,ccc"
b = f(a, ","); // b = "bbb", a = "ccc"
b = f(a, 0); // b = "ccc", a = ""
というセパレータを指定して頭を引っこ抜くお手軽関数ってなんて名前がいいですか
0163デフォルトの名無しさん
2012/02/12(日) 20:12:11.35例えば、配列の先頭の要素を取り外して返すようなものはshiftという名前でperlやrubyにある。
また、文字列から一部分を取り出す(だけ。非破壊)コマンドとしてはcutというのがある。
0164デフォルトの名無しさん
2012/02/12(日) 20:14:00.81汎用性が低そうだから、その関数を使うところでの文脈に沿って決めたら良いよ
0165デフォルトの名無しさん
2012/02/12(日) 20:25:06.100166デフォルトの名無しさん
2012/02/12(日) 23:31:27.28俺が名付けたのだが strtok()
0167デフォルトの名無しさん
2012/02/13(月) 07:38:37.02静的(static)の略は何でしょうか?
0168デフォルトの名無しさん
2012/02/13(月) 10:00:15.310169デフォルトの名無しさん
2012/02/13(月) 11:35:18.64stc
0170デフォルトの名無しさん
2012/02/13(月) 11:57:38.410171デフォルトの名無しさん
2012/02/13(月) 22:28:06.92なるほど。。。
0172デフォルトの名無しさん
2012/02/14(火) 01:41:06.520173デフォルトの名無しさん
2012/02/14(火) 08:05:48.720174デフォルトの名無しさん
2012/02/14(火) 08:24:43.440175デフォルトの名無しさん
2012/02/14(火) 08:25:35.50性能的に考えると、あなた本体じゃないですかー
0176デフォルトの名無しさん
2012/02/14(火) 09:30:32.760177デフォルトの名無しさん
2012/02/14(火) 18:27:45.280178デフォルトの名無しさん
2012/02/14(火) 18:54:38.641単語の略称に a e i o u 辺りを普通は入れないという話を小耳に挟んだので、
stc を使うことにします。
ありがとうございました。
0179デフォルトの名無しさん
2012/02/14(火) 19:17:39.640180デフォルトの名無しさん
2012/02/14(火) 19:25:21.070181デフォルトの名無しさん
2012/02/14(火) 21:44:29.930182デフォルトの名無しさん
2012/02/18(土) 19:25:36.83シューティングゲーム作ろうとして、画像のようなクラス設計をしたのですが、
CProxyに当たる部分の名前が激烈ダサイ気がして夜も眠れません。
どなたか妥当な名前を付けてあげてください。
STGがイメージしにくい場合はCCharacterを「ガチャピン」に、CStatePlayer/Enemy/Bulletを
「空手出来る人」「バイク乗れる人」「ダイビングできる人」に読み替えてください。
0183デフォルトの名無しさん
2012/02/19(日) 01:36:22.750184デフォルトの名無しさん
2012/02/19(日) 04:11:38.080185デフォルトの名無しさん
2012/02/19(日) 11:02:08.29インターフェースにしないのがなんでかわからんが
0186デフォルトの名無しさん
2012/02/19(日) 11:08:19.40あるインタフェースに対して、プロクシになってる実装と、そうでないのとは作る側の仕込み。
一人でやってる場合は自前ライブラリ(または単にクラス群)を作る側と、使う側で考えてくれ。
0187デフォルトの名無しさん
2012/02/19(日) 13:09:35.44CProxyの具体的な説明が「派生クラスの代理人」だというのであれば、命名はCProxyで合ってると思うんだが
0188デフォルトの名無しさん
2012/02/19(日) 15:07:21.42JavaのSwingならJ、rubyのcソースコードではrb_。それぞれ由来があるからつけてるんだぞ?
0189デフォルトの名無しさん
2012/02/19(日) 15:09:48.59統一感無いから普通のクラスではCをつける
0190デフォルトの名無しさん
2012/02/19(日) 15:17:43.200191デフォルトの名無しさん
2012/02/19(日) 15:26:13.290192デフォルトの名無しさん
2012/02/19(日) 15:28:44.940193デフォルトの名無しさん
2012/02/19(日) 15:33:23.79俺がゲーム作ったことないからそう思うだけかと思って黙ってたが、
やっぱりそうじゃないんだな。
0194デフォルトの名無しさん
2012/02/19(日) 15:35:44.11ある範囲だけを使う時、
今はonly(Range r)などとしてるが…。
0195デフォルトの名無しさん
2012/02/19(日) 15:41:28.56なんかmaskの意味を誤解してるような気がする....
例えばサブネットマスクの意味を考えれ貰えば分かると思うが、
普通は「ある範囲だけ」っていうのこそがmaskの意味そのものじゃないの?
0196デフォルトの名無しさん
2012/02/19(日) 15:46:35.151 〈…を〉仮面でおおう[隠す].
用例
The robbers masked their faces with stockings. 強盗は顔をストッキングで隠していた.
2 〔+目(+前+(代)名)〕〈感情などを〉〔…で〕隠す,紛らす 〔with,behind〕.
用例
He masked his anger with [behind] a smile. 彼は怒りを笑いで紛らした.
0197デフォルトの名無しさん
2012/02/19(日) 15:48:39.210198194
2012/02/19(日) 16:12:30.70ビットマスクは名詞でかつ、使う時論理積になるのが想像つくからそうなのかも。
>>197
良い名前キタコレ! MaxOSXのあの機能ってそういう意味だったのかw
しかし良い名前ではあるが、「そこだけ使う」っていう感がちょっと少ない気も。
0199デフォルトの名無しさん
2012/02/19(日) 16:16:04.030200デフォルトの名無しさん
2012/02/19(日) 16:17:09.34filter
0201デフォルトの名無しさん
2012/02/19(日) 16:17:51.60勉強になるなぁ! 実績があるなら問題なし。>>197氏、ごっつぁんです!
0202デフォルトの名無しさん
2012/02/19(日) 16:20:10.21って、だから「そこだけ使う」のがまさにmaskするってことなんだけど...
なんか質問者が誤解してるみたいんなんで余談になるけど、
NMI = non maskable interruptなんて用語があるように、maskの反対は
「マスクしない」という否定による表現でしかいいようがない気がする。
0203デフォルトの名無しさん
2012/02/19(日) 16:22:28.43串
0204デフォルトの名無しさん
2012/02/19(日) 16:22:42.85くし 字、間違ったわ
0205デフォルトの名無しさん
2012/02/19(日) 16:27:27.770206デフォルトの名無しさん
2012/02/19(日) 18:22:22.59動詞exposer(エクスポゼ。動詞の末尾のrは読まない)の過去分詞形だけど、
英語にも普通に1050年ほど前に輸入されて、expose(エクスポウズ)になっている。
意味は「晒す」など。
0207デフォルトの名無しさん
2012/02/19(日) 18:23:21.800208デフォルトの名無しさん
2012/02/22(水) 21:39:03.69たとえば、A,B,Cのキーが既に使われているのにまたAが追加されようとした時とか。
0209デフォルトの名無しさん
2012/02/22(水) 21:42:22.600210デフォルトの名無しさん
2012/02/22(水) 21:43:41.750211デフォルトの名無しさん
2012/02/22(水) 22:04:05.280212デフォルトの名無しさん
2012/02/22(水) 22:13:55.900213デフォルトの名無しさん
2012/02/22(水) 23:27:02.590214デフォルトの名無しさん
2012/02/22(水) 23:30:17.980215デフォルトの名無しさん
2012/02/23(木) 01:02:36.02collision: 衝突
0216デフォルトの名無しさん
2012/02/23(木) 01:18:28.870217デフォルトの名無しさん
2012/02/23(木) 07:18:51.27互いに正反対の主張が衝突して All or Nothing みたいな
競合っていうと、競合他社のようなシェアを奪い合うみたいに、
普通は All or Nothing の状態にはならないような感じを受ける
0218デフォルトの名無しさん
2012/02/23(木) 11:43:24.39PGは猿じゃないんだからhash関連の文脈ってわかってりゃ競合でも衝突でも通じるわ
0219デフォルトの名無しさん
2012/02/23(木) 11:51:28.090220デフォルトの名無しさん
2012/02/23(木) 15:20:19.120221デフォルトの名無しさん
2012/02/23(木) 18:54:24.34svn conflict:ソースの同じ箇所を複数人が修正して自動的なマージに失敗、人間によるマージが必要
dll conflict:ロードした複数のDLLで関数名などが被ってる
コリジョン例
packet collision:同じタイミングでデータが来た
hash collision:異なるデータが同じハッシュになった
コンフリクトは意味的な競合で、どうするか人が選択したりする
コリジョンはもっと直接的な競合(衝突)で、運次第で起きるときは起きる
という感覚だけど、もちろん合ってる保証は無い
0222デフォルトの名無しさん
2012/02/23(木) 19:29:11.55already exists
0223デフォルトの名無しさん
2012/02/23(木) 20:07:47.310224デフォルトの名無しさん
2012/02/23(木) 21:40:45.67# useradd -u 99 aaa
useradd: UID 99 is not unique
0225デフォルトの名無しさん
2012/02/23(木) 23:57:17.25>>216
どっちか使っていいよ
0226デフォルトの名無しさん
2012/02/27(月) 12:29:56.06逆に、返信された制御文字列から必要なパラメータを切り出す
この1対のメソッド名をどうしたらいいでしょうか?
0227デフォルトの名無しさん
2012/02/27(月) 12:39:02.600228デフォルトの名無しさん
2012/02/27(月) 12:46:15.40CodeToParams(制御文字列, パラメータ1, パラメータ2, ...)
制御文字列 <- 通信仕様::CodeFromParams();
通信仕様::CodeToParams(制御文字列, パラメータ1, パラメータ2, ...)
0229デフォルトの名無しさん
2012/02/27(月) 12:52:31.29parse/analyze
0230デフォルトの名無しさん
2012/02/27(月) 13:50:59.31encode/decodeだと暗号化とか圧縮、文字コード変換みたいな意味合いに思ってたけど有りみたいですね
parseは考えたのですが対になる物はCompseでよかったのか・・・
0231デフォルトの名無しさん
2012/02/27(月) 13:54:27.120232デフォルトの名無しさん
2012/02/27(月) 14:19:26.450233デフォルトの名無しさん
2012/02/27(月) 21:31:38.16せいぜいinterpretくらい
0234デフォルトの名無しさん
2012/02/28(火) 01:31:05.86normalizeみたいな動詞でもいいんだけど、簡単な単語が分からない。
0235デフォルトの名無しさん
2012/02/28(火) 01:45:29.730236デフォルトの名無しさん
2012/02/28(火) 01:48:39.180237デフォルトの名無しさん
2012/02/28(火) 01:50:03.060238デフォルトの名無しさん
2012/02/28(火) 01:52:42.96プロパティ?
メソッド?
0239デフォルトの名無しさん
2012/02/28(火) 02:00:56.720240デフォルトの名無しさん
2012/02/28(火) 02:02:11.620241デフォルトの名無しさん
2012/02/28(火) 02:03:46.82単語?
0242デフォルトの名無しさん
2012/02/28(火) 02:09:44.680243デフォルトの名無しさん
2012/02/28(火) 02:26:00.91>>242
頻繁に正規表現を編集する機会がありまして、
その中でも前後の空白を許可するように書き換える、という処理が多かったのです。
たとえば、/a/ => /\s*a\s*/ という感じです。
>>240
その表現が主流みたいですね。利用させていただきました。ありがとうございました。
0244デフォルトの名無しさん
2012/02/28(火) 02:45:19.340245デフォルトの名無しさん
2012/02/28(火) 03:40:16.56parse()とかの説明に出てきそうな文章だな
0246デフォルトの名無しさん
2012/02/28(火) 08:40:43.68あんま使わないほうがいいかな?
0247デフォルトの名無しさん
2012/02/28(火) 09:54:03.98文字列側の操作になるけど、Rubyでは、strip Qtでは、trimmed だな。
0248デフォルトの名無しさん
2012/02/28(火) 11:06:40.91untrimmed {形} 刈り込んでない、手入れしてない
untrimmed board 耳付き板
(英辞郎)
0249デフォルトの名無しさん
2012/02/28(火) 11:20:18.90allowsWhitespaces
0250デフォルトの名無しさん
2012/02/28(火) 13:15:18.680251デフォルトの名無しさん
2012/02/28(火) 19:44:47.68>>234
WordSpacingとか。
「分かち書き」の和訳を調べると一番簡潔なのがこれ。
0252デフォルトの名無しさん
2012/02/28(火) 20:05:37.14質問はたぶん「分かち書き」そのものじゃなくて、
それが「可能」、それを「許す」「認める」という意味を含めた英単語だと思う
0253デフォルトの名無しさん
2012/02/28(火) 20:38:04.480254デフォルトの名無しさん
2012/02/28(火) 20:57:42.65このスレの性格を考えれば、質問者は「前後の空白を許すかどうか」を表す
bool値の名前を求めているんだろうと解釈するのが普通。
その意味でおかしくない名前を提案したつもり。
異議があればどうぞ。
0255デフォルトの名無しさん
2012/02/28(火) 21:00:33.93WordSpacingだと前後の空白だけじゃなくて間の空白とか余計なものまで許しちゃってる。
0256デフォルトの名無しさん
2012/02/28(火) 21:02:36.280257デフォルトの名無しさん
2012/02/28(火) 22:36:22.94「分かち書き」の意味の中に、語と語の間の空白以外にも、
文節と文節の間に空白(空行)を書くこと「も」 含まれています
もし「分かち書き」の英訳が word spacing であるならば、
[文節間の空白 = 余計なもの] まで許しはしないだろうか
という意味のレスだと思われます
ただ、Wikipedia で word spacing を調べると分かりますが
(http://en.wikipedia.org/wiki/Word_spacing)、
本当に [WordSpacing = 分かち書き] であるかどうかはさておき、
word spacing と言えば単語間の空白部分だけを指しており、
文節間の空白などとは明確に区別されていますね
0258デフォルトの名無しさん
2012/02/28(火) 22:44:42.17だいぶ雰囲気違うんじゃね?
0259デフォルトの名無しさん
2012/02/28(火) 22:47:26.96もちろんイコールじゃないよ。
それはそもそも質問者が求めているものじゃないんだから当たり前だけど。
俺はただこういう情報の検索方法もあるよと言いたかっただけ。
0260デフォルトの名無しさん
2012/02/28(火) 23:04:00.340261デフォルトの名無しさん
2012/02/28(火) 23:14:19.42> 俺はただこういう情報の検索方法もあるよと言いたかっただけ。
その意図が >>251 のレスでみんなにちゃんと伝わったという自信はあるか
冒頭 「書使うの下手な奴多いなw」 と小馬鹿にしてる感じなんだが
0262デフォルトの名無しさん
2012/02/29(水) 13:04:09.200263デフォルトの名無しさん
2012/02/29(水) 19:50:36.23本当の問題はなんだい? スペースを許さない仕様って何を許すんだい?
0264デフォルトの名無しさん
2012/02/29(水) 19:53:36.190265デフォルトの名無しさん
2012/03/02(金) 12:26:54.79FileNameだとファイル名、FilePathやPathNameだとフルパス名を意味するのが一般的ようですが、
"..\\Hoge\\Hoge.doc"のようなファイルの相対パスだと明示したい場合、
どういう名前が考えられますか?
FilePathRやFilePathRelativeしか思いつかず、NameやPathに置き換わる名前があるとよいのですが。
0266デフォルトの名無しさん
2012/03/02(金) 12:54:00.94まずここの認識が違うのでは?
FilePath を指定するヶ所ではたいてい
絶対パスでも相対パスでもどちらでも認識するのが普通だと思いますが
(相対パスが入力されたら内部で絶対パスに変換するなど)
0267デフォルトの名無しさん
2012/03/02(金) 12:57:28.180268デフォルトの名無しさん
2012/03/02(金) 13:12:19.08よくよく考えてみると、GetModuleFileNameとかは
FileNameと言ってるくせにフルパス名を返してきますわ。
0269デフォルトの名無しさん
2012/03/02(金) 13:35:42.900270デフォルトの名無しさん
2012/03/02(金) 14:27:45.73あるフラグが立てられた場合に限り異常系でも処理をするときのフラグの名前。
フラグはアプリ起動前に設定し、終了まで変更されることはありません。
とりあえずFORCE_FLGとしてるけど、もっといいのないでしょうか。
0271デフォルトの名無しさん
2012/03/02(金) 19:35:29.400272デフォルトの名無しさん
2012/03/02(金) 19:52:20.800273デフォルトの名無しさん
2012/03/03(土) 03:17:58.130274デフォルトの名無しさん
2012/03/03(土) 08:09:48.38::alwaysHoge
Context::alwaysHoge
Hogeler::alwaysPerform
Hogeler::alwaysPerforms
0275デフォルトの名無しさん
2012/03/03(土) 10:03:21.75FORCE_HOGE_ON_ERRORにしました。
# HOGEは処理名称
ありがとうございました。
0276デフォルトの名無しさん
2012/03/03(土) 14:38:46.71変なセンスだなあ。
それだと、「エラーの時はHOGEを強制する」の意味になるけど分かってる?
「雨天決行」と、「雨が降った時に必ず〜をする」は全然別の意味。
0277デフォルトの名無しさん
2012/03/03(土) 15:25:38.54だとしたら always 〜 をオススメしたいんだけどなぁ
if (!error || error && FORCE_HOGE_ON_ERROR) { Hoge(); }
if (!error || FORCE_HOGE_ON_ERROR) { Hoge(); }
if (alwaysHoge || !error) { Hoge(); }
0278デフォルトの名無しさん
2012/03/04(日) 00:11:38.840279デフォルトの名無しさん
2012/03/04(日) 00:54:22.15getNumberOfHoges()
とすると長くていやなので
getHogeCount()
ってやっちゃうんですけど英語的にどうなんでしょうか?
0280デフォルトの名無しさん
2012/03/04(日) 01:06:05.80http://docs.oracle.com/javase/7/docs/api/java/awt/Container.html#getComponentCount()
0281デフォルトの名無しさん
2012/03/04(日) 02:05:58.640282デフォルトの名無しさん
2012/03/04(日) 06:33:40.640283デフォルトの名無しさん
2012/03/04(日) 17:06:45.400284デフォルトの名無しさん
2012/03/05(月) 04:01:46.630285デフォルトの名無しさん
2012/03/05(月) 04:20:10.610286デフォルトの名無しさん
2012/03/05(月) 04:23:08.52何らかの文字列を取得する、もしくは有効かどうか判定する際に、空文字列とNULLを同一視する関数?
0287デフォルトの名無しさん
2012/03/05(月) 04:32:18.98* xxxがnullの場合に空文字列を返す旨はコメントに書く
*/
string getXXX()
{
if(this.xxx == null)
return "";
return this.xxx;
}
0288デフォルトの名無しさん
2012/03/05(月) 04:50:56.600289デフォルトの名無しさん
2012/03/05(月) 05:00:25.980290デフォルトの名無しさん
2012/03/05(月) 05:17:47.810291デフォルトの名無しさん
2012/03/05(月) 05:20:02.880292デフォルトの名無しさん
2012/03/05(月) 07:08:44.780293デフォルトの名無しさん
2012/03/05(月) 07:34:43.710294デフォルトの名無しさん
2012/03/05(月) 08:11:32.360295デフォルトの名無しさん
2012/03/05(月) 08:31:50.500296デフォルトの名無しさん
2012/03/05(月) 08:58:23.070297デフォルトの名無しさん
2012/03/05(月) 09:08:05.10機能説明: Hoge の文字列表現を取得する
この関数は Hoge が null であれば空文字列を返す
string Hoge::GetPiyoAsString()
機能説明: Piyo の文字列表現を取得する
この関数は Piyo が null であれば空文字列を返す
0298デフォルトの名無しさん
2012/03/05(月) 10:51:49.35boolean foo(string arg, int length)
半角文字を1とした場合に全角文字は2でカウントします。
半角とはUnicodeでInBlockLatinにマッチするもの、全角はそれ以外です。
0299デフォルトの名無しさん
2012/03/05(月) 11:01:10.00ちと広義すぎるか
0300デフォルトの名無しさん
2012/03/05(月) 11:02:26.01設計に口出しするのはご法度だろうけどどうしても言いたい。
そんな不自由なメソッド作ってはいけない。
// 半角文字を1とした場合に全角文字は2でカウント
int nbyte(string s)
みたいなもんを作っておいて、
(nbyte(arg) <= len)や(len <= nbyte(arg))や、
(nbyte(arg) < len)や(len < nbyte(arg))や、
(nbyte(arg) == len)や(len != nbyte(arg))として使ったほうがよっぽど柔軟。
これ以外にも用途見えてくるっしょ?
0301デフォルトの名無しさん
2012/03/05(月) 11:11:37.290302デフォルトの名無しさん
2012/03/05(月) 11:21:10.72「以内」なんてもんを英語で表現して後ろに二個引数渡すより、
「<=」の記号を使ったほうがよっぽど可読性は上。
「以内」という意味を隠して、抽象化した名前にするんなら意味はあるだろうけど。
check_length_cho-doii-kado-ka(s, len)みたいなのだとね。
0303298
2012/03/05(月) 11:34:05.99いいたいことは非常によくわかります。
わたしも同じ提案をしましたが却下されました。
ベタ移植するから元にない関数は作るなと。
元がCOBOLだからなのか関数名がKSP10142みたいなコードになっていて意味不明すぎる…
0304デフォルトの名無しさん
2012/03/05(月) 11:43:18.57>「以内」という意味を隠して、抽象化した名前にするんなら意味はあるだろうけど。
いやだから、同じ設計に口だすならそっちだろうと。
0305デフォルトの名無しさん
2012/03/05(月) 12:15:35.25なるほどね…。KSP10142みたいな名前に比べりゃ、何でもマシだよねw
かといって英語で「以下」を表現するとなると…。
is_less_than_arglen_or_equal_to_arglen(s, len)みたいな?
0306デフォルトの名無しさん
2012/03/05(月) 12:17:29.87length_is_not_over(string arg, int limit)
0307デフォルトの名無しさん
2012/03/05(月) 12:38:03.13bool string::LengthLessEquals(string, length) ※クラスメソッド
0308デフォルトの名無しさん
2012/03/05(月) 20:53:42.86IDEが使える言語向けっぽいから
validateLength(string target, int maxLength)
とかで良いんじゃない?
一応他の候補
isWithinMaxLength
isNotLongerThan
isLengthLTE
あと、ベタ移植だっていうのならまんまKSP10142でも良いんじゃないの?w
いやマジで。
0309デフォルトの名無しさん
2012/03/05(月) 23:34:29.99goodString(arg, length)
healthyString(arg, length)
0310デフォルトの名無しさん
2012/03/05(月) 23:45:51.680311298
2012/03/06(火) 09:19:52.16徹夜で電子化されてない手書き7,000ページほどの仕様書を読み切ったところです。
# どうでもいい話ですが7,000ページの手書き資料なのに修正した跡が一つも無し。
# 間違ったら全部書き直していたのか??
# さらに作成者が全部同じで筆跡も同一人物っぽい。この人化け物かっ。
この関数は紙帳票に印字される項目に対して
情報が入力された際と印字する際にチェックとして使われていました。
使用用途で考えると308さんのvalidateというのがしっくりきたのでvalidateなんとかーという名前にします。
0312デフォルトの名無しさん
2012/03/06(火) 09:25:49.680313デフォルトの名無しさん
2012/03/06(火) 09:28:38.260314デフォルトの名無しさん
2012/03/06(火) 10:18:12.29ただ実プロジェクトからコピペしたような汎用性のないコード(やテキスト全般)の断片ってなんて言えばいいですか。
とりあえずコピー、収集しておいて参考にする程度のもの。
scrap?
0315デフォルトの名無しさん
2012/03/06(火) 10:30:01.92fragment
scratch
0316デフォルトの名無しさん
2012/03/06(火) 10:31:19.43見落としてたが、その判断基準は何だ?w
0317デフォルトの名無しさん
2012/03/06(火) 15:29:07.620318デフォルトの名無しさん
2012/03/06(火) 18:43:16.770319デフォルトの名無しさん
2012/03/06(火) 18:50:28.62class bool3 { bool a, b, c; }
�@ return a & b & c
�A return a | b | c
�B return a ^ b ^ c
bool型を返す�@・�A・�Bそれぞれの関数の名前を教えてちょ
ただし、変数は3つとは限らない(bool10、bool20ということも可能だろうということ!)
0320デフォルトの名無しさん
2012/03/06(火) 18:54:17.510321デフォルトの名無しさん
2012/03/06(火) 18:55:59.47(logand a b c)
(logior a b c)
(logxor a b c)
0322デフォルトの名無しさん
2012/03/06(火) 19:44:03.69bool3.or()
bool3.xor()
0323デフォルトの名無しさん
2012/03/06(火) 19:44:17.60このデータをカンマ区切りでArrayに変換する関数名はなにがいいでしょうか?
convertStringToArrayはString型をArray型に単純に変換するってわけではないので違うと思うので。
convertHogeToOtherFormatとか考えましたがotherってなんだよとかなんかネーミングおかしくね?とか、
そもそも英語あってんの?って感じなので、どなたかお願いします。
0324デフォルトの名無しさん
2012/03/06(火) 19:48:15.46>このデータをカンマ区切りでArrayに変換
ごめん、意味がわからない。
0325デフォルトの名無しさん
2012/03/06(火) 19:48:46.97convertCommaSeparatedStringToArrayList(String string)
0326デフォルトの名無しさん
2012/03/06(火) 19:57:20.870327323
2012/03/06(火) 20:01:54.52"aaa,bbb,ccc"
↓
×{"aaa,bbb,ccc"}
◯{"aaa","bbb","ccc"}
ってことです。
>>325
ありがとうございます。
ちなみにカンマだけではなく第二パラメータで区切り文字を指定する時は、
どうしたらいいでしょうか?
ところで非オブジェクト指向のコレクションのない言語なのですが、
ArrayListのListってつけてもだいじょぶですか?
0329デフォルトの名無しさん
2012/03/06(火) 20:29:04.94String[] split(String regex)
String[] split(String regex, int limit)
この文字列を、指定された正規表現に一致する位置で分割します。
Rubyだと、
split([sep[, limit]])
文字列を sep で指定されたパターンによって分割して配列に格納します。
0330デフォルトの名無しさん
2012/03/06(火) 20:29:14.430331デフォルトの名無しさん
2012/03/06(火) 21:22:42.37それ現状の名前だわ
>>321
その命名って logical and|or|xor の略なのかな
元々 getLogicalAnd とかいう名前にしていて、今は>>322にしてあるんだけど、
もっとこう・・・まさにこれという名前はないだろうか
結構よく見る演算だけど、この演算自体の名前はないのかな
0332デフォルトの名無しさん
2012/03/06(火) 21:26:27.180333デフォルトの名無しさん
2012/03/06(火) 21:58:18.59っていうか、そもそもインスタンスメソッドな時点で変だよw
BooleanとかLogicOperationクラスの、可変長の引数を取るクラスメソッドで
実装した方がいいと思うよ。
その上で>>322のようなシンプルな名前でいい。
0334デフォルトの名無しさん
2012/03/06(火) 23:27:37.41all()
any()
odd()
0335デフォルトの名無しさん
2012/03/07(水) 00:32:48.670336デフォルトの名無しさん
2012/03/07(水) 01:05:22.73calcAnd
calcOr
calcXor
とか?
0337デフォルトの名無しさん
2012/03/07(水) 02:05:37.31cumuAnd
cumuOr
cumuXor
0338デフォルトの名無しさん
2012/03/07(水) 06:34:45.85Value3という3つの値の並列演算を行うクラスがあって、このクラス同士の比較演算を行った際にBool3で値が返されるようになっている
Bool3 Value3::Equals(Value3, Value3); ※クラスメソッド
bool Bool3::LogicalXor(); ※インスタンスメソッド
Value3 a, b;
if (Value3::Equals(a, b).LogicalXor()) { ... }
>>334
おぉ、かなりいい感じだと思った
何か元ネタがあったりしますか?
>>336
Calc〜やCalculate〜系はもっと規模の大きい演算を行って、それを返す関数に使いたいかな
0339デフォルトの名無しさん
2012/03/07(水) 06:42:36.23http://en.cppreference.com/w/cpp/utility/bitset/all_any_none
0340デフォルトの名無しさん
2012/03/08(木) 07:05:24.41おー、all()が何かと思ったら最新仕様のものだったか
>>334の案を使わせてもらうよ、ありがとう
0341デフォルトの名無しさん
2012/03/12(月) 12:19:55.33ハイフンとか文字の名前じゃなくて、その役割から命名したいから、
たとえば、a,b のカンマなら separator とか delimiter みたいな感じで。
0342デフォルトの名無しさん
2012/03/12(月) 12:36:35.08span
0343デフォルトの名無しさん
2012/03/12(月) 12:42:52.970344341
2012/03/12(月) 12:44:10.97やっぱり operator を付けるしか無いですかね?
0345デフォルトの名無しさん
2012/03/12(月) 12:44:46.260346デフォルトの名無しさん
2012/03/12(月) 20:09:33.490347デフォルトの名無しさん
2012/03/12(月) 20:55:59.98hyphenを辞書で引いた感じでは
0348デフォルトの名無しさん
2012/03/12(月) 21:08:15.95で、範囲を表すのはこれかも。
http://en.wikipedia.org/wiki/Dash#En_dash
0349デフォルトの名無しさん
2012/03/12(月) 21:23:16.960350デフォルトの名無しさん
2012/03/12(月) 23:28:03.280351デフォルトの名無しさん
2012/03/13(火) 19:10:28.96coverager
0352デフォルトの名無しさん
2012/03/13(火) 23:12:19.000353デフォルトの名無しさん
2012/03/14(水) 17:35:23.010354片山博文MZボット ◆0lBZNi.Q7evd
2012/03/14(水) 17:37:47.820355デフォルトの名無しさん
2012/03/14(水) 17:39:27.570356デフォルトの名無しさん
2012/03/14(水) 17:43:41.920357デフォルトの名無しさん
2012/03/15(木) 09:47:17.930358デフォルトの名無しさん
2012/03/16(金) 05:55:31.500359デフォルトの名無しさん
2012/03/16(金) 05:59:44.250360デフォルトの名無しさん
2012/03/16(金) 06:27:06.72ソケットにヘッダーを送るメソッドで
sentHeaderよりheaderSentのほうがしっくり来るんですが
どっちがいいですか?
0361デフォルトの名無しさん
2012/03/16(金) 06:45:49.03目的語は引数
0362デフォルトの名無しさん
2012/03/16(金) 07:16:46.06しっくり来る方を使わず違和感のある方に合わせるなんて本末転倒だよ
0363デフォルトの名無しさん
2012/03/16(金) 08:54:39.33sentHeaderだとヘッダそのものを保持する変数、もしくはそれを返すメソッドに自分は見える
0364デフォルトの名無しさん
2012/03/16(金) 08:59:00.55> sent header
0365デフォルトの名無しさん
2012/03/16(金) 09:42:54.400366デフォルトの名無しさん
2012/03/16(金) 10:08:47.960367デフォルトの名無しさん
2012/03/16(金) 10:14:03.000368デフォルトの名無しさん
2012/03/16(金) 10:30:11.76sendHeaderなら動詞+名詞→メソッド
headerSendならおそらくheader.send()のイメージでオブジェクト志向的なメソッド
0369デフォルトの名無しさん
2012/03/16(金) 10:37:02.75{
void send( Header header ) { ... }
}
class Data
{
Header header;
Body body;
void sendHeader(){ ... }
void sendBody(){ ... }
}
0370デフォルトの名無しさん
2012/03/16(金) 10:38:25.88{
void send(){ ... }
}
0371デフォルトの名無しさん
2012/03/16(金) 14:16:06.92�A Hoge.SendHeader : Header を 送信する関数
�B headerSend : Header というモジュールに属する(何かを)送信する関数
�C headerSent : Header というモジュールに属する、送信されたさいに呼ばれるイベントハンドラ
Header.Send : �Bに同様
Header.Sent : �Cに同様
・・だと感じる
0372デフォルトの名無しさん
2012/03/16(金) 14:49:23.28headerSentって、送られたヘッダっていう変数名っぽく聞こえませんか?
ところで、put、set、cutみたいな手頃な動詞は活用が一緒だからこまるね。
0373デフォルトの名無しさん
2012/03/16(金) 14:54:00.24send(header)
0374デフォルトの名無しさん
2012/03/16(金) 15:12:03.77なんだか良くわからない巨大で延々居座り続ける複雑なオブジェクトを考え無しにつくっちゃうから「長い名前メソッド」問題が出てくるわけで
0375デフォルトの名無しさん
2012/03/16(金) 15:17:38.47変数として宣言されてるか、関数として宣言されているかによる
変数として宣言されているのであれば、確かに送ったヘッダと理解できるが、
変数の名前に、「動詞の形容詞的活用」とか言ったか? これを使うのはあまり人気がない
Header (that is) Sent ←これね
0376デフォルトの名無しさん
2012/03/16(金) 21:58:20.57lastSetValueとか settableValueで誤魔化したことある
0377360
2012/03/16(金) 22:05:04.68いやーお恥ずかしい(ノ´∀`*)
sentじゃなくてsendですね。
これからみなさんのアドバイスを読み返してどれがいいか考えてみます。
0378デフォルトの名無しさん
2012/03/17(土) 15:07:38.420379デフォルトの名無しさん
2012/03/17(土) 15:17:09.990380デフォルトの名無しさん
2012/03/17(土) 18:23:37.780381デフォルトの名無しさん
2012/03/19(月) 14:35:16.360382デフォルトの名無しさん
2012/03/19(月) 16:51:04.740383デフォルトの名無しさん
2012/03/22(木) 13:20:16.07その名前使うなら使い方もそれっぽくしておいて欲しい所
0384デフォルトの名無しさん
2012/03/23(金) 02:57:09.390385デフォルトの名無しさん
2012/03/23(金) 05:10:43.500386デフォルトの名無しさん
2012/03/23(金) 18:01:16.55\\server\hoge...
みたいなパス表記はUNCという名前でいいみたいですが
::{GUID}\{GUID}
みたいなやつの正式名称ってなんて言うんでしょうか
0387デフォルトの名無しさん
2012/03/23(金) 20:24:07.040388デフォルトの名無しさん
2012/03/23(金) 20:46:29.281988年、青森県の大平山元遺跡で見つかった土器が、世界最古の土器という事になっています。
1万6500年前(縄文時代前)のものと言われています。
これは、中国や他の国で発見されているものと比較して、群を抜いて古いものです。
発掘がすすめば、さらに古い土器が発見されるかもしれません。
世界最古の木造建築
奈良の「法隆寺」の建築物群。国宝にも指定されています。
法隆寺は、推古天皇や聖徳太子によって建立されたと言われています。日本最古の木造建築として日本の国宝に指定されているだけでなく、世界最古の木造建築としても認知されています。
また、日本を代表する木材「ヒノキ」で造られており、1993年12月には、日本で初めて世界文化遺産に登録されました。
世界最古の王室
現存する世界で一番長い歴史を有する世界最古の王室「天皇家」
海外では歴史や伝統に重い価値を置いています。
世界での天皇家の地位は絶大です。
世界の権力図を示すとこんな感じ。
天皇陛下≧ローマ法王>英国女王>アメリカ大統領etc>日本国首相etc
ローマ教皇と同等かやや上回るか。
世界2トップのうちの一人です。
これは日本の宝として大切にしないといけませんね。
0389デフォルトの名無しさん
2012/03/23(金) 20:58:04.020390デフォルトの名無しさん
2012/03/27(火) 21:47:01.500391390
2012/03/27(火) 21:48:14.23URLのファイルのパスの部分を取得するメソッド名は何がいい
0392デフォルトの名無しさん
2012/03/27(火) 21:49:43.990393デフォルトの名無しさん
2012/03/27(火) 22:09:48.430394デフォルトの名無しさん
2012/03/27(火) 22:38:10.12extractPathFromURL
0395デフォルトの名無しさん
2012/03/27(火) 23:12:52.28RFC1738 3.3. HTTPの項目を見るとURLの構造がhttp://<host>:<port>/<path>?<searchpart>となってるので、
getPathでいいような気がする。
0396デフォルトの名無しさん
2012/03/27(火) 23:16:12.000397営利利用に関するLR審議中@詳細は自治スレへ
2012/03/29(木) 12:50:24.36の相互変換関数を手書きするとして名前は
何escape/unescapeっていうんですか。ascii?
0398営利利用に関するLR審議中@詳細は自治スレへ
2012/03/29(木) 18:34:36.210399営利利用に関するLR審議中@詳細は自治スレへ
2012/03/29(木) 19:11:59.69"エスケープシーケンスを含む文字列からエスケープされた文字列へ変換する、または逆変換する関数の名前を教えてください
〜escape/〜unescapeと命名するべきでしょうか?
ascii_escape/ascii_escapeなどという命名はどうでしょうか?
0400営利利用に関するLR審議中@詳細は自治スレへ
2012/03/30(金) 02:56:06.06エスケープ方法に関わらずアスキーなんじゃないの?
それをエスケープ方法の名前にするのはへんてこじゃないかね。
0401営利利用に関するLR審議中@詳細は自治スレへ
2012/03/31(土) 11:34:03.597zを利用を楽にするラッパークラス名をどうしようか迷ってます
0402片山博文MZボット ◆0lBZNi.Q7evd
2012/03/31(土) 14:49:15.120403営利利用に関するLR審議中@詳細は自治スレへ
2012/03/31(土) 15:01:06.13しかしクラス名?
普通欲しいのはライブラリや名前空間の名前じゃないかと思うんだけど。
0404営利利用に関するLR審議中@詳細は自治スレへ
2012/03/31(土) 15:07:04.130405営利利用に関するLR審議中@詳細は自治スレへ
2012/03/31(土) 15:45:16.290406営利利用に関するLR審議中@詳細は自治スレへ
2012/03/31(土) 15:45:27.87そうじゃなくて、識別子の頭に数字を使えない C# の仕様で、
適切な名前の付け方はどんなのがある? という趣旨かと
(もう答えは出てるが)
C# は UTF の ascii の範囲外の文字なら数字でも頭にできたんだっけ?
0407営利利用に関するLR審議中@詳細は自治スレへ
2012/03/31(土) 15:51:46.09しかし、"seven"の綴りをいちいち人に尋ねないと分からない人間がいるとも思えんけど。
0408営利利用に関するLR審議中@詳細は自治スレへ
2012/03/31(土) 16:00:36.22本家本元も使ってるし
0409営利利用に関するLR審議中@詳細は自治スレへ
2012/03/31(土) 16:04:43.75プログラムソース内に SevenZ と書かれているよりも、
7z と書かれていた方が 「圧倒的に」 読みやすい
0410営利利用に関するLR審議中@詳細は自治スレへ
2012/03/31(土) 16:08:05.720411営利利用に関するLR審議中@詳細は自治スレへ
2012/03/31(土) 16:10:17.51SevenZ は圧倒的に読み難い、と個人的には感じる
まぁ私なら Archiver クラスの引数に
Algorithm7z クラスのポインタを渡す感じの作りをする
0412営利利用に関するLR審議中@詳細は自治スレへ
2012/03/31(土) 16:11:45.390413営利利用に関するLR審議中@詳細は自治スレへ
2012/03/31(土) 16:12:20.200414営利利用に関するLR審議中@詳細は自治スレへ
2012/03/31(土) 16:19:38.59そんなことは分かってるってだから。
何が言いたいのか良く分からん。
そもそも7z=seven zipなんだからC#なら素直にSevenZipでいい。
>>403はそういう意味。
ついでに言えば、この程度の長さの識別子で可読性云々言ってる人間は論外。
プログラム書いたことあるのか。
0415営利利用に関するLR審議中@詳細は自治スレへ
2012/03/31(土) 16:40:23.08すまん、よく考えたら生まれて一度も書いたことなかったわ
ちょっと書いてみる
0416営利利用に関するLR審議中@詳細は自治スレへ
2012/03/31(土) 17:42:51.32なんかすごいスレが伸びてる
そのままSevenZipにしょうと思います
自分も>>411の感じで作ろうと思ってます
7zで解凍できないタイプの場合、別のライブラリと取り替えたいので
Archiverクラスってのを作って一括しようかなと
0417デフォルトの名無しさん
2012/04/18(水) 22:48:18.07そのクラスのインスタンスを作る場合、
CHogeTemplate template;
みたいに書くと、templateが予約語なので使えません。
CHogeTemplate temp;
だと、テンポラリみたいになってしまいます。
templateに対する変数名用の略語って、なにか一般的なものはあるのでしょうか?
0418デフォルトの名無しさん
2012/04/18(水) 22:58:25.05でもそもそも“「テンプレート」を表すクラス”そのものが妙に聞こえる
0419デフォルトの名無しさん
2012/04/18(水) 23:11:17.03俺も、そもそも論として疑問が多々あるが、それらはひとまず置いておいて、
たとえば tmpl とかはどうだ?
0420デフォルトの名無しさん
2012/04/19(木) 00:10:22.280421デフォルトの名無しさん
2012/04/19(木) 00:15:44.670422デフォルトの名無しさん
2012/04/19(木) 00:16:12.24もっとスコープが広い変数ならなんか形容詞が要るだろうし。
0423デフォルトの名無しさん
2012/04/19(木) 00:23:50.930424デフォルトの名無しさん
2012/04/19(木) 09:17:01.630425デフォルトの名無しさん
2012/04/19(木) 09:17:36.56deok
0426417
2012/04/19(木) 22:00:36.16みなさんありがとうございます。
テンプレートと言っても、クラスのテンプレートとは全く関係なく、
Officeやメールソフトなどにあるようなテンプレートを表すクラスです。
MFCなどを見てみたら、CDialogTemplateなんていうクラスがありましたが、
ポインタとかハンドルとかに対しては「pTemplate」とか「hTemplate」とかやっていて、
実体を作る場所ではとたんに「dt」とか「dlgt」とか書いていました。
なんかMFCの開発者も、同じように悩んだような書きかたです。
こんな感じでいいものなんですね。
「tmpl」というのも、ググったらたくさん出てきました。
ありがとうございます。
0427デフォルトの名無しさん
2012/04/20(金) 02:18:46.84何故かテンプラだのテンプルだの呼ばれてるw
0428デフォルトの名無しさん
2012/04/22(日) 17:37:53.370429デフォルトの名無しさん
2012/04/24(火) 08:08:30.07どういう名前がいいでしょうか?
主にシステム内で使用するために返り値を最適化した標準関数の拡張や、
データの変換などを行うものがあります。
全部static修飾子をつけることになると思うのですが、
MyLibとかちょっとダサイなと思ったのでなんかいい名前ないでしょうか?
0430デフォルトの名無しさん
2012/04/24(火) 09:19:11.640431デフォルトの名無しさん
2012/04/24(火) 09:51:51.36そんなゴミ溜めみたいなダサいクラスはその名前で間違いない。
0432デフォルトの名無しさん
2012/04/24(火) 18:56:13.76static partial class Helper
0433デフォルトの名無しさん
2012/04/25(水) 23:39:08.05しかし、俺なら my_utilities とかいう名前空間を作って、そこに雑多な自作関数を全部ブチ込みます
0434デフォルトの名無しさん
2012/04/25(水) 23:54:27.760435デフォルトの名無しさん
2012/04/25(水) 23:56:47.81名前のバッティングなんてそうそうあるもんじゃないけど。
ただ一つのクラスに全部詰め込むと後で後悔するだろうね。
俺はMyMathとかMyTextとかMyFileIOとか分けた方がいいと思う。
0436デフォルトの名無しさん
2012/04/26(木) 00:50:39.36TyrhungText
FruntingFileIO
0437デフォルトの名無しさん
2012/04/26(木) 11:59:38.25ってのが俺ですね
0438デフォルトの名無しさん
2012/04/26(木) 13:30:25.230439デフォルトの名無しさん
2012/04/26(木) 13:34:51.240440デフォルトの名無しさん
2012/04/26(木) 13:39:12.32ありがとうございます
0441デフォルトの名無しさん
2012/04/30(月) 10:51:38.11MyExtremelyUsefulLibyrary
略して MEUL
0442デフォルトの名無しさん
2012/04/30(月) 11:55:43.51Sugoi
Library
0443デフォルトの名無しさん
2012/05/10(木) 11:10:45.76一時的に変数の型を変えたい時は、どういう命名をしてますか?
もちろん、十分に短い名前ってのもアリですが。
0444デフォルトの名無しさん
2012/05/10(木) 12:02:47.95hoge.toInt
hoge.toLong
hoge.toString
0445デフォルトの名無しさん
2012/05/10(木) 12:03:51.910446デフォルトの名無しさん
2012/05/10(木) 12:50:22.460447デフォルトの名無しさん
2012/05/10(木) 13:25:03.44>>444
型変換くらいならコストも高くないし、変換後の一時変数を持たないってのも確かにアリか…
>>445
すまない、分からなかった。
VBかしら? 元のhogeとどう共存するのか分からないけど、その辺は大丈夫なのかな。
>>446
ほんとに一瞬使うだけなら、それでもいいのかな。型変換したって情報は残らないけど。
0448デフォルトの名無しさん
2012/05/11(金) 04:13:27.130450デフォルトの名無しさん
2012/05/11(金) 10:36:30.910451デフォルトの名無しさん
2012/05/11(金) 12:23:04.14これいいな
asのおかげで元になるhogeがあるのがわかる
0452デフォルトの名無しさん
2012/05/11(金) 12:29:14.18毎回変換したほうがバグは少ないかもね
0453デフォルトの名無しさん
2012/05/12(土) 09:06:55.490454デフォルトの名無しさん
2012/05/12(土) 12:09:41.500455デフォルトの名無しさん
2012/05/12(土) 12:38:08.61保証がない変数使って、バグがどうしたって?
0456デフォルトの名無しさん
2012/05/12(土) 13:07:08.38過去に何度もあった
0457デフォルトの名無しさん
2012/05/12(土) 15:16:26.44どんなコードに書き換えられるかわからんぞって話
わかんねぇだろうなぁ
0458デフォルトの名無しさん
2012/05/12(土) 15:21:51.460459デフォルトの名無しさん
2012/05/12(土) 15:29:13.12> どんなコードに書き換えられるかわからんぞって話
馬鹿が触ればあたりまえ。
まあ、俺の周りには >>457 みたいな馬鹿は居ないからいいけど。
0460デフォルトの名無しさん
2012/05/12(土) 16:04:52.780461デフォルトの名無しさん
2012/05/12(土) 16:13:43.280462デフォルトの名無しさん
2012/05/12(土) 16:15:17.58値をコピーしたあとで別の「スレッド」に元データ書き換えられたらどうするんだっていってんだよ
おまえらほんとレベル低いな
0463デフォルトの名無しさん
2012/05/12(土) 16:18:01.88お前が言ってるのは、
> 値をコピーしたあとで別の「サブルーチン」で元データ書き換えられたらどうするんだっていってんだよ
と同じ。
馬鹿すぎ。
0464デフォルトの名無しさん
2012/05/12(土) 23:07:39.000465デフォルトの名無しさん
2012/05/13(日) 21:37:28.84int hoge
void Do() {
VerifyString(IntToString(this->hoge)) // �@
LogOutputString(IntToString(this->hoge)) // �A
DrawString(IntToString(this->hoge)) // �B
}
}
条件: 関数�@・�A・�Bの引数として同じ値を渡す
イベント: 途中でthis->hogeが別スレッドに書き換えられる
イベントの発生により、条件が保てなくなる
void Do() {
Thread.Lock()
const string sHoge(IntToString(this->hoge)
Thread.Unlock()
VerifyString(IntToString(sHoge))
LogOutputString(IntToString(sHoge))
DrawString(IntToString(sHoge))
}
こうすることでイベントが発生しても条件が保てる
で、上記の変数sHogeの命名規則が今の課題
0466デフォルトの名無しさん
2012/05/13(日) 21:46:05.33>>452
>>1
あとスレタイ
0467デフォルトの名無しさん
2012/05/14(月) 00:02:02.37二つ目のDo関数は
void Do() {
// Thread.Lock()
const string sHoge(IntToString(this->hoge)
// Thread.Unlock()
VerifyString(sHoge)
LogOutputString(sHoge)
DrawString(sHoge)
}
だな
0468デフォルトの名無しさん
2012/05/29(火) 22:19:13.58なにかいい名前あるでしょうか。
なお今考えているのはWeb用のMVCであり、GUI用のMVCではないです。
現在の候補:
・RequestHandler (長すぎ)
・Page (どちらかというと「Controller」じゃなくて「View」のことですよね)
・Resource (「Controller」よりわかりにくいのでは?)
0469デフォルトの名無しさん
2012/05/29(火) 22:54:49.07>RequestHandler (長すぎ)
この感覚を矯正しないと話にならない気がする
0470デフォルトの名無しさん
2012/05/29(火) 23:01:43.790471デフォルトの名無しさん
2012/05/29(火) 23:31:11.56>>469 は質問に答えてると思うが。
この程度なら全然長すぎてはいないから使っていいよ、
と暗に言っているように俺には聞こえる。
0472デフォルトの名無しさん
2012/05/29(火) 23:47:12.92RequestHandlerのような長いのを使うならControllerのままでいいです。
わかりにくさも同じようなものだし。
で、いい案はお持ちでしょうか。
0473デフォルトの名無しさん
2012/05/29(火) 23:56:33.64というか、この程度で長いと感じる人が相手だと、名前の提案は事実上不可能に近いよね。
別に親でも教師でも何でもないから説教はしないけど、こういう普通じゃない感覚に固執するなら
まともな人には相手にされないと思うけどな。
0474デフォルトの名無しさん
2012/05/30(水) 00:06:24.29何も情報がない状態で Handler 単体なら意味が分らないけど、
M に相当するものと、V に相当するものとの対比で Handler を捉えるわけで、
まして Web という文脈の中なんだから、どういう役割のものか
Handler という名前から容易に想像つくでしょ。
0475デフォルトの名無しさん
2012/05/30(水) 01:19:34.41じゃあ長い名前でいいので、お持ちの案を教えてもらえないでしょうか。
それをきっかけに、他の人が短い名前を思いつくこともあるでしょう。
よろしくお願いします。
>>474
いえ、Webアプリケーションの中だけでも
・FileHandler
・EventHandler
・SessionHandler
などいろんなハンドラがありえます。
ローカル変数で handler というのはありですが、クラス名で Handler は混乱のもとです。
0476デフォルトの名無しさん
2012/05/30(水) 01:35:49.400477デフォルトの名無しさん
2012/05/30(水) 02:01:09.540478デフォルトの名無しさん
2012/05/30(水) 03:22:19.980479デフォルトの名無しさん
2012/05/30(水) 07:26:14.44SessionHandler は良いのに RequestHandler は長いのか・・・
0480デフォルトの名無しさん
2012/05/30(水) 11:15:12.710481デフォルトの名無しさん
2012/05/30(水) 14:05:51.21わかるまでサビ残だからな
0482デフォルトの名無しさん
2012/05/30(水) 14:12:18.85古典UNIX/C派は黙って観察するだけにしとくべき
0483デフォルトの名無しさん
2012/05/30(水) 14:52:15.98SessionHandlerは長くないとは誰もいってないぞ。単に、そういう名前があるといってるだけ。読解力大丈夫か?
0484デフォルトの名無しさん
2012/05/30(水) 15:09:05.260485デフォルトの名無しさん
2012/05/30(水) 19:13:36.24そもそも Controller が分りにくいと感じる原因は何?
(Handler がダメな理由は納得した)
これも、**Controler って色々あるの?
0486デフォルトの名無しさん
2012/05/31(木) 22:40:50.30一応、案は提示したんだし、どう見てもコミュ障みたいだし。
0487デフォルトの名無しさん
2012/06/01(金) 18:24:21.490488デフォルトの名無しさん
2012/06/02(土) 02:22:09.090489デフォルトの名無しさん
2012/06/06(水) 01:22:30.91名前は何がいいでしょう。StrategyパターンのStrategyに相当すると思います。
これを変更することで、人間がGUIを介して選択を行うプレイヤーやコンピュータ
がいろいろな計算方法で選択を行うプレイヤーを作れるようにしたい。
まんまStrategyだとGUIで人間が決めるやつの居心地が悪い気がしています。
それも含められるような名前を希望します。
0490デフォルトの名無しさん
2012/06/06(水) 01:34:54.04HumanPlayer
ComputerPlayer
0491デフォルトの名無しさん
2012/06/06(水) 01:39:51.700492デフォルトの名無しさん
2012/06/06(水) 01:39:53.69名前を付けたらプレイヤーそのものはどうなってしまうんだ。
0493デフォルトの名無しさん
2012/06/06(水) 01:41:42.86どういうコードが書かれるの?
0494デフォルトの名無しさん
2012/06/06(水) 01:47:08.78Human
CPU
0495デフォルトの名無しさん
2012/06/06(水) 01:47:33.62humanPlayer = player.set意思決定(GUIで決める)
comPlayer1 = player.set意思決定(難易度:易の思考ルーチン)
comPlayer2 = player.set意思決定(難易度:激強の思考ルーチン)
みたいなの。
0496デフォルトの名無しさん
2012/06/06(水) 01:49:50.39humanPlayer = new Player(GUIで決める)
comPlayer1 = new Player(難易度:易の思考ルーチン)
comPlayer2 = new Player(難易度:激強の思考ルーチン)
だ…
0497デフォルトの名無しさん
2012/06/06(水) 02:00:04.89computerPlayer = new ComputerPlayer();
IPlayer player;
if(condition)
player = humanPlayer;
else
player = computerPlayer;
player.determinAction();
0498デフォルトの名無しさん
2012/06/06(水) 02:11:43.000499デフォルトの名無しさん
2012/06/06(水) 15:19:44.80EngineとかBrainとかAgentとか?
Playerでもいいと思うけどね。人間の場合はHumanPlayer、コンピュータならComputerPlayerとかAutoPlayerとか。
0500デフォルトの名無しさん
2012/06/06(水) 15:31:00.44Playerのもっと相応しい使い所が他に有って取っておく必要があるなら他のにすればいいけど
0501デフォルトの名無しさん
2012/06/06(水) 16:46:50.55プレイヤー本人なのか、それともプレイヤーが操作するゲームトークン(プレイヤーキャラクター)なのか、
って違いかなあと認識した
0502デフォルトの名無しさん
2012/06/06(水) 19:06:22.670503デフォルトの名無しさん
2012/06/06(水) 22:28:14.94それをごっちゃにしている>>489の話はちょっとおかしいと思う。
プレーヤーが状態(例えば将棋の持ち駒とか)を持つゲームを考える。
この時、>>489の考え方で作ると、ゲームの途中で指し手を人間からCPUに切り替える
ことがやりにくい。(できないことはないが)
オセロのようにプレーヤーが状態をもたないゲームの場合は、プレーヤーの側は
他から依存されない(メソッドを呼ばれない)のだからそもそもインターフェイスを
揃える必用がないような...
0504デフォルトの名無しさん
2012/06/06(水) 22:45:10.60どちらでも実現可能
0505デフォルトの名無しさん
2012/06/06(水) 22:52:38.270506デフォルトの名無しさん
2012/06/06(水) 22:53:04.10- hp : int
- mp : int
- ownerPlayer : *APlayer
APlayer
- possessedCharacters : *Character[]
Player -> APlayer
- settings : ?
AIPlayer -> APlayer
- intelligenceLevel : int
- aimingCharacter : *ACharacter
0507デフォルトの名無しさん
2012/06/06(水) 22:53:04.57プレーヤーに持たせたりなんかしない方がいい。
0508デフォルトの名無しさん
2012/06/06(水) 22:54:28.510509デフォルトの名無しさん
2012/06/06(水) 22:56:17.50話のキモはプレーヤーが状態を持つかどうかの区別ではない。
それと、あるゲームがプレーヤーに状態を持たせずに実装可能であることは、
どんなゲームでもプレーヤーに状態を持たせずに実装可能、あるいはそれが最適な
実装方法であることを意味しない。
0510デフォルトの名無しさん
2012/06/06(水) 22:59:47.88変な例を盛り込んでも論点をずらすだけ。
0511デフォルトの名無しさん
2012/06/06(水) 23:05:45.61Character その対戦者が*ゲーム上で*持っているものを集めたクラス
Player はその対戦者の意思決定ロジック
APlayer から派生した2つのクラス Player と AiPlayer は、自分の所持しているCharacterを操作する
クラス名が Character であることが正しいかはそのゲームによるが、
Player がそれを操作するロジックであることは、名前から予想できるっしょ
0512デフォルトの名無しさん
2012/06/06(水) 23:14:32.68インターフェースを揃えた方が簡潔に書ける
他から依存もされるしメソッドも呼ばれるし
この手法はオセロでも有用
0513デフォルトの名無しさん
2012/06/07(木) 01:41:25.300514デフォルトの名無しさん
2012/06/07(木) 09:41:49.16>>489は最初から最後までstrategyの切り替えの話しかしてないのに
0515デフォルトの名無しさん
2012/06/07(木) 10:01:53.410516デフォルトの名無しさん
2012/06/07(木) 20:17:26.03馬鹿だろお前
0517デフォルトの名無しさん
2012/06/07(木) 21:22:07.630518デフォルトの名無しさん
2012/06/08(金) 16:15:29.30の時、
E:\dirA\dirB
public_html\img
上記2つはどう記すべきですか?
parent_path ?
root_img_path ?
よろしくお願いします。
趣味で小さいツールを作り始めましたが、後で
ソースコード見てみると変数の名前が意味不明過ぎて…。
0519デフォルトの名無しさん
2012/06/08(金) 16:21:47.970520デフォルトの名無しさん
2012/06/08(金) 16:38:39.77E:\dirA\dirB は後で別な場所に動かしてもいいように、です。
D\dirC\dirD\dirE などに。
public_html\img も同様に
my_travel_1\img のようにです
0521デフォルトの名無しさん
2012/06/08(金) 16:48:55.62なんでそこで切るの?
0522デフォルトの名無しさん
2012/06/08(金) 16:49:13.65〜PathSecondPart
0523デフォルトの名無しさん
2012/06/08(金) 16:52:12.77↓
D\dirC\dirD\dirE\public_html
とか
E:\dirA\dirB\public_html
↓
E:\dirA\dirB\my_travel_1
じゃだめなの?
0524デフォルトの名無しさん
2012/06/08(金) 17:06:30.00そのプログラムにとってはルートディレクトリの一種ではあるな
root directory
image directory
単純にこんなのでいいんじゃないか
0525デフォルトの名無しさん
2012/06/08(金) 17:12:24.55ここで区切ったほうが書きやすくなるかな、くらいな
理由です。
>>522
これわかり易くていいですね。
>>523
文字列が埋め込まれているのがなんとなく
気になりまして。でもそれなら定数でいいですね。
>>524
シンプルでカッコイイですね。使わせてください。
なんかよくわかってない奴が紛れ込んでしまって
すみませんでした。
レスいただいた方、ありがとうございました。
0526デフォルトの名無しさん
2012/06/10(日) 10:18:32.50Path.GetDirectoryName,Directory.GetParent
うーん
0527デフォルトの名無しさん
2012/06/13(水) 07:50:50.97極簡単な食券販売機をシミュレートするプログラムを作る事になった。
で、下記のデータの変数名を考えてるんだが、いまひとつ良い名前が思い浮かばない。
一応自分で考えた案も併記したんだけど、おかしくないかな?
・自分の財布にあるお金(myMoney)
・購入した食券のリスト(myTicket)
・販売機に投入されている自分のお金(enteredMoney)
あと、釣り銭レバーは change lever でいいの?
0528デフォルトの名無しさん
2012/06/13(水) 09:18:02.75repaymentがユーザの払い戻し行動でrefund leverが釣り銭レバーとか
0529デフォルトの名無しさん
2012/06/13(水) 12:13:45.99自動販売機の保守マニュアルがあった。参考になるかも。
http://www.vendnetusa.com/Conlux/CCM5G_Series/CCM5G_Series_Manual/
0530527
2012/06/13(水) 20:57:21.17> pay(paid)かと思ったけど、これだと最終的に払った合計金額になっちゃうのかな
ODE見ると、pay には仕事や商品の「対価」として支払うイメージや、
合計金額というイメージが付いてる感じだった。
あと、ごめん、言い忘れてた。
販売機に投入されている自分のお金とかは変数なので、基本は「名詞」で考える。
まぁ形容詞もぎりぎりOKだから、品詞的には paid もOKだけど。
>>529
> 「〜円のお預かり」に相当するのは deposit
なるほど。
> 自動販売機の保守マニュアルがあった。
なんというピンポイントのマニュアルが公開されてるんだw
大いに参考になる、>>528 の後半の提案も含めて調べてみるよ。
ふたりとも、ありがと。
0532デフォルトの名無しさん
2012/06/15(金) 18:08:25.83その、「幅の隙間」をなんといいますか?
0533デフォルトの名無しさん
2012/06/15(金) 18:18:30.28Padding
0534デフォルトの名無しさん
2012/06/15(金) 18:28:13.970535デフォルトの名無しさん
2012/06/15(金) 18:38:12.930536デフォルトの名無しさん
2012/06/15(金) 19:05:07.480537デフォルトの名無しさん
2012/06/15(金) 19:12:03.370538デフォルトの名無しさん
2012/06/15(金) 19:50:10.940539デフォルトの名無しさん
2012/06/16(土) 03:20:11.99http://dic.yahoo.co.jp/dsearch/1/1na/013997000/
0540デフォルトの名無しさん
2012/06/16(土) 03:45:52.900541デフォルトの名無しさん
2012/06/16(土) 03:46:33.690542デフォルトの名無しさん
2012/06/16(土) 06:19:05.67隙間は均等だけど、図形が均等とは言ってないので pitch はちょっと違う気がする。
0543デフォルトの名無しさん
2012/06/16(土) 08:30:29.93↑の <-> の箇所なら gap でいいと思う
0544デフォルトの名無しさん
2012/06/16(土) 13:34:07.75まず図形を包含する最小の矩形領域MinRectと、MinRectを包含するMinRectより大きな
矩形領域CellRectを考える。
この時、CellRectとMinRectの同じ辺の間の距離がPadding。
CellRect1とCellRect2の間の「隙間」の距離がGapとかSpacing。
だからPaddingは上下左右の4つの値を持つ。
Gapは水平垂直の2つだけ。
こんな感じだと思う。
0545デフォルトの名無しさん
2012/06/16(土) 13:44:13.770546デフォルトの名無しさん
2012/06/16(土) 14:29:35.36分かりやすい説明ありがとうございます!
CellRect間をイメージしておりました
Gapを利用したいと思います。
0547デフォルトの名無しさん
2012/06/16(土) 14:34:38.380548デフォルトの名無しさん
2012/06/24(日) 03:16:44.68実行の際、ユーザは引数(オプション設定)を与えることが出来るとします。
それぞれのコマンドは
【1】オプションが必須
【2】オプションを指定してはいけない
【3】どっちでもいい(指定してなければデフォルト扱い)
の、どれであるかを列挙型(enum)で保持したいと考えています。
この時、【1】〜【3】の状態を表す名前、
およびこの状態を保持する変数名をお願いします。
ちなみに【1】は OPTION_NECESSARY、変数は optionRule にしようかなあと考えています。
0549デフォルトの名無しさん
2012/06/24(日) 04:00:34.55required
acceptable
unacceptable
forbidden
optional
acceptability
0550デフォルトの名無しさん
2012/06/24(日) 05:56:55.13optionStyle
0551デフォルトの名無しさん
2012/06/24(日) 08:34:24.82ありがとう
列挙型の方はrequired、forbidden、acceptableで、変数名はoptionStyleでやってみる!
0552デフォルトの名無しさん
2012/06/25(月) 17:27:46.830553デフォルトの名無しさん
2012/06/25(月) 18:56:26.92day
エスパーするとtime zone, またはtime slot
0554デフォルトの名無しさん
2012/06/25(月) 19:01:37.08どういう場面で使う言葉?
0555デフォルトの名無しさん
2012/06/25(月) 19:08:09.760556デフォルトの名無しさん
2012/06/25(月) 19:08:57.100557デフォルトの名無しさん
2012/06/26(火) 02:11:24.000558デフォルトの名無しさん
2012/06/26(火) 02:17:30.38コンテキストは何だろう。勤務シフト管理とか?
0559デフォルトの名無しさん
2012/06/26(火) 02:31:44.940560デフォルトの名無しさん
2012/06/26(火) 02:39:24.210561デフォルトの名無しさん
2012/07/01(日) 02:16:20.09仮に func() という名前だとすると、例えば
MyStruct *ary[] = { ptr1, ptr2, NULL, ptr3, ptr4, NULL, ptr5, NULL };
func(ary, 8);
とすれば ary[] の中身が { ptr1, ptr2, ptr3, ptr4, ptr5, NULL, NULL, NULL } になるような関数です。
0562デフォルトの名無しさん
2012/07/01(日) 04:39:06.460563デフォルトの名無しさん
2012/07/01(日) 05:28:46.460564デフォルトの名無しさん
2012/07/01(日) 06:16:37.760565デフォルトの名無しさん
2012/07/01(日) 07:04:30.81gather/collect non null
0566uy
2012/07/01(日) 07:19:55.260567デフォルトの名無しさん
2012/07/01(日) 07:55:14.400568デフォルトの名無しさん
2012/07/01(日) 12:41:45.06NULL を取り除くわけではないだろ
align (FORWARD, ary)
0569デフォルトの名無しさん
2012/07/01(日) 13:45:25.67(「ノーマルな状態」を定義しておいて、それに準ずる形式にすること)
0570デフォルトの名無しさん
2012/07/01(日) 14:08:17.83CompactArray, DefragArray, PackArray, CompressArray
今の時代ならDefragが一番話が早いかも
0571561
2012/07/01(日) 18:43:42.62用途としては散らかした配列を整理するためのものなので
organize,normalizeなどでも良かったのですが
それはそれで他の用途に使いそうな名前なので、処理内容のほうに近い名前を選びました
0572デフォルトの名無しさん
2012/07/01(日) 19:00:53.510573デフォルトの名無しさん
2012/07/01(日) 19:35:02.95突っ込んでやるなよ
0574デフォルトの名無しさん
2012/07/01(日) 22:15:50.790575デフォルトの名無しさん
2012/07/01(日) 22:28:32.770576デフォルトの名無しさん
2012/07/01(日) 22:30:29.980577デフォルトの名無しさん
2012/07/01(日) 23:45:53.33散らかると言うか、穴だらけになるという方があってると思う。
配列要素の参照先が不要になって削除された場合、その配列要素もいらなくなるけど、
いちいち詰めたりしてたら大変だから、とりあえず null にしといて、適当な時期を見計
らって、一気に詰める処理を行うことはままある。
0578デフォルトの名無しさん
2012/07/02(月) 13:37:26.54sqlならvacuum
windowsならデフラグ
その他 rebuild, sort, pack, cleanup, compress, reallocation, reposition
0579デフォルトの名無しさん
2012/07/02(月) 20:21:29.320580デフォルトの名無しさん
2012/07/02(月) 21:18:24.54提案できんかった報告はどうでもいいが、今まで提案された中で
空いた分を取り除いてしまうニュアンスを含むものがあるのなら、
指摘した方がいいのではないか?
0581デフォルトの名無しさん
2012/07/02(月) 22:38:16.54これ以上何を議論しようっての
0582デフォルトの名無しさん
2012/07/02(月) 22:40:09.420583デフォルトの名無しさん
2012/07/03(火) 02:56:04.220584デフォルトの名無しさん
2012/07/03(火) 09:55:07.210585デフォルトの名無しさん
2012/07/05(木) 11:23:06.830586デフォルトの名無しさん
2012/07/21(土) 23:32:06.33int voltage;//電圧を2V単位で代入する
と書きました。私は、電圧が2Vのときvoltage=1,4Vのとき2,...になるという意味で書いたのですが、
別の人に、「2Vのとき2,4Vのときは4で、1や3のような値は代入してはいけない」という意味にとられてしまいました。
どんな変数名やコメントにすれば誤解されにくいかアイデアはありませんか?
0587デフォルトの名無しさん
2012/07/21(土) 23:41:54.38voltage2x
0588デフォルトの名無しさん
2012/07/21(土) 23:42:05.11int voltage_code; // 2V ⇒ 1, 4V ⇒ 2, ... とする。
と書いておけばいいのでは?
ちなみに、「電圧を ... 代入する」って書いてあるんだから、俺もその別の人と同じ解釈する。
0589デフォルトの名無しさん
2012/07/21(土) 23:43:03.17int voltage; // 電圧(2V単位, 1=2V, 2=4V, ...)
0590デフォルトの名無しさん
2012/07/21(土) 23:45:39.20まだ意味不明なんだが
0591デフォルトの名無しさん
2012/07/21(土) 23:46:21.530592デフォルトの名無しさん
2012/07/21(土) 23:50:35.430593デフォルトの名無しさん
2012/07/22(日) 00:14:24.29アセンブラでゴリゴリに特定ハード向けに最適化されたコードを書いてるならともかく、
Cで書くようなコードなら変数にそんなミスリーディングな意味付けをすべきでない。
変数名がvoltageなら素直に電圧の値を表すべき。
偶数のみとか{2, 4, 10, 12}みたいに選択可能な値が限られるのなら、
セッターにするかenumを使う。
0594デフォルトの名無しさん
2012/07/22(日) 12:00:48.75https://github.com/search?q=%22usesCache%22&repo=&langOverride=&start_value=1&type=Code&language=JavaScript
↑「usesCache」で検索してもヒットするのは「use」ばかりです。
これってどう考えたらいいんでしょう?useは例外とかあるんですかね??
0595デフォルトの名無しさん
2012/07/22(日) 12:05:54.66まずこの理由というか根拠が分らんな。
どういう意味が込められてるんだろ。
0596デフォルトの名無しさん
2012/07/22(日) 12:20:16.50> アセンブラでゴリゴリに特定ハード向けに最適化されたコードを書いてるならともかく、
> Cで書くようなコードなら変数にそんなミスリーディングな意味付けをすべきでない。
Cで特定ハード向けのコード書く仕事もあるんですよ。
まあ、C かも知れない状況で、セッターとか勧める人みたいだから、
自分の周りしか見えてないんだろうな。
て言うか、
>>1
> 命名規則や設計の善し悪しについて議論するのは基本的に禁止。
ぐらい読め。
0597デフォルトの名無しさん
2012/07/22(日) 12:20:37.39bool値の変数名について書かれたサイトなどでは良く書かれていることなのですが
例えば以下のサイトではこうなっています。
http://www.okapiproject.com/java/java_codeconventions/jcc_naming.htm
2.9.4.boolean 変数を返すメソッド
boolean 変数を返すメソッドについては、「is + 形容詞」「can + 動詞」「has + 過去分詞」
「三単現(三人称単数現在)動詞」「三単現動詞 + 名詞」のいずれかの名称をつけます。
特に動詞は三単現以外の動詞は利用してはいけません。
また、true の場合がどちらであるか判別しやすい名前にするために通常は true の場合を名称にします。
0598594
2012/07/22(日) 12:26:48.36>> bool値の名前に動詞を使うときは三単現にするという指針
>
>まずこの理由というか根拠が分らんな。
>どういう意味が込められてるんだろ。
要は答えがyes/noの疑問文の形にしておけばtrue/falseの2値しか持たないことが主張できて良いという考え方だと思います。
で、動詞の場合はDoesで始めると冗長なのでそこは抜いて三単現動詞で始めると。
だけどuseはuseなのがさっぱり分からないので答えを求めて書き込みました。
0599デフォルトの名無しさん
2012/07/22(日) 13:24:57.510600デフォルトの名無しさん
2012/07/22(日) 13:28:40.36メソッドが見当たらん
0601デフォルトの名無しさん
2012/07/22(日) 13:33:25.06命名規則にあやふやな人がその勢いでメソッド名にまで使ってるだけじゃね
0603デフォルトの名無しさん
2012/07/22(日) 13:37:13.11命名規則に「Boolean に動詞の原形はダメ、もしするなら三単現動詞」
という規則を入れているのか知りたかったのだが
boolean "third person singular" "naming convention" OR "naming rules"
これでググってもなかなかヒットしないな
0604デフォルトの名無しさん
2012/07/22(日) 13:38:42.96確かにそれもあるでしょうね。
でも他の単語、例えばhaveでhaveCache・hasCacheと検索しても
圧倒的にhasです。
https://github.com/search?q=%22haveCache%22&repo=&langOverride=&start_value=1&type=Code&language=JavaScript
0605デフォルトの名無しさん
2012/07/22(日) 13:39:30.36別にJavaに限らなくてもいいけど
その規則の元で書かれてないコードから探したって無意味じゃん
0606594
2012/07/22(日) 13:43:34.63すみません。
ちなみにjavaで同じように検索しても結果は変わらないんです。
https://github.com/search?q=%22useCache%22&repo=&langOverride=&start_value=1&type=Code&language=Java
https://github.com/search?q=%22usesCache%22&repo=&langOverride=&start_value=1&type=Code&language=Java
ん〜、わからない。
0607デフォルトの名無しさん
2012/07/22(日) 13:45:17.240608デフォルトの名無しさん
2012/07/22(日) 13:47:42.67前後関係読んでないけど、みょうにツボってしまったw
0609デフォルトの名無しさん
2012/07/22(日) 13:48:11.63usesCacheって使われてないからそのコメント部分がヒットしちゃってるってことですね
0610デフォルトの名無しさん
2012/07/22(日) 13:49:46.63メソッドがなかなか見つからん
これでどうやって判断したの?
0611デフォルトの名無しさん
2012/07/22(日) 13:51:30.54>まあ、C かも知れない状況で、セッターとか勧める人みたいだから、
>自分の周りしか見えてないんだろうな。
純Cでも構造体の値のセットのために噛ます関数や
別モジュールのグローバルやstaticの変数を弄るために存在する関数を
OOPみたくセッターと呼ぶ人はいるよ
0612デフォルトの名無しさん
2012/07/22(日) 13:53:58.11useCacheでも一緒
0613594
2012/07/22(日) 13:54:55.18http://code.ohloh.net/search?s=%22usesCache%22&browser=Default
http://code.ohloh.net/search?s=%22useCache%22&browser=Default
usesだと64件、useだと10777件ですね。
0614デフォルトの名無しさん
2012/07/22(日) 14:00:27.710615デフォルトの名無しさん
2012/07/22(日) 14:01:07.58なぜその記事を書いた本人にまず質問しなのでしょうか?
[本サイトへのご意見、ご感想] のところに
> 本サイトに関することであれば、何でも OK です!
>
> ・コンテンツの感想
> ・コンテンツに間違いを見つけた
> ・コンテンツの内容に疑問がある
> ・こんな記事が読みたい
>
> などについてお問い合わせください。
と書いてあります。
今回の件はまさしく 「コンテンツの内容に疑問がある」 ではないでしょうか。
もしかしたら use(あるいはその他にもあるか)は例外かもしれないのですから。
もう質問した後で、返事がなかなか来ないからここで質問したというのでしたら、
ごめんなさい、余計な事でした。
0616デフォルトの名無しさん
2012/07/22(日) 14:04:44.78まあそれも一つなんでしょうけども、同様に書いてあるところは無数になります。
というよりuseのことに書いてあるところが見つからないのでここで聞いてみた次第なのですが。
0617デフォルトの名無しさん
2012/07/22(日) 14:07:09.76同様に書いてあるところが無数にあるのでしたら、
いくつかランダムにピックアップして著者(管理者)に訊いた方が、
より確実な情報が得られると思いますが、どうでしょうか。
0618デフォルトの名無しさん
2012/07/22(日) 14:12:21.04本当に変数の値を1/2にするコスト(整数だから1回右に算術シフトするだけ)
すら惜しむ必要があるのならCを使うのは矛盾してる。
馬鹿かお前。
0619594
2012/07/22(日) 14:20:05.51useうんぬんについて書いているサイトがあるならそれもごもっともなんですけどね。
どなたかこの件について知っている方がいればレスをお願いいたします。
別に急ぎでもないし、前からずっと疑問に思っていたことなので。
0620デフォルトの名無しさん
2012/07/22(日) 14:23:24.240621デフォルトの名無しさん
2012/07/22(日) 14:29:13.220622デフォルトの名無しさん
2012/07/22(日) 14:30:58.23useCacheはキャッシュを使用するように要求する(bool引数でon/off切替えのケースもあり)
usesCacheはキャッシュを使用状態にあるのかを問い合わせる。
でも、大抵の場合どちらも使わない。(引数名ならよくある)
何故か。
それはキャッシュ無しバージョンのクラスを作って、それにキャッシュ機能をもつクラスをかぶせるよう作るからである。
0623uy
2012/07/22(日) 14:33:21.350624デフォルトの名無しさん
2012/07/22(日) 14:35:25.01useCache は「キャッシュを使うか?」じゃなくて「キャッシュを使え」というニュアンスが込められているように感じます。
0626デフォルトの名無しさん
2012/07/22(日) 14:39:27.92いや意味不明なんですがw
恐らくそんな邪推するような深い意味なんてない。
たまたま現状の分布がそうなってるだけ。
要するに「キャッシュを使うかどうか」を表す値が必要になるような分野では
三単元でbool値を表す作法が一般的な言語はあまり使われないんだろう。
0627デフォルトの名無しさん
2012/07/22(日) 14:46:15.48http://code.ohloh.net/search?s=%22useIE%22&browser=Default
例えばIEを使っているかどうかというbool値でuseIEだと25件、これがusesIEだと0件になります。
0628デフォルトの名無しさん
2012/07/22(日) 14:55:10.33>要するに「キャッシュを使うかどうか」を表す値が必要になるような分野では
>三単元でbool値を表す作法が一般的な言語はあまり使われないんだろう。
そうとも言えないと思うのが、javaに限定しても14対1642でuseCacheなんですよ。
http://code.ohloh.net/search?s=%22usesCache%22&fl=Java
0629デフォルトの名無しさん
2012/07/22(日) 15:01:38.67ですから、>>597 であなたが示したサイトの管理者に、
「Boolean 値の動詞は三単現動詞を使うと書いてありますが、
use の場合も三単現動詞を使うのですか? ネット上に実例が見当たらないです。
これは例外なのですか?」 と質問すればいいと思うのですが。
言っておきますが、ここで質問する事じゃないと言ってるわけではありませんよ。
ここで質問しつつ、解答に時間がかかってもいいのでしたら、
命名規則を書いたサイト管理者にも訊いてみた方が良いのでは? と言っています。
先に管理者からの結果が得られれば、ここに報告すればいいですし。
(もちろん管理者に許可を得てからですが)
かたくなに拒む理由がよく分らない。
0630デフォルトの名無しさん
2012/07/22(日) 15:08:26.20確かにおっしゃる通りですね。
建前ばかり言ってても仕方ないのでぶっちゃけて言うと2chだと気軽に聞けても
サイト管理者に聞くというのが億劫、というのが本音です。
でもここで答えが得られずまたこの先ももやもやするということになったら考えます。
どうもありがとうございます。
0631デフォルトの名無しさん
2012/07/22(日) 15:11:14.33もともとは命令形から来たものだけど。
0632デフォルトの名無しさん
2012/07/22(日) 15:41:21.41確かに奇妙だね。
あえて理由を推測すると、
- usesCacheよりuseCacheの方が1文字短い
- それでいて、useCacheでも十分意味が通じる。
こんなとこ?
0633デフォルトの名無しさん
2012/07/22(日) 15:43:41.06> OOPみたくセッターと呼ぶ人はいるよ
で、それが何の前提もない状況で伝わるとでも?
もう少し、人とコミュニケーションとれるように努力しようよ。
0634デフォルトの名無しさん
2012/07/22(日) 15:43:42.04命令形というのはたとえば"getSize"のようなことですかね。
こういう関数の名前では命令形で原形というのはわかるのですが
useCascheなりuseIE、というのでは三単現のsが付けて他の動詞と同様に統一した方が
ああbool値なんだなというの分かりやすいと思うんですよね。
0635デフォルトの名無しさん
2012/07/22(日) 15:45:12.03Javaに限定するならなんでメソッドに限定しないの?
0636デフォルトの名無しさん
2012/07/22(日) 15:45:47.65だから習慣
0637デフォルトの名無しさん
2012/07/22(日) 15:47:47.690638デフォルトの名無しさん
2012/07/22(日) 15:54:56.13○ContainsHoge(Hogeを含んでいれば)
?UsesHoge(Hogeを使用するのであれば)
?UseHoge(Hogeを使用するのであれば)
C++でもC#でもJavaでもUseを使っているものが大多数だが、俺は単純にルールを守るために Uses を使う
三単現使うっつーのはObjective-Cのコーディング規約でもあるぞ
これはgoogleでも使われている
https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/CodingGuidelines/Articles/NamingMethods.html#//apple_ref/doc/uid/20001282-BCIGIJJF
0639デフォルトの名無しさん
2012/07/22(日) 15:57:10.22今更ですがよく使う言語はCなんです。
で、変数の命名規則のことを調べてたら上記の指針を見つけてこれはいいなと
思っていたのですが、確かTwitterでuseはなんでusesにならないんだとつぶやいている人が
いて、それ以来何故なんだろうと疑問に思っていました。
で、さっきそれについて情報を探していたらこのスレッドを見つけたので書き込んだ次第です。
>>636
ではbool値の変数で他にも例外となる変数はあったりします?
useだけ付けないという習慣ですか?
0640デフォルトの名無しさん
2012/07/22(日) 16:03:02.49なんで変数含めた命名規則にJavaを持ち出すの?
0641デフォルトの名無しさん
2012/07/22(日) 16:08:23.72例外じゃなくて
もともと規則が無いところに存在する習慣
0642デフォルトの名無しさん
2012/07/22(日) 16:08:53.53疑問文じゃなくて、 if (obj.isXXX) ... て書いた時に条件部が現在形のふつうの文になるように
決まってるんだろ。
0643デフォルトの名無しさん
2012/07/22(日) 16:12:21.21すみません、それは引用ミスでした。
javaではメソッド名&変数名のどちらもbooleanの場合は↓のようになります。
http://www.okapiproject.com/java/java_codeconventions/jcc_naming.htm
2.9.4.boolean 変数を返すメソッド
boolean 変数を返すメソッドについては、「is + 形容詞」「can + 動詞」「has + 過去分詞」
「三単現(三人称単数現在)動詞」「三単現動詞 + 名詞」のいずれかの名称をつけます。
特に動詞は三単現以外の動詞は利用してはいけません。
また、true の場合がどちらであるか判別しやすい名前にするために通常は true の場合を名称にします。
2.10.1.boolean 変数名
boolean 型の変数名については boolean 変数を返すメソッドの命名規則(2.9.3)に準ずるものとします。
0644デフォルトの名無しさん
2012/07/22(日) 16:13:31.56何言ってんの?w
0645デフォルトの名無しさん
2012/07/22(日) 16:14:37.78動詞の原形の変数名がbool値を持つ例が有る
0646デフォルトの名無しさん
2012/07/22(日) 16:16:56.36>命名規則(2.9.3)に準ずる
と書いてるのになんで2.9.4を引用してるの?
0647デフォルトの名無しさん
2012/07/22(日) 16:19:18.53どうでもいいことで絡むなって馬鹿が
0648デフォルトの名無しさん
2012/07/22(日) 16:20:05.12失せろゴミ
0649デフォルトの名無しさん
2012/07/22(日) 16:20:55.92メソッド名 IsEmpty に対応する変数名は isEmpty なのか
(変数名は empty は)いかんの?
っつーかbool型のメソッド名に対応する変数名も俺は論議した方がいいと思う
0650デフォルトの名無しさん
2012/07/22(日) 16:22:09.48多分そこはサイトの誤記です。
http://www.okapiproject.com/java/java_codeconventions/jcc_naming.htm
2.9.3.属性の取得・設定メソッド
一般的に「ゲッター、セッター」「アクセサメソッド」と呼ばれている JavaBeans の構成要素となるメソッドです。取得メソッドでは先頭に get をつけ、設定メソッドでは set をつけたものとします。通例として取得メソッドには引数はなく、設定メソッドに引数を持ちます。
0651デフォルトの名無しさん
2012/07/22(日) 16:24:52.16Javaみたいに標準的な規約の無いCならなおさら
0652デフォルトの名無しさん
2012/07/22(日) 16:25:46.30>俺も昔、同じことで困っていたな
おお、同志ですか。ありがとうございます
>○ContainsHoge(Hogeを含んでいれば)
>?UsesHoge(Hogeを使用するのであれば)
>?UseHoge(Hogeを使用するのであれば)
>
>C++でもC#でもJavaでもUseを使っているものが大多数だが、俺は単純にルールを守るために Uses を使う
いまのところはそれがいいかなと自分では思っています。
例外作るとややこしいですし。
>三単現使うっつーのはObjective-Cのコーディング規約でもあるぞ
>これはgoogleでも使われている
>https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/CodingGuidelines/Articles/NamingMethods.html#//apple_ref/doc/uid/20001282-BCIGIJJF
英語ですねw
後で見てみます。
今回のこの件も英語で情報を探せば見つかるんでしょうね、多分。
0653デフォルトの名無しさん
2012/07/22(日) 16:29:22.85http://stackoverflow.com/questions/10819664/why-equals-method-is-third-person-singular
ここに似たような意味(英文として無理がない、気持ちよい)の返答がある。
0654デフォルトの名無しさん
2012/07/22(日) 16:29:33.01多分ね、次はイベントハンドラ関連の命名方法で迷うことになる
0655デフォルトの名無しさん
2012/07/22(日) 16:42:55.30この本に”ブール値の変数名は、頭にis, has, can, shouldなどをつけて分かりやすくすることが多い”
と書かれており、は〜なるほどなとググってみたのがきっかけです。
(これについて本に書かれている情報は結構少ない、約1ページ)
ちなみに今読み返してみたらコード例に
bool use_ssl = true;
とやはりuseが使われていました。
0656デフォルトの名無しさん
2012/07/22(日) 16:44:29.70厚かましいお願いですが、ざっくりで構わないんで要約して頂けませんでしょうか?
0657デフォルトの名無しさん
2012/07/22(日) 16:50:26.870658デフォルトの名無しさん
2012/07/22(日) 17:02:15.42[質問]
equals ってなんで三単現動詞なの?
[回答]
Equals は引数を取って Boolean 値を返すんだよ。
で、一般な的には次のように使うんだ。
if(a.Equals(b)) {}
意味的に分りやすいよね、美しいよね。
>>642 のように「ふつうの文になるように」という事を意図するのは、
>>644 が笑い飛ばすほどおかしな事ではないと思う。
0659デフォルトの名無しさん
2012/07/22(日) 17:25:55.440660デフォルトの名無しさん
2012/07/22(日) 17:40:51.490662594
2012/07/22(日) 18:11:05.04ありがとうございます。
Cでも(というか何の言語でも)この命名規則がいいなと思うのは
コードが文章を書いている風になって読む人(未来の自分を含む)に優しいからですね。
0663デフォルトの名無しさん
2012/07/22(日) 18:14:08.04そういう時に三単現にするべきかどうか迷う。
foo.equals(bar) じゃなくて、 equalsFoo(bar) とか equals(foo,bar) みたいなやつ。
0664デフォルトの名無しさん
2012/07/22(日) 18:17:14.68母語の人にとっては読みやすいらしいよ。
自分みたいに、せいぜい頑張れば読める程度の人間だと、そこまでメリットを感じないけど。
0665デフォルトの名無しさん
2012/07/22(日) 18:19:09.650666デフォルトの名無しさん
2012/07/22(日) 18:26:30.71笑いながら質問するのか。
それはそれで、アホと言われてもしょうがないだろ。
0667デフォルトの名無しさん
2012/07/22(日) 18:28:18.26どこがどうアホか言ってみな。
ついでに、なぜ三単現のsを使うかって話をしてる時にisXXXがどうとかトンチンカンなことをいってる
>>642の意味もね。
0668デフォルトの名無しさん
2012/07/22(日) 18:29:50.11それだったらequalsFooの三単現に一票ですね。
基本は三単現でいいと思うんです。
ややこしいのがuseが例外なのか何なのか?
他にも例外はあるのか?
あと変化しない動詞(http://cosmos.nobody.jp/grammar/irregular_verbs_list_AAA.html)
の場合はちょっと分かりにくいなということです。
まあそういう単語は避けて類義語を使うようにした方がいいんでしょうね。
0669デフォルトの名無しさん
2012/07/22(日) 18:30:22.050670デフォルトの名無しさん
2012/07/22(日) 18:33:10.940671デフォルトの名無しさん
2012/07/22(日) 18:41:02.50変化が特殊なのはともかく、変化しないのは困るよなー。
例えばsetDataという名前があったとして、どう考えても「データをセットする」にしか読み取れず、
「データがセットされているか」や「セットされたデータそのもの」は別の名前にしなきゃならないだろうから。
0672671
2012/07/22(日) 18:43:05.700673デフォルトの名無しさん
2012/07/22(日) 18:46:05.09そうですね。
違う単語を使うか、あるいはhasSetData(has + 動詞)とかがいいんですかね。
0674デフォルトの名無しさん
2012/07/22(日) 18:50:21.58なるほどwwww
>>642が何言ってるか今頃分かったよw
すまんかった
0675デフォルトの名無しさん
2012/07/22(日) 19:08:42.81result screen だとリザルト用に普段のスクリーンとは全く別のスクリーンがあるみたいな感じがして何か違う気がするんですが…
0676デフォルトの名無しさん
2012/07/22(日) 19:16:26.74result screenでいいんじゃないですか
https://www.google.co.jp/search?hl=ja&newwindow=1&safe=off&qscrl=1&biw=1366&bih=651&tbm=isch&sa=1&q=%22result+screen%22&oq=%22result+screen%22&gs_l=img.12...6142.11737.0.13620.2.2.0.0.0.0.80.159.2.2.0...0.0...1c.oMEj0etkuTQ
0677デフォルトの名無しさん
2012/07/22(日) 19:26:54.83>useほど頻度は多くないけどshowとかenableとかforceとかmakeなんかも
>動詞の原形の変数名がbool値を持つ例が有る
ほんとですね。
"boolean showResult"で検索してみたら
http://code.ohloh.net/search?s=%22boolean%20showResult%22&browser=Default&filterChecked=false
s付きだと0件、原形だと80件ですね。
0678デフォルトの名無しさん
2012/07/22(日) 19:41:48.50"boolean enableCache"だとs付き0件で、原形81件
こんなに例外があるならやっぱりその例外になるルールが知りたいところです。
0679デフォルトの名無しさん
2012/07/22(日) 19:50:53.000680デフォルトの名無しさん
2012/07/22(日) 19:52:54.33そう思うんだったら常に酉かコテ付けろよ
0681デフォルトの名無しさん
2012/07/22(日) 20:00:05.89もともと例外でも何でもなくそれだけ広く使われてきた慣習と言うこと
どういうルールがあるかと言えば慣習に合致するものとしか言い様が無い
0682デフォルトの名無しさん
2012/07/22(日) 20:12:06.75ただでさえ英語もわかってないのに
0684594
2012/07/22(日) 21:27:06.930685デフォルトの名無しさん
2012/07/22(日) 21:29:01.22すみません。専ブラ入れてないので何度か名前入れ忘れてますね。
ごめんなさい。
0686594
2012/07/22(日) 21:29:54.880687デフォルトの名無しさん
2012/07/22(日) 21:42:46.33広く使われてる事実を目の前に何のソースが欲しいのか
慣習でなければ何だよ
0688デフォルトの名無しさん
2012/07/22(日) 21:47:08.000689デフォルトの名無しさん
2012/07/22(日) 21:55:22.65http://stackoverflow.com/
もう 2ch で聞いてもらちがあかない段階だと思うぞ
0690594
2012/07/22(日) 22:12:21.85確かに。そんな感じですね。
仮に慣習化されてるなら”ただしuseは○○のため除く”というようなことが
文言として文章化されてて当然だと思って聞いてみたけど無駄みたいですし。
とはいえ英語圏で聞けるなら2chで聞いてないんですが。
まあしばらくこのスレ見てるので何か知ってる人がいらしたら
よろしくお願いします。
0691デフォルトの名無しさん
2012/07/22(日) 22:22:12.160692594
2012/07/22(日) 22:27:58.920693デフォルトの名無しさん
2012/07/22(日) 22:29:55.54死ね
0695594
2012/07/22(日) 22:33:28.99一応書いておきます。
低脳とか馬鹿とかそういう言葉を人に使いません。
イヤミを言いたくなることはあっても。
0696デフォルトの名無しさん
2012/07/22(日) 22:37:20.080697デフォルトの名無しさん
2012/07/22(日) 22:40:24.21いいから死ね
0699デフォルトの名無しさん
2012/07/22(日) 22:51:44.56死ね
0700デフォルトの名無しさん
2012/07/22(日) 22:53:24.040701デフォルトの名無しさん
2012/07/22(日) 22:53:59.39いっても無駄ほっとけって。
useの場合だけ原型を使うなんて習慣はないでしょ。
現にusesとかusingを使ってる人もいる。
>>628のリンク先を見ると、useCacheという名前は変数名として使われている例が多い。
三単現を使うそもそもの動機が>>642の言うとおりのものなら、この場合三単現を使う理由はないわけだし。
0702デフォルトの名無しさん
2012/07/22(日) 22:58:44.200703デフォルトの名無しさん
2012/07/22(日) 23:00:34.76自分の作りだした幻想に反論してんじゃねーよ
0705594
2012/07/22(日) 23:05:07.490706594
2012/07/22(日) 23:18:04.42http://headlines.yahoo.co.jp/hl?a=20120721-00008750-techcr-sci
を読んで知ったのが
http://code.ohloh.net/
のコード検索サービスです。
この検索サービスで調べる限りbool値にusesではなく圧倒的に原形のuseを使っていています。
逆に"bool containsKey"で検索してみると4対2011でs付きの方が多いんです。
http://code.ohloh.net/search?s=%22bool%20containsKey%22&browser=Default
0707594
2012/07/22(日) 23:22:38.57これらについて情報をお持ちの方がいらっしゃいましたらよろしくお願いいたします。
0708デフォルトの名無しさん
2012/07/22(日) 23:32:08.58だから、しつこいようだがメソッドの名前と変数の名前の違いということで
一応説明がつくんじゃないの?
0709デフォルトの名無しさん
2012/07/23(月) 01:02:57.66「そのオブジェクトは〜か?」って感じで、主語より三単現になるが、
指示されたことを単にフラグとして持ってるものなら、
特に主語付きでもないので(あるとしたらそれを指示した貴方自身)、原形を使ってる
とか妄想
0710デフォルトの名無しさん
2012/07/23(月) 01:20:02.35その現在形を使うことは、日ごろの習慣をあらわすことになるので
使うのに疑問を持つのかもしれん。
0711デフォルトの名無しさん
2012/07/23(月) 03:14:28.04意外とscreenって意味広いんですね、タイトル画面もtitle screenみたいですし。
「screen=モニタの表示部分」みたいなイメージ持っちゃってましたが、杞憂でした。
0712デフォルトの名無しさん
2012/07/23(月) 06:19:37.970713594
2012/07/23(月) 08:06:23.75すみません、どういうことなんでしょう?
javaの命名規則に従うならメソッドも変数名も同じく動詞で始める場合は
三単現になるという理解ですから、その2つで違いがあるというのがよくわかりません。
>>709
そのときの主語等の状況で原形になるというのはちょっとありそうなんですが
useの場合は大体どんな状況でも原形で使われてそうなんですよ。
>>710
そうかもしれないけど、原形の割合が多すぎるのがどうも気になりますね。
0714594
2012/07/23(月) 08:14:16.75>>>628のリンク先を見ると、useCacheという名前は変数名として使われている例が多い。
>三単現を使うそもそもの動機が>>642の言うとおりのものなら、この場合三単現を使う理由はないわけだし。
動機ってのはif文にしたとき文章に近くなる、ってやつですよね。
if does hoge なら原形のままでいいと思うんですが、bool値命名のルールではdoesはいちいちつけないため
if hoges と三人称単数現在にする、と。だからuseも三単現になるべきだと思うんですが。
0715デフォルトの名無しさん
2012/07/23(月) 10:44:25.09ソースがあったら つまり
>>690
文言として文章化されて たら、もう規則じゃないの?
ないから慣習だとおもうよ
0716デフォルトの名無しさん
2012/07/23(月) 12:53:48.26use の事は私もまだ分らないから言及しないが、
> bool値命名のルールではdoesはいちいちつけないため
> if hoges と三人称単数現在にする
if文にしたとき文章に近くなる事を考えるなら、理由が違うだろ。
訳してほしいとのことだったから暇を見て >>658 に訳したわけだが、読んでないのか?
(依頼は君じゃなかったっけ?)
Equal なら if(a.Equals(b)) となるから Equals だ。
if AAA equals BBB, ...
does を省略したから Equals になってるわけじゃなく、元々 does は不要だ。
does を付けたら無駄に強調されてしまうだろ(強調の do + 動詞の原型)。
0717594
2012/07/23(月) 18:52:45.73>if文にしたとき文章に近くなる事を考えるなら、理由が違うだろ。
>
>訳してほしいとのことだったから暇を見て >>658 に訳したわけだが、読んでないのか?
>(依頼は君じゃなかったっけ?)
私です。拝読しました。ありがとうございます。
>Equal なら if(a.Equals(b)) となるから Equals だ。
>if AAA equals BBB, ...
>
>does を省略したから Equals になってるわけじゃなく、元々 does は不要だ。
>does を付けたら無駄に強調されてしまうだろ(強調の do + 動詞の原型)。
その通りですね。私があほでした。
通常のきちんとした英文だとdoesが必要という意味のわからない勘違いを
していました。すみません。。
0718594
2012/07/23(月) 19:31:09.34それは「しろ」を付けて命令文にして意味が通るか?
・通れば→原形
・通らない→三単現
例えば
use cache なら、cacheをuseしろ(=使え) → ○ → 原形
use ssl ならsslをuseしろ → ○ → 原形
show result ならresultをshowしろ → ○ → 原形
contain key ならkeyをcontainしろ → × → 三単現
delete node ならnodeをdeleteしろ → ○ → 原形
have childならchildをhaveしろ → × → 三単現
こんな感じです。どうでしょうか?
0719594
2012/07/23(月) 19:36:06.620720デフォルトの名無しさん
2012/07/23(月) 19:41:56.11皆様、お疲れ様でした
0721デフォルトの名無しさん
2012/07/23(月) 19:45:52.51ところで、RPGのキャラクターを示すクラス「Character」のメソッドとして、そのキャラクターにアイテムを使わせるメソッドを用意したいんだが、
メソッドの名前はどうしたらいいんだ?
俺なら UseItem() と命名するだろうが、これはbool値を返すメソッドに見られてしまうのだろうかるのだろうか
0722デフォルトの名無しさん
2012/07/23(月) 19:51:41.60ttp://dictionary.goo.ne.jp/leaf/ej3/39157/m0u/
の13とか22とか…
0723デフォルトの名無しさん
2012/07/23(月) 19:55:01.21そんなのシグニチャなりコメントなり見ればいいだろ
0724594
2012/07/23(月) 19:57:27.58気分を害したようなら謝りますが、無視しているつもりはないです。
まとめじゃなくてこうじゃないかなと思いついて検索してみたところ
こうじゃないかなと思って書きました。
0725デフォルトの名無しさん
2012/07/23(月) 19:59:04.500726デフォルトの名無しさん
2012/07/23(月) 19:59:56.310727デフォルトの名無しさん
2012/07/23(月) 20:02:12.650728デフォルトの名無しさん
2012/07/23(月) 20:17:36.120729デフォルトの名無しさん
2012/07/23(月) 20:20:27.26contain は命令形としても使えますよ
0731デフォルトの名無しさん
2012/07/23(月) 20:21:53.380732デフォルトの名無しさん
2012/07/23(月) 20:24:05.95たしかにそうですね。
だけどcontain_keyっていう変数がキーを含めろって意味には
ならないと思いますがどうですか?
0733デフォルトの名無しさん
2012/07/23(月) 20:24:49.810735デフォルトの名無しさん
2012/07/23(月) 20:28:42.950736デフォルトの名無しさん
2012/07/23(月) 20:30:18.63useは原形でいいとして、動詞で始めるbool値を作るときに
どうするのかという指針に>>718はなり得るんじゃないかとおもうんですが。
0737デフォルトの名無しさん
2012/07/23(月) 20:30:54.17変数なら命令ならないと思うが、関数ならなると思う。
同様に、use_cache という変数ならならないと思うが、関数ならなると思う。
0740デフォルトの名無しさん
2012/07/23(月) 20:38:21.08君がそれで納得するならそれでいいのでは。
0741デフォルトの名無しさん
2012/07/23(月) 20:42:54.24日本語がやや曖昧だな。
その文で use_cache というのは変数だな?
その文の中の「関数」というのは例えばどういう関数だ?
その関数と use_cache 変数をどう組み合わせて使う事を想定している?
contain_key という変数がキーを含めろという意味で使える関数は作れないのか?
作れるけど違和感があるという意味か?
0742デフォルトの名無しさん
2012/07/23(月) 21:03:23.770743デフォルトの名無しさん
2012/07/23(月) 21:12:30.40紛らわしいから、できる事なら他の人が勝手に答えないでほしいんだが
0744デフォルトの名無しさん
2012/07/23(月) 21:14:12.130745デフォルトの名無しさん
2012/07/23(月) 21:25:16.21なんか話が通じてないと思うんだけど、俺がいいたいのは要するに変数名については
bool値を表すものであっても三単現を使う理由がないということ。
三単現を使う積極的な理由があるのはメソッド名のみ。
useCacheのヒット数がusesCacheより多いのは、useCacheという名前が変数名として
多く使われているからであって、必ずしもメソッド名としてusesCacheより好まれているからではなさそう。>>628
変数名については三単現を使う積極的理由がないのは、メソッド名の場合は
hoge.usesCache()
は、
Hoge uses cache.
という命題(命題という表現を使った意味はよく考えて欲しい)を表す英文として読み下せるのに対し、
変数名の場合はそうはいかないから。
しつこいけど、習慣だって意見は眉唾だと俺は思うなやっぱり。
命令云々は正直もっと怪しい。
0746デフォルトの名無しさん
2012/07/23(月) 21:31:05.66>>>739
>その文で use_cache というのは変数だな?
>その文の中の「関数」というのは例えばどういう関数だ?
>その関数と use_cache 変数をどう組み合わせて使う事を想定している?
ネット上からデータを取得する関数で、use_cacheがtrueの場合は
一度目はネットから、二度目以降はキャッシュから値を読むというような感じですかね。
>contain_key という変数がキーを含めろという意味で使える関数は作れないのか?
>作れるけど違和感があるという意味か?
作れると思います。
ただ実際のプログラムで使うときはキーを含んでいるかどうかというbool値として
contains_keyという名前になると私は思います。
作れると思います。
ただ実際のプログラムで使うときはキーを含んでいるかどうかというbool値として
contains_keyという名前を使うんじゃないかと私は思います。
0750デフォルトの名無しさん
2012/07/23(月) 21:44:08.570751デフォルトの名無しさん
2012/07/23(月) 21:58:36.02キーを持っとけ、というフラグ的な用途だったらcontain_keyだろ。
0752デフォルトの名無しさん
2012/07/23(月) 22:02:27.72containsとは根本的に使いどころが違う
0753741
2012/07/23(月) 22:03:42.29関数と変数がどう繋がるのか意味が分らなかったが、今分った。
>>748 で言っている「変数」というのは関数の「仮引数」の事か。
それなら、contain も命令形で使えなくはないぞ。
例えば何か情報をパッキングする場合に、
ヘッダ情報も含めるかどうかを示す Boolean 型引数を持つ関数。
void packHoge (Hoge info, bool contain_header) { ・・・ }
プログラマから見て命令形というニュアンスを含むと考えて問題なくないか?
使えなくはないという煮え切らない態度なのは、自分自身は習慣で使わないからだ。
普段は >>750 辺りを使う。
ただ、contain を使ったとしても違和感なく命令形として意味は通じる。
>>718 の理由ではやや曖昧さが残るのではないか。
命題って
http://dictionary.goo.ne.jp/leaf/jn2/216735/m0u/%E5%91%BD%E9%A1%8C/
数学で、真偽の判断の対象となる文章または式。定理または問題。
っていうような理解でいいですか?
0755741
2012/07/23(月) 22:09:37.38仮引数じゃなくても、メンバ変数の話でも通じるか。
というか終始メンバ変数の話だったか・・・
まぁそれでも同じ事で、contain を命令文にして意図と合致する場合もあり得ると思う。
0756デフォルトの名無しさん
2012/07/23(月) 22:11:27.620757デフォルトの名無しさん
2012/07/23(月) 22:13:37.94はい。
だめだ、難しくて何度読んでもわからない。。。
0760デフォルトの名無しさん
2012/07/23(月) 22:38:01.80http://piro.sakura.ne.jp/latest/blosxom/topics/2008-10-08_naming.htm
Latest topics > メソッド名は三人称単数形にするべきかどうか
0762741
2012/07/23(月) 23:16:49.37俺には、
>>748
> ネット上からデータを取得する関数で、use_cacheがtrueの場合は
> 一度目はネットから、二度目以降はキャッシュから値を読むというような感じですかね。
これが意図と合致していて、
>>753
> 例えば何か情報をパッキングする場合に、
> ヘッダ情報も含めるかどうかを示す Boolean 型引数
> contain_header
これが意図と合致していない、とはっきり言える根拠が見当たらない。
0763デフォルトの名無しさん
2012/07/23(月) 23:30:20.08> ヘッダ情報も含めるかどうかを示す Boolean 型引数を持つ関数。
> void packHoge (Hoge info, bool contain_header) { ・・・ }
つbool with_header
0764デフォルトの名無しさん
2012/07/23(月) 23:35:04.310765デフォルトの名無しさん
2012/07/23(月) 23:37:00.72単純な話だと思うけど俺の説明が悪いのかなw
The skly is blue. (true)
The sea is purple. (false)
A turtle flies. (false)
こういう風に、それが正しいかどうか(true/false)言及できる文を命題と言うんだけど、
メソッドの場合は三単現を使うことでこのような命題を表す英文に読み替えができるようになる。
例えばif(hoge.usesCache())のhoge.usesCache()は"Hoge uses cache."
と読み替えが出来る。
変数名の場合、仮に三単現を使っても
if(usesCache)
これには主語にあたる部分がないからそういう読み替えはできない。
だから変数名の場合は三単現を使う積極的な理由がない。
0766デフォルトの名無しさん
2012/07/23(月) 23:43:09.82変数名であったり、関数contains(a, b)じゃあうまみがゼロだな。
0767デフォルトの名無しさん
2012/07/24(火) 01:11:28.66変数の場合に三単現にする積極的な理由はないけれど、
変数と関数で命名法則を変える理由もないってところかw
>>>753
>> 例えば何か情報をパッキングする場合に、
>> ヘッダ情報も含めるかどうかを示す Boolean 型引数
>> contain_header
>
>これが意図と合致していない、とはっきり言える根拠が見当たらない。
うん、たしかにこれも合致してると思います。
やっぱり曖昧さが残るってことですねえ。
どうも丁寧に説明頂きありがとうございます。
なんとなく理解できました。
0770デフォルトの名無しさん
2012/07/24(火) 01:40:03.88はイマイチってことで無かったことにして
http://piro.sakura.ne.jp/latest/blosxom/topics/2008-10-08_naming.htm
での説明が結構しっくり来たので引用します。
状態を尋ねる系のメソッドを使った文、例えばsomeNode.hasChildNodes()だったら、対応する英文は He "someNode" has some child nodes. みたいな「普通の文」なんじゃないのかなー、と思ってる。
逆に言うと、これらの英文を思い浮かべてコードを書くと、自然に、普通のメソッドは原形で状態を尋ねる系のメソッドは三人称単数形になるんじゃないのか、と。He "someNode" have some child nodes. とは書かないし。
0776デフォルトの名無しさん
2012/07/24(火) 03:05:28.38Hey, Satshi! Get a pokemon!
Satoshi {
void getPokemon();
}
あるいは戻り値はゲットできたかどうかのbooleanか
0777デフォルトの名無しさん
2012/07/27(金) 23:16:31.14Player クラス内には isRunning という
player が走っているかどうかの Boolean 値を調査するメソッドがあります。
例えば A クラスでは以下のように記述して調査します。
if(player.isRunning()){
…
}
ここで、A クラスを利用する Bクラスから、
A クラス内 player が走っているかどうかの調査を行いたいとします。
A クラスにはなんという名前のメソッド名を用意するのがよいでしょうか。
現在は checkPlayerIsRunning というメソッド名にとりあえずしています。
function checkPlayerIsRunning():Boolean{
return player.isRunning();
}
英語難しいです。
0778デフォルトの名無しさん
2012/07/27(金) 23:21:09.60っていうか、それ以前にBからもplayerの存在を意識する必要があるのなら
playerそのものを晒せば話が早いかと
0779デフォルトの名無しさん
2012/07/27(金) 23:42:23.06ありがとうございます。
メソッド名は言われてみるとなるほど!と思いました。
player を晒す、という方法も、確かにその通りだと気づけました。
どうもありがとうございました!
0780デフォルトの名無しさん
2012/07/27(金) 23:59:34.01player is running だろ。なんで入れ替わるんだよ。
0781デフォルトの名無しさん
2012/07/28(土) 02:41:05.200782デフォルトの名無しさん
2012/07/28(土) 02:42:41.590783デフォルトの名無しさん
2012/07/28(土) 02:53:28.15getPlayer().isRunning();
getPlayerIsRunning();
0784デフォルトの名無しさん
2012/07/28(土) 02:56:17.720785デフォルトの名無しさん
2012/07/28(土) 09:21:03.180786デフォルトの名無しさん
2012/07/28(土) 10:58:52.19意味がわかんない
0787デフォルトの名無しさん
2012/07/28(土) 11:22:48.490788デフォルトの名無しさん
2012/07/28(土) 12:10:17.710789デフォルトの名無しさん
2012/07/28(土) 17:42:43.210790デフォルトの名無しさん
2012/07/28(土) 18:32:10.010791790
2012/07/28(土) 18:32:53.450792デフォルトの名無しさん
2012/07/28(土) 19:57:33.610793デフォルトの名無しさん
2012/07/28(土) 20:16:21.77>>777
〜しているかどうかを示す関数の命名規則として「Is なんたら」を採用しているのであれば、「A.IsPlayerRunning」で正しい
if文の意味が通るようにしたいのであれば「if (A.PlayerIsRunning)」にすればいい
英語のコードではどちらも見かけるが、俺なら前者を使用する
一応書いておくけど、>>791 は意味が通っていないからな
0794デフォルトの名無しさん
2012/07/28(土) 20:19:17.410795デフォルトの名無しさん
2012/07/28(土) 20:31:46.690796デフォルトの名無しさん
2012/07/28(土) 20:44:04.73祈ってどうするよ (w
0797デフォルトの名無しさん
2012/07/28(土) 21:25:05.54一晩たったらコードが完成しているという救済(?)があるとかw
0798デフォルトの名無しさん
2012/07/28(土) 21:35:37.33*player は まいそうされます*
0799デフォルトの名無しさん
2012/07/28(土) 21:41:12.99>一晩たったらコードが完成しているという救済(?)があるとかw
そんなご利益があるなら、毎日でも祈りますがな (w
0800デフォルトの名無しさん
2012/07/28(土) 23:49:19.50きめえよお前
0801デフォルトの名無しさん
2012/07/29(日) 01:26:34.650802デフォルトの名無しさん
2012/07/29(日) 01:27:29.590803デフォルトの名無しさん
2012/07/29(日) 13:06:32.21完全にビット演算子だけを使う場合の。
例えば、1バイトのbit7-5がxxx、bit4-0がyyyを表すとき、
yyyは a & 0x1f
xxxは (a & 0xe0) >> 5
?で取れますが、マジックナンバーに定数をつけたいのです。
0804デフォルトの名無しさん
2012/07/29(日) 13:34:18.110805デフォルトの名無しさん
2012/07/29(日) 13:40:02.430806デフォルトの名無しさん
2012/07/29(日) 13:40:50.03俺なら「そのビットは何に使うのか」の用途から名付ける。
まあ、本当にマジでビットの位置以外の意味が全くもってないのなら
(例えば「ビット操作」という演算そのもののテストプログラムとかならそうだろう)
BITMASK_7_5とか付けちゃうだろうけどさ。
0807デフォルトの名無しさん
2012/07/29(日) 14:58:35.86ケースバイケースじゃないでしょうか。
可読性を重視するなら、
RGB_RED, RGB_GREEN, RGB_BLUE 方式
十分小さなプログラムで簡潔さを優先しても問題が小さいのなら
RED, GREEN, BLUE 方式
ただのリテラルではなく、ビットマスクであることを名前に盛り込みたい欲求に駆られるかもしれないが、
それは諦めた方がいいと思う。
っていうか、ビットフィールドを使うのが一番簡単。
0808デフォルトの名無しさん
2012/07/29(日) 15:54:19.19>>806
名前はあるフォーマットのファイルを読むので、既にその仕様書で決まってます。
>>805のXXXMask,XXXShift方式でいこうかな。
0809デフォルトの名無しさん
2012/07/29(日) 15:56:10.610810デフォルトの名無しさん
2012/07/29(日) 16:05:21.440811デフォルトの名無しさん
2012/07/29(日) 17:33:29.05C じゃないらしいのでマクロもないのかな。
マクロとかインラインあるなら (無くても、処理速度が問題にならないなら普通の関数で)
/* XXX の取得 */
#define XXX(x) (((x) & 0xe0) >> 5)
みたいにすればいいかも。
0812デフォルトの名無しさん
2012/07/29(日) 17:40:43.48参考にLinuxのファイルシステムのヘッダファイルより
/*
* Mount flags
*/
#define EXT4_MOUNT_GRPID 0x00004 /* Create files with directory's group */
#define EXT4_MOUNT_DEBUG 0x00008 /* Some debugging messages */
#define EXT4_MOUNT_ERRORS_CONT 0x00010 /* Continue on errors */
#define EXT4_MOUNT_ERRORS_RO 0x00020 /* Remount fs ro on errors */
#define EXT4_MOUNT_ERRORS_PANIC 0x00040 /* Panic on errors */
#define EXT4_MOUNT_ERRORS_MASK 0x00070
マスクの組み立てもいくつかあった
#define BTRFS_BACKREF_REV_MAX 256
#define BTRFS_BACKREF_REV_SHIFT 56
#define BTRFS_BACKREF_REV_MASK (((u64)BTRFS_BACKREF_REV_MAX - 1) << BTRFS_BACKREF_REV_SHIFT)
#define EXT4_EPOCH_BITS 2
#define EXT4_EPOCH_MASK ((1 << EXT4_EPOCH_BITS) - 1)
#define EXT4_NSEC_MASK (~0UL << EXT4_EPOCH_BITS)
他の表現もあるかも知れない
0813デフォルトの名無しさん
2012/07/29(日) 18:04:43.90インラインはありますので、定数名をつけないで、マジックナンバーを
インラインに閉じ込めるのも手ですね。
>>812
おお、ありがとうございます。参考になります
0814デフォルトの名無しさん
2012/08/02(木) 16:35:18.210815デフォルトの名無しさん
2012/08/02(木) 17:57:01.68vsprogEnvMap
vscodeEnvMap
vsEnvMap
0816デフォルトの名無しさん
2012/08/02(木) 18:40:43.37ありがとうございます。
0817デフォルトの名無しさん
2012/08/02(木) 22:41:40.24画像の横か縦かで処理を変えるもので
横向きなら横のピクセルを元にある計算を行い
縦向きなら縦のピクセルを元にある計算を行うというようなものです
0818817
2012/08/02(木) 22:42:18.670819デフォルトの名無しさん
2012/08/02(木) 22:47:06.780820デフォルトの名無しさん
2012/08/02(木) 22:51:05.240821817
2012/08/02(木) 22:51:13.19確かに0と1ならisVerticalでよさそうですね
後学のために1と2ではどうでしょうか?
0822817
2012/08/02(木) 22:52:36.19portraitに縦なんて意味があったとは知りませんでした
参考になります
0823デフォルトの名無しさん
2012/08/02(木) 22:58:07.68むしろ、可能なら列挙型を使え。
C++11なら
enum class orientation_t { PORTRAIT, LANDSCAPE };
orientation_t orientation = ( width > height )? orientation_t::LANDSCAPE: orientation_t::PORTRAIT;
あたりだな。
0824817
2012/08/02(木) 23:28:35.61言葉は知ってますが列挙型のない言語で概念はわかりません
C言語も触ったことがないので
昔オブジェクトのようなものとチラっと言われたような気がしますがよく覚えてなかったり・・・
後で詳しく調べてみます
他にdirectionとかaxisとか思い浮かびましたがセンスないですかね
0825デフォルトの名無しさん
2012/08/02(木) 23:29:12.59命名以前の問題だよ
あと一応言っとくけど、>>820のいうportrait/landscapeは長方形の向きという
感じの意味なので、スキャンの方向みたいなことを表現するのには使えないよ。
0826デフォルトの名無しさん
2012/08/02(木) 23:31:34.980827デフォルトの名無しさん
2012/08/02(木) 23:58:07.820828デフォルトの名無しさん
2012/08/03(金) 01:02:28.790829デフォルトの名無しさん
2012/08/03(金) 02:34:38.920830デフォルトの名無しさん
2012/08/04(土) 07:09:17.460831デフォルトの名無しさん
2012/08/04(土) 12:40:30.07>>817 のニュアンスを込めるなら、axis は良くないと思う。
ODE で axis を調べてみると、向きや方向といった意味は一切ない。
何かを測るための「軸となる直線」とか、
何かを分ける「軸となる直線」などの意味しかない。
0832デフォルトの名無しさん
2012/08/04(土) 12:55:25.43rotateQlockwise (変数の値×90度回転する)
0833デフォルトの名無しさん
2012/08/04(土) 13:00:09.810834832
2012/08/04(土) 13:01:45.05いや、それでもおかしいか。rotationでもいいかも。
0835デフォルトの名無しさん
2012/08/04(土) 13:16:37.75vectorとかacceleratorがきっといいよ
0836デフォルトの名無しさん
2012/08/04(土) 14:49:14.310837デフォルトの名無しさん
2012/08/06(月) 00:41:25.91アンダーバーを途中につけてもいい?
ManyUnko_MasiMasi()みたいな
0838デフォルトの名無しさん
2012/08/06(月) 00:53:05.280839デフォルトの名無しさん
2012/08/06(月) 01:03:49.820840デフォルトの名無しさん
2012/08/06(月) 01:26:26.30クラスもenumも名前空間も使える言語でそんなことをする必要性がむしろないと思うけど。
0841デフォルトの名無しさん
2012/08/06(月) 08:41:16.990842デフォルトの名無しさん
2012/08/06(月) 09:55:50.970843デフォルトの名無しさん
2012/08/07(火) 12:01:21.05Button1_Clickみたいな
0844デフォルトの名無しさん
2012/08/07(火) 16:32:15.65http://msdn.microsoft.com/ja-jp/library/ms182245.aspx
0845デフォルトの名無しさん
2012/08/07(火) 21:57:22.630846デフォルトの名無しさん
2012/08/08(水) 06:13:06.270847デフォルトの名無しさん
2012/08/08(水) 07:59:46.130848デフォルトの名無しさん
2012/08/08(水) 09:22:03.130849デフォルトの名無しさん
2012/08/08(水) 09:40:44.38確かにスッキリはしてたんだけど、どうなんだろう。
0850デフォルトの名無しさん
2012/08/08(水) 12:28:54.400851デフォルトの名無しさん
2012/08/08(水) 19:32:25.900852デフォルトの名無しさん
2012/08/08(水) 20:20:33.360853デフォルトの名無しさん
2012/08/09(木) 01:38:25.68データを文字順(国語辞典方式)で並び替えるための文字列の名前を考えてください。
一応今まで使ってたのは、
string_for_order
とかですが、いまいちしっくりこないです。
0854デフォルトの名無しさん
2012/08/09(木) 04:38:10.66dictOrderString ってのは...何か垢抜けない感じがする
0855デフォルトの名無しさん
2012/08/09(木) 06:04:15.44yomi で
0856デフォルトの名無しさん
2012/08/09(木) 06:19:10.18この文字列ってデータそのものとは別に存在するのか
データそのものからも順番は決定できるけど
並べ替えはそっちの文字列をもとにするって事?
0857デフォルトの名無しさん
2012/08/09(木) 07:56:30.500858デフォルトの名無しさん
2012/08/09(木) 08:01:12.220859853
2012/08/09(木) 10:50:24.55そうですね。
その、「何の」っていうのが「国語辞典の順番にレコードをソートするための」
になってしまうので、なかなかしっくりする言葉が見つからないんです。
>>855
読みのデータはすでにご指摘の通り、yomi というフィールドがあります。
>>856
データの代表的なラベルとして name があって、これは日本語と英数字、一部記号で構成されています。
そのデータを、英数字とカタカナのみで表現したのが yomi です。
国語辞典順に並べるためには、 yomi をさらに別の変換を施して保存したものを使います。
変換方式は割愛させていただきますが、とにかく yomi とは別の文字列で通常はユーザーには見せないデータです。
>>857-858
ありがとうございます、参考にさせて頂きます。
0860デフォルトの名無しさん
2012/08/09(木) 11:15:16.530861デフォルトの名無しさん
2012/08/09(木) 11:16:12.000863デフォルトの名無しさん
2012/08/09(木) 11:29:43.75何重にも用意せず比較関数書けばいいだけじゃん
0864859
2012/08/09(木) 14:23:51.66素晴らしい!!!!!
まさにこれです!!!!!
ありがたく使わせていただきます。
本当にありがとうございました m(__)m
>>862
ありがとうございます、参考にさせて頂きます。
>>863
濁点を取り除いたり、長音を削除したり、拗音を直音になおしたり
データは100万とかのオーダーになる予定で、
検索のたびに比較関数を呼び出しても大丈夫でしょうか?
データベースはMySQLでMyISAMエンジンです。
ソートルール変更の可能性が今後ゼロとは言い切れないので、
もし何かいい方法があればとも思いますが。。。
とにかくこれから lexicographic_key にコードを変更していきます。
まだ、始まったばっかりなのでよかった(^^;
みなさんどうもありがとうございました。m(__)m
0865デフォルトの名無しさん
2012/08/09(木) 15:20:22.460866デフォルトの名無しさん
2012/08/09(木) 15:22:15.630867デフォルトの名無しさん
2012/08/17(金) 12:10:40.67あるクラスに独自の機能を追加した派生クラスの名前として、
****Ex以外にどのような末尾語がよく使われますでしょうか。
今までは****Exとしていたのですが、最近のMFCは、
CDialogExやCWinAppExなど、初めからExが付いたものが存在し、
それらの派生クラスをどのように命名するか考えています。
0868デフォルトの名無しさん
2012/08/17(金) 12:43:59.82Ex2ndEdition,ExCustomTurbo,ExDangerousAttack
もっと意味考えてつけようよ。
package違いなら同じ名前にすることもある。
0869デフォルトの名無しさん
2012/08/17(金) 12:49:28.29結論から言えばEx2みたいな感じの投げやりな名前で良いのでは?
Exとかサフィックスする時点で名前で機能を表現することを諦めてるわけだから
サフィックスにこだわっても無意味だよね。
0870デフォルトの名無しさん
2012/08/17(金) 12:55:03.78ExEx
WEx
SuperEx…は、意味がわからんな。thisじゃん。
0871デフォルトの名無しさん
2012/08/17(金) 13:10:12.08Exまでは許せるがEx2はさすがに引け目を感じるw
0872デフォルトの名無しさん
2012/08/17(金) 13:32:42.840873デフォルトの名無しさん
2012/08/17(金) 18:20:21.020874デフォルトの名無しさん
2012/08/18(土) 01:39:56.06これが一番分かり易いし
0875デフォルトの名無しさん
2012/08/18(土) 08:56:38.240876デフォルトの名無しさん
2012/08/18(土) 12:03:13.60複数の関数または複数のクラスの、共通部分を抜き出したものはHogeCommon
長い関数の一部を抜き出したものはHogeCore、そのまた一部はHogeCoreCore
ある関数やクラスを拡張したものはHogeEx、その(略)HogeExEx
ある関数やクラスの、バージョンが違う有象無象をHoge2、Hoge3
って感じで付けてる
コメントで分かり易く説明しておけばいい
0877デフォルトの名無しさん
2012/08/18(土) 12:57:08.32PPacket
0878デフォルトの名無しさん
2012/08/18(土) 15:32:52.680879デフォルトの名無しさん
2012/08/18(土) 15:52:51.390880デフォルトの名無しさん
2012/08/18(土) 16:01:16.90俺は自分で設計して自分でプログラミングしてるぞ。
0881デフォルトの名無しさん
2012/08/18(土) 21:07:43.110882デフォルトの名無しさん
2012/08/19(日) 15:55:49.10商品id、商品名、値段、説明
例えば上のテーブルに残数項目等の複数項目追加を頼まれたのですが
これからもそういう要求があると思うのでALTERでテーブルの変更はせず
別テーブルを作ってユーザ側で追加してもらうことにしました
項目テーブル
項目id、項目名
項目値テーブル
項目値id、商品id、項目id、項目値
そこでこういう風に関連付けようと思っています
項目テーブルと項目値テーブルの名前つけに困ってるのですが
商品テーブルをitemという名前にした場合どんな感じの名前がいいでしょうか?
0883デフォルトの名無しさん
2012/08/19(日) 16:05:46.210884デフォルトの名無しさん
2012/08/19(日) 16:18:10.432つのOBJ(ポリゴン)のXYを引数にすればいいと思うのですが、
「当たる方のOBJ」と「当たられる方のOBJ」という意味の変数名でいいものはないでしょうか?
ポリゴンの各頂点のXY成分は構造体で作っています。
0885デフォルトの名無しさん
2012/08/19(日) 16:40:27.250886デフォルトの名無しさん
2012/08/19(日) 16:45:21.54当てられる方 hittee
0887デフォルトの名無しさん
2012/08/19(日) 17:03:19.080888デフォルトの名無しさん
2012/08/19(日) 17:06:05.440890デフォルトの名無しさん
2012/08/19(日) 19:12:42.310891デフォルトの名無しさん
2012/08/19(日) 19:32:32.52例えば一部スクリプト言語を挟むときとか、場合によっては区別が必要かも。
0892デフォルトの名無しさん
2012/08/19(日) 19:42:43.72項目テーブル: attribute_type
項目値テーブル: attribute
0893デフォルトの名無しさん
2012/08/19(日) 19:46:28.63当てる方: attacker
当てられる方: defender
0894デフォルトの名無しさん
2012/08/19(日) 22:03:51.39例えば?
0895デフォルトの名無しさん
2012/08/19(日) 22:13:01.00可能性としてはなくはないとは思う。
もっともそれって既にただの当たり判定じゃないような気がするが。
0896デフォルトの名無しさん
2012/08/19(日) 22:23:36.530897デフォルトの名無しさん
2012/08/19(日) 22:33:19.95設定はありうるでしょ。
もっと単純な可能性として、単純な位置じゃなくて�冲の間の軌跡で当たり判定を
行うということもありうる。
0898デフォルトの名無しさん
2012/08/19(日) 22:35:31.760899デフォルトの名無しさん
2012/08/19(日) 22:40:34.880900デフォルトの名無しさん
2012/08/19(日) 22:42:02.490901デフォルトの名無しさん
2012/08/19(日) 23:07:27.02単純な当たり判定を作るつもりなので、確かに当たる方当たられる方の区別はいりませんが、
>>885のようにObj0とObj1にすると殴られそうな気もします。
返信して下さったattackerとdefenderを採用しようと思います。
ありがとうございました。
0902デフォルトの名無しさん
2012/08/19(日) 23:10:42.680903デフォルトの名無しさん
2012/08/19(日) 23:11:40.79悲しいじゃないか
0904デフォルトの名無しさん
2012/08/19(日) 23:15:24.26hitterは分かるんですが、hitteeはどういう意味なのでしょうか?
0905デフォルトの名無しさん
2012/08/19(日) 23:37:42.63区別する必要がないのならそんなミスリーディグな引数を採用しちゃダメでしょ。
普通にtarget1, target2とか同じ扱いをされるだろうと想像できるような名前を付けるべき。
0906デフォルトの名無しさん
2012/08/19(日) 23:41:40.16理由は同じく区別が不要だったから
0907デフォルトの名無しさん
2012/08/19(日) 23:41:51.80-er:する人
-ee:される人
0908デフォルトの名無しさん
2012/08/19(日) 23:43:05.41フランチャイザー/フランチャイジー
とか知らない?
あとdefenderだと当たられる(受動的)つーより防ぐ(能動的)になっちゃうんだが
0909デフォルトの名無しさん
2012/08/19(日) 23:43:13.440910デフォルトの名無しさん
2012/08/19(日) 23:46:15.06やはり変数名を考えるのは大事なことなのですね。
皆さんのレスを参考に、もう一度考えなおして見ることにします。
ありがとうございました。
0911デフォルトの名無しさん
2012/08/20(月) 08:14:45.550912デフォルトの名無しさん
2012/08/21(火) 05:37:31.14順番に意味がないばあい→ ObjectA, ObjectB
ちなみに、大抵の物理エンジンでは衝突ペアを後者の方法で命名している
0913デフォルトの名無しさん
2012/08/21(火) 09:48:26.760914デフォルトの名無しさん
2012/08/21(火) 23:13:43.72使う仕様を見て、その設計はないだろ…、と思ったことはある。
0915デフォルトの名無しさん
2012/08/23(木) 22:10:59.12倉庫番に似たルール(一部違うが)のゲームを作ることになった。
自キャラを操作して、荷物を後ろから押して、目的地へ運ぶ、
という遊び方は倉庫番を踏襲している。
(運び方を色々工夫をしていて、後ろから押すだけではない)
で、ゲームの目的とルールと遊び方は決めたが、
ストーリーはまだ決まっていない。
だから、荷物を押すのが人型キャラであることも、
そもそも押すのが荷物であることすら決まっていない。
ただ制作期間の関係から、ストーリーが決まるまで待つのではなく、
メインの部分だけでもプログラムして、さっさと遊べる状態にしなくてはならない。
(プログラミング言語はC)
そこで、倉庫番であれば「壁」「移動できる空間」「荷物」「目的地」「自キャラ」
これらに相当するオブジェクトの情報を保存する構造体の名前を決めたい。
後に決めるストーリーによっては、荷物はハートになるかもしれない。
だから、例えば Cargo なんて名前はつけられない。
他にも、壁は電磁バリアになるかもしれない。
このように、ストーリーに合った、グラフィックに合った名前がつけられない場合、
どのような名前をつけると良いでしょうか。
0916デフォルトの名無しさん
2012/08/23(木) 22:24:57.790917デフォルトの名無しさん
2012/08/23(木) 22:30:27.97壁 wall
移動できる空間 plane
荷物 treasure
目的地 goal
自キャラ player
0918デフォルトの名無しさん
2012/08/23(木) 22:31:44.630919デフォルトの名無しさん
2012/08/23(木) 22:35:58.24倉庫番に限らないが、最初から「倉庫番アレンジ」としてゲームが作られているなら
素直に倉庫番の名前で作ってしまうべきだと思う。
多分それが一番抽象的かつ分かりやすい名付け方。
例えばいくら荷物→ハートだからと言って下手にHeart等と付けてしまうと、
「荷物をハートに置き換える予定だったけど、最終的に星になりました」と言われたら対応できない。
あ、移動対象の内部名をCargoと名付けたら、主人公がカーゴ君になりました!なんて事になったらゴメン
0920デフォルトの名無しさん
2012/08/23(木) 23:07:48.61たとえば、隣接するノードに割り当てられてるインデックスを取得、なら
GetAdjacentNodeIndex
GetAdjacentNodesIndex
どっちが一般的かな
0921デフォルトの名無しさん
2012/08/23(木) 23:39:46.55付けない。
OOPできるなら
GetAdjacentNode.GetIndex
0922デフォルトの名無しさん
2012/08/23(木) 23:40:43.430923デフォルトの名無しさん
2012/08/24(金) 00:01:50.30複数形と混同するしね。
所有権を強調するなら GetIndexOfAjacentNode かな。
>>921
AdjacentNode.GetIndex じゃないの?
0924デフォルトの名無しさん
2012/08/24(金) 00:10:52.83[選択肢1]
抽象水準の高い名前を付ける。
例えば荷物じゃなくて「押して移動できる物体」(Pushable)
[選択肢2]
後でリファクタリングする前提で暫定的な名前を付ける
0925デフォルトの名無しさん
2012/08/24(金) 12:49:54.02壁 wall
移動できる空間 space
荷物 load, cargo
目的地 goal_location
自キャラ player
積荷がハートか星か分からないのであれば、それら2つを表せるようにすればいい
AppleクラスとOrangeクラスを抽象化して、Fluitクラスを作るのと一緒
そももも、俺なら現時点で積荷がハード型だからという理由で、積荷を表すクラスにHeartなんて付けない
外見の違いでプログラムに影響するワケじゃないし、正直どうでもいいからな
0926デフォルトの名無しさん
2012/08/24(金) 13:04:19.69isStarMarioだかisStarModeだかになってたのを見たことがあるなあ。
確かisInvincibleより具体的な効果が想像できるからって話だった。
0927デフォルトの名無しさん
2012/08/24(金) 13:45:47.47SUSHI
TSUNAMI
MUTEKI
0928デフォルトの名無しさん
2012/08/24(金) 14:16:27.20ハードコートの定数なんて使わないよ
すべて外部ファイルから指定する
名前で悩む以前の問題
0929デフォルトの名無しさん
2012/08/24(金) 18:30:12.55Undefined name 'SUSI'
0930915
2012/08/24(金) 19:03:20.60私も何人かの人と同意見で、具体的なモノを表す抽象度の低い名前は付けられない、
という
0931915
2012/08/24(金) 19:05:48.44私も何人かの人と同意見で、具体的なモノを表す抽象度の低い名前は付けられない、
という立場です。
皆さんの意見を参考に、また自分で色々考えた結果、
次のような名前にしました。
壁 : Wall
移動できる空間 : Space
荷物 : Object
目的地 : Gall
自キャラ : PC
0932915
2012/08/24(金) 19:07:23.70目的地 : Goal
0933デフォルトの名無しさん
2012/08/24(金) 21:23:02.400934デフォルトの名無しさん
2012/08/24(金) 21:27:05.160935デフォルトの名無しさん
2012/08/24(金) 21:35:00.490936915
2012/08/24(金) 22:00:08.28いえ、至極まじめです。
>>918 さんのレスを見てなるほどと思いました。
最終的には荷物になるとは限らないので、
何になってもそれほど的外れにはならない名前がいいです。
ODE で object を調べましたが、
今回の件になかなか合っているのではないかと思います。
0937デフォルトの名無しさん
2012/08/24(金) 22:17:51.26物体の種類増えたらどうすんの?
0938915
2012/08/24(金) 22:36:20.77壁の種類が増えても Wall1、Wall2、Wall3 ・・・と増えます。
0939デフォルトの名無しさん
2012/08/24(金) 22:40:34.860940デフォルトの名無しさん
2012/08/24(金) 22:42:47.400941デフォルトの名無しさん
2012/08/25(土) 01:41:53.520942デフォルトの名無しさん
2012/08/25(土) 01:46:24.91設計に不備があると名前でも悩むのは常識
だからまず設計を見なおせと忠告したんだが?
0943デフォルトの名無しさん
2012/08/25(土) 01:51:44.840944デフォルトの名無しさん
2012/08/25(土) 06:54:21.88お前は>>1を100回音読するべき
>>938
釣りなんじゃねぇの?と思ってしまうようなレスなんだが・・・
絵柄の違い程度であれば、そのObjectクラス1クラス内で処理できる。他のクラスを用意する必要はない
ただの壁とは動作が違うもの、例えばスイッチで現れたり消えたりするような壁が必要になったら、別のクラスを作成するべき
そしてそのばあい、Object1じゃなくてWall、Object2じゃなくてSwitchingWallのように、意味がある命名ができるはず
というかObjectという基本クラスを作成して、それを継承したWall・SwitchingWallクラスを作れるはずだ
0945デフォルトの名無しさん
2012/08/25(土) 08:10:46.65お前は>>1と>>915を100回音読するべき
0946デフォルトの名無しさん
2012/08/25(土) 10:56:14.50外部ファイルから与えればいつでも変更できる
したがってコード内での名前はすべてTileあるいはCell、Boxなどのマップ上の1マスを示すもので十分
0947デフォルトの名無しさん
2012/08/25(土) 11:02:24.140948デフォルトの名無しさん
2012/08/25(土) 11:22:27.65ObjectとかWallとかくだらない名称は必要ないんだよ
必要ないものにわざわざ頭を悩ませるのは馬鹿だろ
0949デフォルトの名無しさん
2012/08/25(土) 11:36:34.18何で外部ファイルを利用するとプログラム上の名前が必要なくなるんだ?
0950デフォルトの名無しさん
2012/08/25(土) 11:41:14.19馬鹿すぎる
0951デフォルトの名無しさん
2012/08/25(土) 11:47:53.370952デフォルトの名無しさん
2012/08/25(土) 12:16:55.770953デフォルトの名無しさん
2012/08/25(土) 12:22:04.07やってみればわかる
// hoge.dat
// ゲームオブジェクトのデータ
nanimonai = { name = "space", nakani_haireruka = true,
osaretatoki_no_ugoki = nanimo_sinai , tatakaretatoki_no_ugoki = nanimo_sinai }
kabe = { name = "wall", nakani_haireruka = false,
osaretatoki_no_ugoki = idou, tatakaretatoki_no_ugoki = kowareru }
omokute_katai_kabe = { name = "superWall", nakani_haireruka = false,
osaretatoki_no_ugoki = nanimo_sinai, tatakaretatoki_no_ugoki = nanimo_sinai }
// マップデータ
table[0] = nanimonai; table[1] = kabe; table[2] = omokute_katai_kabe
map[][] = {
{2,2,2,2,2,2,2,2},
{2,0,1,0,1,0,0,2},
{2,0,1,0,1,0,1,2},
{2,0,0,0,0,0,1,2},
{2,2,2,2,2,2,2,2}
}
map = transform(map, table)
これだけでいい
プログラム側では
Ary2D<Object> map = CreateMapFromFile("hoge.dat");
と書くだけだからハードコートも列挙型定数の名前もクソもない
プログラム中にあるのはObject型と処理と処理名(nanimo_sinai関数、idou関数など)だけ
0954デフォルトの名無しさん
2012/08/25(土) 12:39:41.74仕事このジャンルなん?
0955デフォルトの名無しさん
2012/08/25(土) 12:48:31.12いいえ
0956デフォルトの名無しさん
2012/08/25(土) 13:40:21.73switchばっかりのコードになりそうw
まだこういう思考回路の人っているんだね
0957915
2012/08/25(土) 14:04:07.89これらの名前をどのようにしようかという趣旨のものでした。
つまり、Cargo や Heart などのような具体的なものを表す名前ではなく、
omokute_katai_kabe のような(ある性質を表す)抽象的な名前を求めていました。
その案の一つとしての Object です。
せっかくの案なのに大変申し訳ないのですが、
nanimonai や kabe、omokute_katai_kabe、この
0958915
2012/08/25(土) 14:06:31.92これらの名前をどのようにしようかという趣旨のものでした。
つまり、Cargo や Heart などのような具体的なものを表す名前ではなく、
omokute_katai_kabe のような(ある性質を表す)抽象的な名前を求めていました。
その案の一つとしての Object です。
せっかくの案なのに大変申し訳ないのですが、
nanimonai や kabe、omokute_katai_kabe、この案は2つの理由で受け入れられません。
まずひとつは日本語のローマ字表記であること。
もうひとつは表記が長いこと。
どちらもソースが読みにくくなるという理由で避けています。
最初に質問した時にしっかりと言っておくべきでした。
その点に関してこちらに落ち度があります。
すいませんでした。
0959デフォルトの名無しさん
2012/08/25(土) 15:02:51.86お前煽りたいだけやろ
0960デフォルトの名無しさん
2012/08/25(土) 15:06:50.310961デフォルトの名無しさん
2012/08/25(土) 15:09:06.880962デフォルトの名無しさん
2012/08/25(土) 15:13:21.710963デフォルトの名無しさん
2012/08/25(土) 15:41:33.22実際switchばっかりにならざるを得ないでしょ?違うの?
0964デフォルトの名無しさん
2012/08/25(土) 16:24:38.43「倉庫番風ゲーム」において、Cargoは十分に抽象的だと思うんだ
0965915
2012/08/25(土) 16:59:09.18そうですね。
たぶん、どの辺りから十分抽象的に感じるかは人によって違うのだと思いました。
私は個人的には、Cargo ではちょっと具体的かなという気がしましたので、質問した次第です。
0966デフォルトの名無しさん
2012/08/25(土) 17:08:54.02いや、結局外部ファイルで name = "superWall" といったように名前を指定しているじゃないか
変数 omokute_katai_kabe の正式名称をどうするかと尋ねられたらどうするんだ?
0967デフォルトの名無しさん
2012/08/25(土) 17:11:38.95あまりメタにしたら本末転倒だし、どうしてそうなったのかがコメントからわかれば良いんじゃないかな。
アプリの使われ方はどうなるかわからないので、プロジェクト名はコードネームとしてまったく関係ない名前にしてます。外で話してても安心だしね。
0968デフォルトの名無しさん
2012/08/25(土) 17:15:58.08何でこんなバカなこと考え付くのかは知らないけど。
0969デフォルトの名無しさん
2012/08/25(土) 17:18:48.290970デフォルトの名無しさん
2012/08/25(土) 17:19:13.440971デフォルトの名無しさん
2012/08/25(土) 22:32:52.99それが必ずしも悪いわけではない
0972デフォルトの名無しさん
2012/08/26(日) 22:06:44.44switchなんて一つもでてこないが?
>>967
nameプロパティはプログラミング上での識別子ではなくただの1データでしかない
このケースで問題にしている「名前」とは意味合いが異なる
つーか正式名称どうする?って聞かれてもな
俺のやってる外部ファイル形式ならファイル内で完結してるから正式名称なんてどうでもいい
もしデータ上でもどうしても正式名称に合わせて変更したいなら適当に書き換えれば済む話
逆にハードコートされた定数に対しても同じことが言えるがどうするんだ
定数をすべて置き換えて整合性がとれてるか確認してコンパイルしなおしてってめんどくさくないか?
外部ファイルにすれば1ファイルの1単語を編集すればそれで終わるんだぜ
>>968
定数埋め込みのほうがはるかに馬鹿だろ
パラメーターや挙動をスクリプトなどで外部ファイル化すんのはゲーム作りの常識だ
0973デフォルトの名無しさん
2012/08/26(日) 22:22:13.300974デフォルトの名無しさん
2012/08/26(日) 22:24:24.17>>1 と >>915 をよく見てこいよ、お前以外は誰もそんな話してない。
0975デフォルトの名無しさん
2012/08/26(日) 22:24:47.71スレチ。誰も定数やデータの話はしてない。
0976デフォルトの名無しさん
2012/08/26(日) 23:44:53.08構造体 + 関数のフレームから外に出られない人。
しかもswitchなんて一つも出てこないなんて言っていることから伺えるのは、
恐らくその手続き指向的なプログラミングの経験も浅いとしか。
0977デフォルトの名無しさん
2012/08/26(日) 23:49:00.24とんちんかんなこといってるんじゃないよ
0978デフォルトの名無しさん
2012/08/27(月) 00:05:55.81消えろゴミ
0979デフォルトの名無しさん
2012/08/27(月) 00:10:25.42俺は幸か不幸か仕事でこういう人と付き合ったことがないけど。
もっと酷い人は何人か知ってるけどw
0980デフォルトの名無しさん
2012/08/27(月) 00:15:16.52お前が消えればお前から見て俺が消えることになるから解決するのでお前が消えろ
0981デフォルトの名無しさん
2012/08/27(月) 00:34:02.020982デフォルトの名無しさん
2012/08/27(月) 00:50:34.67> 俺のやってる外部ファイル形式ならファイル内で完結してるから正式名称なんてどうでもいい
いや、正式名称についてお前がどうでも良くてもお前意外は良くない
spaceなりwallなりsuperWallなり、その部分のネーミングの話をしているんだぞ?
いいか?質問内容は「こういうばあい、どういった命名をしたらいいですか?」だ
0983デフォルトの名無しさん
2012/08/27(月) 01:09:08.22その次の行読めなかった?
0984デフォルトの名無しさん
2012/08/27(月) 01:14:13.55あほらし
0985デフォルトの名無しさん
2012/08/27(月) 08:22:10.70お前もう・・・いいわ
なんかこう、リア♀脳と話すのは疲れる
0986デフォルトの名無しさん
2012/08/27(月) 08:50:49.90素人はだまってろよ
拡張性考えたら俺のやり方がベストだから
無駄なんて一つもない
0987デフォルトの名無しさん
2012/08/27(月) 09:52:57.64本当に哀れだな現実が全く見えてない
俺以外でもまともな奴はコーディングレベルで正式名称なんてどうでもいいんだよ
逆にコーディングレベルで正式名称にこだわる奴はまともじゃないといえる
普通はゲーム仕様上の正式名称が仮に決まっててもコード中にはまず書かないのよ
例えとしてジャンプキャラクターオールスターの格闘ゲームを作っているとしよう。その時に
サタンミラクルスペシャルウルトラスーパーメガトンパンチ、とか、バオーシューティングビースススティンガーフェノメノン
などの必殺技のくっそ長い正式名称のゲーム単語用意されて馬鹿正直に
enum SkilID { kSatanMiracleSpecialUltraSuperMegatonPunch = 1, …… };
って書いた奴がいたらそれはそいつが限りなく頭がおかしい証拠
変更や追加に対する耐性が著しく下がり、さらにコードを書く方の手間も無限に膨れ上がり生産性には結びつかない
普通はモーションデータ、当たり判定データなどのその技に関するデータと共に付属するパラメーターのうちの一つとして技名を関連する外部ファイルに書き出す(そしてそれを書き換えるのはプログラマではない)
プログラムを書く上でそんな「技の名前」なんてものを気にしたりあまつさえコードに直接書く奴は完全に無能であることを自ら宣言してるに等しい
まともな設計をしているならばこのようにデータを外部に持ちプログラムコードの上では「技データのコレクション」という形で扱う
いちいち個別の技(ただのデータ)にプログラミング上での特別な名前を与えるなんて素人くさいことはしないんだよ
それと同じで質問者がいうような個別の物体にわざわざプログラミング上での名前は与えないのが普通
気分屋のデータ製作者がなんとなく技名変えたいな〜物体の名前を"ハ〜ト"に変えたいな〜ってその日の気分で書き換えても問題がないように作るのが普通のプログラマね
0988デフォルトの名無しさん
2012/08/27(月) 10:15:11.890989デフォルトの名無しさん
2012/08/27(月) 11:21:50.07北向きのベクトルで話しをしているのに、お前は南、西、東向きのベクトルで話をしているんだよ
ベクトルの 長さ=100 の話をしているのに、お前は 長さ=10^-3 とか 長さ= 10^100 の話をしているんだよ
リアルでも情報系の話が通じないタイプの人間だろ
0990デフォルトの名無しさん
2012/08/27(月) 11:23:22.15そういう君は変な例えでなんか言ったつもりになる文系くんタイプだね
0991デフォルトの名無しさん
2012/08/27(月) 11:26:06.20役立たず
0992デフォルトの名無しさん
2012/08/27(月) 11:36:13.80理系の俺がそっち系の会社に入って自己評価したことだけど、
文系を馬鹿にするのは、コメントを分かりやすく書けるようになってからにしろ
こういう奴がイミフなコメントと謎の関数でメンテナンス性を下げるんだわ
0993デフォルトの名無しさん
2012/08/27(月) 11:38:51.36でました
レッテル貼りくん(^^;
つかコメントの話してねーから君は帰ってイイよ
0994デフォルトの名無しさん
2012/08/27(月) 11:43:23.89それがお前らだ
名前に悩んだらまずは設計を見直せ
それが一番の正解だよ
0995デフォルトの名無しさん
2012/08/27(月) 11:57:14.69メンテナンス性を下げるのはコメントや個別の関数ではなく全体設計
これ基本事項ね
0996デフォルトの名無しさん
2012/08/27(月) 12:40:39.67ちなみに、map テーブルをファイルに保存するようになったらどうだろうか?
ロードする時にどうせswitchは出てくるでしょ。ここだけはどうやっても無理
0997デフォルトの名無しさん
2012/08/27(月) 13:11:15.36いやあ必要ないでしょ
どんなコードを想定してるのよ?
0998デフォルトの名無しさん
2012/08/27(月) 13:31:22.690999デフォルトの名無しさん
2012/08/27(月) 13:34:57.80なんだ何もわかってない連中がいたのね
まともに伝わらないわけだわ
1000デフォルトの名無しさん
2012/08/27(月) 13:37:13.9310011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。