[表示 : 全て 最新50 1-99 101- 201- 301- 401- 2chのread.cgiへ]
Update time : 05/10 01:29 / Filesize : 102 KB / Number-of Response : 454
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

コーディング規約 第3条



1 名前:デフォルトの名無しさん mailto:sage [2007/02/04(日) 23:28:42 ]
カッコの位置や変数名のつけ方から、何で規約なんて決めるのという話まで
コーディング規約・スタイルに関するスレ

前スレ

コーディング規約 第2条
pc10.2ch.net/test/read.cgi/tech/1068752664/

271 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 03:03:06 ]
>>270
発端は、templateのタイプ名が外部の通常のクラス名と衝突してしまったため、
冗長にせざるを得ない場面があったからです。
ならばメンバ変数に習い、「末尾にアンダーバー」イコール「スコープ限定」にしてしまえば、
衝突も避けられるし、読む時にも迷子になり難いのではないかな・・・と。

272 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 03:44:57 ]
>>271
そんな局所的な理由で規約になるわけないんじゃないの?

273 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 04:41:14 ]
後ろにアンダーバーなんて始めて見たな。
前ならそうしてる人結構いるよ。

274 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 04:59:49 ]
前につけるとすぐ予約名になるまたは予約名とまぎらわしいから、やめといたほうがいい。

275 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 07:12:05 ]
>>271
つまりボキャブラリが貧弱なのを _ でごまかそうということですね
英語の辞書を買ったらどうでしょう

冗長といっても、いくら長くてもいいと思う
あとで別の人間が解析するときに、
grepをかけたら似た様なのがゾロゾロって
猛烈に格好悪い

276 名前:227 [2007/12/15(土) 07:45:38 ]
>>274
これっていつから言われてるの?
昔は_ 前だったのに・・・

>>271
それってローカル側優先で処理されるよね?
TXxxx
とかにするってのもどうかね

277 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 09:53:59 ]
>>276
> これっていつから言われてるの?

「言われてる」ってのが何のことかわからないけど、予約名の規定自体は
知ってる範囲では ISO C++98, C99 とかで決められてる。たぶんそれより前の
C89 からそんなに変わってないと思うから、少なくとも 10 年以上前から使っちゃ
マズイってことにはなってたはず。

278 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 10:26:40 ]
>>276
MS-DOS の初期のころから内部の実装で使われていた気がする

279 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 11:02:48 ]
>>273
オレは何度も見たことあるよ。



280 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 12:33:25 ]
>>279
確かに、C の関数の場合は後ろに _ をつけると()と離れて絵的に悪くないかも知れないけど

いまひとつ _ を前後に使う意味がわからないな
_ があることでなにかを示すようには見えないな
もっと、適切な方法があるならそれを選んだほうがいいように思う
見てわかるような名称にするように文になっていたっていいと思う

昔の関数名なんか変なのあるよな
creat() なんて何を考えてるんだかw
'e' 一文字を省く理由がわからない


281 名前:227 mailto:sage [2007/12/15(土) 12:39:05 ]
>>277-278
ごめ。
_ は前に普通に付ける時代があったんだけど(本とかで載っていた)
最近後ろに付ける勢力が急拡大している感じ。
いつからだろうと。

282 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 12:49:04 ]
>>281
前につけることの問題を知らずに本を書いちゃうようなアホが淘汰されたんだろう。
いつからってこともないと思うぜ。

283 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 12:57:38 ]
>271
利点、欠点を考えて判断すりゃいいんじゃない?

利点:ローカルスコープの関数・変数が一目でわかる
欠点:メンバー変数とメンバー関数のバッティングが発生する可能性がある(C++の場合)
   -->別の命名規則で回避する必要あり
ぐらいかね?

ローカルスコープなんだし好きにすれば?という気もするけど。

284 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 13:28:58 ]
>>282
_ 前に付けて問題になったことなど一度たりともないけどな。
メンバ変数なんてローカルだし。
__descspecとかのキーワードなんて __ だしな

285 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 13:56:19 ]
>>280
creat()については名付け親がそうつけてしまったことを深く恥じているのだから、
もうそっとしておいてあげたらどうだw

286 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 15:40:04 ]
釣りか本気か微妙な流れだw


287 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 23:55:12 ]
>>284
__declspecはむしろ正しい使い方。
処理系予約の識別子なのだから。

288 名前:デフォルトの名無しさん mailto:sage [2007/12/16(日) 00:04:35 ]
>>287

いや、その通りだけど、>>284の趣旨は、「そういうのは"__"だから、"_"を前につけても問題が起こったことはない」でしょ。

