【汚物】痛い変数名・関数名【破廉恥】at TECH
【汚物】痛い変数名・関数名【破廉恥】 - 暇つぶし2ch562:デフォルトの名無しさん
08/06/21 13:32:12
スペルミス大量でインデントもぐちゃぐちゃなソースがあるけど
意外と読めるもんだな・・・。
イライラはするが。

563:デフォルトの名無しさん
08/06/21 16:28:26
ローカル変数ならまだいいけどDBのテーブル名、カラム名でスペルミスは勘弁してほしい。
使ってる方が恥ずかしくなってくるぜ。

564:デフォルトの名無しさん
08/06/21 21:59:08
なんにせよuwariteよりはマシ。


565:デフォルトの名無しさん
08/07/14 00:08:28
変数名のセンスが無いやつほど
無駄な一時変数を好む傾向にある。

566:デフォルトの名無しさん
08/07/14 09:32:27
名前ではないけど、ヘッダファイル(当然いくつかのファイルで include されている)で
static 変数を定義して、値が変わらないと悩んでいた人がいた。そら変わらんわなあ。

567:デフォルトの名無しさん
08/07/14 09:52:44
それは、多重定義のエラーが出てstaticをつけたらエラーが消えたからそのまま使ってるんだろうw

568:デフォルトの名無しさん
08/07/15 00:52:58
>>566
ヘッダファイルに変数を書く時点で既に変。
(つか、普通はextern 宣言だけだろ?)

569:デフォルトの名無しさん
08/07/15 01:39:59
>>567
あるある

570:デフォルトの名無しさん
08/07/16 21:44:13
>>566-569
それ(static無)やってる職場に以前いたんだが、(当然ながら)全く同じ定義のせいかエラーが出ずにリンク出来てた。
動作も正常。むしろエラーになってくれる方がありがたかったな。という思い出。



571:デフォルトの名無しさん
08/07/17 01:33:32
>>568も変だけどな。

572:デフォルトの名無しさん
08/07/17 20:12:07
変じゃないだろ
ヘッダでメモリ確保しちゃダメなのは常識

573:デフォルトの名無しさん
08/08/22 14:10:24
>>572
kwsk

574:デフォルトの名無しさん
08/08/22 22:19:51
送信済みデータ保存関数

saveSendedData

575:デフォルトの名無しさん
08/08/22 22:34:56
>>574
読み込み済みデータでreadedDataってのもあったぞ。

576:デフォルトの名無しさん
08/08/23 00:03:00
>>573
ヘッダファイルとして分離する目的は何でしょう?
複数のモジュールから、同一の定義を参照する事が目的。

ゆえに変数定義など、唯一でなければならないモノをヘッダに書いてはならない。

そもそも、static変数をヘッダで定義して
あちこちのモジュールでインクルードせにゃならんってのは、
構造的に間違ってる。 うつくしくない。

577:デフォルトの名無しさん
08/08/23 21:21:27
>>547
getmegu
Insert_megu
open_megu (man, co)
せくはら


578:デフォルトの名無しさん
08/08/23 21:37:33
VB質問スレから
Dim strFikeNamae

これは秀逸だと思ったので
今までfnameやfilenameにしていたけど
これからはfnamaeやfilenamaeにしようと思った。

579:デフォルトの名無しさん
08/08/23 22:42:06
一瞬単なるタイポかと思わせておいて「なまえ」とは・・

580:デフォルトの名無しさん
08/08/23 23:10:21
public void Create_String_Procedure( string arg1, string arg2 ){
・・・・・
}

PCをけっ飛ばしたくなった。


581:デフォルトの名無しさん
08/08/23 23:51:29
-aeで終わるとラテン語の複数形みたいに見えるな
ラテン語でnameはnomenだが。



582:デフォルトの名無しさん
08/08/24 00:11:50
aglicora, aqua

583:デフォルトの名無しさん
08/08/24 00:32:55
programa

584:デフォルトの名無しさん
08/08/24 00:34:34
COM次第だな

悪のCOMをインストールするのだ

585:デフォルトの名無しさん
08/08/25 21:31:48
>>578
Fikeってなんかカッッコイイ

586:デフォルトの名無しさん
08/08/26 00:11:43
>>580
それだけだと何が悪いのか分からん


