X



コメント研究すれ。
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
垢版 |
2008/03/20(木) 04:03:47
C言語でコメントを書く時とても迷うよな?

・見易さ
・書き易さ
・分かり易さ
・一貫性(統一性)
・とどけこの思い


とか、何でもいいからいい感じのコメントの書き方を考えませう。
0002デフォルトの名無しさん
垢版 |
2008/03/20(木) 04:31:32
/* 早く帰りたい */
0004デフォルトの名無しさん
垢版 |
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」 ノ| .|
// (  ,ハ    ヽ _ン   人!      | ||ヽ、       ,イ| ||イ| /
//,.ヘ,)、  )>,、 _____, ,.イ  ハ    レ ル` ー--─ ´ルレ レ´

0005デフォルトの名無しさん
垢版 |
2008/03/20(木) 06:50:35
コメントなんて不要
0007デフォルトの名無しさん
垢版 |
2008/03/20(木) 09:23:03
バグ直してもついでにコメントを直す奴はいないだろwww
コメントはほとんどウソです
書いちゃいけません
0008デフォルトの名無しさん
垢版 |
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文の前にずらずらと書いてしまうほうが好き。
00098
垢版 |
2008/03/20(木) 11:34:48
あと、漏れはJavaの業務経験はそれほどないのだが、
get, setの名前のつけ方って何がいいのかわかんない。
例えば同期データの送信を行う処理があって、送信結果が返ってくるとしたら、メソッド名はどうつける?

今のプロジェクトでは以下だが、
/* データ送信結果を取得する */
getSendResult()
getResult()

漏れ的には送信するのがメインの処理で、戻り値はおまけなのだからメソッド名は
/* XXXを送信する処理 */
sendXXXMessage()
sendXXXData()

とかにしたいわけなのさ。誰か教えてエロい人。
0010デフォルトの名無しさん
垢版 |
2008/03/20(木) 12:01:10
前者は結果をとるだけで、後者は送信も実行するんだからメソッドの内容がちがうんじゃないの?
前者は非同期かなんかで送信は別に呼び出して、その結果を知るために使うものなんじゃ。
0011デフォルトの名無しさん
垢版 |
2008/03/20(木) 12:06:53
わざわざ true と比較なんてしなくても・・・。

そもそも、エラーなら a を b に変えるということくらいは一目で分かるから
その例だとあまりコメントを書く必要性を感じないな。
書くにしても、a を b に変えることに何らかの意味があるなら、
その意味を書いた方がいい。
0012デフォルトの名無しさん
垢版 |
2008/03/20(木) 13:19:59
学生時代はmanの文書を手本にしろといわれたな
関数中の変数名やら処理の意味が見て分からないような関数は
とっととリファクタリングしちまえや、と。
0013デフォルトの名無しさん
垢版 |
2008/03/20(木) 13:40:47
単なる和訳が最低だよね。
int i; /* i を初期化しています */
i=0; /* i に 0 を入れています */
単に同じプログラムをプログラミング言語と日本語で二重に書いているだけ
0015デフォルトの名無しさん
垢版 |
2008/03/20(木) 13:45:51
>>13
自分の為の覚え書きなんだろうね

そういうの引き継いで、かつ内容が間違ってたりするともうぬるぽ
00168
垢版 |
2008/03/20(木) 14:38:02
>>10
私もそう思います。
しかし、今の会社ではどうやら「戻り値」に着目してメソッド名を決めているようだ。
(規約なんかは勿論無い!)

>>11
うっかりtrueと比較する癖が抜けてないなぁ・・・
ちなみにtrueと比較しているのは規約です。
製造業のCプログラム辺りだと
以下の記載が許されない会社の方が多いと思う。
if(bErrorFlg) or if(!bErrorFlg)

boolがintになっても対応可能だからとかいう理由だったような。
if (ERR_STATE_1 == bErrorFlg)

>>13
そういう規約がある会社もあるぞ。
必ず一行につき一行コメントを書けって言う会社。
そういう場合には仕方なく書いた覚えがある。
0017デフォルトの名無しさん
垢版 |
2008/03/20(木) 14:38:33
>>8
いまだに、if() 文中で定数を左に書いてる奴がいるんだ...
そっちにびっくりだよ。

>>13
> int i; /* i を初期化しています */

初期化してないし。(w
001918
垢版 |
2008/03/20(木) 14:45:21
と思ったけど分かった
昔の人に多そうなテクだよね
00218
垢版 |
2008/03/20(木) 14:56:34
>>18
以下の代入ができてしまうコンパイラや設定が可能らしい。(普通はエラーかワーニングがでるけどね。)
if (bErrorFlg = true) {}

左に書いてあると、確実にエラーになる。
if (true = bErrorFlg) {}

製造業だと今でも普通に使われる規約の一つだぞ。
0022デフォルトの名無しさん
垢版 |
2008/03/20(木) 15:07:14
>>16
> boolがintになっても対応可能だからとかいう理由だったような。
理由になってないと思うが・・・。
多分、そういう規約作ってる奴もよく分かってないんだと思うぜ。

>>21
そういうこと分かった上で言ってるんだと思うが。
0023デフォルトの名無しさん
垢版 |
2008/03/20(木) 15:09:01
true と比較しても危険性が増えるだけであまり意味が無い。
どうしてもというなら != false になるが、
これも二重否定で可読性に難があると思う。
0024デフォルトの名無しさん
垢版 |
2008/03/20(木) 15:11:01
bool から int に変えて、新しくフラグを追加した時にも、
true との比較ならそのままのコードで通るってことじゃないかな。
そのままのコードで放置することがいいことかどうかは知らんが、
フェイルセーフということならありかもしれない。
0026デフォルトの名無しさん
垢版 |
2008/03/20(木) 15:23:16
装飾が多いコメントは見づらい
////////////
//むほむほ//
////////////

/***********
  うはうは
************/
0027デフォルトの名無しさん
垢版 |
2008/03/20(木) 17:32:34
>>24
if (hoge() == true) ・・・

みたいなソースなのに、hoge()が、bool値を返してなかったら、カオス過ぎるだろ。
0029デフォルトの名無しさん
垢版 |
2008/03/20(木) 18:01:08
bool値のリテラルと比較してるソースってすごい素人くさいよな。
世間で評価されている書籍とか、プロダクツのソースとかで、それをやってるのはすごい少数派。
0031デフォルトの名無しさん
垢版 |
2008/03/20(木) 22:20:12
「コメントに関する無意味な話」になってないだけマ板よりマシ
そういう向きにはマ板のスレが適切
間はない
0039デフォルトの名無しさん
垢版 |
2008/07/21(月) 15:58:25
精子を出す関数がマムコに突っ込むのか?
戻り値が精子なら、セクースの実装は分離すべきだろ
副作用についての記述が分離できなくなるし、絡み合い過ぎて再入可能性が損なわれそうだ
再入可能じゃない精子を出す関数なんて大問題だろ
0040かばとっと
垢版 |
2009/06/15(月) 18:42:06
年賀状の配達は無事すんだかどうかわかりますでしょうか。
0042デフォルトの名無しさん
垢版 |
2009/06/19(金) 00:07:00
MFCのソースとか見ると、ほとんどコメントなんてついてないよな。
最先端のところでは、コメントを極力書かないのが、主流なの?
0043tor1.digineo.de
垢版 |
2009/08/17(月) 17:46:50
Q. 自動保守#K9K?_D[L とは一体何なのか?
A. 外部サイトへの突撃大好きな真性厨房

韓国突撃でお馴染みの自動保守
最近は自動焼人 ★として2ちゃんねるのボランティアにも精を出す日々
だがそんな彼にも、人間らしい部分はあったのだ…

名言集
『アパッチ砲はワシが作った』
『お前が規制系キャップ取れるか審査してやるよ』
『いつもサボってばかりのキャップがウゼえ』
『俺、100人規模の集団サイバーテロの主犯だったこともあるんだぜ』
『俺の経歴カックイイだろ?』

最近のニュース
 8月15日の韓国突撃の際に歴史的大敗を喫する。ラジオでの敗戦宣言のときに声が震えていた
 本人は体調不良と言っているが…


----------------------------------------------
この自動焼人 ★メールマガジンの配信停止をご希望される方は
http://qb5.2ch.net/test/read.cgi/sec2chd/1250169591/
にて自動焼人 ★までご連絡ください
0045デフォルトの名無しさん
垢版 |
2010/03/13(土) 19:29:54
>>44
> Kelly Leahy氏は、一目瞭然のわずかなコメントが散りばめられているようなコードが好みだ。
この訳はおかしいな。

「ごくわずかなコメントがところどころにある自己説明的なコード」が正解かと。
0046デフォルトの名無しさん
垢版 |
2011/05/29(日) 04:16:48.41
1行毎に 「/* */」使ってスペースで「*/」の位置合わせてるコメントとか個人的にかなりウザイんだが…
メンテする時も行端合わせにゃならん気がしてスペース連打、でもメンドくなって 「//」
0049 忍法帖【Lv=1,xxxP】
垢版 |
2011/05/30(月) 19:03:46.34
プロポーショナルフォントでカラムを揃える気になるか? つまりはそう言うことだ。
0051デフォルトの名無しさん
垢版 |
2011/06/04(土) 14:11:06.33
1行コメで /* */ 使う人って何考えてるの?
0054デフォルトの名無しさん
垢版 |
2011/06/06(月) 21:36:49.00

うひょおおおおおおお !!!!
明日から毎日休みだぜぇ〜!!

*/
0055デフォルトの名無しさん
垢版 |
2011/07/11(月) 20:39:10.82
C89でやってるとこまだあるの?
0057デフォルトの名無しさん
垢版 |
2011/07/16(土) 14:46:50.89
ブロックコメントで/**/使って箱型にするのやめてくれよ、マジで
0060デフォルトの名無しさん
垢版 |
2011/07/16(土) 19:04:50.28
必要な処理はすべてプログラム自体にかかれている。
だから、プログラムコードを読んでも、すぐに分からないことをコメントにしてほしい。

例えば、関数の要約とか、そのように処理をしないといけない理由や意図などといったことだ。
それがプログラムの読者が疑問を持った箇所に書かれているならば、良いコメントだ。
0061デフォルトの名無しさん
垢版 |
2011/07/17(日) 10:30:50.56
まずコメントにして、それをコードに直していく。
だから、コードを全部書き終えるとコメントがなくなる。

仕事は別。
0063デフォルトの名無しさん
垢版 |
2011/07/29(金) 10:42:08.90
カオスラウンジもpixivもしんで。
0064デフォルトの名無しさん
垢版 |
2012/02/28(火) 02:04:09.60


/********************************************************/
/* こういう箱型ブロックコメント、いい加減やめませんか?     */
/* タイプ量増えるしメンテめんどいの判りますよね?         */
/* 後でメンテする人の身にもなってください。             */
/********************************************************/




0065デフォルトの名無しさん
垢版 |
2012/02/28(火) 02:50:44.23
/*
おれは普通にこうしてるでゲソ
日本語つーか最後に\x5cがきてもおーけーゲソ
\x5cでトラブルのは怖いでゲソ
いまだにSJISで書いてるのは突っ込まないで欲しいでゲソ
*/
0066デフォルトの名無しさん
垢版 |
2012/02/28(火) 02:57:27.58
/*
120228 ageてしまったでゲソ
コメントはなるべく日付入りで書いとくべきでゲソ
何を思って書いたのか3日経つと忘れてしまうでゲソ
>>37 doxygen形式なんかはお勧めできないでゲソ
別ファイルじゃどうせ見ないしはっきりいって面倒なだけでゲソ
時間を無駄にしたなでゲソ
*/
0067デフォルトの名無しさん
垢版 |
2012/02/28(火) 03:43:14.19
Doxygen 形式を勧めない理由が判らん。
別ファイルじゃ見ないってのは判るが、ソース中に埋めているんだからいつでも見られるだろ。
0070デフォルトの名無しさん
垢版 |
2012/02/29(水) 11:56:39.37
#if 0
// 自分の中のベスト
#elif 0
// だめだこりゃ
#elif 0
// まあまあ
#else
// これが基本形
#endif

javaにはできない芸当
0071デフォルトの名無しさん
垢版 |
2012/02/29(水) 12:11:13.87
とりあえずバージョンコントロールソフトちゃんと使え。
それで残るようなやつは実行時 if で書いとけばいいよ。
そうすればちゃんとコンパイルエラーも出るしな。
0072デフォルトの名無しさん
垢版 |
2012/02/29(水) 12:29:47.88
↑ちょっといみわからない
くやしく!
0073 忍法帖【Lv=27,xxxPT】
垢版 |
2012/03/01(木) 14:21:57.72
>>72
void func()
{
if (0) {
// ここに書いておくと実行されない(最適化で消えるかも)がコンパイルは行なわれる。
SomeTestFunc();
} else if (0) {
// こういう風に幾つも書けるのも、#if と変わらない。
SomeBetaFunc();
} else {
// ここに書いてあるコードが最終版
SomeReleasedFunc();
}
}
0074デフォルトの名無しさん
垢版 |
2012/03/04(日) 18:10:38.32
コメントもコンパイルされるようにならないかな
コメントメンテされずに実装と不一致してるプロジェクトとかもうこりごり
信じることできないコメントとかどうなん
0075デフォルトの名無しさん
垢版 |
2012/03/04(日) 18:19:34.59
>>74
コンパイルしたいだけなら>73でいいが、要は不適切なコメントを排除したいのだろ。
引き数の説明の不一致なんかはある程度はDoxygenで管理していれば警告してはくれるけど、
その先は人力でやるしかないだろ。つーか、コードレビューもしないのけ?
0076デフォルトの名無しさん
垢版 |
2012/05/20(日) 11:55:08.56
if (status) { // 接続完了?

}

if文のコメントに「?」付けるな、断定的なコメントにしろ
{ }内の実行条件がどっちなのか一瞬不安になるだろ
0077デフォルトの名無しさん
垢版 |
2012/05/20(日) 12:56:33.42
俺が今までに見た最強のコメント。

a=1; //aに1を代入
0078デフォルトの名無しさん
垢版 |
2012/05/20(日) 13:05:57.02
>>77
そういうのはコメント書け書けとうるさい奴に対する嫌がらせでわざとやってるんだろう
もしそうじゃなかったら、そいつは即刻クビ/留年にすべきだ
0079 忍法帖【Lv=28,xxxPT】
垢版 |
2012/05/20(日) 13:15:25.70
>>76
if文で判定していることそのものを指すときには疑問文にすることはしばしば。例えば、
--
if (fp == NULL) { // ファイルは開けなかった?
--
こんな感じ。
>76の例は変数名が不適切だからそれを補う意味ではありではないかな。
0080デフォルトの名無しさん
垢版 |
2012/05/21(月) 16:26:15.33
>>76
怒るとこ違うんじゃないの?
俺だったらif (status)とかいう意味不明な変数名じゃなくてif (connected)とかにしろと言うな。
0081デフォルトの名無しさん
垢版 |
2012/05/21(月) 16:28:00.41
>>76
どう考えても{}内は接続完了のときの処理だろ。
{}内が接続完了出来なかったときの処理なら怒る。
0082デフォルトの名無しさん
垢版 |
2012/05/21(月) 20:59:28.19
>{}内が接続完了出来なかったときの処理なら怒る

実際あるから困るw
何かエラーが発生したら0以外のエラーコード返すようなの
0083デフォルトの名無しさん
垢版 |
2012/06/26(火) 13:59:59.23
/**//**************
コメント内容
*******************/
関数宣言

最近はこんな感じの書き方してる。
最後のスラッシュ削れば後ろに書いた関数がまとめてコメントアウト出来る
0085デフォルトの名無しさん
垢版 |
2012/06/26(火) 22:52:24.63
>/**//**************

半端な所にある // も含むの?
0087デフォルトの名無しさん
垢版 |
2012/06/29(金) 00:56:48.87
/**//*************
******************/←これを外すと
func(){ }
  ↓ここまでコメントアウトして止まる
/**//*************
0088デフォルトの名無しさん
垢版 |
2012/06/29(金) 01:04:56.31
/******************
コメント内容
*******************
関数1

/******************
コメント内容
*******************/ ← 結局ここで止まるから//無くても同じじゃね?
関数2
0090デフォルトの名無しさん
垢版 |
2012/06/29(金) 11:17:26.13
コメントが真であるためには、コメントに責任を持たせればよい。
http://nojiriko.asia/prolog/prolog_55.html
の中に現れる、資料/2という述語定義とそれを呼び出す副目標は
意味的にコメントである。
こうして置けば、コメントが書き換わっただけだと、プログラムの実行が
偽になってしまう。
0092デフォルトの名無しさん
垢版 |
2012/07/17(火) 21:58:11.02
適度に遊びを入れて______s----------z______みたいな区切りって使えないかな
やっぱ怒られる?
0093デフォルトの名無しさん
垢版 |
2012/08/05(日) 22:01:00.08
コメントには処理の目的を書いて欲しい

// 高さを取得する
じゃなくて

// カーソルの有効判定をするために高さを取得する
ってな感じ
0094デフォルトの名無しさん
垢版 |
2012/08/06(月) 17:41:36.58
>>93
それ、「カーソルの有効判定をする」メソッドにして、「高さを取得する」のコメント無しの方がいいよ。
0095デフォルトの名無しさん
垢版 |
2012/08/09(木) 19:21:44.98
// おまじない
// メイン関数
// 変数定義
// for ループ
// 代入
// プリント関数
// ゼロをリターン
0098デフォルトの名無しさん
垢版 |
2012/10/14(日) 17:22:57.65
コードで書いていることを
コメントにするな。
0100デフォルトの名無しさん
垢版 |
2012/10/14(日) 17:55:11.33
>>99
if(isXXX()) {} //比較命令です。isXXX関数を呼び出して値が真であるかチェックしています。

みたいなのはいらんよ。
コードに書いてあることなんだから。
0101101
垢版 |
2012/10/16(火) 12:58:44.71
このスレッドは100を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
0102停止
垢版 |
2012/10/16(火) 14:58:19.22
糞・スレッドストッパー。。。( ̄ー ̄)ニヤリッ
0103デフォルトの名無しさん
垢版 |
2012/10/16(火) 22:34:35.48
上から読んでも下から読んでも全く同じ回文プログラム

main(){printf("死ねハゲ");}//};)"ゲハね死"(tnirp{)(niam
0104デフォルトの名無しさん
垢版 |
2012/10/16(火) 23:56:11.71
バイト並び違うな。
0108デフォルトの名無しさん
垢版 |
2012/11/19(月) 02:21:58.00
ドキシジェンだっけ?
コメントで判定して自動でドキュメント作ってくれる奴
アレの書き方を習得してみたいが資料がよく分からん
0112デフォルトの名無しさん
垢版 |
2012/11/23(金) 05:17:16.32
引数を与えるとではなくて、末尾にピリオドを付加すれば、だ。
全角文字の扱いからSWI-Prologでは「、」「。」など、ひらがな、カタカナの
記号を含む場合は、全体をシングルクォートで囲む必要がある。
IF/Prologではその必要はない。それから本当に頭の % を削るかどうかを思案する。
0113デフォルトの名無しさん
垢版 |
2013/03/01(金) 22:28:19.61
>>64
ああwそれよく見るけどよくムカつくw
0116デフォルトの名無しさん
垢版 |
2013/05/23(木) 00:50:14.75
*/
0118デフォルトの名無しさん
垢版 |
2013/06/19(水) 22:15:18.37
コメントがどこに対してかかっているのかを明確にするために、

//コメント
if(){

}

ではなく、

if()
{ //コメント

}

と書くようにした。
前者だと、コメントアウトがごちゃごちゃしてるコードを修正するときなんかに、
if節の前の部分の処理や宣言に対するコメントなのか、if節の処理に対するコメントなのかわかりづらい。

関数宣言も

void foo()
//コメント
{

}

って書くようにしてる。
インデントをIDEがサポートしてくれないからめんどくさいけど、グローバル変数やexternや、関数外の注釈とかと
まぎらわしくなくなる。
0119デフォルトの名無しさん
垢版 |
2013/06/20(木) 01:11:47.24
>>118
んな独自手法編み出さして使わなくても、コメントは対象の前、コメントの前とコメント対象の後に
空行を置くようにすれば自然で十分。
0122デフォルトの名無しさん
垢版 |
2013/06/20(木) 03:13:59.06
ブロック開始で一行開けるのがなんとなく気持ち悪いし、
関数のブロック前に何か書くのはK&R時代みたいでもっと気持ち悪い。
こんなん好みの問題だけどなんてーかなぁ…
0123デフォルトの名無しさん
垢版 |
2013/06/21(金) 09:13:39.54
コメントを書かないことで解決

コードがすべてを説明してくれるさ( ・`ω・´)キリッ
0124デフォルトの名無しさん
垢版 |
2013/07/20(土) NY:AN:NY.AN
ノーコメント
0126デフォルトの名無しさん
垢版 |
2013/08/31(土) NY:AN:NY.AN
>>120
func1();//ここでは△□している
func2();//ここでは○×している
こういう場合だけ後付けありだと思う。
0127デフォルトの名無しさん
垢版 |
2013/09/04(水) 02:16:40.74
未来の自分へのメッセージはちょっとめんどくさいけど
過去の自分からのメッセージはちょっと嬉しい
記憶力が足りない人のささやかな楽しみそれがコメント
0128デフォルトの名無しさん
垢版 |
2013/11/24(日) 21:09:23.13
/*****************************************************/
/* コメントを箱型にするのマジでやめてぇ */
/* 一体何の利点があるのさ */
/* 誰か教えろください */
/*****************************************************/
0132デフォルトの名無しさん
垢版 |
2013/12/25(水) 22:08:22.83
コメントとは忘却という自然の摂理に対するささやかな抵抗である
ただし、そのコメントが現時点でも適切であるとは限らないが・・・
0133デフォルトの名無しさん
垢版 |
2013/12/25(水) 23:26:17.20
>>131
/*****************************************************/
/* こんな風には左寄せなら別にいいのよ。 */
/* 若干煩いけど保守するの問題ないし。 */
/*****************************************************/

/*****************************************************/
/* それをこんな風に箱型にするなって話。            */
/* コメントを書き換えるときにいちいち空白の調整するコストがバカらしい。 */
/*****************************************************/

/*
 *--------------------------------------------------------
 * こんな風に、一行ずつ閉じない方法もあり。
 *--------------------------------------------------------
 */

/********************************************************
* こんな風に、囲う方法もあり。
********************************************************/
0135デフォルトの名無しさん
垢版 |
2013/12/26(木) 00:32:48.55
>>130,133
まず間違いなく個人の不文律なので、同じソースを一人でずーっと保守し続けるという前提が
置けない限り統一が困難。がんばって統一してもルールを決めた本人以外全員が「俺のと違う」
という小さなストレスを感じ続けることになる。元の担当者が居なくなったりするともう誰もうれしくない。

右を閉じるとさらにウザさが際立つ件は >133 の言うとおり。
0136デフォルトの名無しさん
垢版 |
2013/12/26(木) 20:08:18.83
>>128
これエディタのマクロで箱型枠管理とかしてたんかね?

手作業で管理しつづけてたなら、ある意味尊敬する。
0137デフォルトの名無しさん
垢版 |
2013/12/26(木) 20:34:04.16
昔は手作業で管理するなんて本質的じゃないところに無駄に手間を掛ける奇習もあったからねぇ。
酷いプロジェクトだと、修正履歴にコメント修正なんて書いてあって該当の修正履歴No.見ると箱型の修正だったり。
0138デフォルトの名無しさん
垢版 |
2013/12/26(木) 21:32:34.84
>>137
「ソースの桁揃え」コミットよりも酷いけど「コメントを箱型に修正」コミットとかやられるよりはマシ。
0140デフォルトの名無しさん
垢版 |
2013/12/26(木) 23:15:20.71
かっこいいというか「見やすい」んだよ
原稿用紙が「見やすい」とされるのと同じ程度の理屈
そういうふうになっていないコメントは「未完成のまま放置されている」のだから、「完成させる」は立派な修正

理屈はきちんと聞いて拾いあげてあげないといかん
だから君の業務プログラマーとしての技術はいつまでたっても
0141デフォルトの名無しさん
垢版 |
2013/12/27(金) 00:50:11.31
>>140
囲みが無いとコメントが見づらいソースって、あれだろ、どんな処理にも一行ごとに
ぺたぺたコメントが入ってて、さらにひどいときにはそれが全部空行で区切られてるやつ。
説明用のサンプルソースからコピペしてきました、みたいな。

健全なソースなら適切な構造化が前提だし、コメントも前に空行一個置く程度で十分目立つ。
0142デフォルトの名無しさん
垢版 |
2013/12/27(金) 01:28:31.60
「(うわー右揃えるのかったりー・・・。)」



「(・・・誰も見てない、右の */ 消すなら今のうち!!) 」
0143デフォルトの名無しさん
垢版 |
2013/12/27(金) 08:08:42.69
>>140
>理屈はきちんと聞いて拾いあげてあげないといかん
「俺の考え方と違う!きめえ!俺のほうが正しい!」って一人でブツブツ言って延々再修正してるだけだからな
コミュ障かよ
0144デフォルトの名無しさん
垢版 |
2013/12/27(金) 14:36:55.33
フォントが等幅じゃない場合があるしなー。
一応フォントが等幅を謳っていたとしても、強調表示とかでズレるエディタもあるし。
0145デフォルトの名無しさん
垢版 |
2014/01/13(月) 12:20:07.15
コメントはソースの意味を少しだけ忘れた頃に書くのがよい。なにやってんだこいつという第三者の視点で書ける。
そうやっていくうちに第三者の視点(客観性)が身につく
0147デフォルトの名無しさん
垢版 |
2014/03/29(土) 22:27:22.36ID:O7zmQDM8
それ、コメント書きながら忘れるじゃん
0148デフォルトの名無しさん
垢版 |
2014/03/29(土) 23:22:25.32ID:g8cGz2kJ

"<th valign=\"top\">sendmailのパス</th><td><strong>[ NG ]</strong>たぶん
<input value=\"${sendmails[$cnt]}\" /> です。たぶんね。たぶんだから。
サーバ指定であればそれが正解です。和田の言うことはどうせ当てになりませんから。
すいませんねほんと。</td>";


push @result,"<th valign=\"top\">sendmailのパス</th><td><strong>[ NG ]</strong>
ごめん・・・。和田も頑張ったんだけどさ・・・。そう人生うまくいくもんじゃないよね・・・。
探したよ!必死に!交差点でも 夢の中でも こんなとこにいるはずもないのに・・・。
ということで、ホントごめん・・・。サーバ会社の人に聞いてみてください・・・。
生まれてきてごめんなさい・・・。</td>";
}
◆出典
//www.synck.com/contents/download/cgi-perl/mailformpro.html#spec
mailformpro4.1.2/mailformpro/librarys/check/main.cgi
0149デフォルトの名無しさん
垢版 |
2014/03/29(土) 23:33:20.00ID:g8cGz2kJ
# Comments:
# i read an interesting article many years ago about the effects of
  drugs on spiders in National Geographic Magazine. %0A
  it showed webs woven by spiders ""under the influence.""
  spiders high on marijuana wove bad webs;
  spiders on LSD wove exceptionally geometrical webs.%0
  Aanyone know how i can locate the date of and
  issue this appeared in?%0A %0Amany thanks in advance to someone
  who has walked at least a mile in my shoes.
0150デフォルトの名無しさん
垢版 |
2014/03/30(日) 00:16:27.97ID:xqnXYtS3
何年か前に興味深い本を読んだんだ。
ドラッグが蜘蛛に及ぼす影響ってやつをナショナルジェオグラフィックマガジンで。

それには蜘蛛が”ラリった”状態でどんなふうに巣を張るのかが書いてあったんだ。
大麻でラリった蜘蛛は最悪な巣だった。
LSDでラリった蜘蛛はとても幾何学的な巣を作っていた。
だれか予言できるか?このプログラムが問題を起こす日付けを。
あ そうそう こんな長いこと素足で長く歩かせてくれただれかさんに有難うって
言っとかなくちゃあなぁ。


◆出典
//search.cpan.org/~softdia/Tie-Eudora-0.01/lib/Tie/Eudora.pm
0151デフォルトの名無しさん
垢版 |
2014/03/31(月) 05:23:20.27ID:PC1c/NH/
どうすればコメントのないコードを書くことができるか、というようなテーマの本は
結構出ているものだろうか。
0152デフォルトの名無しさん
垢版 |
2014/04/08(火) 01:36:05.04ID:TpYZqEoH
>>151
アセンブリからさらにわかりやすくした高水準言語は
十分に人間が読めるのでコメントなどいらないという思想だな。高水準言語至上主義。
アスペはコード読むよりコメント読むほうが苦痛だというがほんとかねw
まあいくらプログラミング言語の表現力がましても
やはり一般人には自然言語のほうがわかりやすいと思うわ

英語をベースにしたコメント言語を作るとかは?
0153デフォルトの名無しさん
垢版 |
2014/04/08(火) 10:36:53.78ID:rN+IbzRR
>>152
読み手がどうとかいうよりさきにコメンドの内容によるだろ
無意味だったり間違ってたり関係無かったりするコメント読むよりはコード読むほうが楽だろJK
0154デフォルトの名無しさん
垢版 |
2014/11/09(日) 04:12:05.56ID:iOEsToOb
ソースコードのところどころに無関係なコメントを忍ばせるのが俺流。
// 今日は帰りに焼きそばを買って帰る
とか書いてる。
0155デフォルトの名無しさん
垢版 |
2014/11/09(日) 06:53:10.50ID:Bdrra8Lt
コメントは見出しみたいな物だ。何をしてるのか1行で自然言語で書かれていればソースコードのみより
明らかに読みやすい。
0156デフォルトの名無しさん
垢版 |
2014/11/09(日) 09:44:07.78ID:TEISzKKu
>>155
実際それが目的なんだけどな
コピペが放置されてたり、そもそもコメントが無かったりで
「毎行コメント書くべし」なんてルールが出来て、
こんなコメントが量産される訳だ

i++; //ループカウンタをインクリメント
0157デフォルトの名無しさん
垢版 |
2014/11/09(日) 09:50:25.62ID:mRPDV88W
某でかいとこの案件で、毎行コメント書けって言われて
無能しかいねーんだなと思ったな。
0158デフォルトの名無しさん
垢版 |
2014/11/09(日) 10:02:14.16ID:TEISzKKu
まあ、デカいとこになるとさ、エンジニアではない有象無象のオペレータ向けの
ルールにせざるを得なくなるから仕方ないのかな〜とは思うけど、
やっかいなのはこういうデカイとこ特有のくだらないルールを見て
何でも右習えでドヤ顔で小規模チームにも適用したがるアホなマネージャ連中だ

出来る人向けのルールとしては、GoogleのC++のが結構参考になる、かな?
あそこは例外禁止だけど
0159デフォルトの名無しさん
垢版 |
2014/11/09(日) 10:05:41.82ID:TEISzKKu
以前に毎行コメント書けなんて言うデカいところのコードレビューで、
「構造体は代入出来ないからmemcpyで書き直せ」なんて言われちったよ

レビュアーがこういうレベルだから変なルールを作らないといけないのか
変なルールで固めて考えさせないから、こういうレベルに育ってしまうのかね…
0160デフォルトの名無しさん
垢版 |
2014/11/24(月) 01:07:35.04ID:dmz2ZyPe
/* テスト */
0161デフォルトの名無しさん
垢版 |
2015/02/28(土) 08:46:56.17ID:lNsAK58t
エレメンタル プログラミングのすゝめ
ttp://takeshik.org/blog/2015/02/28/elemental-programming/
0162デフォルトの名無しさん
垢版 |
2015/03/28(土) 18:43:37.83ID:6s5Th0th
>>161
けっこう面白い
0163デフォルトの名無しさん
垢版 |
2015/09/25(金) 08:17:05.49ID:45PIwXEk
>>156
何のカウンタなんだよw
0165デフォルトの名無しさん
垢版 |
2016/10/08(土) 08:50:39.94ID:+vtWpikF
コメントって難しい
0166デフォルトの名無しさん
垢版 |
2016/10/10(月) 14:22:13.01ID:sI6yVEde
>>164 コードをそのまま言葉にしただけのコメントは可読性を下げるだけだな。
激しく同意する。

コメントは概要を知らせるもの。詳細についてはソースを見ればよい。ソース全部を見
渡す前に迅速に そのコードの概要を知らしめるコメントであるべき。
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況