5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

★★★コーディングマナー★★★

1 :デフォルトの名無しさん:03/06/25 11:38
コーディングマナーを語りましょうYO!

個人的に("hello world"); → ( "hello world" );のほうが(・∀・)イイ!

2 :デフォルトの名無しさん:03/06/25 11:40
キモ

3 :デフォルトの名無しさん:03/06/25 11:41
>>1
うわーきもい!

4 :デフォルトの名無しさん:03/06/25 11:52
char *p1 = ("hello\n");
char x1[] = {"hello\n"};

char *p2 = ( "hello\n" );
char x2[] = { "hello\n" };

printf("%s", p1);
printf("%s", x1);
printf("%s", p2);
printf("%s", x2);
さて、エラーはどれ?

5 :デフォルトの名無しさん:03/06/25 11:55
確かにそういうのは大事ではある罠

ま、1がキモイのは事実として

6 :デフォルトの名無しさん:03/06/25 11:56
ぶつぶつ独り言言うな

7 :デフォルトの名無しさん:03/06/25 12:03
>>1
じゃあ、それでいいんじゃない。

8 :デフォルトの名無しさん:03/06/25 12:03
プロジェクトごと、あるいは会社ごとにコーディングルールは大抵異なっている。
そこに「世界全体の統一ルール」とか作って持ち込んだとしても、結局1ヶ月後には元に戻っている。
従って意味無し。

9 :デフォルトの名無しさん:03/06/25 12:04
>>1
むしろ前者のほうがいい
っていうかこのレベルは一致させる必要も感じないが

10 :デフォルトの名無しさん:03/06/25 12:05
これがマナーなの?

11 :デフォルトの名無しさん:03/06/25 12:05
>>1のようなコーディングが、ルール内に入っている会社ってある?

12 :_:03/06/25 12:05
http://homepage.mac.com/hiroyuki44/

13 :8:03/06/25 12:26
>>11
正直、聞いた事無いよな。
「コメントを付ける付けない」とか「コメントの内容は」とか、「関数名、クラス名」とかの
ルールは良くあると思うが。

14 :デフォルトの名無しさん:03/06/25 14:20
>>1
それが、括弧が複数であればわかるがひとつだけの場合はそこまで意識しなくても
ええと思ふ。

//スペースがないと読みづらい。
doMethod( ( 0.65356437664 + 547903984 * t ) * x + ( Math.log(a) - 1.4954 ),
       "Hello, world", "Hello,world" );

//そんなに読みづらくない。
doMethod("Hello, world");

//ちょっと読みづらい。
doMethod("Hello, world","hello, wold");

//少し読みやすくなった。カーニングやフォントの影響によって、
エディタによっては読みにくい。
doMethod("Hello, world", "hello, wold");

//読みやすい。
doMethod( "Hello, world", "hello, wold" );

//カンマの左にスペース入れても可読性は大して変わらない。
doMethod( "Hello, world" , "hello, wold" );

//短い引数に、そこまでしなくてもいい。かえって読みづらい。
doMethod( "Hello, world",
        "hello, wold" );

15 :デフォルトの名無しさん:03/06/25 16:04
>>14
>//読みやすい。
>doMethod( "Hello, world", "hello, wold" );
うちは基本的にこれ。
ところで、自動で清書するソフトってないの?

16 :デフォルトの名無しさん:03/06/25 16:17
やたらスペースを入れられるのも、ちと困る。

17 :16:03/06/25 16:20
doMethod(  "Hello, world"  ,  "Hello, world"  ) ;

おかしいな、と思ったら、プロポーショナルフォントだった。


18 :デフォルトの名無しさん:03/06/25 16:37
>>17
プロポーショナルなら幅合わせしようということ自体おかしいよな。

19 :デフォルトの名無しさん:03/06/25 23:13
list<char>::iterator p; 
    と
list <char> :: iterator p;

どっちがみんな読みやすいかな?
俺は後者の方がいいんだけどなー スペースとり過ぎかな