289 名前:デフォルトの名無しさん mailto:sage [2007/12/16(日) 01:34:46 ]
ナイシフォロー



290 名前:デフォルトの名無しさん mailto:sage [2007/12/16(日) 01:42:20 ]
>>280
歴史的なもの
識別子に5文字しか使えなかったシステムで付けられた名前を引きずってるだけ

291 名前:デフォルトの名無しさん mailto:sage [2007/12/16(日) 02:50:52 ]
>>284
一度もないのは分かるけど、
規格で「予約」と明記されているものをあえて使う理由が分からん。
ローカル名については「マナー」程度なのかな?
他の言語だと「予約」だったりするんだろうか。

292 名前:デフォルトの名無しさん mailto:sage [2007/12/16(日) 07:00:04 ]
2重の__ は予約かも知れないが、
グローバルの_ はstdio.hとかのライブラリと被るので
~~~~~~~~~~~~~~~
注意ってことじゃなかったかって気がするんだが。
手元に資料がないから確認は取ってないが

293 名前:デフォルトの名無しさん mailto:sage [2007/12/16(日) 07:04:09 ]
あ、一つ思い出した。
そういやBUFSIZ ってシンボル使えないよなw

294 名前:デフォルトの名無しさん mailto:sage [2007/12/16(日) 11:04:04 ]
>>292
どっちも「予約」だよ。識別子の利用範囲が違うだけ。区別するのがメンドイから
自分とこで作るルールに書くときは一括でダメってことにするのが簡単。

295 名前:デフォルトの名無しさん mailto:sage [2007/12/16(日) 11:26:03 ]
ttp://www.alles.or.jp/~torutk/oojava/codingStandard/writingrobustjavacode_pid86_c3.html#doc1_662
ちょっと見つけた

296 名前:デフォルトの名無しさん mailto:sage [2007/12/16(日) 13:52:19 ]
>>295
うーーー。意味わかんない;
ごめんオレ馬鹿すぎ。エロイ人教えて。

297 名前:296 mailto:sage [2007/12/16(日) 13:58:19 ]
あ、泣くほど読んだらわかった;


298 名前:デフォルトの名無しさん mailto:sage [2007/12/16(日) 13:59:11 ]
>>296
>281-282 にある

> _ は前に普通に付ける時代があった
> 前につけることの問題を知らずに本を書いちゃうようなアホ

の例じゃね?

299 名前:デフォルトの名無しさん mailto:sage [2007/12/16(日) 15:05:06 ]
まぁ明日ARMでも読んでみるわ。
メンバ変数名は、
グローバルなネームスペースを汚してるわけじゃないしね



300 名前:デフォルトの名無しさん mailto:sage [2007/12/17(月) 02:42:38 ]
っ >168

301 名前:デフォルトの名無しさん mailto:sage [2007/12/17(月) 02:50:17 ]
なぜ予約語とぶつかる可能性のあることをしようとするのか
いまひとつわからない
たしかに、かっこいいかもしれないけど
_や__が予約語に多いのだから、他人が見たら、
これらは予約語としてみられる可能性があるということでしょ?

できるだけ、必然的であるべきだと思うのだけど
でないと後で見てわからない気がするんだけどな
名称を考えるのがめんどくさいだけに思えるのは、オレが世間知らずだから?

302 名前:デフォルトの名無しさん mailto:sage [2007/12/17(月) 02:54:48 ]
C/C++ の入門書や入門サイトがそういうインクルードガードを書いてたり。
そういうのを見て覚えた奴が自己弁護のために抵抗してるだけ。目的なんか無い。

303 名前:デフォルトの名無しさん mailto:sage [2007/12/17(月) 08:01:37 ]
_で始まる予約語に何があるか言ってみろよ

304 名前:デフォルトの名無しさん mailto:sage [2007/12/17(月) 08:05:56 ]
>>300
やっぱ答え出てるじゃないか。
メンバ変数はグローバルじゃねえ。

関数名とグローバル変数に問題があるだけだろうな

305 名前:デフォルトの名無しさん mailto:sage [2007/12/17(月) 11:48:40 ]
>>301,303 予約語じゃなくて、予約識別子ね。

306 名前:デフォルトの名無しさん mailto:sage [2007/12/17(月) 15:58:27 ]
>>303
_STDLIB_H_

307 名前:デフォルトの名無しさん mailto:sage [2007/12/18(火) 00:11:07 ]
>>305
それならわかるわ

検索してみたら、いいページ掛かったわ