587:デフォルトの名無しさん
08/08/28 00:08:42
>>580
C#か?キャメルケースなのにアンダーバーでくくられているのが気になるのか、
副作用がある作りにしているのが気になるのか、
argうんちゃっらっていう意味もへったくれもない変数が気になるのか、
Procedureとかわざわざ名前をつけているのが気になるのかハッキリ汁。

あとお前、この業界にいるには
気が短すぎるのとコミュニケーション能力が低すぎると思われるから
他人のこと言う資格ないと思うぞ。

588:デフォルトの名無しさん
08/08/28 01:39:19
まースレタイ通り、変数名・関数名を言ってんだろう。
予想:"どんな"StringをCreateするProcedureなのか分からない。ってことじゃないか?

589:デフォルトの名無しさん
08/08/28 09:57:27
dataやarg1, arg2みたいな名前が適切な場合もあるよね。
GTKでは任意のデータを受け付ける(void *) dataっていう引数を
引き回していたような記憶。
Lispでも高階関数を定義するときにarg1, arg2みたいな引数名を使ったりする。
(この場合は可変長のargsとかが良いのかもしれんが。)


590:デフォルトの名無しさん
08/08/28 19:53:39
自分だったらl,r使うかなあ

591:デフォルトの名無しさん
08/08/28 22:00:25
lhs rhs

592:デフォルトの名無しさん
08/08/28 23:46:27
>>591
それ、3文字略語はマナー悪いよなぁとも思うし、
もはや専門用語化してて略語じゃないと思える気もするし。

593:デフォルトの名無しさん
08/08/29 06:28:31
3つ以上あったらどうするの

594:デフォルトの名無しさん
08/08/29 08:48:05
まあ、lhs, rhs は2項演算に対して使う用語だし。

595:デフォルトの名無しさん
08/08/30 06:52:15
>>594
ソートに使用する比較関数の変数とかね。

>>593
3つの引数が等価な計算とか無理やりな例以外見たことない。

596:デフォルトの名無しさん
08/08/30 08:49:39
>>580の引数がたまたま2つだったから二項演算の話になってるのかな
ちょっと理解に苦しむ

597:デフォルトの名無しさん
08/08/31 04:47:26
正直、Effective C++ではじめてrhsとlhsが何の略なのか知った。

598:デフォルトの名無しさん
08/08/31 06:12:26
ロハスとロハスだろ。

599:デフォルトの名無しさん
08/09/01 13:40:01
Perlだと比較関数で使う仮変数は$a, $bだね。
sort { $b <=> $a } @values
みたいに指定すると降順ソートができる。安直だけど分かりやすい。

600:デフォルトの名無しさん
08/09/03 18:46:51
でも、$a, $bを特殊変数に指定してしまったのはかなり汚い。

601:デフォルトの名無しさん
08/09/04 22:35:23
int debu1 ;
int debu2 ;
int debu3 ;
同僚でこんな変数を作っているやつがいた。

「デブデブデブっておまいデブ専なのか?」って聞いたら
debuはdebugの略だと言っていた。

602:デフォルトの名無しさん
08/09/05 05:57:30
でぶまで書いたんならデバッグまで書けよでぶ

603:デフォルトの名無しさん
08/09/07 15:59:30
>>600
どんな変数名がいいと思う?

604:デフォルトの名無しさん
08/09/07 22:53:26
>>580は普通頭に来るだろう。
これを許すなら、文字列を2個受け取って文字列を返すメソッドは
全部同じ名前で1,2,3...が付くだけとかで書かれてしまう。
もちろんこんな名前を付ける人にはクラス名やコメントやドキュメントは期待できない。

605:デフォルトの名無しさん
08/09/07 23:09:04
引数自体に意味を持たせず、ただ順序だけが重要なのかも。
いずれにしろ、>>580自身が説明しないとダメでしょう。

606:デフォルトの名無しさん
08/09/07 23:10:09
>>601
それぜったい狙ってやってると思う

607:デフォルトの名無しさん
08/09/08 10:47:00
昔火の付いたプロジェクト手伝ってたら、
int型のflagつう変数があって0がオンで1がオフに使われてた。
コメントもなんも無し。

608:デフォルトの名無しさん
08/09/09 13:24:58
火のつくプロジェクトはまずい人材か従順に言うことを聞くだけの人材しかいない。
人月にあらず。そこにいるのは何もできないか、まずいことしかやらない人々なのだ。

