コーディングスタイルにこだわるスレ
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2007/10/28(日) 15:59:01 コーディングスタイルについて熱く語れ
2007/10/28(日) 16:03:26
余裕の2get
2007/10/28(日) 16:03:38
インデント禁止
2007/10/28(日) 16:11:07
改行禁止
2007/10/28(日) 16:21:22
()禁止
2007/10/28(日) 16:30:23
if文の比較では定数は左に置くよな、常識的に考えて。
if(0==a){
処理
}
みたいに
if(0==a){
処理
}
みたいに
2007/10/28(日) 16:32:04
if文なんて使ってるやつはばかです
2007/10/28(日) 16:35:08
include禁止
2007/10/28(日) 16:37:07
>>6
スペース入れろよ。
スペース入れろよ。
2007/10/28(日) 16:39:10
2007/10/28(日) 16:39:35
必死だなw
2007/10/28(日) 16:59:53
2007/10/28(日) 17:01:05
ガッ禁止
ぬるぽ
ぬるぽ
2007/10/28(日) 17:04:46
WinMainっていうのは定型だし、無視される引数もありいちいち書くのは面倒臭い
というわけで
#define WINDOWS_APPLICATION_ENTRYPOINT(hinstance,lpcmdline,ncmdshow) \
int WINAPI _tWinMain(HINSTANCE hhnstance, HINSTANCE, LPTSTR lpcmdline, int ncmdshow)
というようなマクロを使って
WINDOWS_APPLICATION_ENTRYPOINT(hinst,lpcmdline,ncmdshow)
{
return 0;
}
と書くのはどうでしょうか?
コード内部で参照するパラメータ名は使用する側が自由に決めることができます
というわけで
#define WINDOWS_APPLICATION_ENTRYPOINT(hinstance,lpcmdline,ncmdshow) \
int WINAPI _tWinMain(HINSTANCE hhnstance, HINSTANCE, LPTSTR lpcmdline, int ncmdshow)
というようなマクロを使って
WINDOWS_APPLICATION_ENTRYPOINT(hinst,lpcmdline,ncmdshow)
{
return 0;
}
と書くのはどうでしょうか?
コード内部で参照するパラメータ名は使用する側が自由に決めることができます
2007/10/28(日) 17:13:55
define禁止
2007/10/28(日) 17:26:27
NULL禁止
2007/10/28(日) 17:27:51
http://www.google.co.jp/search?q=%E3%82%B3%E3%83%BC%E3%83%87%E3%82%A3%E3%83%B3%E3%82%B0%E3%82%B9%E3%82%BF%E3%82%A4%E3%83%AB&sourceid=navclient-ff&ie=UTF-8&rlz=1B3GGGL_jaJP229JP231
コーディングスタイルに意味があるとしたらそれはプロジェクト内で統一することのみで
どう決めるかはまったく問題ではない。
もちろん一定以上の知的水準と経験を持った人間が決めればの話だが。
コーディングスタイルに意味があるとしたらそれはプロジェクト内で統一することのみで
どう決めるかはまったく問題ではない。
もちろん一定以上の知的水準と経験を持った人間が決めればの話だが。
2007/10/28(日) 17:33:54
goto奨励
2007/10/28(日) 18:00:20
>>17
> コーディングスタイルに意味があるとしたらそれはプロジェクト内で統一することのみで
誤読してるかもしれないが、コーディングスタイルの意義として、プロジェクト内でのスタイルの統一しかない
ということであれば、それに全く同意できない。
まず、可読性ありき。
> コーディングスタイルに意味があるとしたらそれはプロジェクト内で統一することのみで
誤読してるかもしれないが、コーディングスタイルの意義として、プロジェクト内でのスタイルの統一しかない
ということであれば、それに全く同意できない。
まず、可読性ありき。
2007/10/28(日) 18:44:05
もしコーディングスタイルを決める意義が「統一することのみ」だったら、
「一定以上の知的水準と経験を持った人間」が決める必要さえないしな。
「一定以上の知的水準と経験を持った人間」が決める必要さえないしな。
2007/10/28(日) 18:53:14
それじゃあ、変数名いってみようか。
ハンガリアン記法はクソ。
変数定義の箇所に型情報は記述されており、
適切に実装されたスコープ内では充分に目に付く。
型情報をたどれないほどに変数定義から離れた変数は、
同時に関数などのクソ設計を匂わせており、クソ。
ハンガリアン記法はクソ。
変数定義の箇所に型情報は記述されており、
適切に実装されたスコープ内では充分に目に付く。
型情報をたどれないほどに変数定義から離れた変数は、
同時に関数などのクソ設計を匂わせており、クソ。
2007/10/28(日) 18:57:04
>>21
ttp://local.joelonsoftware.com/mediawiki/index.php/%E9%96%93%E9%81%95%E3%81%A3%E3%81%9F%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AF%E9%96%93%E9%81%95%E3%81%A3%E3%81%A6%E8%A6%8B%E3%81%88%E3%82%8B%E3%82%88%E3%81%86%E3%81%AB%E3%81%99%E3%82%8B
ttp://local.joelonsoftware.com/mediawiki/index.php/%E9%96%93%E9%81%95%E3%81%A3%E3%81%9F%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AF%E9%96%93%E9%81%95%E3%81%A3%E3%81%A6%E8%A6%8B%E3%81%88%E3%82%8B%E3%82%88%E3%81%86%E3%81%AB%E3%81%99%E3%82%8B
2007/10/28(日) 19:04:11
> アプリケーションハンガリアン
> システムハンガリアン
シモニイすまんかった(´;ω;`)
> システムハンガリアン
シモニイすまんかった(´;ω;`)
2007/10/28(日) 19:20:22
>>22
またMSがいらんことを・・・
またMSがいらんことを・・・
25デフォルトの名無しさん
2007/10/28(日) 19:27:55 1、2、ハンガリアン!
2、2、ハンガリアン!
2、2、ハンガリアン!
2007/10/28(日) 19:31:21
>>22
それ読んだとき、めっちゃバグりそうな書き方だとおもったな。
内部で処理するときは、HTMLエンコードしないで処理して、表示のときに一括して、エンコーディングしたほうが
いいと思ったよ。
unsafeとsafeを混在させて処理してたら、いくらネーミングで工夫してもミスるだろって。
それ読んだとき、めっちゃバグりそうな書き方だとおもったな。
内部で処理するときは、HTMLエンコードしないで処理して、表示のときに一括して、エンコーディングしたほうが
いいと思ったよ。
unsafeとsafeを混在させて処理してたら、いくらネーミングで工夫してもミスるだろって。
2007/10/28(日) 19:33:32
>>25 どぅわ〜
2007/10/28(日) 20:22:40
joelなんか糞派登場
2007/10/29(月) 02:29:59
関数名、変数名は6文字以内。
2007/10/29(月) 13:10:06
//char a, *b, *const c, const *d;
char a, *b, *const c;char const *d;
char const *dを続けて宣言できないのが悔しい。
char a, *b, *const c;char const *d;
char const *dを続けて宣言できないのが悔しい。
2007/10/29(月) 19:49:30
考えるときはマンダム
立った時はジョジョ立ち
立った時はジョジョ立ち
2007/10/29(月) 20:24:41
牛乳は瓶の奴しか飲んではいけない。
飲むときは腰に手を当てること。
飲むときは腰に手を当てること。
2007/10/29(月) 21:59:31
2007/10/29(月) 22:11:03
最初の文字がi, j, k, l, m, n の変数は整数型。他は実数。
2007/10/29(月) 22:51:24
36sage
2007/10/30(火) 00:34:16 hsqscsName (html-safe, sql-safe, command-line-safe)
hsqscusName (html-safe, sql-safe, command-line-unsafe)
hsquscsName (html-safe, sql-unsafe, command-line-safe)
:
hsqscusName (html-safe, sql-safe, command-line-unsafe)
hsquscsName (html-safe, sql-unsafe, command-line-safe)
:
3736
2007/10/30(火) 00:37:04 orz
2007/10/30(火) 00:41:26
2007/10/30(火) 00:43:46
>>38
コードサーチでオプソをググったら腐るほどいた
コードサーチでオプソをググったら腐るほどいた
2007/10/30(火) 03:27:07
ヘアースタイルは7:3厳守。
2007/10/30(火) 05:24:12
エラーコードを解析する時は三白眼、効果音は
┣” ┣” ┣” ┣” ┣” ┣”
┣” ┣” ┣” ┣” ┣” ┣”
2007/10/30(火) 09:17:13
>>38
999:1くらいだと思う。もちろん1の方。
999:1くらいだと思う。もちろん1の方。
2007/10/30(火) 21:37:51
>>38
俺はデキる奴だぜー、と思い込んでるけど実際はそうでもない人が使いそう
俺はデキる奴だぜー、と思い込んでるけど実際はそうでもない人が使いそう
2007/10/31(水) 01:39:14
< とか > とかの向きを揃える目的なら使っちゃだめか?
2007/10/31(水) 02:55:54
定数を左に置くのは、次の場合だけだな。
if (0 < x && x < 100)
本当はif (0 < x < 100)と書きたいけど、書けないのでその代用としてだ。
if (0 < x && x < 100)
本当はif (0 < x < 100)と書きたいけど、書けないのでその代用としてだ。
46デフォルトの名無しさん
2007/10/31(水) 23:03:42 returnやsizeofの後をカッコでくくるかどうかって話はもう出た?
2007/10/31(水) 23:06:40
return の後の括弧は無し
sizeof の後の括弧は有り
sizeof の後の括弧は有り
return はくくらないのにsizeofはくくりたくなるんだよな。。
2007/10/31(水) 23:08:24
習慣っつーか慣用句みたいな感じ
2007/10/31(水) 23:09:44
括弧つけるべきか否か迷う時間が勿体無いので、
なんでも括弧つけることにしてる。
なんでも括弧つけることにしてる。
2007/10/31(水) 23:45:58
return 0; ならいいとしても、return i * 2; みたいになると、括弧で括りたくなる。
2007/10/31(水) 23:52:18
昔、会社のコーディング規約決める時に、returnの後の括弧は無しじゃね?
って言っても、みんな、returnの後は括弧付けるって言って引かないから、
もう、どっちでも良い事にしちゃった。
って言っても、みんな、returnの後は括弧付けるって言って引かないから、
もう、どっちでも良い事にしちゃった。
2007/11/01(木) 00:30:32
実際どっちでもいいし
2007/11/01(木) 00:33:31
>52
燃料投下。
ttp://www.st.rim.or.jp/~phinloda/cqa/cqa6.html#q20
燃料投下。
ttp://www.st.rim.or.jp/~phinloda/cqa/cqa6.html#q20
2007/11/01(木) 07:23:14
やっぱりキチガイは一人だけだったか。
奴が来ないとこんなに静か。
奴が来ないとこんなに静か。
2007/11/01(木) 08:35:41
交差点で100円ひろおったーよー
2007/11/01(木) 21:05:04
ちびまるこちゃんだな。
2007/12/20(木) 03:21:44
なんでもかんでもみんな マスゲームを踊ってるよ
ピョンヤンの丘にはボカッと 巨大な銅像献上
いつだって 忘れない 金日成偉い人 そんなの常識
パッパパラリラ
ピーヒャラピーヒャラ おなかが減ったよー
ピョンヤンの丘にはボカッと 巨大な銅像献上
いつだって 忘れない 金日成偉い人 そんなの常識
パッパパラリラ
ピーヒャラピーヒャラ おなかが減ったよー
2008/01/21(月) 02:38:32
>今さらだけど>>6はどうかと思うな
>見てから理解するのに時間がかかる
今更だが、
1. if ( hogehogeflag == 0 )
2. if ( hogeHoge( parameter_list ) > 0 )
3. while( ( c = fgetc( stdin ) ) != EOF )
とかよりは
1. if ( 0 == hogehogeflag )
2. if ( 0 < hogeHoge( parameter_list ) )
3. while( EOF != ( c = fgetc( stdin ) ) )
の方が大事なことが先に書いてあって分かりやすくて読みやすくね?
特に3.の場合なんか前者だと条件比較の意味を理解するのに最初fgetc()から←方向にcを読んで次に→方向に読み直してEOFを探さなきゃならんし。
それとも俺がそういうコミニティで育ったからか?
>見てから理解するのに時間がかかる
今更だが、
1. if ( hogehogeflag == 0 )
2. if ( hogeHoge( parameter_list ) > 0 )
3. while( ( c = fgetc( stdin ) ) != EOF )
とかよりは
1. if ( 0 == hogehogeflag )
2. if ( 0 < hogeHoge( parameter_list ) )
3. while( EOF != ( c = fgetc( stdin ) ) )
の方が大事なことが先に書いてあって分かりやすくて読みやすくね?
特に3.の場合なんか前者だと条件比較の意味を理解するのに最初fgetc()から←方向にcを読んで次に→方向に読み直してEOFを探さなきゃならんし。
それとも俺がそういうコミニティで育ったからか?
2008/01/21(月) 03:46:07
私は三つとも上のほうが読みやすいと感じる。
数字の 0 よりも、フラグとか関数呼び出しのが「大事なこと」だと思う。
コミュニティ次第なんだろうね。
ただ私なら、 3 は
for (;;) {
c = fgetc(stdin);
if ( c == EOF ) break;
...
}
みたいに書く。
数字の 0 よりも、フラグとか関数呼び出しのが「大事なこと」だと思う。
コミュニティ次第なんだろうね。
ただ私なら、 3 は
for (;;) {
c = fgetc(stdin);
if ( c == EOF ) break;
...
}
みたいに書く。
2008/01/21(月) 04:45:23
出力(条件比較や返値)より入力(関数呼出や引数)が「大事なこと」だと思えば上のほう、
if ( hogeHoge( parameter_list ) 〜
入力(関数呼出や引数)より出力(条件比較や返値)が「大事なこと」だと思えば下のほう、
if ( 0 < hogeHoge( 〜
ってところではないかな。
定数と一時変数を使えば
err = hogeHoge( parameter_list );
if ( err == SUCCESS )
2 は 1 の問題に出来るな。
ただし 3 はイディオムなので、私でも>>60のように分解はしないな。
if ( hogeHoge( parameter_list ) 〜
入力(関数呼出や引数)より出力(条件比較や返値)が「大事なこと」だと思えば下のほう、
if ( 0 < hogeHoge( 〜
ってところではないかな。
定数と一時変数を使えば
err = hogeHoge( parameter_list );
if ( err == SUCCESS )
2 は 1 の問題に出来るな。
ただし 3 はイディオムなので、私でも>>60のように分解はしないな。
2008/01/21(月) 05:06:08
ん、制御とデータで分けた方が適切なのかな。
"hogehogeflag が", "hogeHoge( parameter_list ) が", "while 内で c に fgetc( stdin ) を代入" のように データ中心に考えれば上のほう、
1. if ( hogeh...
2. if ( hogeHoge( para...
3. while( ( c = fgetc( stdin )...
"0 の場合に", "返却値が 0 より大きければ", "while は c が EOF になるまで" と制御中心に考えれば下のほう、
1. if ( 0 == ...
2. if ( 0 < hogeHoge( ...
3. while( EOF != ( c = fgetc( ...
になるね。
"hogehogeflag が", "hogeHoge( parameter_list ) が", "while 内で c に fgetc( stdin ) を代入" のように データ中心に考えれば上のほう、
1. if ( hogeh...
2. if ( hogeHoge( para...
3. while( ( c = fgetc( stdin )...
"0 の場合に", "返却値が 0 より大きければ", "while は c が EOF になるまで" と制御中心に考えれば下のほう、
1. if ( 0 == ...
2. if ( 0 < hogeHoge( ...
3. while( EOF != ( c = fgetc( ...
になるね。
2008/01/21(月) 08:38:08
定数左に置く人はfor文でもやっぱり左に置くの?
for (i = 0; N > i; ++i) みたいな感じに
for (i = 0; N > i; ++i) みたいな感じに
2008/01/21(月) 09:58:03
>for (i = 0; N > i; ++i) みたいな感じに
そりゃ不等号の向きによるんでね。if文でも同じやろ。
for( i = 0; i < N; ++i )
for( i = N; 0 < i; --i )
定数右に書く人は"N より大きい"を if ( i > N ) って書くん?
気持ち悪くね?
そりゃ不等号の向きによるんでね。if文でも同じやろ。
for( i = 0; i < N; ++i )
for( i = N; 0 < i; --i )
定数右に書く人は"N より大きい"を if ( i > N ) って書くん?
気持ち悪くね?
2008/01/21(月) 10:11:40
それもそうだ。
2008/01/21(月) 10:38:05
>>64
不等号の向きが数直線だと思い込む方がどうかしている。
つまり0より大きいと0より小さいがならぶときに、
if (var > 0) ...;
if (var < 0) ...;
と書くか
if (0 < var) ...;
if (var < 0) ...;
と書くかの違いなわけだが。
例えば、このvarが関数呼び出しになっても後者のように書くということなのだろ?
それが気持ち悪いと思えないなら、私とは相容れない種類の人間だと言うことだ。
不等号の向きが数直線だと思い込む方がどうかしている。
つまり0より大きいと0より小さいがならぶときに、
if (var > 0) ...;
if (var < 0) ...;
と書くか
if (0 < var) ...;
if (var < 0) ...;
と書くかの違いなわけだが。
例えば、このvarが関数呼び出しになっても後者のように書くということなのだろ?
それが気持ち悪いと思えないなら、私とは相容れない種類の人間だと言うことだ。
2008/01/21(月) 10:46:16
>>64
私はそれぞれ
for ( i = 0; i < N; i++ )
for ( i = N; i > 0; i-- )
if ( i > N )
って書く。
逆は気持ち悪いって感じる。
「 i が N より大きい」をそのまま書いたら i > N でしょ。
N < i は「 N が i より小さい」。
私はそれぞれ
for ( i = 0; i < N; i++ )
for ( i = N; i > 0; i-- )
if ( i > N )
って書く。
逆は気持ち悪いって感じる。
「 i が N より大きい」をそのまま書いたら i > N でしょ。
N < i は「 N が i より小さい」。
2008/01/21(月) 10:56:56
私は基本的には定数右派だが、不等号については後者かな。
やはり var < 0 ってのは直感的ではないし見ていて気持ちが悪いって感じる。
やはり var < 0 ってのは直感的ではないし見ていて気持ちが悪いって感じる。
2008/01/21(月) 10:59:26
2008/01/21(月) 10:59:59
2008/01/21(月) 11:04:38
私は < だろうが > だろうが関数呼び出し相手なら
if (0 <= func(
if (0 == func(
if (0 >= func(
だなぁ。
if (0 <= func(
if (0 == func(
if (0 >= func(
だなぁ。
2008/01/21(月) 11:07:39
2008/01/21(月) 11:10:36
よし纏めよう。
・定数右派
基本的に、常に定数が右。不等号の向きなんて関係ねぇ。
・定数左派
基本的に、常に定数が左。不等号の向きなんて関係ねぇ。
・不等号は数直線派
基本的に、不等号は常に左を小さく。定数の位置なんて関係ねぇ。
ダメだ、>71も恐らく例外があるのだろうし分類しきれない……
・定数右派
基本的に、常に定数が右。不等号の向きなんて関係ねぇ。
・定数左派
基本的に、常に定数が左。不等号の向きなんて関係ねぇ。
・不等号は数直線派
基本的に、不等号は常に左を小さく。定数の位置なんて関係ねぇ。
ダメだ、>71も恐らく例外があるのだろうし分類しきれない……
7463
2008/01/21(月) 11:22:37 >>64-72
回答ありがとう
なるほどねー
1. 数直線に合わせる派
2.1. 評価対象を常に左に置く派
2.2. 評価対象を常に右に置く派
がいるみたいだね
…これ、どっかのMLの過去ログにもありそうだな
回答ありがとう
なるほどねー
1. 数直線に合わせる派
2.1. 評価対象を常に左に置く派
2.2. 評価対象を常に右に置く派
がいるみたいだね
…これ、どっかのMLの過去ログにもありそうだな
2008/01/21(月) 11:42:38
基本的に短い物が左。
そして変数同士の不等号は数直線派。
変数か定数かなんて関係ねぇ。
な俺は結果的に
即値 < 変数・定数 < 式 < 関数
な順番になるな。
定数左ってよりは即値左か?
画面が狭かった頃の規約の名残だな。
そして変数同士の不等号は数直線派。
変数か定数かなんて関係ねぇ。
な俺は結果的に
即値 < 変数・定数 < 式 < 関数
な順番になるな。
定数左ってよりは即値左か?
画面が狭かった頃の規約の名残だな。
2008/01/21(月) 13:24:24
こんなものは理屈じゃなくて、数学の記法では普通 0=x でなく x=0 と書くというのが一番大きい気がするけどな
不等号は3項関係なら数直線だが2項関係ならやはり変数を左辺に書くのが数学でも一般的だと思う
不等号は3項関係なら数直線だが2項関係ならやはり変数を左辺に書くのが数学でも一般的だと思う
2008/01/21(月) 13:59:49
その理屈だと関数が絡んだときにおかしくないか?
数学だとy=f(x)の方が一般的でないか?
数学だとy=f(x)の方が一般的でないか?
2008/01/21(月) 14:12:06
>数学だとy=f(x)の方が一般的でないか?
その記法は定数相手には使わないような。
確かに y については y = f( x ) 的な書き方をするけど、f(x) については f(x) = a * x + y 的な書き方もするはず。
だからまあプログラミングの記号と数学の記号とでは微妙に意味が違うので全てを同じルールでは扱えないが、それでも変数と定数に限れば 0=x ではなく x=0 だろう。
これはもう理屈とか抜きに。
その記法は定数相手には使わないような。
確かに y については y = f( x ) 的な書き方をするけど、f(x) については f(x) = a * x + y 的な書き方もするはず。
だからまあプログラミングの記号と数学の記号とでは微妙に意味が違うので全てを同じルールでは扱えないが、それでも変数と定数に限れば 0=x ではなく x=0 だろう。
これはもう理屈とか抜きに。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 高市首相の答弁書に「台湾有事答えない」と明記 存立危機発言当時 ★12 [蚤の市★]
- 中国の渡航自粛要請1カ月 大阪の観光バス予約ゼロ、東北にも波及 [蚤の市★]
- 【神戸】エレベーター「かご」なく男性医師が転落死 大手「三菱電機ビルソリューションズ」の担当者、安全装置切り放置か [ぐれ★]
- 【日本人の旅行離れ】国内旅行すら行けなくなった……オーバーツーリズムだけじゃない 旅行者減少の異常事態 [ぐれ★]
- 不倫疑惑の永野芽郁さん、CM削除ドミノの違約金“やはり発生は免れない”可能性 約10億円になる見込み、本人は全額支払う覚悟 [牛丼★]
- 女性天皇「賛成」69%、将来の皇位継承「不安」68%…読売世論調査 [蚤の市★]
- かめはめ波打って仕事行く(5連続成功中)
- 高市、メガソーラー廃止。環境破壊が社会問題化 [792147417]
- 他人のリクエストで自分の癖と異なる絵を上げる絵師いるじゃん?
- 日本人がホルホルの対象にしている生物、海外にも生息すると判明 [603416639]
- 【悲報】フィギュアオタク「2月に結婚予定だった彼女にフラれた。ドラゴンボールのフィギュアも式で飾ろうと話してたのになぜ…」 [802034645]
- 職業訓練行ってるんだけど月13日しか行かないのに毎月18万貰えてる