308 名前:デフォルトの名無しさん mailto:sage [2007/12/18(火) 06:32:30 ]
結局 _ をつけたがるのは
自分の作ったのを予約語扱いしてもらいたい 「格好つけしー」 か
考えるのが面倒で、 _ でもつけとけの 「横着者」 のどっちか
でいいの?


309 名前:デフォルトの名無しさん mailto:sage [2007/12/18(火) 08:17:39 ]
>>308
_ のあとの小文字は問題ねーってよ



310 名前:デフォルトの名無しさん mailto:sage [2007/12/18(火) 08:33:41 ]
>>309
昔のDOS系、MSのLIBなんかは _ の関数だらけ
これを予約語といえるかわからんが
それと同列のものにしたいということだろ?

311 名前:デフォルトの名無しさん mailto:sage [2007/12/18(火) 11:31:02 ]
>>309
何が問題ねーの?予約識別子じゃないの?

312 名前:デフォルトの名無しさん mailto:sage [2007/12/18(火) 11:46:38 ]
_ のあと小文字は、グローバルスコープ(ファイルスコープ)のみで予約。以下 >294

313 名前:デフォルトの名無しさん mailto:sage [2007/12/18(火) 12:17:43 ]
>>168の短い文章を理解するのに一体何レス費やせば気が済むんだ?

314 名前:デフォルトの名無しさん mailto:sage [2007/12/18(火) 12:21:59 ]
「ある目的のために」とか、わかりにくい誤訳が入ってたからじゃね?

315 名前:デフォルトの名無しさん mailto:sage [2007/12/18(火) 22:50:44 ]
グローバルな名前空間でとわざわざ限定してくれてるからじゃん

316 名前:デフォルトの名無しさん mailto:sage [2007/12/19(水) 05:46:36 ]
「感染してますが、コンドームをつけてれば大丈夫です」と言われてもやる気はしないのと同じ

例えが、ちがうか;

317 名前:デフォルトの名無しさん mailto:sage [2007/12/23(日) 23:54:01 ]

                ( ゚д゚ )
              ¶ノ ¶ノ |
          / ̄ ̄ ̄ ̄ ̄\
          ./  (,)    (,)  ヽ
         |     | ̄|     |
         ヽ     ̄ ̄    /
          |  |   |  |   |
         .ノ .ノ ヽ ノ .ノ   .|
         (_ノ  (_ノ    .|
            / /  ̄/ /
           < <   .< <
            ヽ ヽ   ヽ ヽ


318 名前:デフォルトの名無しさん [2007/12/25(火) 07:53:47 ]
あ、そうそう そうすると

#ifndef _FILENAME_H
#define _FILENAME_H

はどんなシンボル名にしてんの?

#define H_FILENAME_H

とか?( ゚д゚)

319 名前:デフォルトの名無しさん mailto:sage [2007/12/25(火) 10:30:28 ]
FILENAME_HでもMACRO_OF_FILENAME_Hでもお好きなものをどうぞ。



320 名前:デフォルトの名無しさん [2007/12/26(水) 04:02:28 ]
MACRO_OF_*は却下

321 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 04:09:12 ]
#pragma onceでいいよもう

322 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 04:10:30 ]
せっかくポータブルな方法があるのに、
そうじゃない手段をわざわざ使うのは気が引けるよ

323 名前:デフォルトの名無しさん [2007/12/29(土) 11:30:30 ]
規律正しいおまいらなら
#ifndef
の使用はもうやめたんだろ?

324 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 13:41:22 ]
両方使うのは意味があるのかな?

325 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 00:07:39 ]
>>323
なんで ifndef はいけないと思うの?

326 名前:デフォルトの名無しさん mailto:sage [2008/02/19(火) 01:14:20 ]
皆さんのスタイルを、GNU indentの引数で表現するってのはどうでしょか。
俺は単純に
indent -kr hoge.c
です。

327 名前:デフォルトの名無しさん mailto:sage [2008/02/19(火) 14:45:58 ]
>>325
名前がぶつかるかも知れない恐怖が


328 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 18:09:35 ]
ソースのフルパスをマクロ名に入れとけば無問題w


329 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 15:16:47 ]
そんなにぶつかるのが怖いなら、GUIDでいいんじゃないか?インクルードガードなんか入力することなんかないんだからさ。



330 名前:デフォルトの名無しさん [2008/07/28(月) 01:19:20 ]
lolo.jp/orecode/

331 名前:デフォルトの名無しさん mailto:sage [2008/07/30(水) 22:41:39 ]
はてなで話題になってたが
tp://d.hatena.ne.jp/akkt/20080424/1209051266
これを厳密に守るのはきついな……

332 名前:デフォルトの名無しさん mailto:sage [2008/08/07(木) 15:47:21 ]
これはJAVAを念頭に置いてるのか?