609:デフォルトの名無しさん
08/09/09 22:17:16
管理層も馬鹿じゃないから、火がついても経営的な危機に陥らないような
プロジェクトにしか無能な奴は集めないけどな。板違いスマソ

610:デフォルトの名無しさん
08/09/28 21:06:12
IT技術者は免許制にしてほしいよね

611:デフォルトの名無しさん
08/09/28 21:22:06
いや、GPL使うを免許にすべき

612:デフォルトの名無しさん
08/10/08 20:01:42
externってあんまり使わないほうがいいんかね

昔、学校のグラフィックスの授業でOpenGLを使った課題を発表し合ったとき、
gnuplotの3次元グラフみたいなものを動的に表示させるプログラムを書いた人がいて、すげーと思って
ソース見たら『void function001(void)...function002..003....~この後数十個の関数が続く』っていう中身になってて当時の俺だと
「次元が違う人の書くプログラムは読むのも難しいなー」と思ったんだけど、あれってやっぱりダメだったんだな・・・コメント書かない主義だったし

613:デフォルトの名無しさん
08/10/08 21:37:45
それ逆コンパイラか難読化ツールを作ったのが発表だったんじゃね?

614:デフォルトの名無しさん
08/10/08 22:19:02
逆コンパイラで何かぱくってきたの方に1票。

615:デフォルトの名無しさん
08/10/09 13:12:50
>>612
最適化か効率化かが極まった特例としてはアリかも。

キー入力応答やレンダリングとかの処理がいっぱい
必要な場合は、関数の名前を考える時間もバカに
ならないんで。
C/C++には無名関数もないしね。
処理系によっては、いちいちコールバック関数が
必須だったりするんでなおさら。

見習ってはいかんと思うけど、アタマから否定しない
度量もあっていい。


616:デフォルトの名無しさん
08/10/11 22:35:28
それでもコメント書かない主義ってのはダメだな
「function**は○○用の関数」とか一言書いておくだけでかなり違うのに

617:デフォルトの名無しさん
08/10/12 00:50:10
他人に保守させるとかじゃなければOKかな

618:デフォルトの名無しさん
08/10/13 07:41:36
コメントをコピペ修正忘れするくらいなら、コメントを書くことよりも、まともな関数名を考えることに注力して欲しい。
駄目な奴は何をやっても駄目だからしかたないが。

619:デフォルトの名無しさん
08/11/08 20:52:10
>>580
string-> "S"tring か?w
ケツ蹴っ飛ばしたれ。w



620:デフォルトの名無しさん
08/11/09 19:23:34
>>619
つっこみどころは arg1, arg2 だろ(´д`;)

621:デフォルトの名無しさん
08/11/09 19:38:32
どうやっても値が返らないってところに突っ込むべきじゃ。

622:デフォルトの名無しさん
08/11/09 22:20:26
内部状態更新するんじゃね?

623:デフォルトの名無しさん
08/11/09 22:30:41
create_string といういかにも値返しそうな名前なのに
procedure というところ?

624:デフォルトの名無しさん
08/11/10 09:55:07
突っ込みどころが多い、とw
しかし単語の先頭を大文字にした上でアンダースコアでつないでるのを見るとイラっとくるな。

625:デフォルトの名無しさん
08/11/11 07:18:47
C#ならstring小文字もメソッド名先頭大文字も普通。
アンダースコアはないが、他にそういう慣習の言語もあるのかも知れん。
言語を明示しないと突っ込みづらい。

626:デフォルトの名無しさん
08/11/11 13:47:02
そういやAdaは予約語以外は大文字で始めて単語の切れ目は_入れるんだったな。
procedure Create_String_Procedure(Arg1, Arg2: in String) is
:
begin
:
end Create_String_Procedure;
580を冗長に書き直すと、こんなんだったはず。

まぁコンパイラが大文字小文字を区別しないから、小文字で書いても全く問題ないんだけど。

627:デフォルトの名無しさん
08/11/26 02:03:59
>>580
で、こたえは?

628:デフォルトの名無しさん
08/11/28 18:38:24
>>537のってだめなの?
old new num はたまに使うんだけど

629:デフォルトの名無しさん
08/11/28 18:56:44
>>628
newはしばしば予約されている。
oldやnumも、単体で使うのは有り得ない。
変数名の一部として使う分にはまぁいいと思うけどね。
>537は教条主義に陥っている気がするな。

630:デフォルトの名無しさん
08/11/28 19:54:52
>>629
ああいや単体では使わんよ。
ただ変数名に含める事は結構あるんじゃないかと。

631:デフォルトの名無しさん
08/11/29 12:16:02
多くの場合に、 old, new よりは previous, current, next のほうがより明確だと思う。
対象領域に old, new の概念があり、それを表すならば、もちろん old, new がふさわしいだろう。

632:デフォルトの名無しさん
08/11/29 18:05:50
なるほど、確かにpreviousとnextの方がいいかも。

633:デフォルトの名無しさん
08/11/29 21:22:32
>537の理屈じゃ、oldTypeとかnewTypeでもダメそうだもんなw

634:デフォルトの名無しさん
08/12/01 22:03:48
>>537のは、結局"故にすべてのプログラムはクソ"というオチなんじゃない?

635:デフォルトの名無しさん
08/12/02 01:09:20
>>633
普通にダメだと思うぞそんな名前

636:デフォルトの名無しさん
08/12/02 09:58:51
newが入ってるとこみると名前の一部だよなそれ?

637:デフォルトの名無しさん
08/12/05 09:57:06
>627
CamelでC#と勝手に予想して>621が正解。
最近C#書く機会が多いから俺もそうオモタ。
変化球でメンバ更新用だとしてもメソッド名で( ´,_ゝ`)できる。