20 :デフォルトの名無しさん:03/06/25 23:14
>>19
あけすぎ
Apple ][のBASICを思い出すな。

21 :デフォルトの名無しさん:03/06/25 23:20
ちゃんと中カッコを書いてもらいたい。
if (...)
 ...
  ↓
if (...)
 {
  ...
 }


22 :デフォルトの名無しさん:03/06/25 23:21
>>19 俺も読みやすくしたい派なんだけど それはかえって読みづらい罠
list <char>::iterator p; ってしてる。 型はちゃんと確認しときたいもん

23 :デフォルトの名無しさん:03/06/25 23:23
>>21 中カッコいらない時は
for ( i = 0; i < n; i++ ) cout << *p;
って横に書いてる  読みにくいかな?

24 :デフォルトの名無しさん:03/06/25 23:39
つーか、中カッコいらなくて、かつ後ろが長い時は、いい具合にインデント入れる。

for(i=0;i<n;i++)
  if(i!=a)
    b = c==a?d:e;
  else
    b = a;

...って、ここまで書くと、ウザい?(笑

25 :デフォルトの名無しさん:03/06/25 23:42
>>24 いや、普通じゃないかな
if, elseを書く場合はfor文の横に書くよりはそうやって書くほうがいいね

26 :デフォルトの名無しさん:03/06/26 00:27
コーディング規約で、{ } がいらないときでも、囲うようにする、
というひとはいるかな?

27 :デフォルトの名無しさん:03/06/26 01:20
checkstyle必須のプロジェクトがあった。
バグとかいう前に、まずコンパイルしてもらえない。

28 :デフォルトの名無しさん:03/06/26 01:28
>>26
うちはそうなってる。
中身が増減するときに、いちいち気にしなくてすむように、だそうな。

29 :デフォルトの名無しさん:03/06/26 02:35
俺は>>24書くならこんな感じ。

for(i=0; i<n; i++) {
  if(i!=a)
    b = (c==a)?d:e;
  else
    b = a;
}

30 :デフォルトの名無しさん:03/06/26 04:16
b = n - 1 == a ? a : c == a ? d : e;

31 :デフォルトの名無しさん:03/06/26 11:40
>>15
indent

32 :デフォルトの名無しさん:03/06/26 11:51
>>28
うちもうちも。
後でメンテするやつがバグらんように...(w

それで、ステップ数がとかほざくような所の仕事はやらん!


33 :棄教者 ◆egKIKYO7cg :03/06/26 14:37
>>30

ただし漏れは凡人なので>>28>>32推奨。

34 :デフォルトの名無しさん:03/06/26 15:53
>>30
というか、こういうのが一番困るw

35 :デフォルトの名無しさん:03/06/26 20:38
>>30
こういうのは、レビューで抹殺します
動きゃ〜いいってもんじゃない(w


36 :デフォルトの名無しさん:03/06/27 23:34
>>30
これは良くやるけど、ifとかforとかは無条件で中カッコつける

37 :デフォルトの名無しさん:03/06/28 00:45
>21
1行に書ける時はカッコなし、改行するときはカッコあり、だな。

ただPerlではカッコ必須なので1行で書くときも
if($hoge) { hogehoge; }
となってしまって格好悪い。
#後ろに書けばいいという意見もあるだろうけど、あえて前に書きたいときもあるということで。

38 :デフォルトの名無しさん:03/06/28 00:46
>30
3項演算子の中で3項演算子を使うのはちょっと自己満足臭がする。


39 :デフォルトの名無しさん:03/06/28 00:49
>>30
そんな書き方、今まで考えたこともありませんでした
ありがとう

40 :デフォルトの名無しさん:03/06/28 02:11
artistic style の開発は止まってしまったのだろうか・・・・

41 :500:03/06/28 13:53
tempalate<typename _T >
class Hoge
{
public:
_T count;
};//class Hoge

void functionVoid( void ){

}//void functionVoid

void functionHogeHoge(
Hoge& hoge_out,
const Hoge& hoge_ in ) {

}//void functionHogeHoge


俺の場合こんな感じっす。
クラスの場合 { は 同じ行に書かない。なんでだろ?

42 :デフォルトの名無しさん:03/06/28 14:06
>>41
> };//class Hoge
> }//void functionVoid
> }//void functionHogeHoge
キモッ

43 :デフォルトの名無しさん:03/06/28 14:38
>>41
閉じ括弧の後にコメントつけるのは、
インデントを自動的に正しく整えてくれないタコエディタ使ってた奴だろう。
emacsマンセー!

それと、最初に他の言語を覚えていてCに移った奴に多いような気がする。
厳密に言うと最初に覚えた言語と言うよりは
いわゆる母語(mother tongue)ってやつで、
その人のプログラミング時の思考方法に強く影響を与えている言語。
俺の場合最初に触れた言語はBASICで今はJavaだが、
母語は大学で使ってたCだと思う。

CまたはC++が母語の人間なら、{}の対応は無意識のうちにできることなので、
わざわざコメントつけて注意を引くほどのことではない。だからつけない。

ちなみに俺は今はEclipseマンセー派なので、
コードの整形はEclipse任せです。時々恐ろしいことになるが…

44 :デフォルトの名無しさん:03/06/28 15:10
>>38
なんか足が臭そうに見えた

45 :デフォルトの名無しさん:03/06/29 10:18
>>43
最初からc++ですが、何か?
つーか、インデントくらいそれってますが何か?

関数の終わりを探すのがたるいときあるんだよな。
だからつけてるだけ。


46 :デフォルトの名無しさん:03/06/29 10:19
>それってますが何か?
そろえてますが何か。

47 :43:03/06/29 10:41
>>45
あー、じゃこっちか。
>インデントを自動的に正しく整えてくれないタコエディタ使ってた奴だろう。

48 :41:03/06/29 13:48
>>47
いやー、たこエディタはさておき、
画面スクロール2枚分くらいの関数を複数書いてるときに
スクロールグリグリやってるときに、いまどこの関数いじってんだっけ?
ってなったりしないか?

関数の始めに飛ぶショートカットとかつかえばいいだけなのかもしれんが。
あるのか、どうか知らんが。

49 :デフォルトの名無しさん:03/06/29 18:17
>>48
41のような数行の対応にまで区別無くコメントつけるのがキモイ。

50 :デフォルトの名無しさん:03/06/29 21:40
>>1
コーディング中は放屁しないこと

51 :デフォルトの名無しさん:03/06/29 21:44
javaなんだけど
String str = new String("java");
str="hello";
でインスタンス生成の時は=の両端を空けるけど代入のときはくっつける。
このほうが見やすいと感じるのは俺だけか???

52 :デフォルトの名無しさん:03/06/29 21:52
>>51
うん

53 :デフォルトの名無しさん:03/06/29 22:08
>>51
両方空ける人がかなり多数派と見た。

54 :デフォルトの名無しさん:03/06/29 22:09
見にくいよ馬鹿!

55 :デフォルトの名無しさん:03/06/29 22:13

     ∧∧Λ
ピュ.ー ( ゜∇゜ )つ <  IDEのコードフォーマッターに任せるので
  =〔~∪ ̄ ̄〕      入力時は入れないでやってる(゜∇゜)/   「ウンマンコ」
  = ◎――◎   

56 :デフォルトの名無しさん:03/06/29 22:17
ほとんどの演算子の間に空白は入れない。
俺だけだろうが、間に空白があると読みづらく感じる。

他人のソースを読むとき、無意識のうちに勝手に空白を詰めていって
そいつに怒られた時があった。あわてて元に戻した。

57 :デフォルトの名無しさん:03/06/29 22:20
>48
スクロールしないと関数全体が見えないのは不吉な匂いがする。


58 :デフォルトの名無しさん:03/06/29 23:59
ああああ、最近は改行の位置で困ることもしばしば。
1行130カラムとか結構あったりする。

59 :デフォルトの名無しさん:03/06/30 00:00
最近は画面が広い環境も多いしな

60 :デフォルトの名無しさん:03/06/30 00:07
>>58
いまだに、きっちり79桁で改行する人もいるけどな(w

61 :デフォルトの名無しさん:03/06/30 03:31
画面は800x600だけど?

62 :デフォルトの名無しさん:03/06/30 09:18
800桁600行のディスプレイ

63 :棄教者 ◆egKIKYO7cg :03/06/30 13:40
>>62
確かに一画面に収まるけど、人間の目が集中できる範囲はそれほど広くはない。
小説十ページ分を一画面に表示させて、一発で頭の中に入りますか?

64 :デフォルトの名無しさん:03/06/30 14:16
こういうのダメでしょうか?
void Func (int x, int y); ←仮引数のカッコの前にスペース
それと
void Func( int x, int y );
どっちが読みやすい?

65 :デフォルトの名無しさん:03/06/30 14:19
括弧の内側に空白は格好悪い

66 :デフォルトの名無しさん:03/06/30 14:21
保守性が大事だYO!

67 :デフォルトの名無しさん:03/06/30 14:25
void Func(int x, int y);

68 :デフォルトの名無しさん:03/06/30 15:10
if ( 1 == x ) {.

}

というのは、個人的に嫌い。

69 :デフォルトの名無しさん:03/06/30 15:13
>>68 なにが?

70 :デフォルトの名無しさん:03/06/30 15:16
65はダジャレ

71 :デフォルトの名無しさん:03/06/30 17:08
>>65=>>70

72 :デフォルトの名無しさん:03/06/30 17:47
>>69
音読すりゃ分かる。

73 :デフォルトの名無しさん:03/06/30 18:28
>>68
コンパイラにも嫌われると思われ。

74 :デフォルトの名無しさん:03/06/30 19:24
結局1==xなんて書き方は誰からも嫌われる。

75 :デフォルトの名無しさん:03/06/30 19:56
{の後の.。

76 :デフォルトの名無しさん:03/06/30 22:46
if( a == b )
{
}


77 :デフォルトの名無しさん:03/06/30 23:05
if (a==b){



]

78 :デフォルトの名無しさん:03/06/30 23:08
#define begin {
#define end }


79 :デフォルトの名無しさん:03/06/30 23:14
if (...

ここスペースあける?MSはあけてるけど...


80 :デフォルトの名無しさん:03/06/30 23:15
>>79
あけるなあ。

81 :65:03/06/30 23:17
>>70
そんなつもりはなかったんだけど、言われてみると確かにだじゃれになっているね。

82 :デフォルトの名無しさん:03/06/30 23:28
i=1;
while( i++ < 10 );
printf("あいうえお");
これも間違いやすいが
i=1;
while( i++ < 10 )
{
}
printf("あいうえお");
これも気持ち悪い


83 :デフォルトの名無しさん:03/06/30 23:57
>>82
while(i++ < 10) { }
とかするかな。

printf("%s","あいうえお");

84 :デフォルトの名無しさん:03/07/01 00:00
>>82
while (i++ < 10) {
 ;
}
とかわざわざ書いてるかなあ。

あとそれとは別に、後置インクリメントはなるべく使わないようにしてるが。
(CならいいけどC++でiがユーザー定義型だとね・・)

85 :デフォルトの名無しさん:03/07/01 00:27
昔よく優先順位まちがえた
if (a&0x03==0x01){

if ((a&0x03)==0x01){
かと...


86 :デフォルトの名無しさん:03/07/01 00:30
>>85
あるある

87 :デフォルトの名無しさん:03/07/01 00:50
>>84
while (i++ < 10) {
 continue;
}

とか。

88 :デフォルトの名無しさん:03/07/01 00:52
なぜ俺は、
#include_<vector>
#include の後にスペース入れるのに
vectorの前後にスペース入れないのだろう?

結構スペース入れるほうなのに

89 :デフォルトの名無しさん:03/07/01 00:57
int*
みたいなことだろ

と適当に嘯いてみるお年頃

90 :デフォルトの名無しさん:03/07/01 01:15
>>88
#include_"_vector_"
とは、書かないだろ


91 :デフォルトの名無しさん:03/07/01 02:21
>>88
別物になるから。

92 :デフォルトの名無しさん:03/07/01 08:43
>>91
#include_<_vector_>

vc6でコンパイルできたよ。
そういうことじゃなくて?


93 :デフォルトの名無しさん:03/07/01 10:56
VCが勝手に空白をとっちまってるなだけだろう。むしろそっちの方が変。

$ echo '#include < vector >' > a.cc
$ g++ -c a.cc
a.cc:1:20: vector : そのようなファイルやディレクトリはありません


94 :ヽ(´ー`)ノ:03/07/01 16:22
while (i++ <10) {
  /* do nothing */
}
…かな。

#include はヘッダのファイル名だからスペースを入れるのはマズい予感。

95 :デフォルトの名無しさん:03/07/01 17:06
ところでおまいら、そんなに空ループって頻繁に書いてるんですか?

96 :ヽ(´ー`)ノ:03/07/01 17:13
基本的に書かない。
ていうか、空ループ使う時って他の書き方で、より分かりやすくできるというのが持論なんだがどうか。


97 :デフォルトの名無しさん:03/07/01 17:17
1.5ループのときくらい。

98 :デフォルトの名無しさん:03/07/01 22:39
関数/メソッド「呼び出し」だけ括弧の前にスペースなし。
func(1, 2);
なので定義はスペースあり。
void func (int a, int b) { 略 }
しかし宣言が格好つかないのがちとネック(汗
void func (int, int);

99 :デフォルトの名無しさん:03/07/01 23:34
変数名の頭に
unsigned long ulHonyarara;
とか付ける?
スコープを表したもの(m_等)は、解析時間が減るといった事例は
聞いたことあるが、型まで明示するのは利点ある?
(HDC hDcのhなどは付けるが...)


100 :デフォルトの名無しさん:03/07/01 23:35
>>99
あまりないと思うけど、なれちゃうとやってないのが
変な気になってくる。それだけ。

101 :デフォルトの名無しさん:03/07/01 23:56
>>99
メンバとかよく使うものならこうするかな、
typedef unsigned long honyarara_type;
honyarara_type honyarara;

めんどくさいときはてきとー。

型まで明示するとあとで型変えたくなったときに色々めんどくさいんでやめますた。
ハンドルとかコンテナとかポインタとかならつけることもある。

利点はごめんなさい、知りません。

102 :デフォルトの名無しさん:03/07/02 00:33
>>99
ハンガリー記法だっけ?
関数スコープならやらない。

103 :デフォルトの名無しさん:03/07/02 01:35
せいぜい
ポインタにp
グローバルにg
位かな





104 :デフォルトの名無しさん:03/07/02 02:55
m_hoge とか g_piyo はやるけど p_fuga はしないな
最近ポインタいじってないし

105 :デフォルトの名無しさん:03/07/09 07:00
オブジェクト指向がわかれば接頭詞なんてナンセンス

106 :デフォルトの名無しさん:03/07/12 10:18
分かってようが分かってなかろうが、接頭詞自体がナンセンス。


107 :思春期:03/07/14 21:32
朝から晩までチンポーネント思考です

108 :衣斡茜稲衣斡:03/07/17 15:32
衣斡茜稲衣斡

109 :デフォルトの名無しさん:03/07/22 11:58
保守性が大事だYO!

110 :デフォルトの名無しさん:03/07/23 23:43
>>105
なぜですか?

111 :デフォルトの名無しさん:03/07/30 22:00
名前空間があれば接頭詞なんてナンセンス

112 :デフォルトの名無しさん:03/07/30 22:07
接尾詞があれば接頭詞なんてナンセンス

113 :デフォルトの名無しさん:03/07/30 22:24
関数名のあとにスペースを入れるのはどうか。
(により区切られているのにさらにスペースというのは区切り文字が重複してるじゃないか。


114 :デフォルトの名無しさん:03/07/30 23:03
なにが

115 :デフォルトの名無しさん:03/07/30 23:05
つまり見た目が気に喰わないと

116 :デフォルトの名無しさん:03/07/30 23:06
>>113
貴様はこんなプログラムを書きたがるのか。

#include<stdio.h>
int main(int argc,char**argv){printf("Hello, World.");}

117 :デフォルトの名無しさん:03/07/30 23:11
中括弧を改行後に挿入するのウザいな。
if (...)
{
    ...
}
無駄に行数食ってるし。

118 :デフォルトの名無しさん:03/07/30 23:22
>>116
関数名のあとだけだろ
main ()
main()


119 :デフォルトの名無しさん:03/08/02 01:02
Cの流れ組んでる言語でも、言語ごとに中括弧の使い方
変えてる人とかいる?

//C/C++
... ...(... ...)
{
  if (...)
  {
    ...
  }
  else
  {
    ...
  }
}

//java
... ...(...) {
  if (...) {
    ...
  } else {
    ...
  }
}

みたいな感じで

120 :デフォルトの名無しさん:03/08/02 01:05
>>119
なんかいいことあるの?

121 :山崎 渉:03/08/02 02:03
(^^)

122 :デフォルトの名無しさん:03/08/02 21:53
環境が自動生成する方に合わせないと後々欝になる

123 :デフォルトの名無しさん:03/08/03 20:50
>>122
環境ってIDEのこと?

124 :デフォルトの名無しさん:03/08/04 21:13
>>119
Emacsのmajor-modeまかせ。

125 :ヽ(´ー`)ノ:03/08/05 11:11
>>119
なるべくその言語でベーシックなスタイルで書くように心掛けてるけど。

// C は k&r スタイルだけど。

126 :デフォルトの名無しさん:03/08/05 15:40
>>122
GENERATION GAP を使えば環境が自動生成するソースなど一度しかみない。

127 :山崎 渉:03/08/15 16:09
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン

24 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)