333 名前:デフォルトの名無しさん mailto:sage [2008/08/09(土) 21:26:02 ]
>>331
goto有害論並に偏りすぎてねぇか?


334 名前:デフォルトの名無しさん mailto:sage [2008/08/09(土) 22:46:42 ]
手続き型脳を矯正するには多少極端なくらいのショック療法が必要ってことだろ

335 名前:デフォルトの名無しさん mailto:sage [2008/08/25(月) 00:22:16 ]
OO厨だった学生時代はそういう病的に分割されたコードばっか書いてたな。
だけど、働き始めて周りの人間にソース追いにくいだのなんだの
不評だったせいでいつのまにか書かなくなったが。

336 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 21:55:22 ]
C++でオペレータの宣言・定義するときにoperator=とかくのかoperator =とかくのかそういうのって決まってるの?

337 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 21:56:36 ]
それは多分、インデントの量とか中括弧の位置なんかと同じテーマだと思うんだが。

338 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 23:43:18 ]
>>336
検索しやすいように空けない。

339 名前:デフォルトの名無しさん [2008/10/02(木) 00:07:24 ]
operator\w= で検索すればおk



340 名前:デフォルトの名無しさん [2008/10/02(木) 00:08:04 ]
↑*追加しといて

341 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 20:45:35 ]
\w じゃダメだろ。

342 名前:デフォルトの名無しさん [2008/10/03(金) 01:01:52 ]
じゃあ
operator\wktk=

343 名前:デフォルトの名無しさん mailto:sage [2008/10/09(木) 08:01:21 ]
elevaterU
escalator

344 名前:デフォルトの名無しさん mailto:sage [2009/01/09(金) 01:29:10 ]
あと、a,b,cで書いたなら、最後までa,b,cで通して欲しい。
a, b, cとか行に寄って記述が違うとイラッと来る。

345 名前:デフォルトの名無しさん mailto:sage [2009/01/10(土) 21:16:17 ]
>>344
コピペ製作だと思うよ。

346 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 11:22:25 ]
C言語で複合代入演算子やインクリメント/デクリメント演算子の使用禁止って一般的なの?

for( iI = 0 ; iI < iMax ; iI = iI + 1){

とか泣けるんですが。iIって変数名も泣けるけど。

347 名前:デフォルトの名無しさん [2009/02/08(日) 16:00:56 ]
母国語が違うプログラマだろ

348 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 20:56:10 ]
いや、コーディング規約なんだってば。ふつーそうなんだと言われた。

349 名前:デフォルトの名無しさん [2009/02/08(日) 21:59:11 ]
規約作った人の母国語が疑われる



350 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 00:02:37 ]
VB使いしかいなかったんだろw

351 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 02:15:38 ]
>>346
痛々しいな。
1を加算するのに++を使うのもみっともないが
1づつ増えていく値を表現するのに++を使わないのも、なんだかな

352 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 10:51:44 ]
break continue 禁止 理由:分かりにくいから。
で、代替のサンプルがすごく分かりにくい。

353 名前:デフォルトの名無しさん [2009/02/09(月) 15:12:23 ]
重要なのは「読みやすく、書きやすい」なので、規則は場合に応じてでいいと思ってる。
ぱっと見で理解できやすいほうに改良していく感じで。
基本は固まりがわかりやすいインデント、改行+固まりの概要コメントってとこかな。

class A {
public:
  int i;


354 名前:デフォルトの名無しさん [2009/02/09(月) 15:13:48 ]
途中で書いてもうた(^^;

class A {
public:
  int i;
}
よりも
class A {
  public:
    int i;
}
のが好き


355 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 20:43:15 ]
インデントや変数名なんかは後でどうにでもなるんで、別に構わない。

356 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 12:27:33 ]
class A
{
private:
 int i;
};
がすき

>>355
変数名はクラス間で衝突するのが当然だから後から置換するのは大変だぞ

357 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 19:13:10 ]
コンパイラ相当の解析能力がある名称変更ツールってあったらいいなあと、たまに思う

358 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 20:36:18 ]
>>357
JavaとかC#だと当たり前のように存在する。

359 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 20:39:51 ]
>>357
何年前から来ましたか



360 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 21:25:10 ]
Eclipseの入力補完とリファクタリングがなければ、もうコーディングできない体に・・・。
viでperlでCGIを書いていた時代には戻れない。

361 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 21:51:51 ]
70年代から来たものですが、技術の進歩はすばらしいなw
eclipseを使って変数名変更やもっと高度なコードの書き直しができるみたいね
ttp://www.confrage.com/eclipse/
(リファクタリングの項目)