638:デフォルトの名無しさん
08/12/05 10:20:28
それは名前に突っ込んでるのか仕様につっこんでるのか

639:デフォルトの名無しさん
08/12/05 19:57:42
stringはstd::stringなのか?

640:デフォルトの名無しさん
09/01/08 02:50:44
year2009

641:デフォルトの名無しさん
09/01/08 12:03:10
bool eroikkaizutu = true;

642:デフォルトの名無しさん
09/01/08 21:59:30
>>616
コメントが正しければね。

/* DB接続 */
int connect()

/* DB接続 */
int disconnect()

/* DB接続 */
int select()

みたいなのがあると悲しくなるよ。

643:デフォルトの名無しさん
09/01/09 00:52:00
アニメとか漫画のキャラの名前を変数に使うなよ!!!

644:デフォルトの名無しさん
09/01/09 02:04:22
bool dame;



if (!dame) {
//登録失敗
 …
}



どっちなんだよ。
dame は駄目だろ。
もういやだ。


645:デフォルトの名無しさん
09/01/11 00:49:09
>>644
つまりソース書いたやつがdame

646:デフォルトの名無しさん
09/01/11 09:17:42
次いってみよう!

647:デフォルトの名無しさん
09/01/12 01:38:03
int NullPo;

648:デフォルトの名無しさん
09/01/28 15:22:48
if (だめだこりゃ) 次いってみよう;

649:デフォルトの名無しさん
09/01/28 15:40:31
カセット!

650:デフォルトの名無しさん
09/01/28 18:51:40
while ("終わりが無いのが終わり それがゴールド・エクスペリエンス・レクイエム") {








 break;
}

651:デフォルトの名無しさん
09/01/29 00:55:28
>>650
breakすんな

652:デフォルトの名無しさん
09/01/31 00:28:52
変数名や関数名にまともな名前付けれない奴が良いプログラミングなんてできるわけがないに激しく同意。
うちの部署にもいるが、「変数名なんて何でもいい。考えている時間が無駄だ。」とか言い出す始末。

関数クラスのクラス名→F
グローバル変数クラス→G
業務処理クラス→GYM

絶対クラスの意味わかってねーだろコイツ。

FC.ToStr("あああ"); //文字列変換処理

なんか意味あんのかこのメソッドは。プロなのかコイツは。

653:デフォルトの名無しさん
09/01/31 09:15:55
その程度の職場にその程度のプログラマ

654:デフォルトの名無しさん
09/01/31 12:49:29
そんな名前をつけられる位なら、逆に30年前の大型汎用機の開発のような「連番+台帳管理」の方がマシだな。
(すくなくとも記録は確実に残るし)


655:デフォルトの名無しさん
09/01/31 15:34:20
グローバル変数クラスなんていうシロモノがある時点でオワットルな


656:デフォルトの名無しさん
09/01/31 17:49:37
>>業務処理クラス→GYM
COBOLer警報が鳴り止まない。

657:デフォルトの名無しさん
09/02/08 03:30:35
普通
private int m_hoge;
コンストラクタ(int hoge){this.m_hoge = hoge;}
て、外出ししない変数にプレフィックスとか(必要なら)つけると思うけど

private int hoge;
コンストラクタ(int hogeArg){this.hoge = hogeArg;}
て書く人がいる。

658:デフォルトの名無しさん
09/02/08 03:49:06
>>657
> コンストラクタ(int hoge){this.m_hoge = hoge;}

普通は初期化ですむところで代入なんか使わない。
 コンストラクタ(int hoge) m_hoge(hoge) {}

> コンストラクタ(int hogeArg){this.hoge = hogeArg;}

利用者側に見せる名前に、実装側の都合で変な装飾がつくのは良くないね。
ここも初期化を使っていればこれでいい。
 コンストラクタ(int hoge) hoge(hoge) {}

659:デフォルトの名無しさん
09/02/08 05:15:16
スコット・メイヤー先生やハーブ・サッター先生の教えに従えば
メンバ変数が公開されることはないので
メンバ変数にはテキトーな名前をつけてもいいんじゃないだろうか…

と思ったが、コードは書かれるよりも読まれることの方がずっと多いと
アンドリュー・ハント先生が言っていたのを思い出した。

やっぱりわかりやすく書かないとダメだ…

660:デフォルトの名無しさん
09/02/08 07:19:00
メンバ変数のプリフィックスにアンダースコアを付けるのは
グローバルスコープでないのだから良いと思っていたが、
マクロというスコープを越えてやって来る邪悪なる存在に襲われ、
次回のプロジェクトではアンスコはサフィックスにすることにした。

661:デフォルトの名無しさん
09/02/08 10:57:36
>>658
private int hoge;
からしてC++じゃなくてjavaだろ、常識的に考えて。

662:658
09/02/08 12:01:07
>>661
ほんとだ。ごめん。 m_hoge 見て C++ だと思い込んだ。

Java にしても this.hoge = hoge でいいから、やっぱり
利用者側に(略)変な装飾がつくのは良くないね。

663:デフォルトの名無しさん
09/02/08 12:28:59
ぱっと見で把握できないような大きめのクラスは必ずpimplになるから
実質this->付いてるのと同じだな、自分の場合。

664:デフォルトの名無しさん
09/02/08 12:58:18
利用者側に変な装飾付けない方がいいのは同意。
装飾付けるなら内部の方がいい。

メンバ変数に装飾付けないプログラム見たけど、
どれがメンバ変数なのか分かり辛くて大変だった。
しかも、メンバ変数と同名のローカル変数作ってたり・・・。
最後まで読み進めると、その同名のローカル変数しか使ってなくて、
メンバ変数使って無いじゃん! とか。

this.hoge 派は this. で装飾付けた気になってんだろうけど、
それ知らない奴がそのコードいじると this. 付けなかったりする事もあるから
独りよがりなコードだね。

665:デフォルトの名無しさん
09/02/08 14:41:37
とりあえずメンバ変数宣言をコメント化すればすぐに分かったのにね。

666:デフォルトの名無しさん
09/02/08 14:50:58
そういう問題じゃないだろ・・・

667:デフォルトの名無しさん
09/02/08 17:08:49
命名規則スレが別になかったっけ?

668:デフォルトの名無しさん
09/02/10 23:08:27
dpkg-1.14.20ubuntu6/lib/dpkg.h
>void ohshit(const char *fmt, ...)
>void ohshitv(const char *fmt, va_list al)
>void ohshite(const char *fmt, ...)
>void ohshitvb(struct varbuf*)

669:657
09/02/12 00:40:10
>>658
>>661
すみません、ほんとすみません、>>657はC#のつもりです(;´Д`)
べつにJavaと変わらんけど

670:デフォルトの名無しさん
09/03/20 03:19:07
hogeの次に使う変数ってpiyo?

671:デフォルトの名無しさん
09/03/20 03:21:48
fuga


672:デフォルトの名無しさん
09/03/20 03:28:59
huhun

673:デフォルトの名無しさん
09/03/20 03:38:01
mogyo

674:デフォルトの名無しさん
09/03/20 04:15:47
zamasuzamasu

675:デフォルトの名無しさん
09/03/25 00:49:23
so_degansu

676:デフォルトの名無しさん
09/03/25 10:24:54
hunga_()

677:デフォルトの名無しさん
09/03/25 10:37:40
maji
meni
haji
mena
saiyo


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch