X



一文字変数を使うバカは人生の敗北者part1
■ このスレッドは過去ログ倉庫に格納されています
0001仕様書無しさん
垢版 |
2013/03/30(土) 11:01:29.14
int i;←バカ意味わかんねーよ
0002仕様書無しさん
垢版 |
2013/03/30(土) 11:07:23.86
まあ、変数名が一文字で可読性が損なわれない、とか言っているのは
単に「俺は困らない」というだけの話、ってのが結論だよね。
0003仕様書無しさん
垢版 |
2013/03/30(土) 11:15:12.83
1文字変数で困るやつはアスペ
0004仕様書無しさん
垢版 |
2013/03/30(土) 11:16:39.40
>>3
アスペだから一文字変数が理解困難な状況を引き起こすことが理解できないのだろう?
0005仕様書無しさん
垢版 |
2013/03/30(土) 11:18:41.55
ローカルなスコープのつもりでiとか使ったのに、
そこが他の一文字教のスコープの中ですでにiが使われているとか
一文字はバグの温床と言わざる得ない。
0006仕様書無しさん
垢版 |
2013/03/30(土) 11:22:29.69
「1文字でも理解できる」という主張ならまだ
「ああ、この人、その程度のコードしか書いたことがないんだな」
で済む。

問題は、「1文字のほうが理解しやすい」という馬鹿。
根本的にプログラミングに向いていない。
0007仕様書無しさん
垢版 |
2013/03/30(土) 11:25:43.08
でも、偉そうな事書いてるヤツも
簡単な御題出されるだけで
言い訳して逃走するのが2chの面白いところ
0008仕様書無しさん
垢版 |
2013/03/30(土) 11:26:31.42
>>6
数文字読まないと理解できない変数より一文字で何なのかわかる変数のほうが
読むのが早いという話。
似たような同じよう長さの変数をいっぱい作られるのは大迷惑としかいいようがない。
0009仕様書無しさん
垢版 |
2013/03/30(土) 11:28:14.86
つまり、メソッドのオーバーロードはするなということか
参考になります
0010仕様書無しさん
垢版 |
2013/03/30(土) 11:28:27.03
アセンブラのソースとか読ませたら卒倒しそうだな。
eaxって結局何の値なんだよ!とかw
0011仕様書無しさん
垢版 |
2013/03/30(土) 11:35:54.43
一文字変数を使うバカは周りから相当疎まれている。
でもアスペだから気が付かない。
0013仕様書無しさん
垢版 |
2013/03/30(土) 12:12:59.48
>>9
そうだね、メソッドのオーバーロードは混乱の元だ。
俺はメソッドはオーバーライドするほうが良いと思う。

おまえはどういう状況でメソッドをオーバーロードさせるんだ?
0014仕様書無しさん
垢版 |
2013/03/30(土) 12:15:22.68
>>8
おまえは1文字で意味がわかるのか、宣言部やfor文を読まなくても?
プログラマーよりエスパーの素質があるんじゃね?
0015仕様書無しさん
垢版 |
2013/03/30(土) 12:18:48.81
>>8
長さ1の変数をいっぱい作られる件については迷惑じゃないんですね
0016仕様書無しさん
垢版 |
2013/03/30(土) 12:20:00.99
オーバーロードを語るときになぜオーバーライドの話が出てくるのか。
名前が似てるだけで完全に別物なのに。
長友のオーバーラップについて話してるときに
「長友はオーバーオールを着たほうが似合う」とか言い出すようなものだ。
0017仕様書無しさん
垢版 |
2013/03/30(土) 12:46:58.76
やまぶき色のあれか
0018仕様書無しさん
垢版 |
2013/03/30(土) 12:54:41.63
ii, jj, kk で、一文字がどうとかの批判をかわせる。 

はぁ? 意味? ループ制御変数以外に用途なんかねーよスカタン
0020仕様書無しさん
垢版 |
2013/03/30(土) 13:03:06.32
何回回ったかが分かればいいだけの変数に、大層な名前
なんか付けてられるかハゲ

Index とか、人気がありすぎてどこに割り当てればいいか
迷うだろうが。 意味が簡単に類推できる名前って、例えば

hogehogeControlLoopIndex・・・て、長いわヴォケ
0021仕様書無しさん
垢版 |
2013/03/30(土) 13:11:03.52
でも長い変数名にしたときにindexがつくということは
そのカウンタを配列の添字か何かに使う目的があるということだろ?
そもそもループ回数自体になんらかの根拠や目的があるはずで。

それすらないただのループ制御というのならCPUに負荷をかけるだけの空ループということになるな。
0023仕様書無しさん
垢版 |
2013/03/30(土) 13:23:54.77
変数に1文字の名前つける人って、自分の子供の名前も
人生ループの名前だからって1文字なの?
意味考えてあげないの?
0026仕様書無しさん
垢版 |
2013/03/30(土) 13:25:49.27
>>20
一文字推奨派は反論するときに変数名を長くしすぎ
短かい変数名の有効性はある程度認めてるってことだな
0027仕様書無しさん
垢版 |
2013/03/30(土) 13:26:46.55
そうか、いま分かった。

反一文字派は、キラキラネーム派なんだなw
0028仕様書無しさん
垢版 |
2013/03/30(土) 13:27:31.99
>>23
スコープが80年ぐらいあるから熟考するだろ
スコープが一日ぐらいのミニゲームなら「あああ」とかでいいけど
0033仕様書無しさん
垢版 |
2013/03/30(土) 13:32:35.01
>>27
逆だろ。
考えることを放棄してその辺の適当な固有名詞を名前にしちゃうんだから、
一文字派がキラキラ派だよ。
0034仕様書無しさん
垢版 |
2013/03/30(土) 13:35:40.35
>>29
大人になったら
for (int y=xxxx; y < deadyear; y++)
 for (int m=1; m <= 12; m++)
  for (int d=1; d <= 31; d++)
   everyday();
0035仕様書無しさん
垢版 |
2013/03/30(土) 13:35:45.06
何言ってんだ?
キラキラはキラキラで色々考えて没個性にならないようにという目的で付けるんだぞ
int i みたいな短命一時変数にもちゃんとした名前を与えて没個性にならないように
してあげてる反一文字変数派こそどうみてもキラキラ
0036仕様書無しさん
垢版 |
2013/03/30(土) 13:37:35.51
すげえ、スレが二つになってもどっちも勢いがある…
お前らどんだけフラストレーション溜まってたんだw
0037仕様書無しさん
垢版 |
2013/03/30(土) 13:37:53.38
>>33
i, j, k をループ制御変数名にするのは、慣例。 いわば、文化。

長い間に様々な議論があったけど、最終的にそこに収束した、
いわば、集合知の結晶。

それに反抗する連中こそが、キラキラネーム派だろ
0039仕様書無しさん
垢版 |
2013/03/30(土) 13:40:10.62
>>34
for (int y=xxxx; y < deadyear; y++)
 for (int m=1; m <= 12; m++)
  for (int d=1; d <= 31; d++)
   for(int h=0; h < 24; h++)
    for(int M=0; M < 60; M++)
     for(int s=0; s < 60; s++)
      everysecond();

のとき、mが月でMが分とかわからないから、ちゃんと
year、month、day、hour、minutes、secondsにすべき。
ループだからと言って一文字変数使うやつは総じて無能。
0040仕様書無しさん
垢版 |
2013/03/30(土) 13:40:16.56
つかキラキラの意味わかってるか?
音はともなく読めないような無茶な漢字をあててウチの子だけの個性的な名前!みたいな命名のことだぞ
0041仕様書無しさん
垢版 |
2013/03/30(土) 13:41:41.24
>>40
金星って書いてマーズって読むような奴だろ。知ってるよ。
0045仕様書無しさん
垢版 |
2013/03/30(土) 13:43:31.61
JR-100さんの事ディスってんの?
0046仕様書無しさん
垢版 |
2013/03/30(土) 13:43:36.27
無茶な漢字ではなくてちゃんと音に則した漢字だぞ?
その音(読み)の選択が流行に乗りすぎて強引なんだよ。
0048仕様書無しさん
垢版 |
2013/03/30(土) 13:45:24.90
ループ変数で i とかポインタの p とかで、スコープが 10 行ぐらいなら、かまわん。
0049仕様書無しさん
垢版 |
2013/03/30(土) 13:45:45.48
目新しい事言わないと食いっぱぐれるライターと、それに
まんまと引っかかってるアホが、強引にケンカ売って来て
るんだと思う
0050仕様書無しさん
垢版 |
2013/03/30(土) 13:47:11.41
>>48
>>39のコードは一文字変数のスコープが10行すらないですけど、
ああいうのがいいんですね?
0051仕様書無しさん
垢版 |
2013/03/30(土) 13:48:32.36
>>46
それを無茶って言うんじゃ?
豚切りだったり時には音と漢字が全くあってなかったり…
0052仕様書無しさん
垢版 |
2013/03/30(土) 13:53:30.88
とりあえずまともに動くプログラム組んでください
0058仕様書無しさん
垢版 |
2013/03/30(土) 15:27:24.52
>>1
まだそれくらいならいいよ

ハンガリアン記法を使う老害よりぜんぜんまし
てかfor文内でint iくらいどってことないし
0059仕様書無しさん
垢版 |
2013/03/30(土) 15:28:07.18
>>1は複素数電気回路も否定する輩か?

複素解析や回路計算のときどうすんだ?
0064仕様書無しさん
垢版 |
2013/03/30(土) 16:58:15.61
>>16
そうだよねー
オーバーロードとオーバーライドは全然別物だよねー

で、メソッドのオーバーロードの例を見せてくれよw
0065仕様書無しさん
垢版 |
2013/03/30(土) 17:26:04.25
>>2
むしろ一文字否定派のほうが「みんな困ってるはずだ」って話しかできてないじゃん。
0066仕様書無しさん
垢版 |
2013/03/30(土) 17:26:55.08
>>60
またこの話題?
話をループさせてるのはわざとなのか、アスペだからか。
0075仕様書無しさん
垢版 |
2013/03/30(土) 19:36:26.79
DQN名としてよく言われてる奴、保険会社とか(毎年「今年の一番人気」とか集計してたり
するような)ちゃんとソースがある奴と、いくら調べても2chソース(の転載)しか出てこない
奴がある。後者は怪しい。代表例が金星(まあず)。
0076仕様書無しさん
垢版 |
2013/03/30(土) 20:59:50.83
>55
>71
>55
>71
>55
>71

だから「キラキラ 金星」とかでぐぐれカス
0078おじゃばさま
垢版 |
2013/03/30(土) 21:36:35.33
1 payment = price[containerNo] * quantity;
2 payment = price[cno] * quantity;
3 payment = price[i] * quantity;
4 a = p[i] * n;
で、1と3の争いでいいのかな?
0079仕様書無しさん
垢版 |
2013/03/30(土) 21:56:38.14
ローカル変数の名前は短くて、変数の性質をズバリと表したものを選びます。
例えば、ループの実行回数を数える適当な整数カウンタは i と名付けるのが
良くて、誤解される恐れもないのに loop_counterと呼んでも無駄なだけ。
0080仕様書無しさん
垢版 |
2013/03/30(土) 21:59:57.13
>>79
からループなら、適当な整数カウンタだけど、
ループの中で何らかの意味を持って使用するのだから
適当ではない。
0081仕様書無しさん
垢版 |
2013/03/30(土) 22:15:57.03
>>76
2chとかlivedoorニュースとかばかりでまともなソースがないじゃん
こんな都市伝説レベルの情報信じて>>53や俺を晒してたのかおまえら
0082仕様書無しさん
垢版 |
2013/03/31(日) 00:35:48.47
>>81
都市伝説とか信じる信じないじゃなくて、全員が分かってることを殊更に取り上げて晒すな晒すなというのが滑稽なだけ
お前アスペだわ
0084仕様書無しさん
垢版 |
2013/03/31(日) 02:28:01.95
>>82
全員がって俺は知らなかったぞ
こんなのネットニュース隈なく見てないとわからんだろ
そしてお決まりの病気認定ですかw
0085仕様書無しさん
垢版 |
2013/03/31(日) 07:57:05.05
ハゲをバカにするために、hageというローカル変数を使ってます。
0086仕様書無しさん
垢版 |
2013/03/31(日) 07:58:28.21
一文字否定派って、じゃあ、そのループカウンタを配列の
添字として使用する場合の事も考えてもの言ってんの?
どうせ配列の名前も、長ったらしいんだろ?
その上、添字も長ったらしいの? 
どんだけ長ったらしいソースコード書いてんの?
それ、ひと目で配列って分かるの? 分からんだろ?
それくらい、可読性が下がるってことだよ?
0087仕様書無しさん
垢版 |
2013/03/31(日) 08:34:59.74
使い捨てローカル変数が1文字じゃないとか、イラっと来るよね。
0088仕様書無しさん
垢版 |
2013/03/31(日) 08:54:32.58
世の中に広く普及している手法にモノ申す俺ってカッコイイ(キリッ

さしずめ、こんな感じか
0091仕様書無しさん
垢版 |
2013/03/31(日) 12:16:32.23
>>84
知らんならぐぐってみてなんで晒されてるか察せよ
そのくらいできないのかと
0092仕様書無しさん
垢版 |
2013/03/31(日) 12:55:06.39
>>91
ヘビーなネットユーザーしか知らないようなことを
何でいちいち調べてそこまでやらないといかんのか。
常識レベルのことなら晒されても仕方ないが内輪ネタみたいなもんだろ。
内輪ネタを知らないやつを叩くとかちょっと理解できん。
0094仕様書無しさん
垢版 |
2013/03/31(日) 14:13:49.08
知らんならおかしいと思った時点でぐぐればいいだろw
0095仕様書無しさん
垢版 |
2013/03/31(日) 14:21:17.81
問題解決能力がないから、俺流の頓珍漢な流儀を
でっち上げて、世の中に問題を作り出している感じ
0096おじゃばさま
垢版 |
2013/03/31(日) 15:33:38.61
>>86
ループカウンタには、配列に関連する名前ではなく、ループに関連する名前を付けるべきだろう。
配列か分からないと言うのは、配列の添字に使われるか分からないという事だろうか?
それは[]内に入るから分かるとともうが。
0097仕様書無しさん
垢版 |
2013/03/31(日) 15:40:06.06
一文字程度の変数だと、[ ] の中に書いても何ら違和感がないが、
長ったらしい変数名だったら、そもそもどこからどこまでが [ ] の
中なのか、パッと見で分からんだろ。
それとも何か? 配列の位置を算出する変数をわざわざ用意して、
そいつに代入してから使えってか?
で、その変数名に一文字変数とか使っちゃダメだってか?
0099仕様書無しさん
垢版 |
2013/03/31(日) 16:04:57.02
すまん間違えた。向こうにスレに書こうとしたw
0101仕様書無しさん
垢版 |
2013/03/31(日) 16:09:50.45
言えることはただひとつ
スレ主はどうしようもない馬鹿
良くもまぁ厚かましくマ板に書き込めたなぁ…
0102仕様書無しさん
垢版 |
2013/03/31(日) 16:42:06.43
>>97
i,j,k使うやつはすぐバグ出すんだよ。
配列アクセスでjと書くべきところをiと書いてたりな。
0104おじゃばさま
垢版 |
2013/03/31(日) 16:55:50.19
>>97
ちょっと待て。
[]内に文字数制限などないから、そのまま使えばいいだろう。
長すぎるなら略号3文字程度にするてもあるが、
意味が読取れない場合が多いようだから、長いままの方がいいかもしれない。
0105仕様書無しさん
垢版 |
2013/03/31(日) 17:10:12.44
お前は壊れたスレに帰れ
過ぎた話題を掘り返すな
0106仕様書無しさん
垢版 |
2013/03/31(日) 18:04:21.39
100人いたら95人から理解を得られる記述をするのがプロ

極める言語は一つでも色々な言語を使いこなせると煮詰まってくる

詰将棋に近い感覚
0108仕様書無しさん
垢版 |
2013/03/31(日) 19:06:02.33
だーかーらー、ii, jj, kk にすればいいじゃん。 

反一文字派も、3文字はOKって言ってるんだし、
だったら2文字でもいいよね? ね?
0109仕様書無しさん
垢版 |
2013/03/31(日) 19:11:22.01
意味が本人しかわからない変数名を付ける時点で
他の開発者のことを考えられないアスペ確定。
0111仕様書無しさん
垢版 |
2013/03/31(日) 19:49:20.28
>>106
無理だよそんなの。人によって書き方全然違うから。
規約云々とか言ってる連中いるけどそんなので統制利かないから。
0112仕様書無しさん
垢版 |
2013/03/31(日) 19:50:33.03
i, j, kの代わりに
index1, index2, index3を使っても
何も分かりやすくなってないんだけどなw
0113仕様書無しさん
垢版 |
2013/03/31(日) 21:49:41.31
変数名なんて1文字だろうが単語だろうが臨機応変でいいだろ
0114おじゃばさま
垢版 |
2013/03/31(日) 21:59:35.19
>>108
112の言う通りただ長くしても意味がない。
iもiiもcntもindexも同じだ。
1、2と3の間には明らかな差がある。
それを考えると1の方が優れていると言えるのではないか?
0115仕様書無しさん
垢版 |
2013/03/31(日) 22:21:30.43
厨二病時代の話だけど、やたら長い妙な変数名をつけちまったことあった
恥ずかしい話だ
0116仕様書無しさん
垢版 |
2013/03/31(日) 22:31:54.24
極端に短い変数名だとSubversionやGitに正しく拾ってもらえないだろ
0117おじゃばさま
垢版 |
2013/03/31(日) 22:46:40.74
メソッド名が長くなる傾向はあるが、変数名はそこまでいかないだろう。
普通は単語3語以下で単語先頭は大文字。
レガシーCの場合は、長い場合は略称を使う。レガシーCの業務ソース場合は、その前にi_とか入るが。
Ofは使わないな、メソッドじゃないのだから。
0118仕様書無しさん
垢版 |
2013/03/31(日) 23:00:17.80
関数の型を関数名に含める方式(通称ハンガリー方式)なんて使う連中もどうかしてる
そんなことをしなくてもコンパイラは型を知っているし、型チェックもできる
結局はプログラマ自身を混乱させるのがおち
Microsoft が不安定なプログラムを作っているのもうなずけるよね
0119仕様書無しさん
垢版 |
2013/03/31(日) 23:28:14.22
ハンガリー方式?
システムハンガリアン方式だろ。
0120仕様書無しさん
垢版 |
2013/03/31(日) 23:55:37.98
>>118
> そんなことをしなくてもコンパイラは型を知っているし、型チェックもできる

その理屈で言えば、ghsdfbkjslみたいな意味のない変数名でも
コンパイラは型を知っているし、型チェックもできるし、
正しく動作する。

えとな、名前っていうのは、コンピュータのためではなく
人間のためにつけるんだよ。
0121おじゃばさま
垢版 |
2013/03/31(日) 23:56:30.77
>>118
クラス型になってIDEも進化した今は、ほとんど使ってない。
ただレガシーCの場合は、プリミティブ型全盛で、さらにポイントがあるから、
それなりに有効だぞ。
0124仕様書無しさん
垢版 |
2013/04/01(月) 00:05:37.11
色々とちょっとずつズレてるから迷惑というかウザいんだと思う
0131おじゃばさま
垢版 |
2013/04/01(月) 01:24:47.43
>>130
一人じゃないよ。
ハンドル名間違えてるぞ。
0133仕様書無しさん
垢版 |
2013/04/01(月) 07:23:19.36
一文字変数禁止派は、多相型の型パラメータも
List<T> じゃなくて
List<TypeParameterOfList> とか書いてるってこと?
0134おじゃばさま
垢版 |
2013/04/01(月) 09:55:28.31
>>133
それは型の方だから関係ないだろうし、クラス名は長くて普通だろう。
0136仕様書無しさん
垢版 |
2013/04/01(月) 11:45:25.10
>>133
もちろん、ContainerType とか AllocatorType とか、それが何なのかを書くべき。


それとは別に数学などの慣例なら i j k n x y z などはそのまま使うのが当然。
vt = v0 + g * t;
で十分わかりやすい。
0137おじゃばさま
垢版 |
2013/04/01(月) 19:13:57.38
>>136
学生の組み方だな。
単純な数式ならマクロにすべきで、
複雑な数式なら関数にして長い変数名を使うべきだ。
0138仕様書無しさん
垢版 |
2013/04/01(月) 19:32:22.27
マクロってC言語のか?
C++ではDeprecatedなのだが。
0139おじゃばさま
垢版 |
2013/04/01(月) 20:14:04.66
>>138
マクロはレガシーCの場合だな。
クラス型言語の場合は、まず算術クラスにないか探す。
なければ自分で作るが、長い変数名を使うのがいいだろう。
0140仕様書無しさん
垢版 |
2013/04/01(月) 20:58:24.66
ドカタは数学の素養が無い文系が多いから
数学の慣例なんて意味が無いよね
0143おじゃばさま
垢版 |
2013/04/01(月) 22:03:06.01
>>140
ああ、意味ない。
学校の授業ではないのだから。
0144仕様書無しさん
垢版 |
2013/04/01(月) 22:07:57.60
>>141
だからどうした?

「コンパイラが知っている」ということに
意味が無いのは本当だろ?

ソースコードは汚くても、コンパイラは適切に処理できる。
だからって汚いコードでOKということにはならない。

人間が理解しやすいコードを綺麗なコードと言うんだ。
人間のことを一番に考えましょう。


ハンガリアンがだめなのは、コンパイラが知っているからではなく別の理由。

btnRun、buttonRun、runBtn、runButton、run_button
color_number、numColor、nColor、iColor
これらはハンガリアンか、それとも単に名前を略しただけか、
前につけるのはNGで、後ならOKなのか?
ハンガリアンの本当の問題点は何か。それを本当に理解している人は少ない。
0146仕様書無しさん
垢版 |
2013/04/01(月) 22:17:39.01
初出が「ハンガリー方式」な時点で察してあげなよ
0147仕様書無しさん
垢版 |
2013/04/01(月) 22:21:11.68
>>145
バカか?

俺は理解している、なんて一言も書いていない。
こういう完全に理解していない奴は議論をするなという風潮が
日本をダメにした。
0149仕様書無しさん
垢版 |
2013/04/01(月) 22:26:12.17
そんなこと理解する必要ない
ユーザーからは一切触れることのないどっちでもいいことだ
0150仕様書無しさん
垢版 |
2013/04/01(月) 22:27:40.23
>>146
念の為に言っておくと、初出はこれの英語版

Encoding the type of a function into the name (so-called Hungarian notation) is brain
damaged - the compiler knows the types anyway and can check those, and it only
confuses the programmer. No wonder Microsoft makes buggy programs.

って書いてあるから、Hungarian notation

Hungarian notationの日本語訳がハンガリアン記法
0152仕様書無しさん
垢版 |
2013/04/01(月) 22:44:17.08
Hungarianってかいてあるよ

> なお、ハンガリアン記法の名称は考案者チャールズ・シモニーがハンガリー出身であることに由来する。
0153仕様書無しさん
垢版 |
2013/04/01(月) 23:17:45.02
すぐに話題がそれるのが、オマエラの悪いところ
0154仕様書無しさん
垢版 |
2013/04/01(月) 23:42:47.59
ハンガリアンでもアプリケーションハンガリアンはOKとされている。
ただ最近の言語はクラスや名前空間できっちりオブジェクトを識別できるので
アプリケーションハンガリアンは出番がなくなった。
0155仕様書無しさん
垢版 |
2013/04/01(月) 23:44:10.81
742 名前:仕様書無しさん 投稿日:2013/03/31(日) 22:03:39.55
>>692,>>699
思い込みで勝手にニュアンスを付加するな。
正確に訳すと、以下のようになる。

One-character variable names should be avoided except for temporary "throwaway" variables.
一文字名の変数の使用は避けるべき。ただし、一時的な「使い捨て」変数は除く。

747 名前:仕様書無しさん 投稿日:2013/04/01(月) 05:01:24.13
>>742
なにその中学レベルの訳文w

A should be B except for C の
except for Cは「Cは除く」よりは「Cの場合はその限りではない」のほうが原語の意味に近い。
もし「Cは除く」ぐらい強い除外をするのであれば、
A except for C should be B.
もう少し柔らかめな表現なら
A other than C should be B.
という英文になる。こんぐらいわかっとけ。

749 名前:仕様書無しさん 投稿日:2013/04/01(月) 09:02:33.58
>>747
>except for Cは「Cは除く」よりは「Cの場合はその限りではない」のほうが原語の意味に近い。

勝手に自説に有利なように訳語を捻じ曲げるな。
そういう意味になる場合もならない場合もなる。
特にそういうニュアンスを示す表現が前後に無いのであれば、
except forはプレーンな「除く」という言葉を使うべき。
0156仕様書無しさん
垢版 |
2013/04/01(月) 23:45:13.89
749 名前:仕様書無しさん 投稿日:2013/04/01(月) 09:02:33.58
>>747
>except for Cは「Cは除く」よりは「Cの場合はその限りではない」のほうが原語の意味に近い。

勝手に自説に有利なように訳語を捻じ曲げるな。
そういう意味になる場合もならない場合もなる。
特にそういうニュアンスを示す表現が前後に無いのであれば、
except forはプレーンな「除く」という言葉を使うべき。


750 名前:仕様書無しさん 投稿日:2013/04/01(月) 10:04:55.71
>もし「Cは除く」ぐらい強い除外をするのであれば、

ほとんど英語じゃなくて日本語力の問題だな。
「除く」は単に除外の意味であって、強いも弱いも無いよ。


752 名前:仕様書無しさん 投稿日:2013/04/01(月) 11:54:17.90
まあどっちにしても除かれてるのなら使っていいってことじゃん。


753 名前:仕様書無しさん 投稿日:2013/04/01(月) 12:11:16.23
そう。 この文が意味するところは、それ以上でもそれ以下でもない。


754 名前:仕様書無しさん 投稿日:2013/04/01(月) 22:10:17.14
いや、歴史的経緯でしかたなく見逃してあげる。というニュアンスが含まれているのだよ


764 名前:仕様書無しさん 投稿日:2013/04/01(月) 23:15:40.21
>>754
訳者による過剰な深読みって奴だな。
0159仕様書無しさん
垢版 |
2013/04/01(月) 23:54:14.57
ハムスターの話題と聞いて
0164仕様書無しさん
垢版 |
2013/04/02(火) 03:01:46.10
>>161
アメリカンとは書いてあるがアメリカ人とはありませんね。みたいなこと言うなよw
ハンガリアンで、ハンガリー人って意味なんだよ。
0165仕様書無しさん
垢版 |
2013/04/02(火) 03:02:20.13
訂正

ハンガリアンで、「ハンガリー人」や「ハンガリーの」って意味なんだよ。
0166仕様書無しさん
垢版 |
2013/04/02(火) 03:05:33.49
http://www.knonline.net/d/?date=20090515

> ハンガリー記法はマイクロソフトの技術者、チャールズ・シモニイが
> 考案し彼がハンガリー人だったのでこんな名前で呼ばれるようになりました。
>
> この人はWordなどの開発に携わった人で優れた実績を上げました。
>
>
>
> 彼が考えたハンガリー記法の本来意図は変数の種類・用途を示すことであって、
> 実は型を示すことではありませんでした。
>
> 種類というのの例をあげると、座業系などがあげられます。

> これが本来チャールズ・シモニイが意図したハンガリアン記法でした。
>
> 同じ型でも混同してはいけない変数の意味(種類)を変数名に与えるというアイデアです。
>
> これなら誰が見ても変数の意味が明確に分ります。
>
> 現在ではアプリケーションハンガリアンと呼ばれたりします。


読んでおくといいよ。
0169おじゃばさま
垢版 |
2013/04/02(火) 08:19:35.91
型を変数名に入れる習慣は、レガシーCの業務プログラムのコーディング規約に多い。
その名残でC++のコーディング規約に入っている場合もあるが、基本的に無意味だ。
しかし無意味でもコーディング規約に入っていれば無視できない。
その場合はコーディング規約を変更する事だ。
理由と歴史を説明すれば大体変更になるが、変更出来なかった場合は、従うしかない。
まあ、普通の仕様書と同じだな。
問題があれば指摘し、それでも問題なしと判断されれば従う。
0170仕様書無しさん
垢版 |
2013/04/02(火) 08:25:32.47
システムハンガリアンは最初から不要
phantom typeが使えればアプリケーションハンガリアンも不要かも
0171おじゃばさま
垢版 |
2013/04/02(火) 08:40:14.61
一文字変数が禁止されている場合も、もし使いたいならコーディング規約を変更する必要がある。
しかし、現在は単語で区切に大文字を使う、理解しやすさ優先が主流なので、変更出来る可能性は低い。
禁止されていない場合は、ルール上は使用可能だ。
しかしその場合でも略号使って3文字程度にした方がいいだろう。
それ程冗長ならず、理解しやすさもそれなりに確保される。
0172仕様書無しさん
垢版 |
2013/04/02(火) 09:13:37.69
ドカタとそれ以外で別々のコーディング規約を使えば
このスレの問題は解決する
0173仕様書無しさん
垢版 |
2013/04/02(火) 11:30:52.99
>>172
ドカタとそれ以外が混在してるプロジェクトがほとんどなんだけど
0174おじゃばさま
垢版 |
2013/04/02(火) 20:23:47.51
>>172
それでは、コーディング規約の意味がないな。

ところで一文字変数の利点は何だ?
本人が見やすいだけか?
0175仕様書無しさん
垢版 |
2013/04/02(火) 20:30:30.22
どうせドカタの書いたコードなんて汎用性のかけらも無くて
書いたドカタ本人しか読まないんだから
好きにしたら良いんだよ
0176仕様書無しさん
垢版 |
2013/04/02(火) 20:54:10.89
ループカウンタ程度なら i, j, k でもいいだろ
それとも TheLoopCounter0, TheLoopCounter1, TheLoopCounter2 とかを使ってるのか?
0177仕様書無しさん
垢版 |
2013/04/02(火) 21:14:23.97
文系のやつらって数式でもx, y, zとか使わずに
単語使って書くじゃん?それと同じことだよ
0178仕様書無しさん
垢版 |
2013/04/02(火) 21:28:54.93
プログラミング"言語"なんだから文系の書き方のほうが適切じゃね?
0179仕様書無しさん
垢版 |
2013/04/02(火) 21:30:10.04
"プログラミング"言語なんだから文系の書き方のほうが適切じゃね?
0182仕様書無しさん
垢版 |
2013/04/02(火) 22:31:23.49
「言語を用いるのだからプログラミングは文系分野である」という主張が真なら、
「量子論の論文は言語を用いて書くのだから物理学は文系分野である」ということになる
0183おじゃばさま
垢版 |
2013/04/02(火) 22:42:03.09
>>176
だから、それではi、jと変わらないだろう。
何のループか分かるような変数名をつけるんだよ。
1 payment = price[containerNo] * quantity;
読取れないか?
0184仕様書無しさん
垢版 |
2013/04/02(火) 22:49:00.93
>>183
ループカウンタなんだから、priceという配列なりvectorなりの要素を総なめるんだろ?
その場合は i でいいんじゃね?

for (int i = 0; i < price.size(); ++i) {
 payment = price[i] * quantity;
 doSomething(payment);
}

たまたまpriceの添字がcontainerNoと一致するような仕様だったとしても、
ここでその意義を強調する必要性は薄いんじゃね?
0185仕様書無しさん
垢版 |
2013/04/02(火) 23:12:18.94
理屈を言語で記述したりルールや命名規則を策定するなんてまさに文系の お仕事 じゃないか!
プログラミングなんてめんどくさい作業は文系にやらせて俺ら理系はもっとまともなことしようぜ。
理系技術者ばっかり迫害されるのなんてもうこりごりだ!
0187おじゃばさま
垢版 |
2013/04/02(火) 23:54:58.29
>>184
確かに配列1つをなめるのならそれでもいいかもしれない。
しかしサンプルはprice以外にも配列があり、コンテナ数分回す想定だ。
0188おじゃばさま
垢版 |
2013/04/02(火) 23:58:54.74
>>185
理系とか文系とかは学生の発想だな。
PG5年もやればそんな区別は無意味だと気が付くだろう。
0190仕様書無しさん
垢版 |
2013/04/03(水) 01:03:53.06
>>176
一文字禁止に反論するときなぜいつもすごく長い変数名にするのか
なんだよ、Theってw
0193仕様書無しさん
垢版 |
2013/04/03(水) 03:33:28.75
一文字変数名が出てきて困る場合、一文字変数名よりもそのメソッドの実装がそもそもうんkって事が多い
もちろん、中身が明確でない場合の一文字変数名なんかは糞だがな

つか、よほど頭が悪すぎる奴でもない限り、
ループカウンタや狭いスコープ内での一文字変数名が原因でコードが複雑化してるって思う奴は居ない
0194仕様書無しさん
垢版 |
2013/04/03(水) 07:40:23.83
でもFizzBuzzレベルですら書けないアホも居るからなぁ
このスレの一文字変数禁止派は多分書けないし
0195おじゃばさま
垢版 |
2013/04/03(水) 08:05:46.29
>>194
変数名を長く書ける人は、短くも書けるし、短く書く人は、長くも書ける。
スキルは関係ないだろう。
0196仕様書無しさん
垢版 |
2013/04/03(水) 08:52:24.80
>>194
こういう、議論で勝ち目がないからって必死にレッテル貼りしてるのって
恥ずかしくないのかね?
0198仕様書無しさん
垢版 |
2013/04/03(水) 09:38:34.76
おらよ
i=1;main(){for(;i<31;++i){((i%3?0:printf("Fizz"))|(i%5?0:printf("Buzz")))?0:printf("%d",i);puts("");}}
0200仕様書無しさん
垢版 |
2013/04/03(水) 12:54:34.07
>>183
> 1 payment = price[containerNo] * quantity;
なんだこれ、恥ずかしくないのか。
説明してみろ。
0202仕様書無しさん
垢版 |
2013/04/03(水) 13:38:56.30
Cの仕様で「未規定」の動作に依存していることが指摘されているんだが。
0203仕様書無しさん
垢版 |
2013/04/03(水) 13:42:45.76
だからそれを指摘したところで意味がないだろ?
0204仕様書無しさん
垢版 |
2013/04/03(水) 14:03:39.60
バグを指摘することに意味がない?
バグだらけのアプリを使い続けることに何の苦痛も感じない変な人か?
0206仕様書無しさん
垢版 |
2013/04/03(水) 15:13:50.92
JIS X 3010-1993 より
6.3 式
(略)
構文で示されているか(注35),又は(関数呼出し演算子 (),&&,||,? : 及びコンマ演算子に
対して)後で規定する場合を除いて,部分式の評価順序及び副作用が生じる順序は
未規定とする。
(以下略)
0208仕様書無しさん
垢版 |
2013/04/03(水) 16:15:02.86
じゃあ、| の右辺と左辺の評価順が規定されているという証拠を出せよ。
0209仕様書無しさん
垢版 |
2013/04/03(水) 17:20:52.18
言語仕様自体は未規定でも各コンパイラが決めてるだろ
0210仕様書無しさん
垢版 |
2013/04/03(水) 19:32:48.03
コンパイラが決めてる(決めなきゃならない)のは、規格で「処理系定義」となっていること。
「未規定」の事項は、例えばこの例なら左右のどちらが先かランダムであっても、規格上は問題ない。
0211仕様書無しさん
垢版 |
2013/04/03(水) 19:47:53.10
はいはい
じゃあそのランダムな処理系の具体例を出して
0213仕様書無しさん
垢版 |
2013/04/03(水) 20:36:38.57
>>211
バージョンアップで非公開仕様が変わって嵌ったことがない幸せな人なんだねw

>>212
| と || を混同してない?
0214仕様書無しさん
垢版 |
2013/04/03(水) 20:54:09.01
しつこいなぁ
キミが信じようが信じまいが、どんなコンパイラでも同じ解釈なんだよ
0216仕様書無しさん
垢版 |
2013/04/03(水) 21:08:58.53
じゃあ | の左右の評価順序を、コンパイラの仕様としてドキュメンテーションされてる例があるなら出してみろよ。
どっかの言語設計者みたいにソースコードが仕様とか言うなよw
0217仕様書無しさん
垢版 |
2013/04/03(水) 21:12:40.88
なんでもかんでもドキュメンテーションされている世界、いいよね。
0220仕様書無しさん
垢版 |
2013/04/03(水) 21:22:03.64
ランダムであっても問題はない それはわかる
だが動きがランダムになるコンパイラはないだろ
あるなら持って来いよ
可哀想だからバージョンアップで変わった例でも容認してやる
さっさと持って来い
0221おじゃばさま
垢版 |
2013/04/03(水) 21:35:00.81
>>200
実際に使われるのは配列をなめるパターンが多いが、
ループは必ず1つの配列をなめるために使われるとは限らない。
そのため、配列とは無関係な名前をカウンタに使った。
カウンタには配列が分かる名前でなく、ループが分かる名前にすべきと言いたかった。
もし1つの配列をなめる処理ならは、cntでもいいと思う。
0223おじゃばさま
垢版 |
2013/04/03(水) 21:45:23.62
>>222
カウンタだよ、iとおなじ。
俺はiじゃなくて、cntつかう。
0224仕様書無しさん
垢版 |
2013/04/03(水) 21:48:38.61
>>223
だったらcounterだろ。何cntって。countinueだかcountryだか
わからんじゃん。バカ?
0225仕様書無しさん
垢版 |
2013/04/03(水) 21:51:38.19
cntならだいぶ市民権を得ていると思うが、
自分勝手に単語略すのはやめてほしいよな。
0227おじゃばさま
垢版 |
2013/04/03(水) 22:08:02.35
>>220
俺が昔調べた限りでは、評価順は左から右だった。
調べたのは、gcc/Linux、cc/Solaris、aCC/HP-UX、VC/Windows。
不定要素で違いがあったのは、関数引数の実行順ぐらいだったな。
0228仕様書無しさん
垢版 |
2013/04/03(水) 22:12:42.58
「非公開仕様じゃないし」ていうから「公開されてる仕様ある」んだろ?
0229おじゃばさま
垢版 |
2013/04/03(水) 22:18:23.04
結局、一文字変数の利点は、本人が見やすいだけか?
0230仕様書無しさん
垢版 |
2013/04/03(水) 22:34:15.41
昔からの慣例なんだから、別に問題ない

それを否定する目新しい事のほぼ100%は、すたれて行く
0232仕様書無しさん
垢版 |
2013/04/03(水) 22:36:02.99
昔からの慣例とか、せめて100年は続いてから言ってくれよ。
現状慣例でも何でもなく、そういうのが読みやすい奇特な人が
いて、奇特な人の信者がいるというだけのこと。
0233仕様書無しさん
垢版 |
2013/04/03(水) 22:47:45.29
AND/ORの評価順はUNIXシェルが左からって規定されてるからそれで一般的なんじゃないの
0235仕様書無しさん
垢版 |
2013/04/03(水) 23:54:03.39
何でもかんでも1文字を否定する人は鳥頭なん?
つか、寿命の短いローカル変数に冗長な名前を付ける事は、
手を抜いて短い名前にするメリットに勝るほどの利点なくね。
0237仕様書無しさん
垢版 |
2013/04/04(木) 01:46:50.59
行数の少ないループカウンターでのみ一文字はありって話しだったのに
他の変数まで一文字にするって話なら俺は乗れんわ
0239おじゃばさま
垢版 |
2013/04/04(木) 08:17:54.57
>>235
よく分からんが、一文字変数の方がコーディングしやすいって事かな。
0240仕様書無しさん
垢版 |
2013/04/04(木) 08:39:07.85
>>111
有識者がコードレビューする事で
イレギュラーに関しては確実に潰せるよ

ルールに従えないなら製造工程から外すしか無い
0241おじゃばさま
垢版 |
2013/04/04(木) 20:26:27.34
>>240
警告してもコーディング規約に従わない人は、
時間外で修正させれば良い。
俺も昔やらされた。
0242仕様書無しさん
垢版 |
2013/04/04(木) 21:51:45.39
ネストしたループで配列の添え字に i と j を使うのは禁止。
ii 、jj ならまだタイポを見つけられるがそれでも同時に使うのは控える事。
0243仕様書無しさん
垢版 |
2013/04/05(金) 01:33:28.22
3D座標系以外のネストしたループは大抵別の方法がある
0244仕様書無しさん
垢版 |
2013/04/05(金) 10:57:04.37
int count;
for(count=0;count<10;count++)
var = array[count];

めちゃくちゃコード効率悪いね
i,j,kは添字の基本ルールだよ
0245仕様書無しさん
垢版 |
2013/04/05(金) 12:36:01.52
プログラミングは数学なんだから、慣習も数学に則ったものが多いのだよ
i, j, kの使用は集合論からの慣習
ほんと、馬鹿な文系は迷惑だ
0246仕様書無しさん
垢版 |
2013/04/05(金) 14:23:44.91
自分とわかるやつだけわかればいい
コミュ力のない理系の考えそうなことだ
0248仕様書無しさん
垢版 |
2013/04/05(金) 15:40:39.09
最後にiは勝つ
0249おじゃばさま
垢版 |
2013/04/05(金) 19:59:31.67
>>244
今はそんな使い方はしないな。
foreach(var in array)

逆に言うとカウンタを使う時は、
単純なループではないから、
分かる名前を付けた方がいいだろう。
0250おじゃばさま
垢版 |
2013/04/05(金) 20:04:49.97
PGには理系の能力も文系の能力も必要だから、両方やれよ。
いつまでも学生みたいな事、言ってるなよ。
0251仕様書無しさん
垢版 |
2013/04/05(金) 22:25:54.12
>>249
C言語はそういう書き方はできない。

最近の言語ではそういう省略された書き方ができる。
その省略されてもいいようなものに、
ちゃんとした名前をつけろと言っているわけだ。

ここからもループ変数の名前は
適当でいいことがわかる。
0252おじゃばさま
垢版 |
2013/04/05(金) 22:48:23.67
>>251
俺も配列をなめるだけのカウンタなら、cntでいいと思う。

ちなみに、
C#やC++はC言語に入らないのか?
0253仕様書無しさん
垢版 |
2013/04/05(金) 22:50:38.52
その通りだな
ループ変数は単独で用いられるものではなく、配列等とセットで意味をなすもの
array[i] で意味が分かれば十分
0254おじゃばさま
垢版 |
2013/04/05(金) 23:01:54.94
>>253
でもiは使わないな。
入門C言語で勉強した新人っぽい。
0256仕様書無しさん
垢版 |
2013/04/05(金) 23:37:15.70
cntって二文字しか節約できてないのだが
予約語回避なのか?w
0258おじゃばさま
垢版 |
2013/04/06(土) 07:20:38.48
>>256
これは個人的な趣味だが、
countはフィールド変数や、メソッドの一部に使い、cntは自動変数に使っている。
0259仕様書無しさん
垢版 |
2013/04/06(土) 08:44:30.44
ぶっちゃけ3文字略馬鹿のほうが一文字変数よりうざいな
cntとかflgとかtmpとか使ってる奴のコードは大抵解析が面倒なコードになってるイメージある

なんていうか、そういう名前を好んで使う奴って、
何のカウンタなのか、何のフラグなのかをコードで表現してないコード書きまくるから、解析に手間かかるんだよな
0260仕様書無しさん
垢版 |
2013/04/06(土) 08:55:34.32
for で i を使うのを玄人っぽくないからって理由で否定してる人から滲み出るにわかっぽさ感じる

実際問題、一文字変数名にしても俺々略字にしても、それ自体は問題じゃない
なにが格納されててどう使われてるのかが、すぐに読み解ければローカル変数名なんて何でも構わん

重要なのは、後から前情報なしでコードを見て脳内で仕様に戻す作業がどれくらいやりやすいかってとこだろ

昨今の開発環境じゃ、メモリ確保とか開放なんかはきっちり意識する必要少ないし、
メソッド分けて呼びまくったりもパフォーマンスに大きな差なんて出ない

省略された変数名が把握しづらくてコードの見通しが悪いようなら、
まずは変数名を変更するよりスコープの狭いメソッドに処理を分割するほうが、リファクタリングとしては正解
0261おじゃばさま
垢版 |
2013/04/06(土) 10:44:44.67
>>260
コードが長くなったら、メソッドに分割しろって言ってる?
0262仕様書無しさん
垢版 |
2013/04/06(土) 10:55:55.45
for(int OneTimeLoopCounter=0;OneTimeLoopCounter<100;OneTimeLoopCounter++){

}

String u; // ログインユーザID
0263仕様書無しさん
垢版 |
2013/04/06(土) 12:28:05.84
極端な例だけで考えるのは否定派の頭悪いのと同レベル
0265おじゃばさま
垢版 |
2013/04/06(土) 20:38:28.46
チームで新規のプロジェクトをやる時は、誰かが最初にサンプルプログラムを作る。
そのサンプルはコーディング規約をクリアし、新人にも理解しやすい物ではなくてはならない。
当然、ヘッダと各種コメントも記載するし、代表的な処理の部分を作る。
これをベースに皆がコーディングするので重要だ。
0266仕様書無しさん
垢版 |
2013/04/06(土) 20:38:35.95
i,j,kをループ変数として使うのは、デフォです。
cntも偶に使うな。
俺は[]の中にLoopなんて使いたくないな。
何処を指しているかが掴みづらくなる。
0267おじゃばさま
垢版 |
2013/04/06(土) 21:03:04.66
>>266
Loopって変数名か?
0268おじゃばさま
垢版 |
2013/04/06(土) 21:38:38.90
じゃ、単純なループのカウンタにi、jは許容で、それ以外は一文字変数は非許容という事で。
0269仕様書無しさん
垢版 |
2013/04/06(土) 21:44:37.53
一文字変数名で分からなくなるよう糞コードだったら、そのコード自体がウンコードってだけだろ
見通しが格段に悪くなる使い方なら何文字だろうが糞だし、見通しがよければどんな略でも構わん
ループだけOKとかそういう変な視点でアホな事言ってる奴等はいったいどういう頭してるんだ
0270仕様書無しさん
垢版 |
2013/04/06(土) 21:46:11.36
こんな議論を延々やってるくらい、時間に無頓着な連中が、
一文字変数を全否定している。

クソ下らんことをさも画期的な方法論みたいに騒ぎ立てて、
みっともないったらありゃしない。

どうせしばらくしたら、また違う方法論を声高に叫んでるに
違いない。
0271仕様書無しさん
垢版 |
2013/04/06(土) 21:50:52.01
<こんな議論を延々やってるくらい、時間に無頓着な連中が、
<一文字変数を全否定している。

どちらかというと肯定派のほうが熱弁を振るっているように見えますが
0272仕様書無しさん
垢版 |
2013/04/06(土) 22:01:33.95
>>269
一文字なら普通にわかんなくなるだろ
どんだけ簡単なプログラムばっか書いてんだよ
0273仕様書無しさん
垢版 |
2013/04/06(土) 22:04:08.45
>>270
スレが伸びるのは意見が均衡してるってことだよ
熱くなってるのは両方ともだろ
「否定派は時間に無頓着、肯定派は時間の使い方が上手い」にはならんだろ
0274仕様書無しさん
垢版 |
2013/04/06(土) 22:05:23.57
>>272
複雑な問題を簡単に理解出来るところまで細分化する事がソフトウェアの設計だ
0275仕様書無しさん
垢版 |
2013/04/06(土) 22:24:24.59
>>267
予約語になっている言語もあれば、変数名として使える言語もあるだろ。
俺は、[]の中に5文字以上の変数は使いたくない
0276仕様書無しさん
垢版 |
2013/04/06(土) 22:25:57.96
>>268
元々はそこすら認められないアホがたてたスレなんだが?
議論してるのは「単純なループのカウンタにi、jは許容」できるかできないかってこと
だからおまえはズレてると言ってるんだよ
さっさと巣へ帰れ
0277仕様書無しさん
垢版 |
2013/04/06(土) 22:25:59.95
>>272
使ってる言語や開発環境にもよるが、OOPが一般的になった以降に出た言語使ってるなら、
よほど冗長なメソッド作ってる馬鹿じゃない限り、複雑で読み解けない処理なんて書く機会ないだろ。

スキルのない初心者とか、使えないオッサンは、そんな感じの多機能メソッドみたいな糞コード書いてたりするけど、
あんたは別にそういうコード書いてるわけじゃないんだろ?
それとも組み込み業界だったり、制限きついハード向けの、パフォーマンス要求の高いゲームとか作ってる系の人?
0278仕様書無しさん
垢版 |
2013/04/06(土) 22:29:04.87
配列自体あんまり使わないっていうか、使う場合はニッチな処理くらいだから、
大抵スコープ狭いし凝った変数名をindexの変数名として使う機会ないな
集合データを扱うならコレクション使うし
0279仕様書無しさん
垢版 |
2013/04/06(土) 22:32:17.85
ループのカウンタに5文字以上宛てるって、
ただの繰り返しに意味なんて殆どないだろ。
0280おじゃばさま
垢版 |
2013/04/06(土) 22:39:00.87
>>276
とりあえず、269と話合ってくれないか?
0281おじゃばさま
垢版 |
2013/04/06(土) 22:50:00.85
>>275
いや、何で先頭が大文字なのかなと。
0282仕様書無しさん
垢版 |
2013/04/06(土) 23:11:36.28
>>277
そりゃ読み解けないような複雑なメソッドは書かないが
それなりの数の変数が必要になる場合はあるだろ
それがaとかbとかじゃ困るんだよ
0283仕様書無しさん
垢版 |
2013/04/06(土) 23:17:22.72
>>281
>>176のコメントを読んでいたから
あと、x86のアセンブラで「LOOP」という(疑似?)命令があった気がする。
0284仕様書無しさん
垢版 |
2013/04/07(日) 00:01:05.09
このスレの主旨は、
「場合によっては一文字変数を許容する派」
「いかなる場合においても一文字変数を拒否する派」
の論争だろ?
で、後者は今のところスレ主しかいない感じだが
そもそも一文字変数を全否定されると、使い捨てのラムダ式とか非常に面倒くさいんだが
0286仕様書無しさん
垢版 |
2013/04/07(日) 00:23:54.63
>>273
意見が均衡している=必ずしも否定出来ない

なので、言い出しっぺであるところの否定派の前提が
崩れてるんだが
0288おじゃばさま
垢版 |
2013/04/07(日) 00:27:06.13
>>284
いや、カウンタ以外の一文字変数肯定派も1人しかいないようだぞ。
0289仕様書無しさん
垢版 |
2013/04/07(日) 00:28:51.36
 発 者 同         . 。_   ____           争
 生 同 .じ     .    /´ |  (ゝ___)          い
 .し 士 .レ      .__/'r-┴<ゝi,,ノ   ro、      は、
 .な で .ベ      ∠ゝ (ゝ.//`   ./`|  }⌒j     
 .い し .ル        } ⌒ /`ヽ、_∠l,ノ ・ヽ´
 .! ! か の       /  ´..:.} >、、___,  .r、 ソ、`\
             /   ..:.:.}   /   |∨ ` ̄
            /   ..:.:./    |   丶
           / _、 ..:.:.:.{    .{.:.:.   \
          {   ..:Y  .ゝ、   {.:.:.:.:.    ヽ
0290仕様書無しさん
垢版 |
2013/04/07(日) 00:30:19.15
>>288
だからこのスレの趣旨はって言ってんだろ
んな糞は黙殺すりゃいいんだよハゲ
0292仕様書無しさん
垢版 |
2013/04/07(日) 10:10:30.38
ちなみに、このスレたてたの俺だけど
俺自体は一文字絶対禁止論者でも何でもなく、元スレで優勢だった
一文字変数おk派が食いつきやすそうなスレタイにしてみただけ。

元スレでは両派を演じて一生懸命喧嘩になるように頑張ったりしてたから、
まあここまで話が長く、そして意味がないものになったのは感無量である。
0293おじゃばさま
垢版 |
2013/04/07(日) 10:39:33.66
>>292
じゃ、一文字絶対禁止論者はおらんのか?
0294仕様書無しさん
垢版 |
2013/04/07(日) 10:57:44.11
こんどは「いかに大所高所から物を言えるか」合戦ですかw
0296仕様書無しさん
垢版 |
2013/04/07(日) 15:17:39.61
javaとか.netから入った人は一文字変数とか馴染みが薄いのかな

純然たるC言語とかループカウンタにijlとか当たり前体操だと思うが
0297仕様書無しさん
垢版 |
2013/04/07(日) 20:02:33.87
>>296
関係ないというか、逆に見慣れてるでしょw

Javaだと例外処理のtry-catchで普通に一文字変数eがでてくるし、
.NET(C#)だとダブルクリックで自動生成されるイベントハンドラに
EventArgs eって書いてある。

さて、一体一文字変数使うなとは何の言語かな。
0298おじゃばさま
垢版 |
2013/04/07(日) 22:56:23.40
>>297
いや、完全否定派はいないみたいだぞ。
0300おじゃばさま
垢版 |
2013/04/08(月) 08:29:53.22
>>299
292で違うと言っているようだか。
0301仕様書無しさん
垢版 |
2013/04/08(月) 10:02:53.98
個人的には、i,j,k,x,y,zはほとんどの場合で問題ないと思うねぇ。
あと、get setとかイベントとかで使うスコープがわかりやすい引数用のパラ。
慣例化できて、複数の機能を持たなければぶっちゃけ1文字でも読むのに困らん。
0302おじゃばさま
垢版 |
2013/04/08(月) 19:22:12.54
>>301
じゃ、それで決定でいいか。
0303仕様書無しさん
垢版 |
2013/04/08(月) 21:14:10.83
>>300
>>1は完全否定派で賛同者が現れることを期待してたけど、
想い通りにならなかったらから、>>292で「いい訳」してるだけ
単に自分の負けを認める事のできない糞ガキだ

というか、>>1自身が>>292で糞スレ立てたとゲロってるだろ

>>302
いいんじゃまいかと
0306仕様書無しさん
垢版 |
2013/04/09(火) 01:01:46.77
やれやれ、ここまでまとめた俺様の功績は大きいな
03071
垢版 |
2013/04/09(火) 19:02:06.39
>>292は偽物。
一文字の正当性を証明できなかった一文字派が一文字否定派の
なりすまし攻撃を始めただけだよ。
0308仕様書無しさん
垢版 |
2013/04/09(火) 20:41:59.94
>>307
言語規約に書いてないところで、正当性云々って
どんだけアフォなんだ。
一文字の変数名で十分理解できるから、i,j,kを
使っているのにw
0309仕様書無しさん
垢版 |
2013/04/09(火) 20:51:21.80
>>308
規約に書かれていないから正当性を主張できません!
ってどんだけゆとりw
0310仕様書無しさん
垢版 |
2013/04/09(火) 21:04:52.12
>>308
万人が理解できることを証明しろよ。
お前だけが理解できてもしょうがないんだよ。
0312仕様書無しさん
垢版 |
2013/04/09(火) 22:20:48.97
小競り合いが無いと困る連中がいるところは、某基地外宗教団体と同じだな
0313仕様書無しさん
垢版 |
2013/04/09(火) 23:58:56.86
>>309,>>310
プログラム言語を語るのに正当性云々なんて
おもいっきし笑えるなw
0314仕様書無しさん
垢版 |
2013/04/27(土) 02:24:32.91
ループにiとかはわかるが、それ以外で使うなという意味じゃないんか?
0317仕様書無しさん
垢版 |
2013/04/30(火) 15:49:42.61
馬鹿共の隔離サイトがあるって聞いたんですけど、此処らしいね。
頭悪そうな会話ばっかりで、見てるだけで馬鹿がうつりそう。
0319仕様書無しさん
垢版 |
2013/05/01(水) 19:22:20.44
         ♪            「さっちゃん」の節で
  ∧_∧ ♪  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 <丶`∀´> <     在日パクチョン(白丁)の歌
 ( 白丁 )  │     
 | | |  │     ♪ パクチョンは ねー
 〈_フ__フ  │    ♪ 勝手に 日本に来た 朝鮮人
     ♪  │   ♪ だけど ずーるいかーら
         │  ♪ 自分のこと 被害者だって 言うんだよ
         │ ♪ ゴキブリの パクチョン
         \_________________

     ♪ パクチョンは ねー
    ♪ 差別から 逃げて来た 朝鮮人
   ♪ だけど ずーるいかーら
  ♪ 強制連行 されたって 言うんだよ
 ♪ うそつきの パクチョン

     ♪ パクチョンは ねー
    ♪ 不法に 入国した 朝鮮人
   ♪ だけど ずーるいかーら
  ♪ 選挙権を よこせって 言うんだよ
 ♪ ずうずうしい パクチョン
0320仕様書無しさん
垢版 |
2013/05/02(木) 09:50:47.18
掲示板でコピペ荒らしする反社会的な日本人にも選挙権を与えるべきじゃないよな。
0321仕様書無しさん
垢版 |
2013/05/03(金) 15:08:42.31
名前が必要になるほど広いスコープでローカル変数使うことが少ないから

String s = getNandakaNagakuteKaigyouShisouNaName();
return String.format(NAME_FORMAT, s);

みたいな一文字変数とかよく使う

1文字ローカル変数名禁止とかってのは、
人判断に依存しないようなルール付けが必要な低レベルを基準にした、馬鹿の多い職場とか限定のルールでしかない
0322仕様書無しさん
垢版 |
2013/05/03(金) 15:52:50.57
まあ GW だし昼間っから酒飲んでても別にいいんじゃないの。
0324仕様書無しさん
垢版 |
2013/05/05(日) 13:01:34.05
>>314
ループにもiとかcとか使うなってのがスレ主の主張じゃないのか
アホですわ
0325仕様書無しさん
垢版 |
2013/05/05(日) 14:44:47.05
意味のない変数→存在すること自体が悪
意味のある変数→意味のある名前を付けろ

これだけの話なのに、理解できないバカが多い
0326仕様書無しさん
垢版 |
2013/05/05(日) 15:04:25.22
>>325
じゃあループはこんなのでいいのか
何か分かりにいっつうか、却って間違いな気がするな
foreach (var fooChar in fooString)
0327仕様書無しさん
垢版 |
2013/05/06(月) 07:59:12.79
コードが分かりにくくなるほど、識別子の自己説明性が求められる。
要するにクソコードには、それなりの長い名前が必須。
0328仕様書無しさん
垢版 |
2013/05/09(木) 01:18:27.42
優れたコードは使いどころが丁寧で1文字変数がむしろ美しい。