こういう情報がまとまってるところってないものかな


362 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 22:25:03 ]
VS2008でもリファクタリング出来ますよ

363 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 22:54:59 ]
イマドキのモダンな開発環境なら大概できると思うが。
C++は構文解析の難易度高いんで発狂IDEも多いけどw

364 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 23:59:01 ]
namespace の中はインデントする?
俺はしない。

365 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 03:25:36 ]
基本はやらないほうだけど、
Java/C#では、IDEが勝手にやってくれるのでそのままやらせている。

366 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 15:14:16 ]
いまだに、IDEのエディタよりテキストエディタを使ってる
名前変更は、grepで拾って一つ一つやる
そもそも名称変更をする時点で
設計がおかしいってことだし、そういう意味でコードの見直しにもなる

というオレは前時代の生き物だが、そうやって生き残ってきたから
この部分はそのまんまw

367 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 16:01:04 ]
でも、若いのがIDE導入したいって言った時は、
前向きに検討してあげてね。

最近上司にO/Rマッパの話をしたら、
「そんなこと位、ケチらずにSQL書けよw
最近のはSQLも書けないのが多いってことなんかねー」
と言われた若いもんより

368 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 16:29:45 ]
手間を減らすための手法は、使う側にメリットがあると感じさせなければただの余計な手間だからなw

369 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 16:36:56 ]
Java+WebだとIDEなしは悲惨だぞ。
仕掛け上、膨大な数のファイルを取り扱うし整合性とるのだけでも大変だ。



370 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 19:04:31 ]
SQL知らずにO/Rマッパー使いたがる馬鹿

371 名前:367 mailto:sage [2009/02/11(水) 20:56:18 ]
>>370
どこからその発想が出てきたのか分かりませんが
そんな人がもしいたら馬鹿ですね。同意です。

372 名前:366 mailto:sage [2009/02/12(木) 00:35:22 ]
>>367
いやいや、統合環境でもがつがつ組むときだけテキストエディタを使ってる
私は、フリーだし
誰かの面倒見るときでも、基本的には個人の自由と思ってる


373 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 07:55:52 ]
>>371
お前のレスから出た発想に決まってるだろ低脳

374 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 08:14:58 ]
おやおや

375 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 08:25:47 ]
暇つぶしに煽ったら皮肉で返されて逆ギレっすかw

376 名前:デフォルトの名無しさん [2009/02/20(金) 19:25:27 ]
規約とはちょっと違うかもしれないけど、他に聞くとこないのでここでいいかい?
コードを管理するディレクトリ構成のことなんだけど、
ソースとヘッダーを同じディレクトリに入れてる人っているかな?
ライブラリのコードならヘッダーのディレクトリを分離しなきゃいけないだろうけど、
そうじゃなければ一緒にした方がやりやすいってやってるところもあるのかな?


377 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 19:54:54 ]
好きなようにしたらいいと思うぞ。どっちにしても大した問題はないように思える。

378 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 20:12:40 ]
いちいち分けないだろ

379 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 21:29:58 ]
分けないのか?




380 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 21:33:59 ]
IDEにおまかせ。

381 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 21:53:41 ]
ライブラリでも配布時にヘッダ取り出せばいいし
必要とメリットに応じて。でいいんじゃない? 自分は分けてない

382 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 00:52:52 ]
分けてない人多いのか



ところで今さらだけど、こんな記事あった
ttp://blog.scriptionary.com/2009/01/21/hungarian-notation-what-to-do/


383 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 01:02:05 ]
いや、多いかは知らないぞw 書き込んだ2人は分けてないってだけだからなw

384 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 01:08:30 ]
分ける意味がわからん

385 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 01:15:42 ]
ハンガリアン表記法はコーディングの手間になるから使わない
ただ、ポインタとグローバル変数にはpとかg_をつけてる。取り扱い注意的な意味で。

386 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 01:16:25 ]
複数のコンポーネントからなるプロジェクトの場合は、コンポーネントごとにディレクトリを作って
なおかつ、共通で使うヘッダファイルのディレクトリも作る。
コンポーネント内部でしか使わないヘッダファイルは、コンポーネントのディレクトリに入れる。

387 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 01:30:43 ]
ハンガリアン表記法ね
Cの時は使ってる、C++とかオブジェクト指向系の言語だと考えちゃうね

388 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 01:33:46 ]
>>385
コーディングの手間になるから使ってる
意識する分だけ誤りが少ないし、検索するときユニークになりやすい
同じ意味で型を変換したい時には楽

