【汚物】痛い変数名・関数名【破廉恥】
■ このスレッドは過去ログ倉庫に格納されています
コメントをコピペ修正忘れするくらいなら、コメントを書くことよりも、まともな関数名を考えることに注力して欲しい。
駄目な奴は何をやっても駄目だからしかたないが。 >>580
string-> "S"tring か?w
ケツ蹴っ飛ばしたれ。w
>>619
つっこみどころは arg1, arg2 だろ(´д`;) どうやっても値が返らないってところに突っ込むべきじゃ。 create_string といういかにも値返しそうな名前なのに
procedure というところ? 突っ込みどころが多い、とw
しかし単語の先頭を大文字にした上でアンダースコアでつないでるのを見るとイラっとくるな。 C#ならstring小文字もメソッド名先頭大文字も普通。
アンダースコアはないが、他にそういう慣習の言語もあるのかも知れん。
言語を明示しないと突っ込みづらい。 そういやAdaは予約語以外は大文字で始めて単語の切れ目は_入れるんだったな。
procedure Create_String_Procedure(Arg1, Arg2: in String) is
:
begin
:
end Create_String_Procedure;
580を冗長に書き直すと、こんなんだったはず。
まぁコンパイラが大文字小文字を区別しないから、小文字で書いても全く問題ないんだけど。 >>537のってだめなの?
old new num はたまに使うんだけど >>628
newはしばしば予約されている。
oldやnumも、単体で使うのは有り得ない。
変数名の一部として使う分にはまぁいいと思うけどね。
>537は教条主義に陥っている気がするな。 >>629
ああいや単体では使わんよ。
ただ変数名に含める事は結構あるんじゃないかと。 多くの場合に、 old, new よりは previous, current, next のほうがより明確だと思う。
対象領域に old, new の概念があり、それを表すならば、もちろん old, new がふさわしいだろう。 なるほど、確かにpreviousとnextの方がいいかも。 >537の理屈じゃ、oldTypeとかnewTypeでもダメそうだもんなw >>537のは、結局"故にすべてのプログラムはクソ"というオチなんじゃない? >627
CamelでC#と勝手に予想して>621が正解。
最近C#書く機会が多いから俺もそうオモタ。
変化球でメンバ更新用だとしてもメソッド名で( ´,_ゝ`)できる。 それは名前に突っ込んでるのか仕様につっこんでるのか bool eroikkaizutu = true; >>616
コメントが正しければね。
/* DB接続 */
int connect()
/* DB接続 */
int disconnect()
/* DB接続 */
int select()
みたいなのがあると悲しくなるよ。 アニメとか漫画のキャラの名前を変数に使うなよ!!! bool dame;
…
if (!dame) {
//登録失敗
…
}
どっちなんだよ。
dame は駄目だろ。
もういやだ。
while ("終わりが無いのが終わり それがゴールド・エクスペリエンス・レクイエム") {
break;
} 変数名や関数名にまともな名前付けれない奴が良いプログラミングなんてできるわけがないに激しく同意。
うちの部署にもいるが、「変数名なんて何でもいい。考えている時間が無駄だ。」とか言い出す始末。
関数クラスのクラス名→F
グローバル変数クラス→G
業務処理クラス→GYM
絶対クラスの意味わかってねーだろコイツ。
FC.ToStr("あああ"); //文字列変換処理
なんか意味あんのかこのメソッドは。プロなのかコイツは。 そんな名前をつけられる位なら、逆に30年前の大型汎用機の開発のような「連番+台帳管理」の方がマシだな。
(すくなくとも記録は確実に残るし)
グローバル変数クラスなんていうシロモノがある時点でオワットルな
>>業務処理クラス→GYM
COBOLer警報が鳴り止まない。 普通
private int m_hoge;
コンストラクタ(int hoge){this.m_hoge = hoge;}
て、外出ししない変数にプレフィックスとか(必要なら)つけると思うけど
private int hoge;
コンストラクタ(int hogeArg){this.hoge = hogeArg;}
て書く人がいる。 >>657
> コンストラクタ(int hoge){this.m_hoge = hoge;}
普通は初期化ですむところで代入なんか使わない。
コンストラクタ(int hoge) m_hoge(hoge) {}
> コンストラクタ(int hogeArg){this.hoge = hogeArg;}
利用者側に見せる名前に、実装側の都合で変な装飾がつくのは良くないね。
ここも初期化を使っていればこれでいい。
コンストラクタ(int hoge) hoge(hoge) {} スコット・メイヤー先生やハーブ・サッター先生の教えに従えば
メンバ変数が公開されることはないので
メンバ変数にはテキトーな名前をつけてもいいんじゃないだろうか…
と思ったが、コードは書かれるよりも読まれることの方がずっと多いと
アンドリュー・ハント先生が言っていたのを思い出した。
やっぱりわかりやすく書かないとダメだ… メンバ変数のプリフィックスにアンダースコアを付けるのは
グローバルスコープでないのだから良いと思っていたが、
マクロというスコープを越えてやって来る邪悪なる存在に襲われ、
次回のプロジェクトではアンスコはサフィックスにすることにした。 >>658
private int hoge;
からしてC++じゃなくてjavaだろ、常識的に考えて。 >>661
ほんとだ。ごめん。 m_hoge 見て C++ だと思い込んだ。
Java にしても this.hoge = hoge でいいから、やっぱり
利用者側に(略)変な装飾がつくのは良くないね。 ぱっと見で把握できないような大きめのクラスは必ずpimplになるから
実質this->付いてるのと同じだな、自分の場合。 利用者側に変な装飾付けない方がいいのは同意。
装飾付けるなら内部の方がいい。
メンバ変数に装飾付けないプログラム見たけど、
どれがメンバ変数なのか分かり辛くて大変だった。
しかも、メンバ変数と同名のローカル変数作ってたり・・・。
最後まで読み進めると、その同名のローカル変数しか使ってなくて、
メンバ変数使って無いじゃん! とか。
this.hoge 派は this. で装飾付けた気になってんだろうけど、
それ知らない奴がそのコードいじると this. 付けなかったりする事もあるから
独りよがりなコードだね。 とりあえずメンバ変数宣言をコメント化すればすぐに分かったのにね。 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*) >>658
>>661
すみません、ほんとすみません、>>657はC#のつもりです(;´Д`)
べつにJavaと変わらんけど maji
meni
haji
mena
saiyo int k;
int kk;
int kkk;
UINT kkkk;
char* a;
char* as;
char asdf;
みたいなものすごく投げやりなのは見たことあるw //UPD start 200x/12/24 型を変更
//String strSummary = "0";
long strSummary = 0L;
//UPD end 200x/12/24 型を変更
ハンガリアン万歳w >>682
それどう見てもstrSummary使ってるとこ全部直さなきゃならんだろ。
変数名をそのままにする意味あんのか。
...って聞くだけ野暮ってもんか。 それ見ると機械的なリファクタリングのありがたみが指に沁み渡る 痛い変数名というより、マ板の方の「この会社辞めようと思(ry
向きのネタだな。 引数に必ずNULLを指定しなければならない関数全て String kensakuKekkaStatus = "";
山本高広のケインコスギ芸か 久々に熱い変数名の記事を見たわw
UKTKKNSHINF → 受付禁止情報
SKSI → 作成
HNKN → 変換
KKT → 確定
CHKN → 中間
DTM → Datetime
DTA → Data
ひどすぎるネーミング - idesaku blog
http://d.hatena.ne.jp/idesaku/20090703/1246593915 ,j;;;;;j,. ---一、 ` ―--‐、_ l;;;;;;
{;;;;;;ゝ T辷iフ i f'辷jァ !i;;;;; ローカルなスコープではどんな痛い変数名も
ヾ;;;ハ ノ .::!lリ;;r゙ 色なりIDEのリファクタリングなりで無問題
`Z;i 〈.,_..,. ノ;;;;;;;;>
,;ぇハ、 、_,.ー-、_',. ,f゙: Y;;f. そんな風に思っていた時期が
~''戈ヽ `二´ r'´:::. `! 俺にもありました
全然カプセル化されてねーよ!
スパゲティなコードの上にグローバル、ローカル同じ名前とかないよ! 痛いコメントも多いよな
「?」とか「なぜか〜なる」とか「とりあえず」とか
コメント入ったまま納品すんなw 消すとリビジョン変わるからそのまま納品でいいんだよ!!! 俺がリーダーの時、以前のプロジェクトでテキストボックスならTBox,チェックボックスなら
CBoxとかの省略形の接頭辞、接尾辞つけるルールを変えさせた。慣れないといちいち、変換表みるはめに
なり、一瞬止まるから。素直にフルスペルでつけさせた。XXXXTextBoxとか。
今スレ開くと>>650-651がちょうど上の方にあって、
見る度に笑ってしまう。
確かに、while(1)の代わりにリテラル文字列入れとくという遊びは、
害のない(?)悪戯として使えるかもしれないけど。 for (;"ever";) {
// これはいいかもしれんw
} for(;;)
{
}
の方がいい
括弧の中に何か入ってると身構えてしまう #define forever for(;;)
そんな時代もありました… int gero; // <Global> End Row Offset 昔、X68000のXCでNASHI NASHI NASHIみたくNASHIがいっぱい入ってた記憶があるんだけど、
あれはやっぱ「ナシ」だったんだろうか fook って付けようとして fuck って付けてしまた Dim ぬるり As Object = Nothing
ぬるり.ToString() ■ このスレッドは過去ログ倉庫に格納されています