C言語でコメントを書く時とても迷うよな?
・見易さ
・書き易さ
・分かり易さ
・一貫性(統一性)
・とどけこの思い
とか、何でもいいからいい感じのコメントの書き方を考えませう。
コメント研究すれ。
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2008/03/20(木) 04:03:472デフォルトの名無しさん
2008/03/20(木) 04:31:32 /* 早く帰りたい */
2008/03/20(木) 05:04:05
2008/03/20(木) 05:13:48
// _,,....,,_ _人人人人人人人人人人人人人人人_
//-''":::::::::::::`''> ゆっくりしていってね!!! <
//ヽ::::::::::::::::::::: ̄^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^ ̄
// |::::::;ノ´ ̄\:::::::::::\_,. -‐ァ __ _____ ______
// |::::ノ ヽ、ヽr-r'"´ (.__ ,´ _,, '-´ ̄ ̄`-ゝ 、_ イ、
//_,.!イ_ _,.ヘーァ'二ハ二ヽ、へ,_7 'r ´ ヽ、ン、
//::::::rー''7コ-‐'"´ ; ', `ヽ/`7 ,'==─- -─==', i
//r-'ァ'"´/ /! ハ ハ ! iヾ_ノ i イ iゝ、イ人レ/_ルヽイ i |
//!イ´ ,' | /__,.!/ V 、!__ハ ,' ,ゝ レリイi (ヒ_] ヒ_ン ).| .|、i .||
//`! !/レi' (ヒ_] ヒ_ン レ'i ノ !Y!"" ,___, "" 「 !ノ i |
//,' ノ !'" ,___, "' i .レ' L.',. ヽ _ン L」 ノ| .|
// ( ,ハ ヽ _ン 人! | ||ヽ、 ,イ| ||イ| /
//,.ヘ,)、 )>,、 _____, ,.イ ハ レ ル` ー--─ ´ルレ レ´
//-''":::::::::::::`''> ゆっくりしていってね!!! <
//ヽ::::::::::::::::::::: ̄^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^ ̄
// |::::::;ノ´ ̄\:::::::::::\_,. -‐ァ __ _____ ______
// |::::ノ ヽ、ヽr-r'"´ (.__ ,´ _,, '-´ ̄ ̄`-ゝ 、_ イ、
//_,.!イ_ _,.ヘーァ'二ハ二ヽ、へ,_7 'r ´ ヽ、ン、
//::::::rー''7コ-‐'"´ ; ', `ヽ/`7 ,'==─- -─==', i
//r-'ァ'"´/ /! ハ ハ ! iヾ_ノ i イ iゝ、イ人レ/_ルヽイ i |
//!イ´ ,' | /__,.!/ V 、!__ハ ,' ,ゝ レリイi (ヒ_] ヒ_ン ).| .|、i .||
//`! !/レi' (ヒ_] ヒ_ン レ'i ノ !Y!"" ,___, "" 「 !ノ i |
//,' ノ !'" ,___, "' i .レ' L.',. ヽ _ン L」 ノ| .|
// ( ,ハ ヽ _ン 人! | ||ヽ、 ,イ| ||イ| /
//,.ヘ,)、 )>,、 _____, ,.イ ハ レ ル` ー--─ ´ルレ レ´
5デフォルトの名無しさん
2008/03/20(木) 06:50:35 コメントなんて不要
2008/03/20(木) 07:14:12
javadocで書いてるトコ多いんじゃないの?
2008/03/20(木) 09:23:03
バグ直してもついでにコメントを直す奴はいないだろwww
コメントはほとんどウソです
書いちゃいけません
コメントはほとんどウソです
書いちゃいけません
8デフォルトの名無しさん
2008/03/20(木) 11:12:49 そういえば本屋でネーミングについての本が売ってた。
ネーミングの掟と極意
http://www.amazon.co.jp/o/ASIN/4798114332/503-8563893-6507141?SubscriptionId=1CVA98NEF1G753PFESR2
わざわざ本を買うほどのことでもないとは思うけど、俺みたいに年中違う会社に行っている下請け屋からすると
変数名、コメントのつけ方に規定がない会社で、コメントや変数名にレビュー指摘を受けると殺意を覚えるな。
例えば
@ /* bErrorFlgがtrueならば */
A /* 例外フラグが立っているならば */
B /* 例外ならばaをbに変更する処理 */
C /* bErrorFlgがtrueならば中に入る */
if (true == bErrorFlg) {a = b;}
たったこれだけの処理でも会社ごとに@ABC+αパターンの書き方がある。
自分的にはBが好きで処理概要をif文の前にずらずらと書いてしまうほうが好き。
ネーミングの掟と極意
http://www.amazon.co.jp/o/ASIN/4798114332/503-8563893-6507141?SubscriptionId=1CVA98NEF1G753PFESR2
わざわざ本を買うほどのことでもないとは思うけど、俺みたいに年中違う会社に行っている下請け屋からすると
変数名、コメントのつけ方に規定がない会社で、コメントや変数名にレビュー指摘を受けると殺意を覚えるな。
例えば
@ /* bErrorFlgがtrueならば */
A /* 例外フラグが立っているならば */
B /* 例外ならばaをbに変更する処理 */
C /* bErrorFlgがtrueならば中に入る */
if (true == bErrorFlg) {a = b;}
たったこれだけの処理でも会社ごとに@ABC+αパターンの書き方がある。
自分的にはBが好きで処理概要をif文の前にずらずらと書いてしまうほうが好き。
98
2008/03/20(木) 11:34:48 あと、漏れはJavaの業務経験はそれほどないのだが、
get, setの名前のつけ方って何がいいのかわかんない。
例えば同期データの送信を行う処理があって、送信結果が返ってくるとしたら、メソッド名はどうつける?
今のプロジェクトでは以下だが、
/* データ送信結果を取得する */
getSendResult()
getResult()
漏れ的には送信するのがメインの処理で、戻り値はおまけなのだからメソッド名は
/* XXXを送信する処理 */
sendXXXMessage()
sendXXXData()
とかにしたいわけなのさ。誰か教えてエロい人。
get, setの名前のつけ方って何がいいのかわかんない。
例えば同期データの送信を行う処理があって、送信結果が返ってくるとしたら、メソッド名はどうつける?
今のプロジェクトでは以下だが、
/* データ送信結果を取得する */
getSendResult()
getResult()
漏れ的には送信するのがメインの処理で、戻り値はおまけなのだからメソッド名は
/* XXXを送信する処理 */
sendXXXMessage()
sendXXXData()
とかにしたいわけなのさ。誰か教えてエロい人。
2008/03/20(木) 12:01:10
前者は結果をとるだけで、後者は送信も実行するんだからメソッドの内容がちがうんじゃないの?
前者は非同期かなんかで送信は別に呼び出して、その結果を知るために使うものなんじゃ。
前者は非同期かなんかで送信は別に呼び出して、その結果を知るために使うものなんじゃ。
2008/03/20(木) 12:06:53
わざわざ true と比較なんてしなくても・・・。
そもそも、エラーなら a を b に変えるということくらいは一目で分かるから
その例だとあまりコメントを書く必要性を感じないな。
書くにしても、a を b に変えることに何らかの意味があるなら、
その意味を書いた方がいい。
そもそも、エラーなら a を b に変えるということくらいは一目で分かるから
その例だとあまりコメントを書く必要性を感じないな。
書くにしても、a を b に変えることに何らかの意味があるなら、
その意味を書いた方がいい。
2008/03/20(木) 13:19:59
学生時代はmanの文書を手本にしろといわれたな
関数中の変数名やら処理の意味が見て分からないような関数は
とっととリファクタリングしちまえや、と。
関数中の変数名やら処理の意味が見て分からないような関数は
とっととリファクタリングしちまえや、と。
2008/03/20(木) 13:40:47
単なる和訳が最低だよね。
int i; /* i を初期化しています */
i=0; /* i に 0 を入れています */
単に同じプログラムをプログラミング言語と日本語で二重に書いているだけ
int i; /* i を初期化しています */
i=0; /* i に 0 を入れています */
単に同じプログラムをプログラミング言語と日本語で二重に書いているだけ
2008/03/20(木) 13:43:08
なんでひまわり導入しないんだろうな
2008/03/20(木) 13:45:51
168
2008/03/20(木) 14:38:02 >>10
私もそう思います。
しかし、今の会社ではどうやら「戻り値」に着目してメソッド名を決めているようだ。
(規約なんかは勿論無い!)
>>11
うっかりtrueと比較する癖が抜けてないなぁ・・・
ちなみにtrueと比較しているのは規約です。
製造業のCプログラム辺りだと
以下の記載が許されない会社の方が多いと思う。
if(bErrorFlg) or if(!bErrorFlg)
boolがintになっても対応可能だからとかいう理由だったような。
if (ERR_STATE_1 == bErrorFlg)
>>13
そういう規約がある会社もあるぞ。
必ず一行につき一行コメントを書けって言う会社。
そういう場合には仕方なく書いた覚えがある。
私もそう思います。
しかし、今の会社ではどうやら「戻り値」に着目してメソッド名を決めているようだ。
(規約なんかは勿論無い!)
>>11
うっかりtrueと比較する癖が抜けてないなぁ・・・
ちなみにtrueと比較しているのは規約です。
製造業のCプログラム辺りだと
以下の記載が許されない会社の方が多いと思う。
if(bErrorFlg) or if(!bErrorFlg)
boolがintになっても対応可能だからとかいう理由だったような。
if (ERR_STATE_1 == bErrorFlg)
>>13
そういう規約がある会社もあるぞ。
必ず一行につき一行コメントを書けって言う会社。
そういう場合には仕方なく書いた覚えがある。
2008/03/20(木) 14:38:33
2008/03/20(木) 14:40:08
1918
2008/03/20(木) 14:45:21 と思ったけど分かった
昔の人に多そうなテクだよね
昔の人に多そうなテクだよね
2008/03/20(木) 14:51:21
>>16
だったらtrueと比較するのではなくfalse (0)と比較するほうがいい。
だったらtrueと比較するのではなくfalse (0)と比較するほうがいい。
218
2008/03/20(木) 14:56:34 >>18
以下の代入ができてしまうコンパイラや設定が可能らしい。(普通はエラーかワーニングがでるけどね。)
if (bErrorFlg = true) {}
左に書いてあると、確実にエラーになる。
if (true = bErrorFlg) {}
製造業だと今でも普通に使われる規約の一つだぞ。
以下の代入ができてしまうコンパイラや設定が可能らしい。(普通はエラーかワーニングがでるけどね。)
if (bErrorFlg = true) {}
左に書いてあると、確実にエラーになる。
if (true = bErrorFlg) {}
製造業だと今でも普通に使われる規約の一つだぞ。
2008/03/20(木) 15:07:14
2008/03/20(木) 15:09:01
true と比較しても危険性が増えるだけであまり意味が無い。
どうしてもというなら != false になるが、
これも二重否定で可読性に難があると思う。
どうしてもというなら != false になるが、
これも二重否定で可読性に難があると思う。
2008/03/20(木) 15:11:01
bool から int に変えて、新しくフラグを追加した時にも、
true との比較ならそのままのコードで通るってことじゃないかな。
そのままのコードで放置することがいいことかどうかは知らんが、
フェイルセーフということならありかもしれない。
true との比較ならそのままのコードで通るってことじゃないかな。
そのままのコードで放置することがいいことかどうかは知らんが、
フェイルセーフということならありかもしれない。
2008/03/20(木) 15:20:23
むかし「偽以外は全て真の可能性があると心得よ」
とか教わった
とか教わった
2008/03/20(木) 15:23:16
装飾が多いコメントは見づらい
////////////
//むほむほ//
////////////
/***********
うはうは
************/
////////////
//むほむほ//
////////////
/***********
うはうは
************/
2008/03/20(木) 17:32:34
2008/03/20(木) 17:36:22
変更はするが、変更洩れがあっても動く、ってことだな。
2008/03/20(木) 18:01:08
bool値のリテラルと比較してるソースってすごい素人くさいよな。
世間で評価されている書籍とか、プロダクツのソースとかで、それをやってるのはすごい少数派。
世間で評価されている書籍とか、プロダクツのソースとかで、それをやってるのはすごい少数派。
2008/03/20(木) 22:12:46
スレチの話題で盛り上がってる券
2008/03/20(木) 22:20:12
「コメントに関する無意味な話」になってないだけマ板よりマシ
そういう向きにはマ板のスレが適切
間はない
そういう向きにはマ板のスレが適切
間はない
2008/03/21(金) 15:28:06
/* test code */
条件コンパイル使えって話もw
条件コンパイル使えって話もw
2008/03/24(月) 10:37:21
突っ込みどころを探すスレはここですか?
2008/03/24(月) 21:04:58
関数の説明書きって皆どうやって書いてる?
2008/03/24(月) 21:20:42
規約があればそれに従う。
そうでなければ関数と引数と戻り値の説明を書く。
そうでなければ関数と引数と戻り値の説明を書く。
2008/03/24(月) 21:25:41
それをどう書くか聞いたつもりなんだけど・・・。
2008/03/24(月) 21:27:44
cだとdoxygenizeのjavadocスタイル
javaだとry
javaだとry
2008/07/21(月) 00:29:43
2008/07/21(月) 15:58:25
精子を出す関数がマムコに突っ込むのか?
戻り値が精子なら、セクースの実装は分離すべきだろ
副作用についての記述が分離できなくなるし、絡み合い過ぎて再入可能性が損なわれそうだ
再入可能じゃない精子を出す関数なんて大問題だろ
戻り値が精子なら、セクースの実装は分離すべきだろ
副作用についての記述が分離できなくなるし、絡み合い過ぎて再入可能性が損なわれそうだ
再入可能じゃない精子を出す関数なんて大問題だろ
■ このスレッドは過去ログ倉庫に格納されています