未熟な奴が書いたコードは短かろうが長かろうが
コード自体がひたすら追っかけにくいので、お薦めはできない。
0329仕様書無しさん
垢版 |
2013/05/09(木) 06:24:53.93
>>327
クソコードを書く奴は長い名前でも
適切でわかりやすい名前なんて付けられないよ?

もしそれができるんなら、クソコードなんて書かないってw
0330仕様書無しさん
垢版 |
2013/05/11(土) 15:51:44.97
俺のポケットコンピューターで扱える変数名の長さは2文字までだという
0331仕様書無しさん
垢版 |
2013/06/02(日) 16:41:12.53
2文字で十分だな
2文字でも1000パターンくらいあるじゃろ
0332仕様書無しさん
垢版 |
2013/06/04(火) 00:42:29.30
2文字なら無意識に何か意味のある組み合わせになるな。px,pyとか。
1文字はもはや暗黙だな。使い方のパターンが決まってる。
プログラマなら使って当たり前、読めて当たり前の領域。
0333仕様書無しさん
垢版 |
2013/06/23(日) 19:54:07.62
見てわかるレベルの部分まで詳細な名前をつける必要はない
冗長すぎる名前は、むしろ邪魔になることすらある

公開されてなくてもクラスフィールドなんかは意味が分かる名前にすべき
ローカル変数を見失うようなら、変数名じゃなくまず無駄に複雑になっているメソッドのリファクタリングを検討すべき

ttp://twitter.github.io/effectivescala/index.html#Formatting-Naming
ttp://twitter.github.io/effectivescala/index-ja.html#書式-命名
個人的にはこの辺りのルール結構好み
0334仕様書無しさん
垢版 |
2013/06/25(火) 01:51:47.84
センスがないやつは長い変数名でもやっぱりダメだよ。
前にダメグラマーが俺に本社って英語で何すかね?って聞いてきたから
無理して英語変数にしなくても日本語一文でいいよって答えて後でコード
レビューしたらjp_is_no1だったからなあ。マジでびびった。俺としたら
input_honshaくらいに付けてくれると思ったのに。
0336仕様書無しさん
垢版 |
2013/07/07(日) NY:AN:NY.AN
タイプするのが楽
他人が共通認識ならさらに楽

それ以外の理由は無いが、逆にそれ以外の理由を持ってくるのも変だな
0337仕様書無しさん
垢版 |
2013/07/28(日) NY:AN:NY.AN
3文字略字のほうが1文字変数よりたち悪いこと多いから嫌い
1文字変数は、スコープの短い変数名とかのことが多いし
そもそも1文字で辛い場合、そのメソッド自体が冗長で無駄だらけのことが多い
0339仕様書無しさん
垢版 |
2013/08/18(日) NY:AN:NY.AN
韓国や中国は変数名にgを付けるのかね
int hongkong;みたいな
0340仕様書無しさん
垢版 |
2013/08/18(日) NY:AN:NY.AN
C言語のでかいプロジェクトでグローバル変数なら、それぐらい長い名前は
十分ありえる。
0342仕様書無しさん
垢版 |
2013/08/18(日) NY:AN:NY.AN
>>341
意味がわかってないね?
サムスンをまともに読むとサムスング
0344仕様書無しさん
垢版 |
2013/08/19(月) NY:AN:NY.AN
>>342
ごめん、マジで何言ってるのか意味不明
それ面白いと思ったの?
それともマジキチでプログラム変数に自分の会社名でも入れてんの?
0345仕様書無しさん
垢版 |
2013/08/19(月) NY:AN:NY.AN
>>344
あくまでも真面目な書き込み
決してウケ狙いで書いたつもりはないんだが
そのブチ切れ方、チョンか?
0346仕様書無しさん
垢版 |
2013/08/19(月) NY:AN:NY.AN
そうそう、意味わかってないんだったな。

日本でも日本語をローマ字にして変数名や関数名にしてる奴いるだろ?
なんならDBのテーブル名やフィールド名でもいい。
無理して英語で徹底する必要もないが、そんな暗黒ルールもお構いなしに
var $uriage;みたいな日本人にしかわからん名前を平気で使いまくる素人が多いんだわ。

中国や韓国もそんな奴がいるのかな、
もしいたらローマ字で「ング」と書く部分にgを付けるのかなって率直に思ったことを書いただけ。
0347仕様書無しさん
垢版 |
2013/08/19(月) NY:AN:NY.AN
「この谷って変数どこで使ってるんですか」と聞かれた
よくよく見たら「単位」という意味だった

#tani
0349仕様書無しさん
垢版 |
2013/08/19(月) NY:AN:NY.AN
たかがgがそんなに気に障る要素になるとは思わなかったw
0350仕様書無しさん
垢版 |
2013/08/20(火) NY:AN:NY.AN
よく分からんがじゃあグランプリはGrandprixだからグランドプリックスで
dとxを書くのかな?とかいう質問なのか?
オレが答えていいなら
「いちから英語をやり直せ」
0351仕様書無しさん
垢版 |
2013/08/20(火) NY:AN:NY.AN
>>346
>もしいたらローマ字で「ング」と書く部分にgを付けるのかな
日本語すらおかしいが、英語の綴りをローマ字とは言わない。
大丈夫か、日本は。
0352仕様書無しさん
垢版 |
2013/08/20(火) NY:AN:NY.AN
>>349
お前が言ってることの意味が全然理解できないからじゃね
例えばどういう単語の場合の話をしてんの?
hong kong は英語圏の人が書いても hong kong だし、例になってない
0354仕様書無しさん
垢版 |
2013/08/20(火) NY:AN:NY.AN
いや、近い時間に一斉に書いてるから一人か
まぁどうでも良いが

>>352
int Liang = 0;
int YingyeZongShouru = 0;

しかし寝苦しい暑さだ
0355仕様書無しさん
垢版 |
2013/08/20(火) NY:AN:NY.AN
そういえば何も考えずアッパーで書いたが、最近のケースではこっちの方が馴染みか
int yingyeZongShouru = 0;
int yingye_zong_shouru = 0;
0356仕様書無しさん
垢版 |
2013/08/20(火) NY:AN:NY.AN
キャメルケースな
見やすさではスネークケースのほうが上だと思うけど、タイピング的にはキャメルケースのが幾分楽かなって気がしてる

まぁどっちであれ、読み解くのが困難なほど長い名前になるようなものは極力使わないようにするのが正解だとは思う
0358仕様書無しさん
垢版 |
2013/09/09(月) 16:29:20.11
Unicodeとか使わない文字コード大量に余ってるんだから変数も予約語も全部一文字にしたい。gみたいなフォント作って。タイプミス激減ってレベルじゃない
0359仕様書無しさん
垢版 |
2013/09/09(月) 18:51:39.60
メタ構文変数は一文字でも分かるからいい
変数名にローマ字の日本語は読んでて気持ち悪いな
0361仕様書無しさん
垢版 |
2013/09/19(木) 08:01:24.58
読み解きやすいかどうかは変数名の長さだけで決まるものじゃないし、
使い方次第で一文字でも問題ないけどな

視野や考え方が狭く、一文字変数はダメ、みたいなヤツのコードのほうが大抵見づらい
0364仕様書無しさん
垢版 |
2013/11/19(火) 19:07:20.54
COBOLでクソ長いインデックス名つけたら怒らりた(>人<;)
0365仕様書無しさん
垢版 |
2013/11/20(水) 01:20:19.48
自分でコーディング規約作ってそれに沿うように書いてろ
誰も文句ねーよ自称プログラマどもが
0366仕様書無しさん
垢版 |
2013/11/20(水) 07:14:24.67
最近入ってくるゆとりは、プログラマなら常識の暗黙を全然知らなくて面倒くさいね
スープをズルズル音立てて飲むくらいの非常識
0367仕様書無しさん
垢版 |
2013/11/20(水) 08:27:53.71
こういうこと言う奴の「常識」は、「俺から半径3mの常識」であることがほとんどw
0368仕様書無しさん
垢版 |
2013/11/20(水) 10:04:59.43
草とよくわからない理屈を書く奴に常識など無いわな
0369仕様書無しさん
垢版 |
2013/11/20(水) 12:20:10.28
>>366
日本人がスープを音立てて飲むのは、火傷するくらい熱い汁物を用心しながら飲む習慣が染み付いてるから

お前ナニ人だよ
0370仕様書無しさん
垢版 |
2013/11/20(水) 12:23:49.49
>>366
ゆとりってかITバブルあたりから量産された変なPGがそうなってる気がする。
ゆとり世代でその辺はマトモに仕事してくれる奴が一人いるんだが、しゃべり方がセフィロスみたいで怖い。
0371仕様書無しさん
垢版 |
2013/11/20(水) 16:17:57.18
> お前ナニ人だよ
うぜえぞゴミウヨ。

>>370
PGとか略してる時点でおまえも同類だよ気付け。
0373仕様書無しさん
垢版 |
2013/11/20(水) 18:26:27.53
ポイントガード
0374仕様書無しさん
垢版 |
2013/11/21(木) 01:57:47.61
一文字変数を使うと問題が出てくるようなコードを書いちゃう人がバカ
0375仕様書無しさん
垢版 |
2013/11/21(木) 07:23:16.10
汚い言葉で他人を罵って常識人気取りか。
一文字変数を使わなくても人生の敗北者にはなれるわけだ。
0377仕様書無しさん
垢版 |
2013/11/21(木) 09:49:43.55
1個のモジュールが不必要に大きい
1個の関数が不必要に大きい

変数名に具体的な名前を付けないと追いきれないような大きさにすべきではない、
というのが基本。

それでも具体的な名前は付けるけどね。
0378仕様書無しさん
垢版 |
2013/11/21(木) 10:57:20.59
一文字変数の使う場面がそもそも想定できてないようだな
グローバル変数でもないのに追えないってのはただのヘタレの何物でもないし
0381仕様書無しさん
垢版 |
2013/11/21(木) 16:51:34.96
>>379
関数単位なら尚更ラクチンやん
1文字変数の用途を知ってれば何行だろうと屁でもない
むしろ行数が多ければ多いほど1文字変数の存在が有り難くなる

まあ、1文字変数の使い方を知らん奴が手を出せば悲惨なコードになるかもしれんけどな

>>380
それ1文字じゃなくてもいるぜ、用途が違うのに同じ名前付けた奴
むしろ名前が付いてるから作業変数に見えなくて、まさか違う用途を想定したコーディングだとは夢にも思わないわな
0382仕様書無しさん
垢版 |
2013/11/21(木) 16:55:15.33
countとかかな
むしろcountの省略形がiやj,kだと思うが
0383仕様書無しさん
垢版 |
2013/11/27(水) 09:03:06.67
>>371
PGと略すと何なのか全くわからんな
ちょっと説明してみろ

>>371
汁物飲む時に音を立てちゃいけないとか日本のマナーじゃねーよ
お前ナニ人だよ

>>370
セフィロスwww
やべえ、その部下一人欲しいwww
0384仕様書無しさん
垢版 |
2013/11/27(水) 11:30:52.74
もはやバカとみなされて誰にも相手にされないのに
0386仕様書無しさん
垢版 |
2013/12/10(火) 02:03:16.26
PogopluG
0388仕様書無しさん
垢版 |
2014/01/29(水) 22:02:25.20
>>5
つもりもクソも一画面ですべて把握できないローカルって時点で誤り
0390仕様書無しさん
垢版 |
2014/04/05(土) 19:50:33.14
一文字=ループカウンタでやってるけど駄目なの?
0393仕様書無しさん
垢版 |
2014/04/26(土) 02:08:19.87
>>382
俺はcountだと総要素数のこととして使うことが多いなあ、だから先に要素数が決まっている場合は
for(int i=0; i<count; i++)
になったりもする
0394仕様書無しさん
垢版 |
2014/06/12(木) 07:28:17.59
一文字変数ってループカウンタ以外に使い道ないだろ
カウンタの示す意味が判らんとかいう意見も有るけど

for( i = 0; i < HogeMax; i++ )

とか書くんだから意味は判るはず

for( HogeCnt = 0; HogeCnt < HogeMax; HogeCnt++ )

なんて馬鹿の書くコードだと思う
0395仕様書無しさん
垢版 |
2014/06/12(木) 07:58:50.76
行列で回すときはrow,columnは使う
最近は専らfor eachさまさまなので、ループ変数は適当
0396仕様書無しさん
垢版 |
2014/06/12(木) 13:09:52.11
..で済ませるところは..で済ますけどな
0397仕様書無しさん
垢版 |
2014/07/02(水) 22:59:50.21
>>392
最近はコードコピペするバカが増えて
iとjごっちゃにして放置するもんだから
俺は使わないようになった
0398仕様書無しさん
垢版 |
2014/12/18(木) 22:49:47.35
ループカウンタにi以上の意味があるならiは使わないだろ
カウンタ以上の意味がなくcountなんて変数名使うならiの方が歴史的に使われてきたしプログラマ的には理解しやすいって話
0399仕様書無しさん
垢版 |
2015/01/21(水) 23:43:48.16
foreachとか拡張forが主流になって
めっきりループカウンタ使わなくなったな
0400仕様書無しさん
垢版 |
2015/02/20(金) 18:47:03.43
0401仕様書無しさん
垢版 |
2016/04/10(日) 17:21:52.67
forループのカウンターとラムダ式以外、1文字変数は使わない。これ常識。
foreach中ですら、短くてもそれなりの変数名を付ける。
0404仕様書無しさん
垢版 |
2016/04/10(日) 21:50:52.77
>>401-403
人生の敗北者
0405仕様書無しさん
垢版 |
2016/07/05(火) 16:23:48.12
冷淡な勝利者になるよりも
心優しき敗北者でありたい
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況