- - PR -
if文のコメントを、どのようにつけますか?
1|2|3
次のページへ»
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2004-04-29 10:45
参照元記事で、ifブロックがでていたので興味をおこし、スレッドをたてました。
「ifブロックに、どのようにコメントをつけますか?」 私は、このような書き方をします。 // ifブロックで何をするか if (〜) { // 判定式が真(または偽)になるのは、何を表しているか // その時の処理内容 ・・・手順・・・ } else { // 判定式が偽(または真)になるのは、何を表しているか // その時の処理内容 ・・・手順・・・ } // ユーザの権限によるメニューのon/off if (ユーザは管理者である) { // 管理者権限を持っている // 管理用のメニューをonにする 管理メニュー = true; } else { // 管理権限を持っていない // 管理用のメニューをoffのする 管理メニュー = false; } | ||||||||
|
投稿日時: 2004-04-29 10:52
定型処理ならば 私はあまりつけないです。そのかわり
分岐条件の定数を文字列にしたりします if (FALG = INSERT) then XXX if (FALG = DELETE) then XXX 定型処理以外なら 判定式が真(または偽)のとき何をするのかコメントを書きます ただし 判りやすい明示的なクラスなりプロシージャーを使用する場合は書かないです。 | ||||||||
|
投稿日時: 2004-04-29 11:11
NAL-6295です。
例示されているような場合は、コメントしないですね。
って感じにします。 基本的には、名称を端折らない事で、コメントがなくても読めるようにしています。 トリッキーな仕様で、コメントが無いとわからない場合だったりした時は、
とします。が、ほとんど無いです。 | ||||||||
|
投稿日時: 2004-04-29 13:04
私もそういう場合だと書きません。
関数の戻り値をチェックするときによくifを使いますが if((ret = function()) == -1){ syslog(); exit(1); } みたいな場合、なぜ終了すべきなのか、という理由をif節の前に コメントしておく、なんてことはあります。 | ||||||||
|
投稿日時: 2004-04-29 13:13
なるほど〜〜
そういえば私が先のようなコメントを入れるのは、コメントから書くから、というところもありますね。 // ユーザの権限によるメニューのon/off // 管理者権限を持っている // 管理用のメニューをonにする // 管理権限を持っていない // 管理用のメニューをoffのする // ユーザの権限によるメニューのon/off if (true) { // 管理者権限を持っている // 管理用のメニューをonにする } else { // 管理権限を持っていない // 管理用のメニューをoffのする } どちらかを先に書いておいて、後から内容を書く、と。やはり「コメントを抜き出してドキュメントにする」ようなことをしていたからかもしれない | ||||||||
|
投稿日時: 2004-04-29 13:16
unibon です。こんにちわ。
私は、条件判断(判定式)の説明のためのコメントと、その条件のときの処理の説明のコメントはできるだけ分けるようにしています。これは互いの説明がゴッチャにならないようにするためですが、こうすると良い副作用として、else の条件のコメントが要らなくなります。 すなわちこんな感じ。 // ifブロックで何をするか if (〜) { // 判定式が真になるのは、何を表しているか // その時の処理内容 ・・・手順・・・ } else { // その時の処理内容 ・・・手順・・・ } #あとで、コメントの字を少し修正。 [ メッセージ編集済み 編集者: unibon 編集日時 2004-04-29 13:18 ] | ||||||||
|
投稿日時: 2004-04-29 14:26
こんにちは〜。
私の場合は、Jitta さんの一番最初の例ですと、 //--- ユーザ権限チェック → 管理メニューのon/off if (ユーザは管理者である) { : にしています。 もうちょっと込み入ってくると、 //--- ユーザ権限チェック if (ユーザは管理者である) { //--- 管理者権限 → 管理メニューのon : //--- ○○を××にセットし、△△ : : }else { //--- 管理者権限以外 → 管理メニューのoff : } のようなカンジでしょうか。 基本的に、細かく(処理のポイント毎に)入れるようにしていますが、「〜をする」 という処理ブロック内で、それ以上の説明がいらない場合は、if 文にコメントを付けないこともあります。 | ||||||||
|
投稿日時: 2004-04-29 17:21
こんにちは.
pascalと申します. このコメントでデビューしました. 私は、コメントを出来るだけ書かないようにしています. 代わりに、 if ( isAdministrator ) { canUseThisMenu } else { cannotUseThisMenu } のようにする場合がほとんどです. NAL-6295さんと似たような(同じ?)感じです. 少なくとも「条件が真なら何をするか」的なことは書きません. それはソースコードを読めば分かるからで、 読んでも分からないのなら、コーディングそのものがおかしいということ です. 仮に、そのようなコメントを書くと、後で仕様が変わった場合、 ソースコードとコメントの両方を変更しなければならなくなる、 というのも問題です. コメントの変更を忘れてしまうと、後で他の人(或いは自分)が読んだ時に、 かえって困ってしまいます. 但し、自分がサンプルコードを書いて、他の人に 詳細を埋めてもらうようなときは、穴埋め問題的に入れることはあります. _________________ [ メッセージ編集済み 編集者: pascal 編集日時 2004-04-29 17:23 ] |
1|2|3
次のページへ»