389 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 01:33:57 ]
コメントの書き方で
flag = true; //フラグを立てる
とかいうのは意味ないと思う。コードを見ればすぐ分かることを書くのは無駄。

コメントはある程度のまとまったコードに対して、どういう意味があるかを書くと、いちいちコードを解析する手間が省けるから役に立つ。

疑問があるのは、コメントにコードの変更日と変更者を記入してるタイプ。役に立ったことがないんだが、役に立つんかね



390 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 01:45:12 ]
10年20年使われるコードでは役に立つときもある

391 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 01:46:15 ]
80 名前:デフォルトの名無しさん[sage] 投稿日:2007/11/08(木) 19:23:34
昔も似たようなスレあったな
俺はシステムハンガリアンも有効だとレスした
IDEによる入力サポートとか、カーソルあわせての型情報とか一切無い環境もあるからな
ってか俺のとこそうだし
と書いても理解してもらえなかった。
多分ここでも理解してもらえないなw




この意見をどう思う?


392 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 01:47:50 ]
>>389
納品した後の修正とかなら書くよ


393 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 02:00:33 ]
>>391
まずはWindows APIみたいにバンバンtypedefしろ。

394 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 02:06:37 ]
>>391
役に立つならそれはそれでありだと思う。
よほどチープな機材しかない職場なんだろうな。

395 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 02:11:41 ]
>>389 には完全に同意だ
とくに

>疑問があるのは、コメントにコードの変更日と変更者を記入してるタイプ。役に立ったことがないんだが、役に立つんかね

には泣くほど同意見だ。
読みにくいったらないよ。
SCMがあるのになぜコメントで書くのか

396 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 02:15:24 ]
>>389
>とかいうのは意味ないと思う。コードを見ればすぐ分かることを書くのは無駄。
まったく同意w
//このフラグはここでのみ立つので、〜ほにゃらら
とか書くならよいのだが、やってることを書くのはほんとアホ

>コメントにコードの変更日と変更者を記入してるタイプ。
おれも役に立ったことがない、コードが読みにくいだけ
だれがどう変えたにせよ、今手を入れるのは自分なんだし
いまさら前任者を恨んでどうするって感じだわw
ファイルヘッダに履歴があれば充分って思う

397 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 02:15:29 ]
バージョン管理なんて使わせてくれないところかもしれないだろ。
いや、SCMがあってもそういうのを書かされる話は聞くが。

398 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 02:41:39 ]
>>395
> SCMがあるのになぜコメントで書くのか
どこにでもリポジトリがあるわけじゃありません。

399 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 02:43:12 ]
あー、こいつが追加変更したところだから要注意だな、みたいなことはある。



400 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 02:54:24 ]
いまどきソフトウェア開発プロジェクトでSCMを使わない以上の罪悪を探すのは難しいけどね

401 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 03:26:36 ]
>>394
CodeWarriorというものがあってだな…


402 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 03:47:41 ]
>>396
変更日・変更者コメントは、同時進行で進んでいるソース流用プロジェクトが、
流用元の最近の変更と自分たちの変更を区別するために欲しがっていたな。

403 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 03:53:56 ]
>>401
組込のIDEには入力支援や型情報ポップアップがないって意味?
俺のとこではエディタとして別のIDE使ってたよ。組込の環境は使いにくいw

404 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 04:15:35 ]
アセンブラだとメモリにどう入っているか分かるほうが楽

405 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 15:04:56 ]
CodeWarrior のクソっぷりはなんとかならんか


406 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 17:25:27 ]
>コードを見ればすぐ分かることを書くのは無駄。

アルゴリズムやデータ構造は知ってても、コードは読めんと言う相手と
連携しなきゃならん場合は必要だぞ。

具体的に例を挙げると、↓みたいなコードを、相手方にチェックしてもらうには
「読んで字のごとし」なコードもすごく重要。
・別言語で作ったアプリが吐いたデータを、整合性を崩さないように編集するコード
・ハードウェアを直接叩くコード

407 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 17:49:42 ]
それは、「コードを見ればすぐ分かる」ことじゃない。

408 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 19:21:45 ]
コードをみればすぐ分かるってのは、誰でも言語の知識だけでコードからすぐに読みとれること、と言い換えたら理解しやすいかもしれんな。
自分の知識ですぐ分かること、ではないぞw 言語以外の知識やその行付近以外の知識を必要とする時点ですでに「すぐ分かること」ではない。

例えばこういう感じ
*((volatile char*)0xF860) = 0;   //&HF860番地にゼロを書く  ←無駄なコメント

*((volatile char*)0xF860) = 0;   //VDPリセット  ←知識があれば分かることだが役にたつコメント

409 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 19:41:39 ]
>>408
>*((volatile char*)0xF860) = 0;   //VDPリセット  ←知識があれば分かることだが役にたつコメント
これはコードをみればわかることじゃあないと思うな
0を入れるのか、リセットするのか、クリアするのかは、意味が少々違うからな

「文字」「文字値」「文字配列」「文字列」の違いみたいなものも結構気になる



410 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 20:10:39 ]
>>409
コードを見れば分かる無駄なコメント に対する 役立つものの例として、という意味ね
「そこにゼロ書けばVDPがリセットされる」って知識がある人には、例の2つは同じ「コードをみればすぐ分かるコメント」に見えるかもしれない
でも、>>389で言っている「コードをみればすぐ分かるコメント」ってのは前者(ゼロを書く)であって、後者(リセット)のコメントの付け方ではないよ。
という説明のつもりだったw

411 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 21:15:41 ]
#define VDP_ADDRESS (volatile char*)0xF860
#define RESET 0

*(VDP_ADDRESS) = RESET;

412 名前:409 mailto:sage [2009/02/21(土) 21:32:26 ]
>>410
同意

>>411
そうそう、オレならそうする。

413 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 22:23:07 ]
#define VDP_ADDRESS ((volatile char*)0xF860)
#define RESET 0
#define RESET_VDP() *VDP_ADDRESS = RESET

RESET_VDP();


414 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 01:06:49 ]
マクロ地獄だな

415 名前:409 mailto:sage [2009/02/22(日) 01:09:28 ]
>>411は、レジスタのアクセスだけなのがわかるが、
>>413だと、いくつかのシーケンスが内蔵されているように見えるね

該当のレジスタに他の値を入れることがたびたびあって、この行でリセットをしたいなら、明示的な>>411
該当のレジスタには、他でアクセスすることがなく、ここでリセットするだけなら>>413だな


416 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 17:45:00 ]
皆さんのお知恵をお借りしにきますた

どっかの本かWEBで、ブーリアンの引数名にはNoとかNotはつけるな
ってあったんだけど、みなさんどう思いますか?
例えばbool NoScrollとか

417 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 17:57:32 ]
>>416
賛成の反対で、これでいいのだw

418 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 18:08:30 ]
>>416
本とか読んでる訳じゃないから、俺の感覚だと…

別にbool型なんだから
NoScrollにtrue入れるか、Scrollにfalse入れるかでしょ
それなら、コード中でどう使うかで使い分ければいいんじゃない

絶対に、NoScrollを主体で判断した方がいい部分で使われるのが分っているなら
NoScrollとすれば良い

それ以外で、Scrollという状態をtrue or falseで見る使い方なら
わざわざフラグを反転させる意味にしない方か良いと思う

419 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 19:02:30 ]
>>418
どうもありがとうございます
その本だかによれば、ブーリアンは意味的に「〜する」の肯定で統一したほうが混乱が少ない、みたいなことを根拠にしてました
そうやって統一すると、何かを「する」場合はtrue、「しない」場合はfalseを指定すれば良くなる、と

マァ自分的にも個々の使い分けでいいと思いました



420 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 19:22:24 ]
>>419
直感的に、True(真)なのにNo(否定)っていうのが誤りの元にならないかってことだよね。
"できるだけ"避けるべきだとは思うなぁ

ちょっとオレが変かもしれないけど
電気ポットの注ぎ口なんかよくハッとする
「赤」なのに「出る」のが気持ち悪い


421 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 19:37:12 ]
混在させるより統一した方がいいとは思うけどどっちでもいいと思えるほどの些細なことに見える。

422 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 19:49:32 ]
>>420
赤=危険という風に見ればいい

423 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 20:23:15 ]
>>416
否定後禁止ルールは、isとかcanとか三人単数ルールとかと併用しないと意味不明になりがちだと思う。
その場合ならCanScrollとかScrollsとか。

424 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 20:25:59 ]
酷い日本語すみませぬ…。
×否定後 → ○否定語
×三人単数 → ○三人称単数

425 名前:420 mailto:sage [2009/02/22(日) 20:35:41 ]
>>422
それはわかってるんだけどねw
出すことを前提に操作してるのに「赤」になるのがとてもアフォーざんす

426 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 22:22:51 ]
なして?

427 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 22:55:00 ]
信号機だと赤は停止の色だから?

428 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 23:15:36 ]
・水は青、お湯は赤
・熱いから危険だから赤

429 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 23:22:32 ]
>425
そこは「お湯を注ごうとしてる人」とは違うアクターを想像するんだ。
例えば「ポットを運ぼうとしてる人」とか。



430 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 00:52:59 ]
>>429
わかっちゃいるんだけどね、例えば、車で
アクセルを踏むと赤いランプが点くとしたら、、、気持ち悪いよね
そんな感じ

431 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 01:06:41 ]
そのつまんねー自分語り、いつまで続けるつもり?

432 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 01:19:19 ]
>>431
レスがある限りw

433 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 02:49:40 ]
>>431
2ちゃん歴浅いんか?
嫌ならお前が別の話題を振ればいい。


434 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 09:35:12 ]
>>433
2ちゃん歴浅いんか?
気に入らないレスならスルーしろ。

435 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 13:06:16 ]
おまえここは初めてか?力抜けよ。

436 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 13:28:14 ]
420うぜーぞ

437 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 16:51:41 ]
スルーしろといってる本人がスルーできてない

438 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 17:23:41 ]
オマエモナー

439 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 20:53:40 ]
       ,;:'';,     ,;:' ';  
      ,;'':.:. ';,,,.,.,.,.,.,;:'   ';     
     、:´: .          ':,   
     ,':.:..:. .           ':,    ま、お茶でも飲んで休憩すれ。
    ';:.:.:.:.. /          \ ':,  
     ';::.:.:.:. . ●      ●  ;' 
     ';:::.::.:.    (__人__)    ;'
     '':;,:.:.:.:.:. .          、:'            ( (
      ,;:'':.:.:.           '::,,.,.,.,.,,.,,_          ヽ ヽ
     ,;':::: ::                `()\; __O__  )ノ
    ,;' ;:.:.   ;,      .:.''_,.,,.,.,.,.,.,.,_,:'" \/= ̄ ̄ =ソ,フi!
    ,;'  ;;:.:.   ;,     ;;''            {= = = = =イ .i!
   ;'   ';;:.:.  ;,    ;:'             ゙、_= = =_ノ  i! 
  ;,    ';,   ,;     ;'                 ̄ ̄ ┌―‐┐〜
  ;,    ゙゙''''''"    ;                  { 茶 }
  :;    ;'''"゙゙'';:   :;                  ヘニニノ
  :;    ;   ;:    ;               || ̄ ̄ ̄ ̄ ̄ ̄ ̄||
  ':,    ,;   :;    :;                  ||              ||
   ゙゙''''''''''"   ゙゙''''''''''"




440 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 00:23:49 ]
いや、俺はスルーしろなんて言ってないしなあ
命令しといて自分はやらない人につっこみ入れただけだしなあ。

441 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 00:26:10 ]
レス乞食

442 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 00:30:51 ]
呼んだ?

443 名前:デフォルトの名無しさん mailto:sage [2009/03/02(月) 01:19:09 ]
コメントに愚痴とかいいわけ書いてるやついるよなw
そういうヤツのコードは1関数1500行とかスパゲッティな依存関係とかすごく汚いコードだったw
そんな事書くくらいならコードの可読性をあげるコメントを書けと

444 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 01:33:42 ]
パスカル記法ってただ頭を大文字にするだけ?
ハンガリアンみたいに詳細に説明してるサイトがないからそれしかわからん


445 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 10:05:24 ]
>>444
>パスカル記法ってただ頭を大文字にするだけ?

そんだけ。

446 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 12:19:31 ]
おまいらtypedefどう思う?

いちいちtypedefしてんじゃねーよカスが。

447 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 12:50:46 ]
なんでもかんでもtypedefするカス
typedefしなきゃ書けないコードを知らずに全否定するカス

448 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 15:23:25 ]
批判 [編集]

一部の人々は、typedefを広範に使用することに反対している。
ほとんどの議論は、typedefは単に変数の実際のデータ型を隠すだけであるという考えに集中する。
例えば、Linuxカーネルハッカーであり、ドキュメント作成を行っているGreg Kroah-Hartmanは、
関数プロトタイプ宣言を除いて、typedefの使用をやめさせようとしている。
彼は、typedefを使用することが、必要以上にコードを混乱させるだけでなく、
プログラマが巨大な構造体を単純な型と誤認識して使用してしまうことがあると主張している[1]。

449 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 17:34:56 ]
>>448
どこからの引用なのか書けや



450 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:04:54 ]
ここだな。
ttp://ja.wikipedia.org/wiki/Typedef#.E6.89.B9.E5.88.A4

451 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:17:03 ]
>>446
typedefはCとC++ではまったく事情が違う。
C++でテンプレートメタプログラミングするなら必須

452 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 16:03:42 ]
そうかなあ

453 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 22:00:52 ]
そうだよお






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<102KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef