板検索:
今までみた絶望的なソースコード (834)
まとめビュー
1
デフォルトの名無しさん[]   投稿日:2015/04/17 23:00:30  ID:55USvuES.net
今井氏:ソースコード公開は、社長のティム(*2)の意向です。彼はバリバリのプログラマーで、初期の「Unreal Engine 1」を
1人で書いた人ですが、若い時に雑誌に載っていたコードを書き写して勉強したそうです。それで今の若い人にも、プロのソー
コードとはこういうものだというのを見せたいという願いがあって、ソースコードを公開しています。本当に今のゲーム業界の
事情を憂いてる1人だと思います。(*2)Epic Gamesの創業者兼CEOであるTim Sweeney氏

出村氏:読みやすいコードですよ。「C++」というのは、黒魔術(高度な計算)が多くなりがちな言語ですが、
そういうこともなく、すっきりしていて目的の機能も探しやすい。解読しやすいコードなので、確かにお手本になると思います。

僕は初代のゲームボーイからプレイステーション 2の頃くらいまでゲームプログラマーだったのですが、ゲームプログラミングでは
必ず数学が出てきます。行列とか三角関数とか。もちろん今でもまったく不要になったわけではありませんが、そういう知識の
重要性は薄れてきていると思います。「Unreal Engine」では特にそうです。
http://game.watch.impress.co.jp/docs/interview/20150417_698349.html

初級者から中級者へ昇格する時期は、ほぼどのようなソースコードでも読める程度にプログラミング言語に精通し、
また偉いプログラマーの提唱したデザインパターンも一通り理解したくらいの時期である。

すると、プログラミング言語の持つあらゆる機能と、偉いプログラマーの提唱するあらゆる技術を使わねばならない
という思い込みが発生する。そしてHello Worldにまで崇高なオブジェクト指向や壮大なデザインパターンを
適用しようとしだすのである。

その結果、
* 大量のクラス
* 迷路のような変数渡し
* 底なしに深いネスト
などといった凄いものが生まれる。また、条件分岐に三項演算子を乱用するなどの症状も多く見受けられる。
最終的には第三者にとって読みにくい保守性の悪いスパゲッティコードが生成されることになる。
http://monobook.org/wiki/%E4%B8%AD%E7%B4%9A%E8%80%85%E7%97%85
コメント2件


2
デフォルトの名無しさん[sage]   投稿日:2015/04/17 23:07:42  ID:UHVCP2Vk.net
★★★★★★★★★★★★★★★★★★★★★★★★★★
注意 この部分は、ゴミカスが書いたでたらめな文章です。
★★★★★★★★★★★★★★★★★★★★★★★★★★

> 初級者から中級者へ昇格する時期は、ほぼどのようなソースコードでも読める程度にプログラミング言語に精通し、
> また偉いプログラマーの提唱したデザインパターンも一通り理解したくらいの時期である。
>
> すると、プログラミング言語の持つあらゆる機能と、偉いプログラマーの提唱するあらゆる技術を使わねばならない
> という思い込みが発生する。そしてHello Worldにまで崇高なオブジェクト指向や壮大なデザインパターンを
> 適用しようとしだすのである。
>
> その結果、
> * 大量のクラス
> * 迷路のような変数渡し
> * 底なしに深いネスト
> などといった凄いものが生まれる。また、条件分岐に三項演算子を乱用するなどの症状も多く見受けられる。
> 最終的には第三者にとって読みにくい保守性の悪いスパゲッティコードが生成されることになる。
> http://monobook.org/wiki/%E4%B8%AD%E7%B4%9A%E8%80%85%E7%97%85 👀
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)

コメント2件

3
デフォルトの名無しさん[sage]   投稿日:2015/04/17 23:09:53  ID:UDbFCugu.net
>2
知ってる。
見ればわかるw

4
デフォルトの名無しさん[sage]   投稿日:2015/04/17 23:16:09  ID:2QruBEl7.net
最強は迷路のような循環参照だろ

5
デフォルトの名無しさん[sage]   投稿日:2015/04/17 23:20:08  ID:eE8aPdvb.net(2)
言語の構文はわずかに例外が有るにしろ、
コードをシンプルで分かりやすく書くことが出来るように
作られたもので、バージョンが上がると追加される機能っていうのは
それを更に良くするもの。

という当たり前のことから考えると、
問題ない機能を「俺が知らないから」「馬鹿が知らないから」という
理由で禁止する行為は、コードをクソコードに仕上げることになる。

もっと最悪なのが、俺がこれ以上勉強したくないから
他の人も使うの禁止!と言い出すリーダー。

6
デフォルトの名無しさん[sage]   投稿日:2015/04/17 23:26:55  ID:ooZObC6M.net
>2
かなり事実じゃね?
コメント1件

7
デフォルトの名無しさん[sage]   投稿日:2015/04/17 23:29:30  ID:eE8aPdvb.net(2)
>6
クソスレたてるな

8
デフォルトの名無しさん[sage]   投稿日:2015/04/18 00:50:42  ID:dyiDxr2Z.net
たしかに見に覚えがあるがプログラム書いてて一番楽しい時期でもある

9
デフォルトの名無しさん[sage]   投稿日:2015/04/18 11:31:06  ID:rVGwSU9K.net
確かに2の通りだな
俺が見た絶望は、15全下の種類を持つフラグ変数が5つある奴だな
相互に挙動が干渉し、中で呼び出しが積まれたあとに突然最初のエントリーポイントを再帰しやがった


10
デフォルトの名無しさん[]   投稿日:2015/04/19 13:46:48  ID:ESsvP1kn.net
1000行を超えるswitchを見たときは痺れた

11
デフォルトの名無しさん[sage]   投稿日:2015/04/19 14:31:13  ID:3NsiJz07.net
#include <stdio.h>
#define BUFFSIZE 7

int main(void)
{
char* buf;
char tmp;

buf = (char*)malloc(BUFFSIZE);

tmp = -126;
*(buf+0) = tmp + 0;
*(buf+1) = tmp + 72;
*(buf+2) = tmp + 0;
*(buf+3) = tmp + 103;
*(buf+4) = tmp + 0;
*(buf+5) = tmp + 89;
*(buf+6) = tmp + 126;

fputs(buf,stdout);

free(buf);

return 0;
}
コメント3件

12
デフォルトの名無しさん[sage]   投稿日:2015/04/19 14:48:21  ID:nqxUSETS.net(2)
>11
変数宣言先頭に書くな
たかだか7バイトmallocするな
ポインタのインクリメント使え
終端文字抜けてるぞ
コメント3件

13
デフォルトの名無しさん[sage]   投稿日:2015/04/19 14:54:48  ID:B0V38sso.net
>12
終端ぬけてねーよ
よくみろはハゲ
コメント1件

14
デフォルトの名無しさん[sage]   投稿日:2015/04/19 14:59:17  ID:YPSI+AI0.net
     彡⌒ ミ
     (´・ω・彡⌒ ミ
   彡⌒ ミつ(´・ω・`) ))ハゲで何が悪い!!
(( (´・ω・`) ( つ  )
   ( つ  ヽ  とノ  
    〉 とノ )^(_)
   (__ノ⌒(_)

15
デフォルトの名無しさん[sage]   投稿日:2015/04/19 14:59:48  ID:nqxUSETS.net(2)
>13
マジだw

あと一個
charは一バイトでもsizeof使え
Unicode対応の時に泣く
出れば指定要素を指定数分だけメモリ確保する方があったはずだからあっちの方が安全

16
デフォルトの名無しさん[sage]   投稿日:2015/04/19 14:59:48  ID:yTHXbUfS.net
>12
ネタにマジレスするバカ(笑)
ぬるぽ
って書いてるだけじゃん

17
デフォルトの名無しさん[]   投稿日:2015/04/19 15:01:51  ID:S//ZaxIU.net
>11
ガッ

18
デフォルトの名無しさん[]   投稿日:2015/04/19 15:36:02  ID:oJmhIRRr.net
>11
くだらねぇ

19
デフォルトの名無しさん[sage]   投稿日:2015/04/19 16:05:31  ID:dhzBOV6W.net(2)
絶望的な人間が沸いてるな

20
デフォルトの名無しさん[]   投稿日:2015/04/19 16:12:46  ID:FgPTbLQc.net
なんだこのスレw

21
デフォルトの名無しさん[sage]   投稿日:2015/04/19 16:54:41  ID:H3AnyW4d.net(2)
某一部上場企業で使われてる言語が日本語プログラミングのソースで吐きそうになったな
しかも1ファイル3万行とか普通にありやがるしそれこそ分岐しかしてねえ

22
デフォルトの名無しさん[]   投稿日:2015/04/19 17:04:27  ID:A/MgNyGP.net(2)
日本語ブロクラミングって実務で使う場所あんのか!
需要なんて絶対無いと思ってたけどw
コメント2件

23
デフォルトの名無しさん[sage]   投稿日:2015/04/19 17:10:13  ID:H3AnyW4d.net(2)
あるんだななこれがしかも日本でも半端ない規模の会社よw
中身はcobolを日本語でラップしたような感じで。
「a=1」 というのを 「aを1に代入」って感じで組んでいく。脳が腐ると思ったわ。

24
デフォルトの名無しさん[]   投稿日:2015/04/19 17:32:24  ID:A/MgNyGP.net(2)
誰得だなw
当初は誰でも保守できるようにしたかったのだろうか?
結果誰も保守できなくなった的な?

25
デフォルトの名無しさん[sage]   投稿日:2015/04/19 17:53:27  ID:xPXQDkXX.net
英語がわからないから日本語で書くという
アプローチは200%失敗する。

あー、そういやコードから日本語の仕様書を
作り出すとか言うソフトがあったな。
ね? 見事に失敗したでしょ?

26
デフォルトの名無しさん[sage]   投稿日:2015/04/19 18:29:17  ID:dhzBOV6W.net(2)
Interdevelop Desginerは売れたのか
売れたんなら買った企業の評判を聞いてみたいところ

今のところ俺はステップ実行設計書にご縁がない
幸せだ

27
デフォルトの名無しさん[sage]   投稿日:2015/04/19 19:04:55  ID:Rt7hjrl3.net
日本語プログラムじゃないけど、ruby で6000行のプログラムなら見た事がある。

オブジェクト指向?何それ?っていう感じのコードだったw

28
デフォルトの名無しさん[]   投稿日:2015/04/20 07:31:46  ID:l0+b2pIW.net
>22
FileMakerで作られた信じられないくらい巨大な社内システムの
スクリプト部分が全部日本語だった。

あまりにも酷いので某○ECにリプレイスの見積をとったら、
「30億円くらいじゃないですかね」という回答だった。

いまでも絶賛稼働中
コメント1件

29
デフォルトの名無しさん[sage]   投稿日:2015/04/20 12:22:22  ID:Mmn5Ftfg.net
>22
むしろ、日本語のほうが便利
変な先入観を捨てて使ってみるとわかる

どんな簡単なプログラムでも下手が作ればスパゲティ

30
デフォルトの名無しさん[sage]   投稿日:2015/04/20 12:48:14  ID:HTLIXLfD.net
などと下手糞が一丁前に語っちゃってます

31
デフォルトの名無しさん[sage]   投稿日:2015/04/20 13:47:35  ID:lH6fvovP.net
変数名が日本語ならまだわかるが、演算子まで日本語にしたらかえってわけわからん。

32
デフォルトの名無しさん[sage]   投稿日:2015/04/20 13:53:08  ID:SsAC3a+p.net
ガラパってるな

33
デフォルトの名無しさん[sage]   投稿日:2015/04/20 16:31:22  ID:EfJAKFWG.net
大企業に限ってソースはダメなテンプレだよ。1ファイル5万行に及ぶクソコードと
分岐ネスト&goto乱発の超絶スパゲッティで某携帯会社のシステムは稼働している。
この会社で働いてた時は一時期プログラミング出来なくなって鬱で休職したわ。俺の知ってるプログラミングじゃなかった。

34
デフォルトの名無しさん[sage]   投稿日:2015/04/20 18:40:19  ID:USn+NwOK.net
RoofRaised って何だと思って、長い時間をかけてヘッダーファイルを調べてみたら、ただの double だった、なんてことがよくあったでしょ。
大規模なプロジェクトのすべてのクラスで暗黙の typedef を見つけ出すのにどれくらい時間がかかると思う?
コメント2件

35
デフォルトの名無しさん[sage]   投稿日:2015/04/21 08:08:57  ID:cRXNE3Zt.net
>34
ダブルだけに二段屋根?

36
デフォルトの名無しさん[sage]   投稿日:2015/04/21 08:34:59  ID:cJvjjAde.net
仕事選べない立場ってやっぱクズですね
同情します

37
デフォルトの名無しさん[sage]   投稿日:2015/04/21 10:01:54  ID:P8FOHws6.net
>34
findとgrep組み合わせるだけで、どんなに大きな大規模プロジェクトでも
10分はかからないと思うが。馬鹿なの?

38
デフォルトの名無しさん[sage]   投稿日:2015/04/21 12:33:47  ID:5PzRDxP4.net
> 10分はかからないと思うが。馬鹿なの?
そんなにかかったらだめだろ。
せいぜい10秒程度だろ。

処理は読まないといけないからもう少しかかるが
定義は辞書を調べるようなものなんだから
grepとかfindなんか使わずに、単語を選択して
「定義場所を表示」ぐらいの調べられないとだめ。

この程度で分レベルの時間がかかってしまったら
調べている間に、何してたんだっけ?ってなるよ。
思考を中断させる原因となってしまう。
コメント1件

39
デフォルトの名無しさん[]   投稿日:2015/04/22 20:53:51  ID:NZ8QzlQ5.net
☆ 日本の核ブ装は絶対に必須ですわ。☆
http://www.soumu.go.jp/senkyo/kokumin_touhyou/index.html

☆ 日本国民の皆様方、2016年7月の『第24回 参議院選挙』で、改憲の参議院議員が
3分の2以上を超えると改憲が実現します。皆様方、必ず投票に自ら足を運んでください。
私たちの『日本国憲法』を絶対に改正しましょう。☆

40
デフォルトの名無しさん[sage]   投稿日:2015/04/22 22:45:32  ID:+mudGifq.net
増改築を繰り返せばどんなシステムでもスパゲティになる

41
デフォルトの名無しさん[sage]   投稿日:2015/04/23 14:29:59  ID:z8bFtkdX.net
>38
それくらいで止まるとかw

42
デフォルトの名無しさん[sage]   投稿日:2015/04/23 16:20:02  ID:wgFAW8nP.net
お前たちは真の絶望を知らない

43
デフォルトの名無しさん[sage]   投稿日:2015/04/24 13:08:16  ID:E5oc/4Vu.net
昔だがUNIX C使いがMSDOS Cで作ったソフト
auto変数でサイズ10000バイトとか普通にやってる上に子プロセスも同じだから全見直し

もっと酷かったのがC言語で書かれた移動体の基地局側ファームウェア
処理毎に移動体の数だけフラグ分けとif文の羅列で設計から全見直し
コメント1件

44
デフォルトの名無しさん[sage]   投稿日:2015/04/24 14:39:36  ID:TFN7oaD8.net
>43
その「auto変数でサイズ10000バイトとか普通にやってる」ところが
全部staticに直されていてスレッドで排他されていないコードも
みたことある。絶望的だ。

45
デフォルトの名無しさん[sage]   投稿日:2015/04/26 08:28:01  ID:pIcJs2te.net
シングルスレッドの組み込みなら常識的なコードだが

46
デフォルトの名無しさん[sage]   投稿日:2015/04/26 13:23:54  ID:3kjvd8px.net(2)
昔のMSDOS環境はメモリ利用領域500KBほどだよ
stackでガバガバ取ったら、あっという間にエラーで落ちるからさw
コメント1件

47
デフォルトの名無しさん[sage]   投稿日:2015/04/26 16:19:44  ID:T8rMi6ps.net
ロートルの何の価値もないXMS講座が始まるからDOSの話は止めろ

48
デフォルトの名無しさん[sage]   投稿日:2015/04/26 16:40:53  ID:zBsfufMM.net
>46
ほう。じゃあ今はガバガバの2000倍は
使わないといけないから、
あっという間の2000倍かかるなw
コメント1件

49
デフォルトの名無しさん[sage]   投稿日:2015/04/26 19:38:09  ID:3kjvd8px.net(2)
>48
環境を考慮できないお前みたいな馬鹿ならできんじゃねw

50
デフォルトの名無しさん[sage]   投稿日:2015/04/29 20:48:46  ID:zWk0Y6jT.net(3)
んと、UNIXではmallocの領域とスタックの領域は重なった四角形の上辺と下辺から衝突する方向で成長する。
だから、どちらが大きな領域を取れるかというと対等であるのだけれど
ヒープの側はfreeした場合、管理領域に虫食い穴ができてしまう。
そうした事情があるので、仮想記憶領域をムダに成長させたくなければ
可能な限り大きなメモリーはスタックに確保したほうが合理的なの。
コメント1件

51
デフォルトの名無しさん[sage]   投稿日:2015/04/29 20:54:30  ID:ni+OWwPH.net
Windowsはスタックが1MBだったかな

52
デフォルトの名無しさん[sage]   投稿日:2015/04/29 21:02:54  ID:a9t0k9yT.net(2)
>50
UNIXはそうかもしれないけど、LinuxもBSDもWindowsも違うよ。
コメント1件

53
デフォルトの名無しさん[sage]   投稿日:2015/04/29 21:24:24  ID:zWk0Y6jT.net(3)
>52

気になってlinuxのメモリモデル確認したら

テキスト(コード)、初期化、非初期化、(モート)、スタック

になってるじゃん。
ヒープが非初期化領域の末端に来て、反対側からスタックが衝突方向
だからLinuxもやっぱりUNIXと同じモデル。
ユーザーランドから見た論理モデルは変わってないじゃん。
コメント1件

54
デフォルトの名無しさん[sage]   投稿日:2015/04/29 21:34:48  ID:a9t0k9yT.net(2)
>53
どこを見たのか知らないけど、違うよ。

55
デフォルトの名無しさん[sage]   投稿日:2015/04/29 21:45:11  ID:BTL1OO/O.net
そもそも実装依存過ぎて話にならねえ

56
デフォルトの名無しさん[sage]   投稿日:2015/04/29 22:01:22  ID:zWk0Y6jT.net(3)
わかった今確認した。
カーネル2.6では
text, data, (moat?), heap, bss
になってる。
sbrk()にゼロを渡すと dataと heapの間の数値になるから
初期化データに対してヒープが衝突方向に成長し、
ヒープの後ろに非初期化データが続く。

ただ、ドキュメントによれば2.4ではUNIXと同じはず。

57
デフォルトの名無しさん[sage]   投稿日:2015/04/29 22:33:43  ID:jSKM1nC6.net
ほーん、で?いちいち書き込むなカス

58
デフォルトの名無しさん[sage]   投稿日:2015/05/02 14:37:22  ID:xD347L3p.net(2)
>28
正直な経験で言うと、社内システムを開発外注して業務改善てのがゆとりな神経だと思う。
成功した会社を一つたりとも見たことがない

59
デフォルトの名無しさん[sage]   投稿日:2015/05/02 14:43:12  ID:xD347L3p.net(2)
switch分岐が5段連なった奴は絶望感が酷かったな
そのなかにたらたら転写、フラグ操作した上で、サブルーチンを呼び、サブルーチンでもまた分岐
調べると同じコードでフラグの設定値だけ違う

某地デジ

60
聖マリアンナ医大病院20人資格取り消し[]   投稿日:2015/05/05 20:23:24  ID:Xm1AWE57.net
【神回】美人ニコ生主えりぃがFME切り忘れで公開オナニー!?【電マ】

https://www.youtube.com/watch?v=0U15dDLipOw

61
デフォルトの名無しさん[sage]   投稿日:2015/05/05 22:49:52  ID:bz0m6DRq.net
CRubyでは、compile.c 内の、iseq_compile_each 関数で、
AST(抽象構文木)を、Ruby仮想マシン用の中間コードに、
コンパイルするのだが、

ASTノードの種類によって分岐する、
switch文は数千行もある

switch (ASTノードの種類){ }

「Rubyのしくみ」という本を参照
コメント1件

62
デフォルトの名無しさん[sage]   投稿日:2015/05/06 04:06:56  ID:cCF2kAXu.net
rubyのソースが糞ってのは同意
中身見て驚いたわ

63
デフォルトの名無しさん[sage]   投稿日:2015/05/06 16:44:48  ID:+jUiP52g.net
変数の頭に$をつけなきゃならん言語は全てゴミ扱いでいいと思うの
というかC++以外滅びろ

64
デフォルトの名無しさん[sage]   投稿日:2015/05/06 17:23:42  ID:qhtEqerx.net
htmlとかも滅びてしまうが

65
聖マリアンナ医大病院20人資格取り消し[]   投稿日:2015/05/10 03:27:12  ID:d7SjFAGD.net
【海外】「さすが日本だな」 自衛隊の国産ヘリ「OH−1」の性能に外国人衝撃!! やはり日本は世界一だった【大和】

https://www.youtube.com/watch?v=kDfbXZZ15s4

66
デフォルトの名無しさん[]   投稿日:2015/05/10 11:59:03  ID:x043ivF3.net
#本当はうごかないはず

67
デフォルトの名無しさん[]   投稿日:2015/05/14 19:48:56  ID:KwWkhxua.net
行数が多すぎてコンパイルできない。

68
デフォルトの名無しさん[sage]   投稿日:2015/05/14 20:03:23  ID:I7g8lu0W.net
なんだそれ

69
デフォルトの名無しさん[sage]   投稿日:2015/05/15 19:31:56  ID:WZ+HCGJP.net
どうみても間違っているソースだな
明らかに昨日要件とは違う実装
数週間前に別のやつが触っているのに誰も申告しない

後から知ったが、彼奴にあてがえば、そこも直した上で機能変更も設計変更もやってくれる
と考えた仕打ちだそうです。

安くて真面目に仕事して、能力あると思われると、死ぬまで仕事が降ってくる。

70
デフォルトの名無しさん[sage]   投稿日:2015/05/16 00:20:16  ID:cD0zsv9F.net(4)
今悩まされてるのが同じロジック別モジュール
作成者が統一化に猛反対
馬鹿は本当に死んでくれ
コメント2件

71
デフォルトの名無しさん[sage]   投稿日:2015/05/16 01:05:34  ID:atT3KGbX.net(3)
>70
既存に似たものあるから統合するって感じ?
作成者は少々いじられるのも嫌と?
可能な限り共通化して分離必要な箇所はインターフェース化して個別実装だな
ソースコピペとかは技術者を名乗ってはいけない
コメント2件

72
デフォルトの名無しさん[sage]   投稿日:2015/05/16 01:51:37  ID:+UC07Y5W.net
>70
ロジックが同じかどうかでまとめるのではなくて、
役割で考えないとダメだよ。

同じロジックであってもまとめるべきではないこともたまにある。

例えばTwitter APIとAWS APIの内部で同じ処理をやっていたとしても、
役割はそれぞれ別なので分けるべきだろう。

もちろん汎用モジュールに分けられるようなものであれば
分けた方がいい。
コメント2件

73
デフォルトの名無しさん[sage]   投稿日:2015/05/16 06:32:17  ID:y0uxq7/N.net
自動車の大規模リコール騒ぎを見てれば
なんでも共通化すればいいってもんじゃない
ということは言える

74
デフォルトの名無しさん[sage]   投稿日:2015/05/16 09:42:11  ID:T8dXcHE3.net
同じロジックでも制御対象が別ならコピペして分けておく
現在たまたま同じロジックで済むだけだから
コメント3件

75
デフォルトの名無しさん[sage]   投稿日:2015/05/16 10:51:43  ID:atT3KGbX.net(3)
>74
分ける必要が出た時に差分を個別実装すればいいだけ
コピペされたコードなんて誰もメンテしないぞ
特に他社のコード引っ張って来たら絶対触れない
不具合出ても一方は修正されたのに一方は修正されない
客からしたら不具合治ってないとクレーム
それが続けば信用問題にもなりかねない
月日が経てばもはやどっちがオリジナルか判別不明

76
デフォルトの名無しさん[sage]   投稿日:2015/05/16 11:56:34  ID:cD0zsv9F.net(4)
>71が正解
日付け事にコピペしてんだよ!!
モジュール統一化してパラメーター渡しにしたらえらく御立腹w
コメント2件

77
デフォルトの名無しさん[sage]   投稿日:2015/05/16 12:13:54  ID:SZ2m/aFp.net(3)
要するに自分の管理外にコードが出ていくのが嫌なのね
気持ちは分からんでもないけど、そいつテスト書いてないだろ

78
デフォルトの名無しさん[sage]   投稿日:2015/05/16 13:13:51  ID:RLs2q5hO.net
コードは自分以外が読むものとして書くべき。

79
デフォルトの名無しさん[sage]   投稿日:2015/05/16 15:16:33  ID:cD0zsv9F.net(4)
>72>74と仕事すると大変だろうな
コメント1件

80
デフォルトの名無しさん[sage]   投稿日:2015/05/16 15:20:46  ID:CnFMKOW2.net
>79と仕事するほうが大変だろw
理由はわかっている人には明らかだらあえて言うまでもないが。

81
デフォルトの名無しさん[]   投稿日:2015/05/16 15:32:07  ID:/LBMRGuE.net(3)
同じコードだからって領域が違うものをまとめるのはアホ。
コピペの方がまだマシ

82
デフォルトの名無しさん[sage]   投稿日:2015/05/16 15:57:15  ID:SZ2m/aFp.net(3)
たぶんここから濃厚な罵倒合戦の火蓋が切って落とされると思うんですけど
コメント2件

83
デフォルトの名無しさん[]   投稿日:2015/05/16 16:13:02  ID:EsD9+D7Y.net
結果的に同じものができたから、一つにするという考えは間違っている。

共通モジュールは設計段階で考えることで、実装段階で考えることではない。

ましてや他の機能やシステムとの間で共通化することなどありえない。

汎用モジュールとして使うとしてもパッケージソフトくらいにしか適用できない。
コメント1件

84
デフォルトの名無しさん[sage]   投稿日:2015/05/16 17:41:36  ID:atT3KGbX.net(3)
>82
禿同w

>76見ると日付毎言うてるから相当悲惨と思われる
俺はオブジェクトのシリアライズでバージョン毎に完全に分けられてて泣いた
どうせフィールド追加しただけなのに全部コピーするから一万行超えてたwww
差分だけ追加するようにしたら200行…
コメント1件

85
デフォルトの名無しさん[sage]   投稿日:2015/05/16 18:21:40  ID:UflOEuuo.net(2)
このスレの誰と仕事すると大変か、という問いに関しては
「土曜の昼日中に2chやってる奴」が答え
コメント1件

86
デフォルトの名無しさん[sage]   投稿日:2015/05/16 18:30:16  ID:cD0zsv9F.net(4)
ソースのコピペを肯定する人多いのか
>84状態なんだがw
コメント1件

87
デフォルトの名無しさん[sage]   投稿日:2015/05/16 19:03:32  ID:0p3VeBPS.net(4)
同じ処理が複数箇所に書いてあるなんぞあり得ない。
コメント1件

88
デフォルトの名無しさん[]   投稿日:2015/05/16 20:12:39  ID:sArM/Yx9.net
>87
アフリカの猿とアマゾンの猿は、同じに見えるかもしれませんが、別物です。
初心者にはわからないかもしれませんが。
コメント1件

89
デフォルトの名無しさん[sage]   投稿日:2015/05/16 20:18:53  ID:O24SflU+.net
そこでOOPですよ

90
デフォルトの名無しさん[]   投稿日:2015/05/16 20:31:58  ID:/LBMRGuE.net(3)
oop厨ってアホだな。
共通化してはいけないものをなんとか共通化したいのならアスペクトだから。

91
デフォルトの名無しさん[]   投稿日:2015/05/16 20:54:20  ID:0p3VeBPS.net(4)
>88
「同じに見える」んじゃなくて「同じもの」なら共通化して当たり前。

92
デフォルトの名無しさん[]   投稿日:2015/05/16 21:03:55  ID:/LBMRGuE.net(3)
その理屈でいうとforで0から順にインクリメントするものも関数化しないとな。
DoForZero2(100,print)

おー、短くなった。
流石プロですねー
コメント1件

93
デフォルトの名無しさん[]   投稿日:2015/05/16 21:13:10  ID:0p3VeBPS.net(4)
つーか毎回同じコードコピペしてんの? まじで?

94
デフォルトの名無しさん[]   投稿日:2015/05/16 21:18:26  ID:0p3VeBPS.net(4)
それ、IT業界の中でも特定の業種だよね。
メーカーの内製でそんなことしないだろ?

95
デフォルトの名無しさん[sage]   投稿日:2015/05/16 21:19:35  ID:UflOEuuo.net(2)
>92
アホは喋るの止めた方がいいよ
帯域も容量も地球の資源ももったいない

96
デフォルトの名無しさん[sage]   投稿日:2015/05/16 21:23:40  ID:SZ2m/aFp.net(3)
というか、pythonのrangeをmapで使おうとすると
まさにそんな感じのコードですわ。
視野の狭い人ね。

97
デフォルトの名無しさん[sage]   投稿日:2015/05/16 22:42:32  ID:pszRfElg.net
>82


98
デフォルトの名無しさん[sage]   投稿日:2015/05/17 02:35:55  ID:c3gAm3/x.net(4)
>85
>このスレの誰と仕事すると大変か、という問いに関しては
>「土曜の昼日中に2chやってる奴」が答え

18:21:40.06 ID:UflOEuuo

書き込めるまで我慢してたんだろな〜www

99
デフォルトの名無しさん[sage]   投稿日:2015/05/17 04:53:31  ID:gpE1Sl6q.net
>86
>71 だと実装の継承しようとしてるので、OOP 的には >72 >74>83 みたいな反論は普通出てくる
ただ >76 見るに相当ひどいみたいだし、何か特別な理由があるんじゃないかと

頻繁に特定の日付時の状態にバイナリ互換で戻すとか?あるかそんな事
コメント2件

100
デフォルトの名無しさん[sage]   投稿日:2015/05/17 09:05:05  ID:5hOzuN4k.net
例えばヤフーのようなIDでログインさせるAPIを他社に提供することを考える
この場合ログイン処理をクラスとして切り出ししそのインスタンスのログイン処理をコールしてもらえるように設計するだろう
つまりヤフーも他社も同じクラスのインスタンスを持ちそのログイン処理を共有する

他社がヤフーのログイン処理を実装したりヤフーが提供先ごとにログイン処理を実装することがあるだろうか?
1つの処理もまた1つのオブジェクトだよ
コメント1件

101
デフォルトの名無しさん[sage]   投稿日:2015/05/17 09:18:21  ID:c3gAm3/x.net(4)
>99
スレタイ嫁
特別な理由はそういうコード書く人物が存在する事だろ

102
デフォルトの名無しさん[sage]   投稿日:2015/05/17 09:56:39  ID:CzRQDZeG.net(2)
>100
>つまりヤフーも他社も同じクラスのインスタンスを持ちそのログイン処理を共有する

そのやり方だとセキュリティがザルになるけどね。

103
デフォルトの名無しさん[sage]   投稿日:2015/05/17 09:59:30  ID:eUJr406l.net
コピペするに足る理由がある時はいいんだよね?
例えばFlashがリテンションしてプログラムの一部が読めなくなった時でも
最低限人が死なない程度に制御するためにバイナリレベルで多重化するような場合とか
コメント1件

104
デフォルトの名無しさん[sage]   投稿日:2015/05/17 10:30:23  ID:CzRQDZeG.net(2)
>99
一昔前のCOBOLでなら、聞いたことはある。

105
デフォルトの名無しさん[sage]   投稿日:2015/05/17 11:57:01  ID:c3gAm3/x.net(4)
>103
それをソースコードのコピペと呼ぶのか

106
デフォルトの名無しさん[sage]   投稿日:2015/05/17 12:12:04  ID:nE1QdxB9.net(2)
>61
逆にこういう例ってどうするのが正解なの?

107
デフォルトの名無しさん[sage]   投稿日:2015/05/17 15:27:46  ID:wvzPz3Ba.net
絶望を与えるのに間違ってる必要性はないんだ
コメント1件

108
デフォルトの名無しさん[sage]   投稿日:2015/05/17 16:14:09  ID:nE1QdxB9.net(2)
すごく納得した

109
デフォルトの名無しさん[]   投稿日:2015/05/17 20:54:56  ID:8eviomzT.net(2)
変数の取り違えに気づき、途中で値の交換を行ってたコード

110
デフォルトの名無しさん[]   投稿日:2015/05/17 20:58:00  ID:8eviomzT.net(2)
if文でどんどん分岐し、重複ロジックを大量に書いてあったプログラム。

111
デフォルトの名無しさん[sage]   投稿日:2015/05/17 23:28:50  ID:c3gAm3/x.net(4)
>107
≫≫110とリンクするな(笑)

112
デフォルトの名無しさん[]   投稿日:2015/05/18 00:27:44  ID:R6qIQaEG.net
派遣先で部下というか新しいメンバーにコード書かせたら恐ろしいコードよこしやがった。

ifのネストじゃなくて、同じifの判定をこれでもかってくらい繰り返してんの。

もうそこやめるからテスト通して放置。
コメント1件

113
デフォルトの名無しさん[sage]   投稿日:2015/05/18 00:59:25  ID:92QLSF+E.net
てーへんっすね
(大変ですねと、そんなレベルの低い人間と働かなきゃいけないなんて
あなたもやはり底辺の住人ですね、を掛けている)
コメント1件

114
デフォルトの名無しさん[sage]   投稿日:2015/05/18 04:23:14  ID:eg26D6LT.net
>112
飛ぶ鳥跡を濁さず
知ってて放置は良くないぞ

>113
同じ会社でも個々の能力はピンキリだろ
とくに大きい会社になるほど色んな奴と出会う
コメント2件

115
デフォルトの名無しさん[]   投稿日:2015/05/18 06:10:30  ID:2t3/vjAH.net(2)
コードソムリエ。

116
デフォルトの名無しさん[sage]   投稿日:2015/05/18 06:12:37  ID:ezOKhhiH.net
>114
> 飛ぶ鳥跡を濁さず

濁してるのは、飛ぶ鳥の方じゃないですからw

117
デフォルトの名無しさん[]   投稿日:2015/05/18 06:44:46  ID:2t3/vjAH.net(2)
飛ぶ鳥を落とすため、最高のライフルをご用意いたしました。

118
デフォルトの名無しさん[sage]   投稿日:2015/05/18 07:08:35  ID:hxINsIbc.net
>114
ことわざ間違えるのは恥ずかしいから
コメント1件

119
デフォルトの名無しさん[]   投稿日:2015/05/18 12:17:01  ID:NlgV+Pgh.net
同じifの判定ってどういうこと?
if(a == 1) print "1";
if(a == 1) print "1";
if(a == 1) print "1";
なわけないよな?

if(a == 1) print "1";
if(a == 2) print "2";
if(a == 3) print "3";
って感じか?

120
デフォルトの名無しさん[sage]   投稿日:2015/05/18 12:21:28  ID:ndOcmHbS.net
>118
知って飛び去るのはよくないっていうことでは?逃げるが勝ちの方がふさわしいと思うが。
コメント1件

121
デフォルトの名無しさん[sage]   投稿日:2015/05/18 14:17:46  ID:oJXHJ+WI.net

122
デフォルトの名無しさん[sage]   投稿日:2015/05/19 20:48:19  ID:goeUU+n9.net
お前らが管理しているソースで一番古いのっていつ頃のソース?

俺は1997年作成って言うソースが一番古い(C++)
かなりいろんな人がバグ修正、機能追加していて3K程のソース。

それ以外にも2004年以前のソースが20本位ある(これもC++)

仕様書もソースも追加修正だらけで、作り直したいけど、動いているソースなんで勝手に修正するなって
言われていて作り直すわけにもいかなくて困ったもんだ状態だわ
コメント2件

123
デフォルトの名無しさん[sage]   投稿日:2015/05/20 00:15:49  ID:mFPTvTAh.net
>122
ボトルネックなんかが明確なら再作成ありだが、ただコードを綺麗にしたいってのはただのマスターベーションだしな

124
デフォルトの名無しさん[sage]   投稿日:2015/05/20 07:37:13  ID:VJuVsJlg.net
まあ動作実績のあるコードは触らないのが鉄則だからな
仕様変更を待つしかないね

125
デフォルトの名無しさん[sage]   投稿日:2015/05/20 08:43:49  ID:do2GoB8K.net
>122
そのコードが今でも頻繁にメンテされているならありだが、特に問題がなく、今後も大きな拡張が見込めないなら何もしないほうがいい。きもちは痛いほど分かるけどね。
コメント1件

126
デフォルトの名無しさん[sage]   投稿日:2015/05/20 17:56:58  ID:qzEPJuIN.net(2)
念の為に言っておくと、開発効率が悪いから
不具合が発生するリスクが高いから
という理由でコードを綺麗するのは重要なこと

127
デフォルトの名無しさん[sage]   投稿日:2015/05/20 18:25:43  ID:zgEA4FV1.net
開発側の100%負担なら誰も反対しないだろうが、オナニしたいから開発費用を払って!
と言われて金を出す奴がいるとすれば、ただの鴨と鵜飼

128
デフォルトの名無しさん[sage]   投稿日:2015/05/20 18:41:48  ID:qzEPJuIN.net(2)
ムダに高い金を払っているってことを
知らせない、知らないほうがお互い幸せだからなw

金を払う方は金を払って、作る方は残業して。
こんなに苦しい物が実は無駄なんてw

129
デフォルトの名無しさん[sage]   投稿日:2015/05/21 00:32:12  ID:l4RR4WuM.net
この手の議論は請負系と自社開発とで考え方が変わってくるな。


130
デフォルトの名無しさん[sage]   投稿日:2015/05/21 08:11:01  ID:Tg0bXDwp.net
請負なら検収さえ通ればゴミ納品してもいいしな
コメント1件

131
デフォルトの名無しさん[sage]   投稿日:2015/05/22 00:19:08  ID:vgLs0WMP.net
>125
ボトルネックがあると書いとるだろw
コメント1件

132
デフォルトの名無しさん[sage]   投稿日:2015/05/22 00:43:49  ID:2YhMDzu7.net
>131
どこに?

133
デフォルトの名無しさん[]   投稿日:2015/05/26 17:31:46  ID:/aaRFu7k.net
>130
空のCD-Rで納品したことあるわ

134
デフォルトの名無しさん[]   投稿日:2015/05/27 22:40:06  ID:nLndRoUd.net(5)
プログラムできないけど、上司に取り入る事だけ
上手い営業みたいなサーバ管理者が、
プログラマの俺が居るのに、
「ノンプログラミングでデータベースを自在に閲覧出来る
BIツールを買えば、見える化が促進できる!
プログラマをリストラすれば十分ペイ出来る」と、
偉い人に取り入って、システムを導入したんだ。

蓋を開けたら、データ取り込みから定義作成まで
BIツール謹製のSQLやロジックを書かないといけない
絶望的な代物だった。

結局、俺が書いてる。。。

135
デフォルトの名無しさん[]   投稿日:2015/05/27 22:41:00  ID:nLndRoUd.net(5)
簡単なサンプルは、ドラッグアンドドロップで
ポンポン作れるんだけど、いざ実務に即したものを
作ろうとすると、その単純さが仇となって、
猛烈に長いコードを書く羽目になった。

さらに、デバッグなんて機能が無いから、
結果が想定と違っていても、原因の切り分け方法が
無いときてる。

もう、苦行としか言いようが無い。

136
デフォルトの名無しさん[sage]   投稿日:2015/05/27 22:42:28  ID:1SVgoR5i.net
クビにならなくて良かったろw
コメント1件

137
デフォルトの名無しさん[]   投稿日:2015/05/27 22:45:36  ID:nLndRoUd.net(5)
>136
XAMPPで簡単に出来ることが
根本的に無理になったり、激ムズになったりしてる。

単純な四則演算で変な結果が出た時には
固まった。

そんなドマイナーなノンプログラムのプログラムなんて
身にならないし、もう辞めたい。

俺が辞めたら、確実に死蔵されるだろうな。アレ。

138
デフォルトの名無しさん[]   投稿日:2015/05/27 22:48:33  ID:nLndRoUd.net(5)
絶像的なノンプログラミングのプログラマになれば、
長い間、飯の種になるかも知れない。

求人かけても、ドマイナーなシステムのプログラムなんて、
誰も解らんだろうし。。。

139
デフォルトの名無しさん[]   投稿日:2015/05/27 22:59:10  ID:nLndRoUd.net(5)
BIツールの特性を知った上で使うなら、
効果的に使えると思う。

でも、高いシステムを買ったんだからと、
複雑な要件を盛り込むと、途端に破たんする。

そして、専門外の偉い人は、
複雑な要件を盛り込みたがる。

世の中、そんなもんだって感じで、
達観するしか無い状態。

140
デフォルトの名無しさん[]   投稿日:2015/05/27 23:04:37  ID:lx8cNW16.net
BIツールってコンサルタントのただの商品だからな。

141
デフォルトの名無しさん[sage]   投稿日:2015/05/28 00:33:54  ID:odZ+ejWb.net
銀行系SEをリストラされた親戚がマイナーなサーバー管理ツールを使ってたな
本人はapacheのマニュアルすら読んだことないんだと
コメント2件

142
デフォルトの名無しさん[sage]   投稿日:2015/05/28 07:17:10  ID:4DphScwy.net
>141
なんか可愛そうだよね。
多くの時間を、他の会社では使えない知識を
学ぶのに使ってしまうのって。

143
デフォルトの名無しさん[sage]   投稿日:2015/05/28 08:38:16  ID:nbjUOWor.net
目的と観点を明確に使っているかだろ
ツールのいいなりじゃどうしようもないが、そこがわかっていれば他のツールも直ぐに使いこなせる。


問題は、そういう機能も出力もないツールを掴まされて使う必要があるとき
ワンオフのシステムによくある、

144
デフォルトの名無しさん[sage]   投稿日:2015/05/28 14:04:48  ID:+z3HE+1N.net
パフォーマンスの点から見て絶望的なのに無理やり二分木を使ったプログラム
頭が湧いてるんじゃないかと思う

145
デフォルトの名無しさん[sage]   投稿日:2015/05/28 14:59:54  ID:xfxVVPCq.net(2)
>141
さすがにサーバー管理をやっているなら自分でapacheくらい勉強するだろう。リストラされても仕方がない。
コメント2件

146
デフォルトの名無しさん[]   投稿日:2015/05/28 17:13:30  ID:lDPgwgfB.net
>145
元銀行のSEだぞ?
コメント1件

147
デフォルトの名無しさん[sage]   投稿日:2015/05/28 18:11:36  ID:QUSVe/9V.net
cobol製webサーバーとかあんのかな
俺は業界門外漢だから知らね
コメント1件

148
デフォルトの名無しさん[sage]   投稿日:2015/05/28 18:30:03  ID:BS3T4776.net
銀行系専門がOSSなんてさわったらジンマシンに襲われるんじゃね

149
デフォルトの名無しさん[sage]   投稿日:2015/05/28 19:37:07  ID:UEKaugFR.net
>145
ないない、そもそも銀行で apache なんて使わない
Oracle Application Server とか IBM Http Server とかだよ
まあ、中身は... だけどね w
コメント1件

150
デフォルトの名無しさん[]   投稿日:2015/05/28 20:25:43  ID:+ywrUonY.net(3)
>149
Apacheがないところなんてないと思うが。
コメント2件

151
デフォルトの名無しさん[sage]   投稿日:2015/05/28 20:52:15  ID:6zahNw0I.net(3)
>150
> まあ、中身は... だけどね w
の意味わかってないのか?
極論すれば中身なんてどうでもいいんだよ、なんかあった時に Oracle とか IBM の名前が出せることが重要
マジで OSS なんて使ったら死ぬぞ w
コメント1件

152
デフォルトの名無しさん[]   投稿日:2015/05/28 21:06:20  ID:+ywrUonY.net(3)
>151
おまえの立場が分からん。
コメント1件

153
デフォルトの名無しさん[sage]   投稿日:2015/05/28 21:13:13  ID:gPuaPwC0.net
銀行のWebサーバなんて9割IISだぞ。
apacheなんて趣味用のサーバ使うわけがないだろ。

154
デフォルトの名無しさん[sage]   投稿日:2015/05/28 21:40:46  ID:6zahNw0I.net(3)
>152
金融機関に納入したことあるベンダーなら誰でも知ってることだよ
コメント1件

155
デフォルトの名無しさん[]   投稿日:2015/05/28 21:44:24  ID:pwrXSWWR.net
>147
汎用機のウェブサーバはあるけどな。

156
デフォルトの名無しさん[]   投稿日:2015/05/28 22:04:08  ID:+ywrUonY.net(3)
>154
おまえプログラマじゃないじゃんw
コメント1件

157
デフォルトの名無しさん[sage]   投稿日:2015/05/28 22:18:52  ID:6zahNw0I.net(3)
>156
なにを根拠に言ってるのかわからん w

158
デフォルトの名無しさん[sage]   投稿日:2015/05/28 22:20:00  ID:xfxVVPCq.net(2)
>146
銀行だからとか関係ない。
コメント1件

159
デフォルトの名無しさん[]   投稿日:2015/05/29 00:06:10  ID:9CwBFM33.net
プロなら普通、日立のミドルウェアで揃えるよな

160
デフォルトの名無しさん[]   投稿日:2015/05/29 08:50:56  ID:93alEFrQ.net
自分のいる現場が標準だと言ってるやつは何なの?

161
デフォルトの名無しさん[sage]   投稿日:2015/05/29 09:03:15  ID:KVqhIdpV.net
今までみた絶望的なスレの流れ

162
デフォルトの名無しさん[sage]   投稿日:2015/05/29 09:08:21  ID:1xJgnWA+.net
ここだと言いたいのかテメェはよ

163
デフォルトの名無しさん[sage]   投稿日:2015/05/29 12:58:09  ID:08TmNpAe.net
>158
それは銀行系を知らなすぎる
コメント1件

164
デフォルトの名無しさん[sage]   投稿日:2015/05/29 13:05:36  ID:eZjwWKWh.net
銀行系と勘定系って違うの?
コメント1件

165
デフォルトの名無しさん[sage]   投稿日:2015/05/29 15:43:25  ID:psnfn6m+.net
>163
銀行系だからとか関係ない。そんな銀行しかわからん技術者だからリストラされるんだよ。それが嫌なら常に独学でも学び続けるか、管理する側に回るしかない。IT系では特に重要なこと。
コメント1件

166
デフォルトの名無しさん[sage]   投稿日:2015/05/29 21:18:39  ID:H91kCqGL.net(3)
>164
銀行の中に勘定系と情報系がある
厳しいのは当然金を扱う勘定系
下手すると新聞沙汰になる
ただし情報系が甘いわけじゃないので、OSS なんて入れるアホは滅多にいないと思う
まあ、地方の信金とかは知らんけど w

>165
銀行だけとは言ってない
銀行(メガバン)ではって話だよ
コメント3件

167
デフォルトの名無しさん[]   投稿日:2015/05/29 21:35:12  ID:Wut4Rhve.net(2)
>166
たくさんシステムがあるのに皆無と言い切れるあなたさエスパーですか?
コメント1件

168
デフォルトの名無しさん[sage]   投稿日:2015/05/29 21:35:32  ID:AM+afDIM.net
ぐぐったらUFJが採用してたけど・・・
コメント1件

169
デフォルトの名無しさん[sage]   投稿日:2015/05/29 22:19:09  ID:H91kCqGL.net(3)
>166
アホが噛みつくからわざわざ滅多にって書いてるのに... w

>168
ああ、すまん
Redhat Linux でしょ、一応サポートあるしね
と言うか IBM が zServevr で動作保証してるから
サポートのない OSS をベンダーが勝手に入れるのとは訳が違うよ
コメント1件

170
デフォルトの名無しさん[sage]   投稿日:2015/05/29 22:20:19  ID:H91kCqGL.net(3)
アンカー間違えたわ
>166>167

171
デフォルトの名無しさん[sage]   投稿日:2015/05/29 22:30:12  ID:NC9x2l2n.net
>169
> サポートのない OSS をベンダーが勝手に入れるのとは訳が違うよ

サポートがある OSS をベンダーが説明してから入れるなら
何の問題もないでしょ?

つまり短く言うとOSSは問題ない。
コメント1件

172
デフォルトの名無しさん[]   投稿日:2015/05/29 22:47:26  ID:Wut4Rhve.net(2)
オープンソースがダメという理屈がわからん。

173
デフォルトの名無しさん[sage]   投稿日:2015/05/29 22:54:32  ID:XkG9lmPe.net
毟り取れるなら、そこからケツの毛まで毟り取ってやればいいじゃん
全部がOSSになったりしたら、その有り難みがなくなっちゃうよ

174
デフォルトの名無しさん[sage]   投稿日:2015/05/29 23:11:05  ID:2X83fotM.net
>171
> サポートがある OSS をベンダーが説明してから入れるなら
> 何の問題もないでしょ?

うん

> つまり短く言うとOSSは問題ない。

バカなの? w

175
デフォルトの名無しさん[sage]   投稿日:2015/05/30 00:19:49  ID:SYHYR5qB.net
サポート=バグがでたら修正しまーす ではなく
実際の損害を金銭で補償します だべ

ソフト屋の浮世離れした常識は通用しないべ
コメント1件

176
デフォルトの名無しさん[sage]   投稿日:2015/05/30 04:53:30  ID:mWvJuAGp.net(2)
実際の損害って、逸失利益とかも含まれるの?
含まれるとしたら太っ腹だな
コメント1件

177
デフォルトの名無しさん[sage]   投稿日:2015/05/30 09:56:32  ID:TSHvBVv0.net
契約次第に決まってんじゃん
仕事したことないのバレバレ

178
デフォルトの名無しさん[sage]   投稿日:2015/05/30 10:22:34  ID:nksCNU9d.net
よっぽどアホな企業とか特殊な場合でない限り、上限を契約の金額にするのは常識だと思うが

179
デフォルトの名無しさん[sage]   投稿日:2015/05/30 11:57:42  ID:BVpXxfcf.net
>150
そうか?
ランプとかが流行ったが、所詮は安物買いの銭失いが大半
銀行はJSPばかりだよ
コメント1件

180
デフォルトの名無しさん[sage]   投稿日:2015/05/30 12:58:56  ID:mWvJuAGp.net(2)
>175でOSS使わない理由が損害補償なのかと思ったから
>176って書いたんだけど、OSS全然関係なさそうだな
コメント1件

181
デフォルトの名無しさん[sage]   投稿日:2015/05/30 14:36:46  ID:ebcCMrL3.net
だって実態を知らないで
想像で言ってるだけだもん
見ればわかるよw

182
デフォルトの名無しさん[]   投稿日:2015/05/30 22:57:48  ID:ptIP/4nN.net(2)
>179
jspはWebサーバー、アプリケーションサーバー、OSが全部オープンソースの場合もあるが?
コメント1件

183
デフォルトの名無しさん[]   投稿日:2015/05/30 23:01:36  ID:ptIP/4nN.net(2)
サポートがあるかどうかなんて格好だけってことも多いからな。

マイナーな機能だと、サポートに聞いても使い方すら分からないことなんてザラ。

184
デフォルトの名無しさん[sage]   投稿日:2015/05/30 23:08:00  ID:GbYkPqTc.net
コメントが無く、関数・変数の名前がいい加減な文字列操作関数

185
デフォルトの名無しさん[sage]   投稿日:2015/05/31 13:15:34  ID:aaI4+yOw.net
正規表現なら何をやりたいか、書いて欲しい。みんながみんな頭の中で正規表現できるとは限らんので。

186
デフォルトの名無しさん[sage]   投稿日:2015/05/31 15:41:07  ID:vCKs7HZr.net(2)
>182
どこの事例?

>180
損害保証なんてまあ関係ない
そもそも国内でそんな事態になるケースなんて滅多にない
コメント1件

187
デフォルトの名無しさん[]   投稿日:2015/05/31 17:11:33  ID:nCZZum25.net
>186
jspがなんだと思ってんだよ?
コメント1件

188
デフォルトの名無しさん[sage]   投稿日:2015/05/31 17:30:33  ID:vCKs7HZr.net(2)
>187
JSP が何かを知りたかったら Wikipedia でも見とけよ

189
デフォルトの名無しさん[]   投稿日:2015/05/31 17:38:39  ID:LTxgNM08.net
JSPだとむしろオープンソースと絡むぞ。

ASPと言っておけばいいものを。

190
デフォルトの名無しさん[sage]   投稿日:2015/06/01 19:42:40  ID:e+Q3qVuq.net
jsp?ずいぶんとダサいコードを書いてるのね。
コメント1件

191
デフォルトの名無しさん[sage]   投稿日:2015/06/02 21:01:27  ID:80AN9G/c.net
>190
帯をパクるな。キモヲタってバレバレだぞw

関数型プログラミングに目覚めた! IQ145の女子高校生の先輩から受けた特訓5日間
http://www.amazon.co.jp/dp/4798043761/
コメント1件

192
デフォルトの名無しさん[sage]   投稿日:2015/06/02 21:11:09  ID:y/vvSKhg.net
排水溝の髪の毛なんて持ってくんな
汚い

193
デフォルトの名無しさん[]   投稿日:2015/06/03 00:18:56  ID:fWOFbe2S.net
>191
なかなかの低評価ですね。

194
東京女子医科大学病院プロポフォール大量投与[]   投稿日:2015/06/08 23:39:32  ID:Fqp3awmG.net
健全でない言葉が含まれているため表示しません 内容を確認する

195
デフォルトの名無しさん[sage]   投稿日:2015/06/15 16:16:30  ID:APmJNnuF.net
安楽死って、ただの自殺教唆。

196
デフォルトの名無しさん[sage]   投稿日:2015/06/25 08:29:08  ID:3LKwgapt.net
アングラ牧場?

197
デフォルトの名無しさん[sage]   投稿日:2015/06/25 08:34:36  ID:ni30MNzk.net
話題のニトリは絶望するほどじゃないけど面白い

198
デフォルトの名無しさん[sage]   投稿日:2015/06/25 14:09:47  ID:0TJc5kfL.net
俺もっと酷い所にいたことあるよ
こんなの修羅場でも何でもない(奴隷自慢

が始まると思っていたのにがっかりだぜお前ら

199
デフォルトの名無しさん[sage]   投稿日:2015/06/29 10:01:52  ID:uRgKjkQ2.net
そういうのはプログラマー板じゃね?

200
デフォルトの名無しさん[sage]   投稿日:2015/06/29 13:05:59  ID:ZG8WYZZ5.net
プログラ魔?(´・ω・`)

201
デフォルトの名無しさん[sage]   投稿日:2015/06/29 13:14:48  ID:QITtNM5B.net
プロ グラマー

202
デフォルトの名無しさん[sage]   投稿日:2015/07/04 21:24:58  ID:i6tiuRGk.net
スパゲッティでもなんでもない、超綺麗なコードなんだけど
引き継いだプロジェクトのソースファイルがすべて空だったことがあったな
コメント1件

203
デフォルトの名無しさん[sage]   投稿日:2015/07/05 00:11:02  ID:SYjfN7FW.net
>202
「 不射之射 」ってやつかな?(すっとぼけ)

204
デフォルトの名無しさん[sage]   投稿日:2015/07/18 16:41:57  ID:Elmadk8a.net(2)
他人の書いたソースを解析する時は
全部まとめて1ファイルにした方が検索で一発で飛べて分かりやすい

205
デフォルトの名無しさん[sage]   投稿日:2015/07/18 16:49:11  ID:ClZy0R3/.net(2)
串刺し検索できないとか無能すぎる

206
デフォルトの名無しさん[sage]   投稿日:2015/07/18 17:07:50  ID:Elmadk8a.net(2)
会社PCでメモ帳しか使えないからな

207
デフォルトの名無しさん[sage]   投稿日:2015/07/18 17:33:22  ID:ClZy0R3/.net(2)
そんなPCでプログラミングするの?どんな糞企業だろうな

208
デフォルトの名無しさん[sage]   投稿日:2015/07/18 17:33:36  ID:kyfBrlqO.net
Windows なら findstr
Linux なら grep

209
デフォルトの名無しさん[sage]   投稿日:2015/07/19 15:10:05  ID:05eNFjFO.net
とりあえず話はソースをEclipse CDTにぶち込んでからだ

210
デフォルトの名無しさん[sage]   投稿日:2015/07/19 16:02:36  ID:A8XocGVA.net
メモリが足らなくてEclipseが起動しないでござる

211
デフォルトの名無しさん[sage]   投稿日:2015/07/19 17:15:04  ID:hehkSm21.net
emacs使えばいいんじゃね
それすら動かないならedでも使っとけ

212
デフォルトの名無しさん[sage]   投稿日:2015/07/19 17:51:34  ID:yGfbtuav.net
メモリ512MBのatomなんだすまない
コメント1件

213
デフォルトの名無しさん[sage]   投稿日:2015/07/20 07:30:50  ID:7UJk40NA.net
窓から投げ捨てろ

214
デフォルトの名無しさん[sage]   投稿日:2015/07/20 10:15:18  ID:gcbmkQzq.net
鯖用にいいだろ
512もあればnginx+MariaDBでwordpressでもできるでしょ

215
デフォルトの名無しさん[]   投稿日:2015/07/23 11:22:55  ID:Jym5rlVM.net
>212
9800円のWindows8タブレットですら1GBは積んでる

216
デフォルトの名無しさん[sage]   投稿日:2015/07/23 13:25:18  ID:mmfWdiQl.net
atom で余分な部品をカットして省電力ならそれが正しい

217
デフォルトの名無しさん[sage]   投稿日:2015/07/23 13:44:48  ID:WUAvzM35.net
用途の選択ミス

218
デフォルトの名無しさん[sage]   投稿日:2015/07/23 22:37:03  ID:DlgtK7Z2.net
メモリ2GBの安タブにBTのキーボードとマウスを繋げりゃそこそこ使える
コメント1件

219
デフォルトの名無しさん[sage]   投稿日:2015/07/24 00:31:36  ID:epV3Dcoh.net
>218
中古のNexus7にUbuntuいれてそれやると最強

220
デフォルトの名無しさん[sage]   投稿日:2015/07/24 07:28:40  ID:30gYvqyq.net
SDカード使える機種でオススメある?

221
デフォルトの名無しさん[sage]   投稿日:2015/07/25 10:07:29  ID:fFQ7wKxw.net
jQueryのソースが見ると吐気する。javascriptの方がよほど簡単と思えるのは子供の頃からプログラムしてるせい?
ほんとにあれノンプログラマは見て分かりやすいの?
コメント1件

222
デフォルトの名無しさん[sage]   投稿日:2015/07/25 11:53:37  ID:AbBoos+r.net
> jQuery(を使ったサイト)のソースが見ると吐気する。
> (プレーンな)javascriptの方がよほど簡単と思えるのは子供の頃からプログラムしてるせい?
> ほんとにあれノンプログラマは見て分かりやすいの?

で、あってる?
もちろんjQueryを持ち上げるための方便か
全体でせいぜい100行、かつテストなしのコード
しか書いたことがない人が言ってるんじゃないかな
数行で目的を注入するという目的に限れば確かに容易い
コメント1件

223
デフォルトの名無しさん[sage]   投稿日:2015/07/25 18:23:12  ID:A3Ss5+fR.net
ノンプログラマがまともにjQueryなんて使うの?
プログラマの俺はjQueryで助かってるけど

224
デフォルトの名無しさん[sage]   投稿日:2015/07/25 20:20:37  ID:Q65ZCebZ.net
>221
病院に行ったほうがいいよw

jQueryのソースコードは機能毎に小さくモジュール化されていて、
長いファイルでも500行前後ぐらいしかない。
ほとんどは100行前後。

.jshintrcや.jscsrcもあるから
当然品質も保たれていると考えていいだろう。
当然テストコードも有る。

良いプロジェクトの見本のようなもんなんだが。
コメント1件

225
デフォルトの名無しさん[]   投稿日:2015/07/25 20:54:47  ID:o6XQJ+h/.net(2)
>224
お前だろ病院行った方がいいのは。
誰がjqueryの中身の話なんてしてんだよ?

226
デフォルトの名無しさん[sage]   投稿日:2015/07/25 20:55:34  ID:paoVPCKX.net(5)
jQueryのソースが見ると
jQueryのソースが見ると
jQueryのソースが見ると
jQueryのソースが見ると 👀
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)

227
デフォルトの名無しさん[sage]   投稿日:2015/07/25 20:57:56  ID:5BpE4UJW.net
健全でない言葉が含まれているため表示しません 内容を確認する

228
デフォルトの名無しさん[sage]   投稿日:2015/07/25 21:02:26  ID:paoVPCKX.net(5)
構文? jQueryはJavaScriptの構文そのまんまなんだが?

トランスパイラと言って、別の構文から
JavaScriptに変換する仕組みが今は流行ってるが
jQueryはそんなもの使わない純粋なJavaScript

どこか変な構文でもあったか?
その構文を御前が知らないだけでは?

229
デフォルトの名無しさん[sage]   投稿日:2015/07/25 21:04:51  ID:M9EIeKKB.net(2)
ソースコードのことより自分の日本語でも見直しとけってのスカタン

230
デフォルトの名無しさん[sage]   投稿日:2015/07/25 21:08:14  ID:M9EIeKKB.net(2)
いや、失礼した
「子供の頃からプログラミングをしてるせい」(で言語能力が的に育たなかった)
って書いてあったね

231
デフォルトの名無しさん[sage]   投稿日:2015/07/25 21:09:32  ID:paoVPCKX.net(5)
子供の頃の知識で止まってるんだろーなーw
どうせBASICだろう

232
デフォルトの名無しさん[]   投稿日:2015/07/25 21:16:42  ID:aUQYbDBF.net(2)
質問主の言葉が足りないってのは分かるけどー、
読んだら分かるよねー。
いわゆる信者っていうの?
批判的なことに条件反射しちゃうんだよね。分かる分かるー
っていーかぁ、そもそもスレチだしw?
両方消えてw

233
デフォルトの名無しさん[sage]   投稿日:2015/07/25 21:20:01  ID:paoVPCKX.net(5)
質問主の言葉が足りないんだろ。
それが全てだろ。
何言ってるんだか。

234
デフォルトの名無しさん[]   投稿日:2015/07/25 21:23:52  ID:aUQYbDBF.net(2)
プログラマーって定義されてないと怒るよねwww
10言わなきゃわかんねーのかw小学生かwww
コメント1件

235
デフォルトの名無しさん[sage]   投稿日:2015/07/25 21:59:39  ID:paoVPCKX.net(5)
>234
言葉が足りないのなら補えばいいが、
言葉が間違ってるからな。

お前Underscore.jsのソースコード見たこと有る?
この質問に答えてみるといいよ。
コメント1件

236
デフォルトの名無しさん[sage]   投稿日:2015/07/25 23:47:54  ID:BtkcRlE5.net(2)
用語じゃないけどさ、
前に似たようなjQuery信者が煽ってたのでソース読んだが、
同じ変数に別の意味の再代入とか平気でしててはっきり言って汚かったよ

ソースすべてを読んだわけではないが、その部分出したら綺麗とのたまってたね…
こういうのとは絶対一緒に仕事したくないわ
コメント1件

237
デフォルトの名無しさん[sage]   投稿日:2015/07/25 23:49:07  ID:BtkcRlE5.net(2)
用語 -> 擁護

238
デフォルトの名無しさん[]   投稿日:2015/07/25 23:58:07  ID:o6XQJ+h/.net(2)
>235
>222
が正しい文に直してくれているし、思い込みをしなければ、正しい意図を紐解けるというのはすでに立証されているんだがw

だから、質問がクソであり、それを思い込みで解釈したやつもクソだなと思うんだけど、俺にどう考えを直して欲しいのかなwww?

239
デフォルトの名無しさん[sage]   投稿日:2015/07/26 00:46:52  ID:Nu2ySp1+.net
webアプリの伝票を表示する画面のHTMLで、テーブルタグでエクセル方眼紙作ってあった
列とか必要以上に多くて無駄にセルの結合してあった

240
デフォルトの名無しさん[]   投稿日:2015/07/26 01:31:08  ID:Q7ZjjhPq.net
方眼紙便利なのに、なぜ方眼紙アプリが売っていないのか。

241
デフォルトの名無しさん[sage]   投稿日:2015/07/26 08:33:31  ID:Lmm8STAE.net
>236
どのファイルだよ?
言ってみ。
コメント1件

242
デフォルトの名無しさん[sage]   投稿日:2015/07/26 14:59:14  ID:p/433SX/.net(6)
>241
https://github.com/jquery/jquery/blob/a644101ed04d0beacea864ce80...
bulkの型がめちゃくちゃ
後ろでは関数として呼び出し、別の意味になってる

https://github.com/jquery/jquery/blob/master/src/event.js
tmpなどの使い回し
変数宣言を先に行う規定があるのか、全体的に読みにくい
コメント1件

243
デフォルトの名無しさん[sage]   投稿日:2015/07/26 15:22:58  ID:p/433SX/.net(6)
他も見たが、基本的に短い変数名ばかりだし、やっぱり読みにくいよ
決してvimほど汚くはないが、これを綺麗とか言っちゃうのは信者だけ

244
デフォルトの名無しさん[sage]   投稿日:2015/07/26 18:16:05  ID:7EBqSyeY.net(7)
短い変数名だから読みにくいっていうのは
間違った考え方だな。

スコープが十分小さいなら
長い名前にする必要がない。

245
デフォルトの名無しさん[sage]   投稿日:2015/07/26 18:27:45  ID:7EBqSyeY.net(7)
>242
> bulkの型がめちゃくちゃ

なるほど。

君は動的型付け言語における
オーバーロードの書き方を知らないようだ。

オーバーロードっていうのはね。
関数の引数(シグネチャ)が違う同じ名前の関数を複数作成できる機能
呼び出すときに、引数から適切な関数を判断する。

だけど動的型付け言語ではそれが出来ないから、
関数の内部で、引数が省略されたかどうかやその型を見て処理を変える。

このコードはそれをやってるんだよ。
コメント1件

246
デフォルトの名無しさん[sage]   投稿日:2015/07/26 18:57:52  ID:p/433SX/.net(6)
>245
反論の内容には同意するが、ほぼ無関係だな

まず問題の変数は引数ではないので、根本的に間違えてる
宣言時にbooleanで初期化した後、分岐して関数入れてる

また、短いスコープであれば問題にならない事が多いのも同意するが、
特定ブロックで使う物を、関数全体スコープで宣言してるので該当しないな

何より、オーバーロードをしようが、通常は実装は汚くはならない
普通は最初に適切に分けるからな

247
デフォルトの名無しさん[sage]   投稿日:2015/07/26 19:06:24  ID:7EBqSyeY.net(7)
> まず問題の変数は引数ではないので、根本的に間違えてる

引数でないから間違えというのは短絡的だな。
コード見ればわかるようにkey(引数)がnullかどうかによる処理だ

> 特定ブロックで使う物を、関数全体スコープで宣言してるので該当しないな
JavaScriptにブロックはない。だからスコープを重視するならば
先頭に書くのが正しい。(俺はスコープ無視するけどなw)

> 普通は最初に適切に分けるからな
最初に分けるのが必ずしも正しい訳じゃない。

コード短いんだし、直してみれば?
コメント1件

248
デフォルトの名無しさん[sage]   投稿日:2015/07/26 19:08:06  ID:7EBqSyeY.net(7)
> JavaScriptにブロックはない。
一応訂正しておくか、ECMAScript5の範囲においてはだ。

249
デフォルトの名無しさん[sage]   投稿日:2015/07/26 19:33:15  ID:p/433SX/.net(6)
>247
>引数でないから間違えというのは短絡的だな。
>コード見ればわかるようにkey(引数)がnullかどうかによる処理だ
だから何なんだとしか
引数でないのだから、オーバーロードの実装のためという言い訳はできない
他の型を意図的に代入し、使い回した時点で汚い

>JavaScriptにブロックはない
function、if、switch...ときちんとブロックはある上に、
スコープもライフタイムも違う

なんか前絡んできた人と同じ人っぽいからもう止めるよ
不毛だし
コメント1件

250
デフォルトの名無しさん[sage]   投稿日:2015/07/26 19:49:23  ID:EHWerROz.net
bulkの使いまわしはコミットログを見たけど理由がよくわからん

先頭にvarを固めているのはhoistingを理解していたからだろう
コメント2件

251
デフォルトの名無しさん[sage]   投稿日:2015/07/26 20:21:13  ID:7EBqSyeY.net(7)
>249
ん? 帰れ帰れw

252
デフォルトの名無しさん[sage]   投稿日:2015/07/26 20:22:00  ID:7EBqSyeY.net(7)
>250
> 先頭にvarを固めているのはhoistingを理解していたからだろう

この人は、hoistingを理解できないんだろうねw

253
デフォルトの名無しさん[]   投稿日:2015/07/26 20:26:36  ID:k1EUM6QH.net
なんでJQueryの実装をそんなにマンセーしたいのか理解できない。
ライブラリなんて小規模で作るもんだから、読みやすさという基準は自分の主観で決めるもんだし。
後付けの解釈を止めろよ。

254
デフォルトの名無しさん[sage]   投稿日:2015/07/26 20:59:57  ID:7EBqSyeY.net(7)
逆でしょ?
読みやすさという基準は自分の主観で決めるもんなのに
jQueryの実装をそんなに馬鹿にしたいのか理解できない。

255
デフォルトの名無しさん[sage]   投稿日:2015/07/26 21:26:25  ID:p/433SX/.net(6)
>250
hoistingはコード規約で予防しているという事かな?
それでも、宣言はブロックの先頭と制約するだけで十分な気がする
関数スコープに広げて宣言する理由がわからない

256
デフォルトの名無しさん[sage]   投稿日:2015/07/26 21:31:57  ID:p/433SX/.net(6)
ああ、意味がわかった
関数スコープで使用していた上に、ブロック内でも使用した場合か
それならバグになる可能性あるな

257
デフォルトの名無しさん[sage]   投稿日:2015/07/29 01:58:34  ID:CRqVMe5R.net
やっぱVBの配列(0)で1要素あるってバグの元だろ
引継いだコード前任者が全員間違えたまま使ってて戦慄した

258
デフォルトの名無しさん[]   投稿日:2015/07/29 09:27:40  ID:7C0TLIvw.net
まあ、多い分にはいいんじゃないの?
行番号付きだった頃から配列は1要素を予備とすることが多かったからねー。
C とかから入ると気になるだろうけど。
自分も今は気になるけどw

259
デフォルトの名無しさん[sage]   投稿日:2015/07/30 11:48:36  ID:kCCSv6BW.net
DBに予備項目を作って空を保つのならわかるけど
配列の予備って意味若ランナー

260
デフォルトの名無しさん[sage]   投稿日:2015/07/30 21:27:47  ID:kTMnRdAz.net
配列変数を空の状態またはその逆にするのが面倒なので0番目は使わずに取っておく

261
デフォルトの名無しさん[sage]   投稿日:2015/07/31 16:17:53  ID:Dkg4afbG.net
動的配列の扱いが内蔵とVariantに代入する配列(Variant配列ではなく)で挙動が違うから
Variantで統一するとvbsと扱い同じにできて捗る

262
デフォルトの名無しさん[sage]   投稿日:2015/07/31 21:11:17  ID:D+nD3a7O.net
絶望的なプログラマたち

263
デフォルトの名無しさん[sage]   投稿日:2015/07/31 21:48:20  ID:17HtGFaS.net
main(){
int* p=1;
...

264
群馬大学病院腹腔鏡手術後8人死亡事故[]   投稿日:2015/08/01 01:03:34  ID:djTLO4cBo
                                                    .

【速報】「生きるのに向いていないから」健康な24歳女性の安楽死が認められる!!


http://news.biglobe.ne.jp/trend/0630/toc_150630_9059532140.html

265
デフォルトの名無しさん[sage]   投稿日:2015/08/01 14:23:13  ID:aojbSuUF.net
*(int*)0=0;

266
デフォルトの名無しさん[sage]   投稿日:2015/08/01 14:44:38  ID:zTfC3ItF.net(2)
printf("AとBの積は593です");
もうアホかとなんのためのCなんだか

267
◆QZaw55cn4c [sage]   投稿日:2015/08/01 19:29:40  ID:KBiDhOrm.net
593 は素数なんだが‥
コメント1件

268
デフォルトの名無しさん[sage]   投稿日:2015/08/01 21:31:08  ID:cZ9y3hcR.net
そうすっうすね。

269
デフォルトの名無しさん[sage]   投稿日:2015/08/01 21:39:39  ID:5DNs6h6K.net
1*593

270
デフォルトの名無しさん[sage]   投稿日:2015/08/01 22:19:25  ID:zTfC3ItF.net(2)
>267
掛け算作ってみろって言ったらこれが出てきた
コメント2件

271
デフォルトの名無しさん[]   投稿日:2015/08/02 00:25:01  ID:2p0cp8/y.net
>270
最適化出来てる
100点
コメント1件

272
デフォルトの名無しさん[sage]   投稿日:2015/08/02 01:45:42  ID:MF9TQU9s.net(2)
掛け算作ってみろってのもおかしな物言いだな
そんなコミュ力だからおかしな物が出てくる

273
デフォルトの名無しさん[sage]   投稿日:2015/08/02 02:10:40  ID:u7Ju2wRn.net
>271
あれだと最適化しないコード作るほうが頭いるだろ
一文字づつあたらしいプロセス作って動かしてくとか?

274
デフォルトの名無しさん[sage]   投稿日:2015/08/02 07:33:48  ID:AHQOj1TU.net
>270
模範解答じゃん

275
デフォルトの名無しさん[sage]   投稿日:2015/08/02 17:23:58  ID:MF9TQU9s.net(2)
絶望って程でもない

276
デフォルトの名無しさん[sage]   投稿日:2015/08/02 18:37:05  ID:sH3CMGQ2.net
無駄な計算してないとか優秀賞だな

277
デフォルトの名無しさん[sage]   投稿日:2015/08/31 12:38:09  ID:B5sJg2ZW.net
>12
なんで先頭じゃダメなの?
蟹飯本では当たり前のように先頭でまとめて宣言してるからそれに倣って先頭で宣言してるけど
コメント1件

278
デフォルトの名無しさん[sage]   投稿日:2015/08/31 13:10:34  ID:KuTL4jkJ.net
>277
変数は使用する直前で初期化して使うべきだから
初期化と宣言が別だと必ず未初期化で使うバグが出る
また関数が長く分岐が多くなると初期化されてるか判断が難しくなる
変数のスコープは小さければ小さいほどいい
関数先頭に宣言するのは昔のC言語の制約だったと記憶してるが今は上記理由からやめるべき
コメント3件

279
デフォルトの名無しさん[sage]   投稿日:2015/08/31 15:56:13  ID:UXpAKMEr.net
>278
なるほどサンクス

280
デフォルトの名無しさん[sage]   投稿日:2015/09/01 20:57:53  ID:D3JacxmQ.net
>278
どこの説?

281
めんどいから@sc[]   投稿日:2015/09/02 12:55:43  ID:Xv52dDV3z
>278
> 初期化と宣言が別だと必ず未初期化で使うバグが出る
今時未初期化で warning 出ないコンパイラなんてあるのか?

コーディング規約で宣言時に必ず初期化しろなんてもんもあるが、
こんなことやると、コンパイラが発見できなくて、逆にバグにつながる気がするんだがな。

他の部分は「べき」じゃなくて「したほうがよい」程度ならば賛同する。
コメント1件

282
デフォルトの名無しさん[sage]   投稿日:2015/09/02 21:35:45  ID:SIr+PlfYs
「どこでも宣言」は反対だ、かえって行儀の悪いコードを助長する

// どうでもいいが、switch文の中で変数宣言するのは危険だよなぁ

283
sc とはめずらしい[sage]   投稿日:2015/09/03 08:44:26  ID:pCZUcMZ1/
>281
> コーディング規約で宣言時に必ず初期化しろなんてもんもあるが、
> こんなことやると、コンパイラが発見できなくて、逆にバグにつながる気がするんだがな。
スコープを十分小さくできていることが前提なんじゃないかな。
あと初期化ってのは、やたらと 0 とかを入れるんじゃなくて、後々の Assert に引っかかるような
値を入れるべきではないかと。
コメント1件

284
めんどいから@sc[]   投稿日:2015/09/03 12:34:59  ID:c6LlyVFnO
>283
assert に引っかかるような値を入れるのも正しいとは思うが場合によるはな。
void *a = NULL; // 使い回しなんて無い変数
a = malloc(1);
なんてコードを見る。しかも連続行でだぜ。なぜ、
void *a = malloc(1);
と書けないんだと。

初期値はちゃんと考えて、その場に応じた「正しい値」をセットしろと。

ぐち...
unsigned char *img = NULL; // 1200dpiのA3イメージ
img = (unsigned char*)malloc(size);
memset(img, 0, size);
memcpy(img, orgImage, size);
で、msec単位で処理速度あげるのに必死になってミドル作ってるやつのところに、
処理が遅いって文句言ってくるやつ ヽ(゜Д゜)ノ
結局アプリをレビューして、いらん memset() 削除させて、内製の memcpy() に置き換えさせたら、
そもそもミドル側のチューニングなしでもスペック満たせそうな。
(ドタキャンした1週間分の旅行代金穴埋めとまとめて休める期間作れと交渉中)

285
デフォルトの名無しさん[sage]   投稿日:2015/09/12 03:17:33  ID:k25bT+vJ.net
for ループから条件でgotoでforの外に飛んで帰ってもこないプログラム

286
デフォルトの名無しさん[]   投稿日:2015/09/12 04:01:54  ID:XAqQ9sMD.net
それ普通ですが
breakがまさにそういう動作だし、breakはgotoの一種と言われているわけだが
二重のforを一気に抜けるのにgoto使うとか普通のテクニック
return出来るならそっちのがいいけど

むしろforからgotoで抜けてまたgotoで戻ってくる方が恐ろしいが
そういうサブルーチン的な動作にgoto使われるとかなり鬱陶しいし
それでgotoが禁止されたわけだが

287
デフォルトの名無しさん[sage]   投稿日:2015/09/12 08:00:00  ID:TErXHjBS.net
for使ってるの?甘いね
プロは全部gotoしか使わないよ

288
デフォルトの名無しさん[sage]   投稿日:2015/09/12 09:09:13  ID:lTmP7o65.net
柔軟に環境に合わせられるのがプロ

289
デフォルトの名無しさん[]   投稿日:2015/09/12 09:59:18  ID:o99yCw3m.net(2)
真のプロには、製品の方が合わせてくる。

企画原案に意見を求められるし、監修を頼まれる。
コメント1件

290
デフォルトの名無しさん[sage]   投稿日:2015/09/12 10:01:01  ID:/tgR015i.net(2)
>289
それで真のプロのプログラマだと
どうなるわけ?
コメント2件

291
デフォルトの名無しさん[]   投稿日:2015/09/12 10:11:11  ID:o99yCw3m.net(2)
>290
その問題については既に解いてあるんだが、2chは数式を張り付けられないからなあ。
コメント3件

292
デフォルトの名無しさん[sage]   投稿日:2015/09/12 10:11:50  ID:/tgR015i.net(2)
>291
つまり解いてないってことかw

293
デフォルトの名無しさん[sage]   投稿日:2015/09/12 10:56:04  ID:8SKz5ytR.net(2)

294
デフォルトの名無しさん[sage]   投稿日:2015/09/12 11:30:03  ID:LQnjc3KY.net
一休「虎が屏風から出てくれば捕まえられるのにな〜ああ〜残念だなあ〜」
将軍「出したよ」
って状況?
コメント1件

295
デフォルトの名無しさん[sage]   投稿日:2015/09/12 11:38:50  ID:Xol1TNVu.net
>290
達人ともなれば、むしろタンスが小指に恐れをなし、というアレだよ。

296
デフォルトの名無しさん[sage]   投稿日:2015/09/12 12:07:10  ID:1pxDFhfx.net
>291
zipでくれ

297
デフォルトの名無しさん[sage]   投稿日:2015/09/12 18:16:31  ID:8SKz5ytR.net(2)

298
デフォルトの名無しさん[sage]   投稿日:2015/09/12 22:51:55  ID:QkMrh2wn.net
971 名前:名無しさん@七周年[] 投稿日:2006/11/11(土) 00:56:10 ID:M8+ahUZV0
自称スーパープログラマー某

強烈加齢臭
メール見ない メール無視
ドキュメント見ない ドキュメント無視
説明聞かない 説明無視
話聞かない 話無視
ガム→むっちゃー むっちゃー むっちゃー むっちゃー
煎餅→バリバリバリバリバリバリ
菓子パン→モグモグモグモグモグモグモグモグモグモグ
カップアイス→むっちゃー むっちゃー ペロペロペロペロ

フロアすべてに響き渡る ばかでかいくしゃみ 当然手でおさえない
半径10mで耳鳴り、ひどいと頭痛誘発

異音と異振動
ドスーン!ドスーン!ドカーン!ドカーン!
バコーン!バコーン!ズドン!  ズドン!
机が近いとマウスポインターが飛ぶ
誤操作誘発
書類だしたりしまうだけでドカンドカン

口と鼻から異音
ふんっっ
ふんっーーーーー  
マジでうっとおしい30秒ごと

備品破壊 貸与P C 破壊 他人のもの破壊

奴の作ったスクリプトとプログラムは使えない
バグりすぎ

299
デフォルトの名無しさん[sage]   投稿日:2015/09/13 00:10:23  ID:xBi8Z0XU.net
ストレス貯まるなそれは

300
デフォルトの名無しさん[]   投稿日:2015/10/16 11:13:43  ID:MgVZXFFO.net
結論:そんな奴はいない

301
デフォルトの名無しさん[]   投稿日:2015/10/17 10:29:18  ID:y7npm2M7.net
コメントが一切なくて、ものすこく複雑な処理をやっている。

302
デフォルトの名無しさん[sage]   投稿日:2015/10/18 01:32:01  ID:dIyeGV/1.net
ものすごく」の程度は人によるからなあ
複雑そうに見えてイディオム使ってるだけのもあるし
自動生成された物を見て複雑だなあって思ってる場合もあるし

303
デフォルトの名無しさん[sage]   投稿日:2015/10/18 08:42:48  ID:hNO3eRm0.net
他人のコード見てコメント無いだの少ないだの騒ぐ奴
本人はクソポエムみたいなコメント書く上にコメントの整備はしないし何がしたいのやら
コメント2件

304
デフォルトの名無しさん[sage]   投稿日:2015/10/18 22:58:23  ID:1iLNdMOK.net
>303
お前の環境にはそんな奴しか居ないってだけ。

305
デフォルトの名無しさん[sage]   投稿日:2015/10/19 03:05:21  ID:KzhVhXFy.net
更新履歴すら書くの忘れる
面倒というレベルじゃなく、忘れる
コメント1件

306
デフォルトの名無しさん[sage]   投稿日:2015/10/19 12:29:11  ID:rwl2uo8/.net
ああー俺もコメントポエム書きてえぇーーー
本当はポエマーなんだよな俺
俺だってソースにポエム埋め込みてーんだよ!

307
デフォルトの名無しさん[sage]   投稿日:2015/10/19 13:51:30  ID:taFAn/tB.net
>305
最近思うが、更新履歴、コメントはいらないと思う。
その代わりバージョン管理だけは、キッチリ機械的にやって欲しい。

更新履歴は忘れる奴が必ずいるから、更新履歴で探すと見つからずにハマる。
コメントもプログラマの現状の理解と感情で書いてあるので、変な先入観で見てしまいハマる時がある。

自分で書いていても、10年位経つと何書いているか解らない。
また、自分の名前が書いてあると、忘れた頃に質問が来る。

更新履歴、コメントは百害あって一利無しだと思う。
コメント1件

308
デフォルトの名無しさん[sage]   投稿日:2015/10/20 10:03:44  ID:ty6VD2oQ.net
>303
うちにも居るわ、コメント赤ペン先生

309
デフォルトの名無しさん[sage]   投稿日:2015/10/20 15:31:58  ID:mXSv7y9K.net
>307
コメントの付け方が下手なだけだろ

310
デフォルトの名無しさん[sage]   投稿日:2015/10/20 21:25:15  ID:4r71MZXj.net
/*
此処に入って来たらマジやばい。
誰も周りは助けてくれないし。

あのリーダの下は、本当に最悪。
もう、2度と一緒に仕事をしたく無い。
*/


当時、こんなコメントを読んで大変なやぁ…って思った。

311
デフォルトの名無しさん[sage]   投稿日:2015/10/21 01:07:37  ID:sxvP468z.net
/*
そのリーダーなわけだが。 ↑そりゃないだろー
引継ぎも満足にできねーで去りやがって
自身の無能を知ってゆっくり野垂れ死んでね
*/
みたいなしょーもない愚痴コメントって実際少ないよね

312
デフォルトの名無しさん[sage]   投稿日:2015/10/21 01:09:50  ID:VfFXTbSK.net
だってそんなコメント無駄だし、むしろコメントの質を下げる要因にしかならないじゃん

313
デフォルトの名無しさん[sage]   投稿日:2015/10/21 10:26:45  ID:ayvh7TPn.net(10)
こういうコードが入る時点で、
コードレビューも行われていないような
ところだろうなってわかるねw

314
デフォルトの名無しさん[sage]   投稿日:2015/10/21 10:33:35  ID:t8SS3rgX.net(6)
コードレビューに夢見過ぎ…

315
デフォルトの名無しさん[sage]   投稿日:2015/10/21 12:47:50  ID:ayvh7TPn.net(10)
夢じゃなくて品質を上げるのは
コードレビューしかないよ。

人によって生産性が100倍違うのも当たり前なのは
コードが違うからなんだし。

316
デフォルトの名無しさん[sage]   投稿日:2015/10/21 13:05:30  ID:t8SS3rgX.net(6)
コードレビューで品質が上がる…
ますます、夢見る夢子ちゃん確定の発言だな…
コメント1件

317
デフォルトの名無しさん[sage]   投稿日:2015/10/21 13:08:00  ID:FpYnt2Cv.net(3)
質を上げるんじゃない
質の低いコードの混入を防ぐんだ

318
デフォルトの名無しさん[sage]   投稿日:2015/10/21 13:20:09  ID:t8SS3rgX.net(6)
質の低いコード混入するのは室の低いマしか雇えないブラックだからだよ…
コメント1件

319
デフォルトの名無しさん[sage]   投稿日:2015/10/21 13:21:26  ID:ayvh7TPn.net(10)
>316
否定するなら理由を言えよw
何も言えないから説得力0なんだぞ

320
デフォルトの名無しさん[sage]   投稿日:2015/10/21 13:22:22  ID:ayvh7TPn.net(10)
>318
> 質の低いコード混入するのは室の低いマしか雇えないブラックだからだよ…

じゃあどうするかって話。

コードレビューしかないね。

321
デフォルトの名無しさん[sage]   投稿日:2015/10/21 13:24:43  ID:ayvh7TPn.net(10)
コードレビューするのはどの業界でも当たり前の話なんだけどね。
新聞社でも新人が書いた記事をそのまま出すわけ無い。

322
デフォルトの名無しさん[sage]   投稿日:2015/10/21 13:36:50  ID:t8SS3rgX.net(6)
いや、そんなに必死になって連投して否定しなきゃならないようなことじゃないから…
コードレビューは、より良いコードを生み出す為でなく、室の悪いマのリカバリをする
だけだって、言ってるだけだよ…

323
デフォルトの名無しさん[sage]   投稿日:2015/10/21 14:11:29  ID:ayvh7TPn.net(10)
質が悪いのを直せば、質が良くなるのは当たり前ですね。

あんたコードレビューして、あんたが直してるの?
質の悪いプログラマは成長しないの?

324
デフォルトの名無しさん[sage]   投稿日:2015/10/21 14:23:16  ID:t8SS3rgX.net(6)
だ・か・ら、質が良くなるんじゃなく、悪い質じゃなくなる=極普通、になるだけだよ…
未成熟なマなら成長したりするかもしれないけど、まあ、質の悪いマは多分成長
できなかったから、質の悪いマになったんであって、それが成長するというのは
見通し的に暗いと思うよ…

325
デフォルトの名無しさん[sage]   投稿日:2015/10/21 14:31:53  ID:ayvh7TPn.net(10)
えとなぁ、どんな優れた奴でも普通の時代がなかったわけじゃないんだよ。
駄目なやつがいきなり優秀になるわけないんだよ。
極普通になって、それから成長すれば良くなるだろ。

326
デフォルトの名無しさん[sage]   投稿日:2015/10/21 14:32:32  ID:ayvh7TPn.net(10)
だいたいな、悪いやつがなんでずっと悪いかって言うと、
それが悪いってわかってないからなんだよ。
それを教えるのもコードレビューなわけで。

327
デフォルトの名無しさん[sage]   投稿日:2015/10/21 15:01:27  ID:t8SS3rgX.net(6)
すまんな、あんた俺と違って幸せな環境にいるみたいだから、どこまで行っても平行線だわ…
コメント1件

328
デフォルトの名無しさん[sage]   投稿日:2015/10/21 15:36:18  ID:FAEyKeYo.net
相手が単に嫌いとか理解できないってコードへの無意味な批判が無くなれば、コードレビューもありだとは思うんだけどな。

俺はテストパターン増やしたくないから、ダメなら途中でreturn false
最後まで到達出来ればreturn trueする関数書くけど、
returnは必ず一つ、って人となかなか言い合いになる。
コメント3件

329
デフォルトの名無しさん[sage]   投稿日:2015/10/21 16:58:05  ID:FpYnt2Cv.net(3)
>328
MISRAで決まってるから仕方あるまい。
俺はその辺resultにNG入れておいて
resultがOKじゃなかったら残りの処理はスルーして最後にreturnで返すようにしてる。
業界によって作法が違うからいろいろあるよな。

330
デフォルトの名無しさん[sage]   投稿日:2015/10/21 18:10:39  ID:ayvh7TPn.net(10)
>327
コードレビューしないのが幸せってなんだそりゃw
お前の所はブラックなんだろうな。
コメント1件

331
デフォルトの名無しさん[sage]   投稿日:2015/10/21 20:13:39  ID:djlLkbUb.net(2)
>328
途中returnだからってパターン減るわけないだろ
コメント2件

332
デフォルトの名無しさん[sage]   投稿日:2015/10/21 20:17:59  ID:OBk5CbCK.net
教えて解るのなら誰も苦労していない。
解る人も少数ながら、もちろんいるが。

333
デフォルトの名無しさん[sage]   投稿日:2015/10/21 20:54:58  ID:ayvh7TPn.net(10)
>331
早期returnっていうのは、パターンを減らすのが
目的じゃなくて可読性を上げるのが目的。
可読性っていうのは人間にとっての読みやすさだから。

人間が読まないコードであるなら別にどんな書き方でもいいが、
そうじゃないだろう?
コメント2件

334
デフォルトの名無しさん[sage]   投稿日:2015/10/21 21:16:36  ID:djlLkbUb.net(2)
そうじゃないだろう?って俺に言われてもw

335
デフォルトの名無しさん[sage]   投稿日:2015/10/21 22:38:13  ID:/T8JjMZv.net
>333
確かに可読性は人間にとっての読みやすさだけど、
理由じゃなくてただ単語の意味を説明してるだけなのが笑える

336
デフォルトの名無しさん[sage]   投稿日:2015/10/21 23:31:28  ID:FpYnt2Cv.net(3)
returnが増えるほど可読性は下がる、という文化もある

337
デフォルトの名無しさん[sage]   投稿日:2015/10/22 00:05:08  ID:85+TyuI7.net(4)
可読性というか、一見上から下に素直に流れる関数のように見えて実は
文の最後にちょろっとreturnがあるのを見落とす、なんてのはあるね。

338
デフォルトの名無しさん[sage]   投稿日:2015/10/22 00:12:05  ID:T+i/NslY.net(3)
ねーよw

339
デフォルトの名無しさん[sage]   投稿日:2015/10/22 00:17:58  ID:85+TyuI7.net(4)
いや、俺はあるw

340
デフォルトの名無しさん[sage]   投稿日:2015/10/22 00:36:51  ID:T+i/NslY.net(3)
その理屈だと、そのreturnと同じ位置にi++とかあった場合、
それを見落とすんだろうなw

341
デフォルトの名無しさん[sage]   投稿日:2015/10/22 07:19:28  ID:cVNIxwjP.net
>331
減らないけど、記載するマトリックスは減るんだよ。
通るifとかswitchを列挙して、真の場合偽の場合を分けないといかんから、
頭でフラグ持ったとしても、通過する限り「処理なし」と書く必要がある。
処理なしと書く限り、処理なしのエビデンス取らなきゃならん。
それが嫌なら、通過もしないようネストを深くしなきゃならん。

>333
可読性ももちろん上がるな。対応する括弧を追う必要も無いし。
コメント1件

342
デフォルトの名無しさん[sage]   投稿日:2015/10/22 07:45:32  ID:ItL1bO9f.net
俺はすぐにreturnしちゃうけど、可読性は上がるよね
I/Fの仕様が変わった場合、戻り値の変更漏れとかたまにあるけど

343
デフォルトの名無しさん[sage]   投稿日:2015/10/22 07:58:12  ID:85+TyuI7.net(4)
>341

if (...) {
}
// 関数の終わり

だと管理しなきゃならなくて if (...) return; だと書かなくていいの?妙な規則だね。
ひとごとながら、if (...) return 関数(); とか大丈夫なのかと思ってしまった。
コメント1件

344
デフォルトの名無しさん[sage]   投稿日:2015/10/22 08:03:40  ID:+hTJzDQ0.net(2)
MISRA準拠のときに困るからreturnは複数書かないな

345
デフォルトの名無しさん[sage]   投稿日:2015/10/22 08:41:43  ID:RDDiuVvk.net
(関数){
hage
}

(関数)
{
hage
}
だとどっちがいいの?

346
デフォルトの名無しさん[sage]   投稿日:2015/10/22 08:50:50  ID:4CKbsFsK.net
コーディングルールにある通りでいい
なければ多数派に合わせるようにコーディングルールを決めてしまえばいい

347
デフォルトの名無しさん[sage]   投稿日:2015/10/22 09:17:53  ID:maFj6EVC.net
>343
一つならどちらでも書く必要があるよ。

条件1と条件2と条件3がある場合、
if 条件1
 処理1
else
 不処理フラグ
endif
if !不処理フラグ、条件2
 処理2
else
  不処理フラグ
endif
if !不処理フラグ、条件3
 処理3
endif
なら管理必要。

if 条件1
 処理1
 if 条件2
  処理2
  if 条件3
   処理3
  endif
 endif
endif
は、パターンは減るけど可読性悪すぎ。
コメント2件

348
デフォルトの名無しさん[sage]   投稿日:2015/10/22 09:49:22  ID:HZFkMara.net
>330
コードレビューしないことじゃなく、コードレビューして
「成長可能かもしれない奴が周りにいる」という
環境が幸せなんだよ…

349
デフォルトの名無しさん[sage]   投稿日:2015/10/22 09:59:20  ID:T+i/NslY.net(3)
>347
それ(後半のコード)を早期returnパターンにすると更にわかりやすくなる。

if ! 条件1
 return
endif

処理1
if ! 条件2
 return
endif

処理2
if ! 条件3
 return
endif

処理3

言語によっては、更に短くすることができる。わかりやすさがぜんぜん違うね。

unless 条件1 then return
処理1
unless 条件2 then return
処理2
unless 条件3 then return
処理3
コメント3件

350
デフォルトの名無しさん[sage]   投稿日:2015/10/22 15:28:35  ID:UfhH3fQc.net
>349
そうそう。だから割と俺は早期リターンでネスト深めずに処理出来るものはしたいんだよね。

351
デフォルトの名無しさん[sage]   投稿日:2015/10/22 22:05:36  ID:85+TyuI7.net(4)
>347
等価なのは後者なんだからやっぱりテストパターンは関係ないでしょ。
あとマトリクスと言ってるけど、もしかして前者の形で書いた場合は処理1を通過せずに
処理2を実行するケースも考慮しないとならないとか?

ツール使わずに手作業でC1カバレッジ管理しなきゃならないプロジェクトなんて
やったことないからよくわからないけど、大変だねw
コメント1件

352
デフォルトの名無しさん[sage]   投稿日:2015/10/22 23:53:09  ID:+hTJzDQ0.net(2)
>349
こっちの方が絶望的なコードに見える
コメント1件

353
デフォルトの名無しさん[sage]   投稿日:2015/10/23 00:40:43  ID:zprVcqwH.net(3)
>352
お前の目が腐ってるのでは?

354
デフォルトの名無しさん[sage]   投稿日:2015/10/23 00:41:38  ID:zprVcqwH.net(3)
基本的に腐ってる人っていうのは
ルールで決まってるから、そうなんだ。みたいに
ルールのためのルールを愛する。
自分で考える脳を持たない。

355
デフォルトの名無しさん[sage]   投稿日:2015/10/23 01:25:49  ID:m57abRZG.net
>351
だから後者はネスト深くて嫌いなの。
当たり前だろ。
通る限り、例え結果がわかりきってようがその分のパターンも書かなきゃならんし、
スタック壊れた時のことも考えにゃならん。

ツールがどうのとかMISRAがどうのいってるお偉方には意味ないの。
机の上で紙でデバッグできなければ意味がない、検算は手計算、の人らだよ。
コメント1件

356
デフォルトの名無しさん[sage]   投稿日:2015/10/23 02:16:55  ID:/EixmTmg.net
こういう派閥争いの結果、複数の形式が混ざった糞コードが生まれるのであった
コメント1件

357
デフォルトの名無しさん[sage]   投稿日:2015/10/23 06:14:19  ID:7M5zkgCU.net
モーゼ<俺は中道を行くぞー!バリバリ ヤメテ!>

358
デフォルトの名無しさん[sage]   投稿日:2015/10/23 07:59:46  ID:80H6ZXcx.net
>355
じゃあまとめると、>328で途中returnを使わないとテストパターンが増えるかのように書いて
いたのは、おまえが深いネストが嫌い+おまえのところの妙な管理 の合わせ技ってことね。
コメント1件

359
デフォルトの名無しさん[sage]   投稿日:2015/10/23 08:50:27  ID:37mdpbh4.net
#define HOGE 128
コメント1件

360
デフォルトの名無しさん[sage]   投稿日:2015/10/23 09:44:51  ID:CBW+Dc/b.net(2)
>358
何に噛み付いてるかわからんけど、増えるよ。

361
デフォルトの名無しさん[sage]   投稿日:2015/10/23 10:06:04  ID:zprVcqwH.net(3)
>356
この問題に関して言えば、どっちがいいかは
ツールで計測可能なので、それ持ち出せば一発だよw
コメント1件

362
デフォルトの名無しさん[sage]   投稿日:2015/10/23 12:07:57  ID:CBW+Dc/b.net(2)
>361
必要、だから、文書化されてたらノーカンだよ。そういう意味では本来。

363
デフォルトの名無しさん[]   投稿日:2015/10/24 01:19:57  ID:geIuzf9u.net(2)
>349
だせーから1行でretunrnできねーならガード使うな

364
デフォルトの名無しさん[sage]   投稿日:2015/10/24 02:07:32  ID:WDIk1BPV.net(7)
意外と盛り上がってて吹いた

if文のネストを減らすためにマトリクスで何がくるか特定して分岐させる

switch(state){

365
デフォルトの名無しさん[sage]   投稿日:2015/10/24 02:11:21  ID:WDIk1BPV.net(7)
書き損じた
a => 1 または 0
b => 2 または 0
c => 4 または 0
d => 8 または 0
として
state = a | b | c ・・・;
switch(state){

}
ってやつね
これでif文が綺麗に消えてくれる(ことが多い)

366
デフォルトの名無しさん[sage]   投稿日:2015/10/24 02:15:24  ID:WDIk1BPV.net(7)
んでここがちょっと言いたかったことだけど
このstate switchは当然状態の数だけ関数も長くなるんだが
この場合いくら長くなっても可読性は全く落ちないという特性がある
みんなで使って幸せになろう
コメント1件

367
デフォルトの名無しさん[sage]   投稿日:2015/10/24 02:18:17  ID:WDIk1BPV.net(7)
この場合エラー処理もえらい単純化できる
つまりdefault:に来たもの=エラーということ
最初に状態設計をきっちり行えばこの方法が今のところ最も効率が良いと
言ってしまおうかな

368
デフォルトの名無しさん[sage]   投稿日:2015/10/24 02:24:39  ID:ymg0YeVe.net(2)
>366
ifの代わりにswtchになってるだけじゃねーか。

こういうのは関数テーブル使えばいいんだよ。

369
デフォルトの名無しさん[sage]   投稿日:2015/10/24 02:59:11  ID:WDIk1BPV.net(7)
そいうことを言いたいわけじゃないんだがなあ
上でエビデンスの話が出たが
まさにswitch内で定義した状態の数だけパターンを取ればいいって単純化の話なんだよ
たとえばifで
if(a) x
if(b) y
と書くと2^2の4パターンだけど
この調子で増やしていくとどんな状態があるのか目視では見落としやすい

state swichなら以下の通りテストパターンと完全に一致する
state = a | b;
swich(state)
case a0b0: break;
case a0b1: break;
case a1b0: break;
case a1b1: break;
default: /*error*/ break;
}
つーかテストパターンを同時にを書いていく前提なら上で挙がってたコードは全部論外だろう
コメント1件

370
デフォルトの名無しさん[sage]   投稿日:2015/10/24 03:08:51  ID:ymg0YeVe.net(2)
そして関数テーブルにすると

1テストパターン = 1関数になるので
もっと単純化できるという話。

371
デフォルトの名無しさん[sage]   投稿日:2015/10/24 03:14:15  ID:WDIk1BPV.net(7)
関数テーブル覚えたての人なのかなあ
そういう言語機能寄りの話は今してないの判んないかな

372
デフォルトの名無しさん[sage]   投稿日:2015/10/24 03:29:27  ID:WDIk1BPV.net(7)
この方法は見ての通りコードレビューも短期間で終わるのが判ってもらえると思う
状態が一箇所にまとまってる
状態によって必要になる処理が一箇所にまとまってる
どういう条件でエラーになるか簡単に調べられる

設計書やテストパターンとも一致させやすい
全て一箇所にまとまってるのがポイント
結局これ以上の物はできないんじゃないかな

373
デフォルトの名無しさん[sage]   投稿日:2015/10/24 08:06:55  ID:0ZjLfKs0.net
テストケース数に合わせる為にロジックを分かりにくく記述する本末転倒手法

374
デフォルトの名無しさん[sage]   投稿日:2015/10/24 09:12:17  ID:TC4yVlx1.net
手段と目的をはき違える典型

375
デフォルトの名無しさん[sage]   投稿日:2015/10/24 09:20:03  ID:VUwmRE0S.net
>359
良く見るな。
括弧を章する俺かっけーってな奴。

376
デフォルトの名無しさん[sage]   投稿日:2015/10/24 09:22:43  ID:t+kkgTrx.net
テストファーストならそれもありだろ。ブラックボックスでいいんだから。

377
デフォルトの名無しさん[sage]   投稿日:2015/10/24 10:30:44  ID:ZlXT9FOV.net
ネストが増えるのは問題だけど
returnパスが増えるのは問題じゃないのかな

378
デフォルトの名無しさん[sage]   投稿日:2015/10/24 11:49:30  ID:obIKqu8m.net
returnパスが増えるのが問題だと思うのなら
returnの代わりに関数の最後にgotoしていると考えればいい。

if (...) return
hoge
hoge
return



if (...) goto last
hoge
hoge
last:
return

goto使うのが駄目ならbreakにすればいい。

do {
 if (...) break
 hoge
 hoge
} while(0)
return

見ての通りreturnは一つである。
これで解決する程度のことを問題視することに何の意味があるのか?
コメント1件

379
デフォルトの名無しさん[]   投稿日:2015/10/24 11:55:22  ID:geIuzf9u.net(2)
>369
なんで意味ないことするの?
同じもんを外に抜き出してるだけじゃん。

そもそも入出力のパターンはテストで確認すりゃいいんだから、コードをパターンと一致させるのは無駄としか言いようがない

380
デフォルトの名無しさん[sage]   投稿日:2015/10/24 20:55:59  ID:Kwmejtcx.net
>378
それで解決するなら最初からそう書いてればいいんじゃないの
コメント1件

381
デフォルトの名無しさん[sage]   投稿日:2015/10/24 21:00:18  ID:ab4ZAHgL.net
>380
いや、解らない?

returnを一つにするというのはこれらと同じように、
無意味なことだって言ってるんだよ。

382
デフォルトの名無しさん[sage]   投稿日:2015/10/25 07:35:45  ID:Ypes6KAb.net(3)
return複数あったらレビュー通らないじゃん
コメント1件

383
デフォルトの名無しさん[sage]   投稿日:2015/10/25 07:48:44  ID:5rFsh/xs.net
コーディング規約って、一種類しか無いとでも?

ゆとりって面倒臭いな。

384
デフォルトの名無しさん[sage]   投稿日:2015/10/25 10:47:02  ID:ffqR9+22.net(2)
コーディング規約の為のコードじゃなくて、なんのためのコーディング規約かを考えろよ
そんなだからクソコード量産するんだよ

385
デフォルトの名無しさん[sage]   投稿日:2015/10/25 11:28:29  ID:4coy8BX6.net(2)
性能が必要ないカテゴリでは性能を低下させるコードでも許容されるだけ
性能が必要なカテゴリではレビューでもreturnパスどうのより、そのコードが
速いかどうかだけが吟味される。

386
デフォルトの名無しさん[sage]   投稿日:2015/10/25 11:55:36  ID:ZLo4bLRN.net(4)
基本は可読性高いコードが評価高い
それでパフォーマンス悪くてもボトルネック部分の速度を改善すればいい
しかし速度重視の難解コードはクソソースと呼ばれ後ろ指さされる
速度はアーキテクチャで解決していくのがベストだわな
コメント1件

387
デフォルトの名無しさん[sage]   投稿日:2015/10/25 12:38:39  ID:4coy8BX6.net(2)
だから、それを待てるカテゴリは、元々性能が問題になるようなカテゴリじゃ
なかったというだけ、「次がある(キリッ」「後がある(キリッ」なんて言ってられる
生温いとこじゃないものも沢山ある。

388
デフォルトの名無しさん[sage]   投稿日:2015/10/25 12:56:40  ID:cc/DQ18H.net(3)
>382
こっちには、return複数あったらだめなんて言う
意味のないレビューをする人はいないんでねw

389
デフォルトの名無しさん[sage]   投稿日:2015/10/25 12:59:23  ID:cc/DQ18H.net(3)
>386
> しかし速度重視の難解コードはクソソースと呼ばれ後ろ指さされる

いつも思うんだが、速度重視したらなんで難解なコードになるのかわからん。

速度が速いコードっていうのは無駄がないコードなわけで、
普通は可読性が高いんだよ。


速度を速くするアルゴリズムがある場合で、そのアルゴリズムが
複雑な場合に限って、速度を重視したら難解になるんだが。
コメント2件

390
デフォルトの名無しさん[sage]   投稿日:2015/10/25 13:27:45  ID:OGZ3vopz.net
> しかし速度重視の難解コードはクソソースと呼ばれ後ろ指さされる

非プログラマか初心者が抱きがちな想像やな

>389
それな

391
デフォルトの名無しさん[sage]   投稿日:2015/10/25 13:36:24  ID:dX8FdDRX.net(2)
速度自体が無駄w
なんで初心者って無駄に速度にこだわるのw
コメント1件

392
デフォルトの名無しさん[sage]   投稿日:2015/10/25 13:58:48  ID:EgatYw+c.net
皆、自分の意見こそが正しく正義であると信じ、
他者を必要以上に攻撃する傾向がみられる
なるほどこれが宗教ってやつか
世界から戦争が無くならない訳だ

393
デフォルトの名無しさん[sage]   投稿日:2015/10/25 14:06:03  ID:ZLo4bLRN.net(4)
>389
例えば時間のかかるデータ取得が100個あるとする
速度重視の場合早い時点でスレッド作って先行処理しておく
実際値使う箇所では中でスレッド待ちしていてなんでわけわからないことやってるんだと言われる
データなんてGet回すだけだろと

アルゴリズム難解といえば自前のHashMapは最初わからんかった
文字列足しこんでへんなビット演算やって
コメントもなかったからあれはなかなか理解されない
コメント2件

394
デフォルトの名無しさん[sage]   投稿日:2015/10/25 14:19:23  ID:Ypes6KAb.net(3)
>393
スレッド使えるなんて羨ましい
こっちは標準Cライブラリどころかcrtすら使わせて貰えないから
RAMをクリアしてmain関数を自分で起こすところから書かなきゃいけない絶望的な状況
コメント1件

395
デフォルトの名無しさん[sage]   投稿日:2015/10/25 14:28:46  ID:ZLo4bLRN.net(4)
>394
組み込み系?
クラスも使えずレジスタがどうだとかリソース最小限に留めるとか無理だわ
基本は作りやすさ重視で必要に応じてチューニングが1番仕事しやすい

396
デフォルトの名無しさん[sage]   投稿日:2015/10/25 14:44:38  ID:cc/DQ18H.net(3)
>393
だからそれ、アルゴリズム変わってるじゃん。
馬鹿なの?
コメント1件

397
デフォルトの名無しさん[sage]   投稿日:2015/10/25 14:46:27  ID:GUBs2NMK.net
クソソース書いといてその言い訳に速度重視とかザコ過ぎない?
お前が速度なんて語るの百年早いのはそのクソソースに丸出しなわけで
よくあんなクソソース書いててそんな態度取れるなっていう不思議な子知ってる

398
デフォルトの名無しさん[sage]   投稿日:2015/10/25 14:50:33  ID:ffqR9+22.net(2)
>391
おまえは一生ソートに可読性の高いバブルソートでも使ってろよ

399
デフォルトの名無しさん[sage]   投稿日:2015/10/25 14:51:52  ID:ZLo4bLRN.net(4)
>396
アルゴリズム同一でと言った覚えないんだが?
むしろアルゴリズム同一で速度が飛躍的に上げれるならマジで教えて欲しいが

400
デフォルトの名無しさん[]   投稿日:2015/10/25 14:52:32  ID:Kc4QEJg+.net
16進数やビット演算とか使ってるコードは見にくいからクソソースでいいですか?
コメント2件

401
デフォルトの名無しさん[sage]   投稿日:2015/10/25 14:57:39  ID:k5OqwX9E.net
>400
マクロ被せれば見やすくなる

402
デフォルトの名無しさん[]   投稿日:2015/10/25 16:48:51  ID:h5QU0gDZ.net
マスクをtypedefしとけば良いんじゃないの。

403
デフォルトの名無しさん[sage]   投稿日:2015/10/25 17:17:54  ID:Ypes6KAb.net(3)
>400
何進数だろうが関数内にマジックナンバーは入れちゃダメだろうね
定数かマクロにして実行部とは分けて宣言・定義するようにしてるよ

404
デフォルトの名無しさん[sage]   投稿日:2015/10/25 21:29:44  ID:dX8FdDRX.net(2)
じゃあ何進数だったらマジックナンバー使っていいんだよ!

405
デフォルトの名無しさん[sage]   投稿日:2015/10/26 14:29:54  ID:o+3h9F6B.net
「定数は定義して使え」に対して

#define value_1 (1)
#define value_2 (2)

とかいう馬鹿もいるんだよな

406
デフォルトの名無しさん[sage]   投稿日:2015/10/26 14:33:27  ID:otoyrobt.net
#define value_one (1)
#define value_two (2)

これなら大丈夫(キリッ

407
デフォルトの名無しさん[]   投稿日:2015/10/26 17:54:07  ID:2NCHgOBb.net
#define ZERO 1
はGNUで見たことある。

408
デフォルトの名無しさん[sage]   投稿日:2015/10/26 18:15:12  ID:oKHb2SJo.net
マジックナンバーは基本だが定数を使った判定をあちこちに書かないことも重要
例えばファイルの存在チェックでファイルのビットフラグ立ってないことで判定
しかしフォルダも除外したい等仕様変更が予想される
その度多数の修正を入れるのは危険
isExist()などでラップして判定処理は1箇所にすると変更に強くテストも楽

409
デフォルトの名無しさん[sage]   投稿日:2015/10/26 23:04:21  ID:nye5D6dJ.net
マジックナンバーは必要悪でしょ。
周知されてて、全体で統一されてたら何も文句無いけどな。
日時未定を29991231で持ってるシステムに関わってたけど。

特定のビットが立ってないことと、ファイルの有無と、ディレクトリであるか否かはまた別問題ではないのだろうか。
isExistなのに、ディレクトリ除外しちゃうの?ライブラリなのに外から見た挙動変えちゃうの?って不安のほうが大きい。
そんなもんで判定せずに、判定箇所で切り分けるか、旧関数自体をassertで殺す方がマシ。
その度に多数の修正は躊躇なく入れるべき。

挙動を変えるのに、変えた意識が無い方が、
あり得ないくらい誰も原因に気づかない、どハマりする障害を起こす元。
コメント2件

410
デフォルトの名無しさん[sage]   投稿日:2015/10/27 01:11:27  ID:Ay4zuTZ6.net(4)
>409
例が悪かったからマイナンバー導入を例にする
従来は同一判定をequal()で中身は住所と指名で判定してたとしよう
この場合マイナンバー対応は中身をID比較にすればそれだけで対応完了
これが比較箇所に直接住所と氏名の比較を行っていた場合修正は時間がかかる
修正ソース毎にドキュメント書かないといけないプロジェクトでは発狂もの
言いたいのはやりたいことを外に出して実現手段は中に閉じ込めろってこと
要はカプセル化だが簡単なものだと忘れられることがよくある
コメント1件

411
デフォルトの名無しさん[sage]   投稿日:2015/10/27 07:32:20  ID:z76BTGB+.net(3)
>410
ダメ。
名前と住所で比較するロジックと、
マイナンバーで比較するロジックは別物。
それだけで対応完了にならないよ。
それでは、既存の比較するロジック全部洗って、それ呼んでる所を全部テストせなならん。
普通は、呼び出し側ソース修正と同じかそれ以上になるんだよ、ライブラリの挙動変更に対するドキュメントとテストって。
やりたい事をカプセル化するライブラリの、内部挙動が変わったらそれは最早カプセル化されてないとしか言いようが無い。

名前と住所ってのは、ユニークになるとは限らない情報だし、逆に歴なんか持ってたら2つ以上のレコードが一つを指すかもしれないレコードになるでしょ。
今まで同じだったけど今回からは違う人(田中一郎さんが昔住んでて、引っ越した後、今は別の田中一郎さんが住んでる)、や
今まで違う人だったけど、今回からは同じ人(同じ住所だけど、結婚して姓が変わってる)が出る改修はカプセル化失敗としか言えない。

まさにそういうシステム作ってたけど、「同一人物っぽい人」としか言えないから、警告しか出してない。

内部発番のシリアルのIDを比較していた所を、マイナンバーでひっかけるようにする、位の変更くらいじゃないの?その変更が通用するのは。
それでもパターンテストは必要。
呼び出し側を修正して、きちんと新しい関数が呼ばれている所からがテストのスタート地点。

修正ソース毎にドキュメントなんか普通作るよね。
波及コードだけどローレベルで担保されてるから大丈夫。は通用しない。

現実手段を閉じ込めるのは、同じ動きをする事が大前提。
コメント2件

412
デフォルトの名無しさん[sage]   投稿日:2015/10/27 07:44:38  ID:ecThD4uO.net
>411
理想はそうだけど現実解じゃないよそれ。
コメント1件

413
デフォルトの名無しさん[sage]   投稿日:2015/10/27 07:55:35  ID:GLkDzmBJ.net
いつのまに絶望的なコーディング論を紹介するスレになったのか

414
デフォルトの名無しさん[sage]   投稿日:2015/10/27 08:09:05  ID:HvIk3KYT.net(2)
>409
#define DATE_UNDEFINED 29991231
みたいな感じにマクロ化してあればいいだけじゃん?
マジックナンバーで許されるのは0と1くらいだと思う
コメント1件

415
デフォルトの名無しさん[sage]   投稿日:2015/10/27 08:17:38  ID:ExQg5u4l.net
括弧位つけろ

416
デフォルトの名無しさん[sage]   投稿日:2015/10/27 08:41:24  ID:z76BTGB+.net(3)
>412
実際にこのルールでやってるよ。

417
デフォルトの名無しさん[sage]   投稿日:2015/10/27 08:55:24  ID:xbbraB1s.net
UNREFFERENCE_PARAM(hCurInst)とかいう無意味マクロまーじ

418
デフォルトの名無しさん[sage]   投稿日:2015/10/27 09:39:20  ID:Ay4zuTZ6.net(4)
>411
また言葉足らずだったが話の前提として住所と氏名でユニークキーになる場合の話
勿論結果が修正前と異なるようなら別のメソッドにしたり置き換えたりが必要
あとソース修正毎にドキュメント作るのは金融くらいしか聞かない
テスト自動化してればシナリオ流して終わり
必要以上に金かけるよりほぼ間違いないでコスト削減が今の主流だと思う
スマホゲームでメンテ後に即メンテとかよくあるだろw
コメント1件

419
デフォルトの名無しさん[sage]   投稿日:2015/10/27 10:38:11  ID:z76BTGB+.net(3)
>418
医療だけど、特殊例だったのか。
だとすると、医療でそういう運用してても出る障害考えたら、世の中のプログラマは一体どんな気持ちでプログラムしてるかわからんな。
必要以上に金かけずにコスト削減して、障害出したら、それは必要な金だったんじゃねーかなぁ。
コメント1件

420
デフォルトの名無しさん[sage]   投稿日:2015/10/27 11:41:33  ID:Ay4zuTZ6.net(4)
>419
なるほど医療か
医療は周りにいなかったからわからなかった
医療だと慎重にならざるを得ないがバグ出ても修正すれば問題ない分野はそんなにテストに時間をかけない
毎回手動テストしてリリースするより自動テストでバグ出たら修正のほうがトータルコストはかからない
リリース優先か品質優先かは分野で全く異なる
ゲームで慎重なテストで時間使ってたら首飛ぶし逆もまた然り

421
デフォルトの名無しさん[sage]   投稿日:2015/10/27 11:52:03  ID:Ay4zuTZ6.net(4)
あと金の話だけどリリース時期は作る前から決まってる
そこがずらせないとなればバグのリスクとってもリリースを優先しないといけない
もしくは機能のそぎ落とし
3末リリースが遅れると決算への影響が大きいとかいろいろ事情がある
バグは出るものだからリリース後に改修すればいい
なかなか思ったとおりに仕事できないのは世の中の常w

422
デフォルトの名無しさん[sage]   投稿日:2015/10/27 13:00:39  ID:HvIk3KYT.net(2)
自動車とか産業機械とか医療は厳しいよね。
バグ流出したら普通に人が死ぬからなあ。

423
デフォルトの名無しさん[sage]   投稿日:2015/10/27 20:49:01  ID:5DDR/Lis.net
工作機械の制御も簡単に死人出るからなぁ…。

424
デフォルトの名無しさん[sage]   投稿日:2015/10/27 20:58:17  ID:ohI0PO9P.net
絶望的なソースコードか〜
俺のソースコードは、いつでもスパゲッティになってるな〜

425
デフォルトの名無しさん[sage]   投稿日:2015/10/27 20:58:59  ID:LyVSHq6d.net
FXのツールとかで時限で誤動作爆発させたら大量に電車に飛び込みそう

426
デフォルトの名無しさん[sage]   投稿日:2015/10/28 00:18:14  ID:v41KDir5.net
糞みたいなコードにはもれなく言い訳がついて来る
もし本気を出せば綺麗なコードが書けるかのような

427
デフォルトの名無しさん[sage]   投稿日:2015/10/28 07:34:37  ID:dd+rVZmo.net
つまり全てのコードにはもれなく言い訳がついて来る

428
デフォルトの名無しさん[sage]   投稿日:2015/10/29 12:41:13  ID:jYkr1Igb.net
最近JavaScriptのswitch(true)イディオムを知ったが
do { ... } while(false)と同じような邪悪さを感じた
コメント1件

429
デフォルトの名無しさん[sage]   投稿日:2015/10/29 12:56:10  ID:ywbX+Z6L.net(2)
でもどこが邪悪なのか言えない?

430
デフォルトの名無しさん[sage]   投稿日:2015/10/29 13:15:18  ID:l+jiBzQW.net
>428
>do { ... } while(false)

これ最適化でdoの中に入ってこないイカしたコンパイラに昔遭遇して
発狂したことがある

431
デフォルトの名無しさん[sage]   投稿日:2015/10/29 14:23:06  ID:ywbX+Z6L.net(2)
それは最適化じゃなくてバグだろ

432
デフォルトの名無しさん[]   投稿日:2015/10/29 18:25:23  ID:jIkfL+wY.net
マイナンバークラスから氏名クラスへの変換関数が存在した場合の問題点。

433
デフォルトの名無しさん[sage]   投稿日:2015/10/29 19:45:11  ID:lCX/HIGL.net
適用日付も引数にほしい

434
デフォルトの名無しさん[sage]   投稿日:2015/10/29 20:06:17  ID:K+6ZCqNU.net
期間持つのと、変換日時を任意に設定出来ることが最低条件かな。
変換ではなく、取得クラスになるだろうけど。

435
デフォルトの名無しさん[sage]   投稿日:2015/10/30 16:02:41  ID:ZjC0FpzU.net
>414
0すら定数定義させられた事があったわー

436
デフォルトの名無しさん[sage]   投稿日:2015/10/30 20:53:45  ID:gPbmFrsE.net(5)
#define NULL 0
コメント1件

437
デフォルトの名無しさん[sage]   投稿日:2015/10/30 21:45:25  ID:eJ2e2Hn1.net(2)
>436
これは正しいんだよなw

マジックナンバーはだめ
じゃあ数字に対して全部defineすればいいってわけじゃない。
何が数値そのまま書いて良くて、何がダメなのかもう少し良い説明ない?
コメント1件

438
デフォルトの名無しさん[sage]   投稿日:2015/10/30 22:31:55  ID:gPbmFrsE.net(5)
たとえばVBAの話になるが、VBAからシートの特定のカラムのセルを参照するには
Cells(行, カラム)やRange("行:カラム")のように指定する
これはカラムの配置を変えただけでプログラムが破綻することを意味する
さてExcelにおいてカラムの配置を変えたいことは良く思うことである
そこで1行目のヘッダとなる名前とカラム番号を連想配列に登録しておき
名前でカラム位置を特定するという方法がある
こういった対策をしとかないとVBAはマジックナンバーだらけのコードになる
対策したコードは処理の最初に名前から番号への変換のコストが発生するが
それは些細なコストである
・・・わかったかね

439
デフォルトの名無しさん[sage]   投稿日:2015/10/30 22:32:38  ID:eJ2e2Hn1.net(2)
長い

440
デフォルトの名無しさん[sage]   投稿日:2015/10/30 22:34:14  ID:WJjMGMJs.net
その値が何を意味してるのかを定義して同じ意味のものをまとめるだけ
もともと可読性と変更に強くするためにしてるのだから
あとdefineはundefで消すこともできるため難解コードは解析しづらい
定数もしくはenumを使うのがいい

441
デフォルトの名無しさん[sage]   投稿日:2015/10/30 22:47:48  ID:gPbmFrsE.net(5)
上のRangeの場合は"カラム行"だけどまあどうでもいいわな
さてCOMインターフェースの1つIDispatchはこれの逆をやっている
IDispatchは全て名前ベースでプロパティやメソッドを呼び出せるようになっている
が実はそれらには一意のIDが割り振られており、事前に名前からIDを特定しておくこともでき
うまく書けば名前からIDへの変換は1度のコストで済む連想配列を内蔵した形だ
ちなみにここで登場した連想配列に名前を格納する仕組みは
主に文字列リテラルとして実装されるが、これはマジックナンバーではない
これをマジックナンバーとみなしてさらに別名定義するアホはいないだろう

442
デフォルトの名無しさん[sage]   投稿日:2015/10/30 22:51:56  ID:gPbmFrsE.net(5)
GUIDという概念がある
コイツハマサニマジックナンバーデコノアイデーハセカイニヒトツシカナイコトガホショウサレルアイデーナノデアル
デモニンゲンハコンナモノイチイチオボエテラレナイカラマサニマジカルナウンヨウガナサレテイル

443
デフォルトの名無しさん[sage]   投稿日:2015/10/30 23:03:28  ID:gPbmFrsE.net(5)
マイナンバー制度という概念がある
主に国内でやりとりされることを想定した奴隷番号である
公開すると害があるらしく最後には官憲が動くかもしれない危険な番号として最近認知された

444
デフォルトの名無しさん[sage]   投稿日:2015/10/31 00:25:39  ID:kth+URB8k
Dim fileNo As Integer
Dim buf
fileNo = FreeFile
Open "test.txt" For Input As #fileNo
Do Until EOF(fileNo)
Line Input #fileNo, buf
Debug.Print buf
Loop
Close #fileNo

EOFとfileNoの関係がまったく意味がわからない
ようはこのコードはファイルを一行ずつConsoleに表示するがしいが...
逐一こんな感じだから激しくストレスがたまるので他の言語で同じことをしたほうがいい

445
デフォルトの名無しさん[]   投稿日:2015/10/31 01:58:43  ID:ZPajKskOk
動的言語のコードはおしなべてクソ

446
デフォルトの名無しさん[sage]   投稿日:2015/11/01 18:19:18  ID:tjf5Il2M.net
国民総背番号制という古来からの論争の種だったのだが,最近は抵抗運動はなかったのか?

447
デフォルトの名無しさん[sage]   投稿日:2015/11/02 00:51:12  ID:IGWJLfrm.net
そもそも既に番号振られてるよね、事実上、って気づいたからじゃない?

448
デフォルトの名無しさん[sage]   投稿日:2015/11/02 08:32:28  ID:jypI/AIk.net
マイナンバーの本体そのものは民主時代に通ってるがな
今騒いでるのは改正と称して悪用するための変更

449
デフォルトの名無しさん[sage]   投稿日:2015/11/03 11:58:57  ID:gpyirAk3.net
急に政治臭くなった

450
デフォルトの名無しさん[sage]   投稿日:2015/11/03 12:02:06  ID:Cvaj+aOI.net
そういやテストデータの人名に政治家やら備考欄に真実()入れてきた外注があったわ

451
デフォルトの名無しさん[sage]   投稿日:2015/11/03 13:50:13  ID:i649bMmf.net
ワロタ
俺も真似しよう

452
デフォルトの名無しさん[sage]   投稿日:2015/11/12 07:13:20  ID:b0I3If93.net
>437
function pi() の中で3.14。
function month() の中で12。
function hour() の中で24。
こんなん、常数にする?俺はしない。
コメント1件

453
デフォルトの名無しさん[sage]   投稿日:2015/11/12 10:32:56  ID:iZs6jymX.net
>452
お前誰だよw お前ごときがしないからってどうでもいいわ。

一般的にそれらは定数に良くなっている。
コメント2件

454
デフォルトの名無しさん[]   投稿日:2015/11/13 22:33:07  ID:Ztn/Y8j7.net
>453
日本人か?
コメント1件

455
デフォルトの名無しさん[sage]   投稿日:2015/11/14 00:40:00  ID:H4hEy7EE.net
>454
日本人だが?

456
デフォルトの名無しさん[sage]   投稿日:2015/11/14 00:40:45  ID:iuWQx+BT.net
pi みたいな浮動小数は用途による。

457
デフォルトの名無しさん[sage]   投稿日:2015/11/14 14:17:51  ID:fm2vcKXc.net
>453
#define マクロのない言語は哀れだね
コメント1件

458
デフォルトの名無しさん[sage]   投稿日:2015/11/14 14:34:31  ID:bF3EVbPf.net(3)
いや、マクロが欲しければm4みたいな汎用のマクロプロセッサを使えばいいし、
単なる文字列置換であるマクロは、コードの静的解析能力を下げ
(例えばプリプロセッサを通さないと構文エラーかどうかわからない)
エラー時の情報をわかりにくくしたり、分かりにくいバグの元になったりするので
排除する方向にあるんだけど。

C言語でもdefineよりもconstやinlineを使うのが常識だしさ。
コメント1件

459
デフォルトの名無しさん[sage]   投稿日:2015/11/14 14:36:18  ID:bF3EVbPf.net(3)
おっと、軽く探したら#defineはダメだっていういい記事見つかったので紹介

http://d.hatena.ne.jp/takehikom/20140807/1407420548

460
デフォルトの名無しさん[sage]   投稿日:2015/11/14 16:30:08  ID:EuJ2f84U.net
健全でない言葉が含まれているため表示しません 内容を確認する

461
デフォルトの名無しさん[sage]   投稿日:2015/11/14 16:36:15  ID:Wquzevs4.net(2)
コンパイラさんがどういうことやってるかわかってない人が

462
デフォルトの名無しさん[sage]   投稿日:2015/11/14 16:53:07  ID:bF3EVbPf.net(3)
コンパイラじゃなくて、余計なことをやってる
プリプロセッサが原因だけどねw

463
デフォルトの名無しさん[sage]   投稿日:2015/11/14 16:56:04  ID:Wquzevs4.net(2)
プリプロ 何ですか それ
な方たちがやってるんでは

464
デフォルトの名無しさん[sage]   投稿日:2015/11/14 20:11:50  ID:MSvtHxf5.net
>457
extern constにしておけば実体持ってるライブラリを入れ替えるだけで
piの中身が3.14なのか3.1416なのか3.1415927なのかを切り替えてリンクできる
組み込みなんかではここのセクションに特別な絶対アドレスを振っておいて
Sフォーマットのファイル作ってから後で値を書き換えたりする

465
デフォルトの名無しさん[sage]   投稿日:2015/11/15 10:36:26  ID:Xo3Zb28z.net
>458
いいこと言うね
使う側からは便利に使える反面複雑な使い方してると解析不可
defineはundefで消せるからコンパイル順通りに解析していかないとそのdefineは別の定義かもしれない
コメント1件

466
デフォルトの名無しさん[sage]   投稿日:2015/11/16 21:09:30  ID:nSSKBNI/.net
>465
プリプロセッサだけ通せばいいだけだろ
解析不可とかアホか
コメント2件

467
デフォルトの名無しさん[sage]   投稿日:2015/11/16 23:26:56  ID:ozqa//mh.net
>466
小さい規模ならまだしも業務用のでかいのに毎回やるのは非効率
後続の言語が切り捨てたとおり現状マクロは負の遺産
今の時代はフレームワーク使って読みやすいそこそこのものを短期で作ることが求められてるからね

468
デフォルトの名無しさん[sage]   投稿日:2015/11/16 23:43:11  ID:+ZSgD8xZ.net
今時の言語にプリプロとか無いよな

469
デフォルトの名無しさん[sage]   投稿日:2015/11/17 04:44:48  ID:91LH4JJH.net
>466
プリプロセッサを通した結果に対して、
コンパイラがエラーを出したとき、

プリプロセッサを通す前のコードみても意味がわからんし、
通した後のコードは自分が書いたコードじゃないし。

プリプロセッサを通した結果に対するエラーから、
プリプロセッサを通す前のコードをどこをどう直せばいいのか
そのつながりを人間が判断するしかなく意味不明になるんだよ。
人間が頭の中で逆プリプロセッサをしなくちゃいけなくなる
コメント1件

470
デフォルトの名無しさん[sage]   投稿日:2015/11/17 19:22:30  ID:5ylAZ1WH.net
>469
IDEと相性がわるいからね
コメント1件

471
デフォルトの名無しさん[sage]   投稿日:2015/11/17 20:09:29  ID:/RqDC1dK.net
>470
IDEはまだましよ。
そういう変則的なものであっても頑張って対応してるから。

問題はテキストエディタを使ってる場合。
そういう細かいところの対応までできてないからなぁ。

472
デフォルトの名無しさん[sage]   投稿日:2015/11/21 13:08:19  ID:kjUNvnu/.net
C ( or C++ ) のソースで

#if 0

#endif

でコメントにするのはやめて欲しい。
コメント2件

473
デフォルトの名無しさん[sage]   投稿日:2015/11/21 13:34:03  ID:HbP98col.net
SublimeTextなどを使って範囲選択して
一気に行頭に//を入れたほうがいい。
コメント1件

474
デフォルトの名無しさん[sage]   投稿日:2015/11/21 19:54:17  ID:1zgwhmXP.net
>473
え,便利じゃないか?

475
デフォルトの名無しさん[sage]   投稿日:2015/11/22 00:13:36  ID:G5+yWL2h.net(2)
>472
理由を述べよ。
単に嫌うのは、食わず嫌いと一緒。
コメント1件

476
デフォルトの名無しさん[]   投稿日:2015/11/22 00:20:00  ID:QRD2Q6hy.net(2)
>475
自分で考えろ。
考える前に聞くのはバカ。
コメント1件

477
デフォルトの名無しさん[sage]   投稿日:2015/11/22 00:23:37  ID:G5+yWL2h.net(2)
>476
単なる食わず嫌いか、納得した。
コメント1件

478
デフォルトの名無しさん[]   投稿日:2015/11/22 00:25:10  ID:QRD2Q6hy.net(2)
>477
バカのうえに早合点のトンチンカンで三冠王だな。

479
デフォルトの名無しさん[sage]   投稿日:2015/11/22 00:27:24  ID:DDbKY7qA.net
俺の考えが正しいことが証明されたな。
俺の考えはググった程度じゃわからんよ。

480
デフォルトの名無しさん[sage]   投稿日:2015/11/22 18:12:36  ID:DWgTsAXH.net
>472
この方式はテキスト直編集や文字列検索の側面から懸念される
しかしメリットもあってコードの切り替えがしやすい
ifdefなら複数箇所修正も一気に元に戻すことも可能
誰かの修正でも消した人間がやってくれていれば修正当時の状態に戻せる
また修正が重なると//はインデントずれるがifの方はズレの発生もないメリットもある
俺はそのコードを検証等で使用する可能性があるかどうかで使い分けてる

481
デフォルトの名無しさん[sage]   投稿日:2015/11/22 20:44:55  ID:eRa8fYqU.net
デメリットもブロックコメントと同等かそれ以下だと思うがな。
まぁ、ネストが重なるとわかりにくくなるから1レベルに限定されたコメントの方が
いいという意見もあるだろうけど。

482
デフォルトの名無しさん[sage]   投稿日:2015/11/23 11:31:07  ID:UYP2wI74.net
うちは//も複数行にわたるブロックコメントも禁止だし
コードのコメントアウトは#if 0 〜 #endifが推奨になってる
Eclipse使ってればこっちの方が楽
コメント1件

483
デフォルトの名無しさん[sage]   投稿日:2015/11/23 12:46:13  ID:JP3x9Qw8.net
>482
その規約をどうにかしたほうがいいんじゃないか

484
デフォルトの名無しさん[sage]   投稿日:2015/11/23 17:25:09  ID:pAAcXv2U.net
#if 0じゃ意味が判らんから定数使えや、とエスパーしてみた

485
デフォルトの名無しさん[sage]   投稿日:2015/11/23 17:28:56  ID:I/A9+n8X.net
またそれかw

定型句は意味がわかるから問題ないんだよ。

486
デフォルトの名無しさん[sage]   投稿日:2015/11/24 00:07:51  ID:XdzjW60L.net
#define NOUSE 0

#ifdef NOUSE
  :
  :
#endif

487
デフォルトの名無しさん[sage]   投稿日:2015/11/24 01:12:38  ID:7a+QKmK9.net
NOUSEってなんや?ってなるから意味ない。


488
デフォルトの名無しさん[sage]   投稿日:2015/11/24 01:16:48  ID:XArPpnwT.net
#if 1 // どっちにしようかな
//速いけど詠み難いコード
#else
//遅いけど判り易いコード
#endif

489
デフォルトの名無しさん[sage]   投稿日:2015/11/24 07:23:59  ID:vXeBzDQX.net
バージョン管理システムのチケット番号でifdefしてるのは見たことあるわ。
果たして本当に、それでそのチケット番号の状態に戻るのかは誰もやってないと言う。
コメント3件

490
デフォルトの名無しさん[sage]   投稿日:2015/11/24 19:08:07  ID:1vZRhgQx.net
>489
同じ個所弄ったらネストしていくのか…?

491
デフォルトの名無しさん[sage]   投稿日:2015/11/25 21:24:16  ID:MMxhWoOe.net
>489
戻るかどうかは二の次
一番重要なのはどんな修正をしたかということ
自分はいなくなってもコードは10年20年先の人間も目にすることがあるのだから
バージョン管理でやればいいという声もあるが果たしてそれ20年後に見れるか疑わしい
国際標準でなければ廃れると見たほうがいい
やっておいて損はない
コメント1件

492
デフォルトの名無しさん[sage]   投稿日:2015/11/26 02:18:49  ID:oAsmLq1R.net(5)
> バージョン管理でやればいいという声もあるが果たしてそれ20年後に見れるか疑わしい

絶対確実に見れる。

493
デフォルトの名無しさん[sage]   投稿日:2015/11/26 02:19:46  ID:oAsmLq1R.net(5)
見れるというのは読めるということ。

無駄な情報ばかりで、重要な事がわからなければ、
それは「見れない」という。

494
デフォルトの名無しさん[sage]   投稿日:2015/11/26 02:23:40  ID:oAsmLq1R.net(5)
見れるというのは探し出せるということでもある。

ある事柄に関する修正は、一箇所で終わるとは限らない。
複数ファイルを同時に修正することがある。

複数のファイルに分散された、ある事柄に修正をもれなくすべて確実に
把握できる保証がなければ、それはどんな修正をしたかがわからないということ。

これはファイルのコメントなんかじゃ絶対にわかりっこない。
それはバージョン管理ツールでなければ不可能である。

495
デフォルトの名無しさん[sage]   投稿日:2015/11/26 02:36:19  ID:xxU4HAk9.net
20年後の人「なんだこの糞コードは・・・当時でもバージョン管理くらいあっただろ!?」

496
デフォルトの名無しさん[sage]   投稿日:2015/11/26 02:42:53  ID:oAsmLq1R.net(5)
クソコードとバージョン管理に直接の関係はない。
だが、バージョン管理を使えないような奴は
クソコードを書くというのは大体あっている。

497
デフォルトの名無しさん[sage]   投稿日:2015/11/26 06:03:03  ID:veIBFmvN.net(3)
>491
CVSは25歳
SVNは15歳
Gitは10歳

バージョン管理ツールでやればいいな
コメント1件

498
デフォルトの名無しさん[sage]   投稿日:2015/11/26 07:12:00  ID:8nlnWQy6.net(6)
>489
バージョン管理システムは手段であって、
本来はその改修モジュールの対応前、対応後のソース一式がまとまってれば文句はないんだよ。
対応後の一式があれば、それは次の対応前の一式だし。
そこをサボって1つのファイルに前後を入れるから意味がわからなくなる。
コメント1件

499
デフォルトの名無しさん[sage]   投稿日:2015/11/26 10:10:24  ID:oAsmLq1R.net(5)
>498
小さいアプリならそれでいいだろうけど、
複数人が開発している大きなアプリだと、

1. どうやって各自の変更をまとめるのか?
2. 改修は何百、何千となるが(少なくともバグの数と機能の数以上になる)、それだけの数の「一式」を欲しいのか?

それを実現してくれる手段がバージョン管理システム
コメント1件

500
デフォルトの名無しさん[sage]   投稿日:2015/11/26 10:34:31  ID:8nlnWQy6.net(6)
>499
大規模開発してるけど、
各自の変更自体は、そもそもがバージョン管理システム以前の仕組みとして、
変更仕様書書いてスタンプリレーして台帳化までしてるので問題ない。

それだけの数の一式、と言えども、サブシステム毎には別れるし、その中でのモジュール毎にも別れる。
あるモジュールの、rev xとrev yは持っておく、って事だよ。

出荷は、モジュール単位でも出せるけど、基本はサブシステム毎で、さらに言えばパッケージ毎の定期出荷にのせるべきだな、うちは。
サブシステムA ver 1.1は
 モジュール1 rev 1
 モジュール2 rev 1.1
で出来てて、
パッケージ ver 1.2は
 サブシステムA ver 1.1
 サブシステムB ver 1
で出来てるって台帳がある。

実現は紙で1990年代から出来てる。
それを便利にするのがバージョン管理システム。
手段じゃない。道具。
コメント2件

501
デフォルトの名無しさん[sage]   投稿日:2015/11/26 11:38:27  ID:GuU354a3.net(2)
楽したつもりで道具に使われてる奴等多すぎ
コメント1件

502
デフォルトの名無しさん[]   投稿日:2015/11/26 12:23:36  ID:Vr8PtFgH.net
言っとくが楽してるつもりは一切ないからな
コメント1件

503
デフォルトの名無しさん[sage]   投稿日:2015/11/26 13:09:36  ID:XoDybxjV.net
>500
では聞くが、

その台帳を検索するのに、どれだけの時間がかかるのか
考えたことはあるかね?


思い出すだろう? 大量の台帳の山から
その時の情報を探すのに数日かけたことを。
コメント1件

504
デフォルトの名無しさん[sage]   投稿日:2015/11/26 13:12:08  ID:d/ZxLVhV.net(2)
>500
ソフトウェア会社なのに、それをコンピュータで
実現してないってのがダメな所だよなw

自分の仕事も効率化出来ない(コンピュータ化できない)
会社に他社の仕事の効率化なんてできっこないわけさ。

それをコンピュータ化したのがバージョン管理ツールだからね。
コメント1件

505
デフォルトの名無しさん[sage]   投稿日:2015/11/26 13:16:44  ID:d/ZxLVhV.net(2)
>501
> 楽したつもりで道具に使われてる奴等多すぎ

>502
> 言っとくが楽してるつもりは一切ないからな
だよなw 同じことができる道具。それがあって、
楽できない道具を使うの(手動で管理w)が偉い!って思っちゃう。
体育会系かよw エクセル使うとズル呼ばわりする老害と一緒だ。

同じ道具なら、より効率的に早く楽にできる方がいいじゃん?
バージョン管理ツール使えば、台帳なんかで情報を調べるだけじゃなく、
その時のソースコードに戻すこともまで簡単にできる。


一番重要な事をお忘れか?

最終的に九州から北海道まで歩いていけるから問題ない?
それだけでは全然足りない。どれだけの時間がかかるまで考えてこそプロ。
コメント1件

506
デフォルトの名無しさん[sage]   投稿日:2015/11/26 13:19:52  ID:MDkVIHz0.net(2)
まあ、あれだよな。

使える形で保存されてないデータは、使われない。
使える形で保存されているならば、使われる。

使われないデータをたくさんためても
自己満足程度の意味しかないわけで。

507
デフォルトの名無しさん[sage]   投稿日:2015/11/26 13:30:59  ID:GuU354a3.net(2)
>505
それで新幹線と飛行機と船で行けたとして、
「着くのが早いから」って理由で飛行機に乗るのはいいと思うけど
「マイル貯めるために」とか「ボンバルディアの機材こそ至高」ってのは
なんだかなあ、って話っしょ
こういうのはその時にベターなもの使えばいいの
コメント1件

508
デフォルトの名無しさん[sage]   投稿日:2015/11/26 15:44:00  ID:MDkVIHz0.net(2)
>507
例え話はわかった。具体的にはどういうことかって話だ。

バージョン管理を使わないと凄く非効率だから
殆どの場合はバージョン管理ツールを使う方がいい。

ただしバージョン管理を使えないという呆れるほど技術力が低くて
使えないものを大量に生成し多くの無駄に時間がかかって、あとで
自分らが苦しむだけなんだが、それを許容するのならば、
手動で管理しするのがベター(笑)ってことだよね。

509
デフォルトの名無しさん[sage]   投稿日:2015/11/26 15:44:29  ID:uY2sGP6D.net
>497
VSSやCVSやSVNやら今使ってるの皆無だろ
以降の際に履歴捨ててるだろうし
標準化されない限り結局は短命
Gitも20年先使えてるかわからんしな
コメント1件

510
デフォルトの名無しさん[sage]   投稿日:2015/11/26 15:44:54  ID:8nlnWQy6.net(6)
健全でない言葉が含まれているため表示しません 内容を確認する

511
デフォルトの名無しさん[sage]   投稿日:2015/11/26 15:54:46  ID:8ZZhqZvl.net(5)
>509
使ってないだけで、使える。

移行の際に履歴を切り捨てるのは、お前の問題であって、技術の問題ではない。

他に標準化されているものなどない。
紙の管理? ソースコードのコメント? どれも標準化されてない。
今のデファクトスタンダードがgit

Gitから移行することはあっても、Gitがなくならないことは
1982年(33年前)に登場したRCSがまだ使えることからも
歴史が証明してくれている。
コメント2件

512
デフォルトの名無しさん[sage]   投稿日:2015/11/26 16:42:28  ID:veIBFmvN.net(3)
20年が短命ならOSは夭逝だな

513
デフォルトの名無しさん[sage]   投稿日:2015/11/26 18:24:28  ID:8nlnWQy6.net(6)
>511
うちはパッチ当ててでも使うだろうな。
多分デファクトスタンダードはあるけど、
デファクトスタンダードなんてどうでも良いと思うよ。
管理できれば良いんだから、無理に流行りに乗らなくても。

あと、gitはおそらく向いてないな。うちには。cloneに時間やたら掛かりそう。

514
デフォルトの名無しさん[sage]   投稿日:2015/11/26 18:51:30  ID:8ZZhqZvl.net(5)
> 管理できれば良いんだから、

だからまたw

管理できるのは最低限の条件で、
それを素早く確実にやるのがプロでしょ。

出来ればいいんでしょじゃないってw

> あと、gitはおそらく向いてないな。うちには。cloneに時間やたら掛かりそう。
ん? cloneするのは最初の一回だし、ネットワークが遅いなら
特定のディレクトリからでもcloneできるが。
コメント1件

515
デフォルトの名無しさん[sage]   投稿日:2015/11/26 20:14:42  ID:lIaAWQ2A.net(5)
>511
使ってないなら見てないんだから活用できてないわな
大きな修正にはバージョン管理は当然としてソースにも履歴を残してリスク軽減が当然だと思うんだけどな
そのバージョン管理のソフトも必要なときには使えなくなってる可能性を考えるべきよ
その履歴が標準化されてれば将来もコンバートできたりするんだろうがな
何かに過信してリスク分散もできない会社のシステムなんて怖くて使えないわ
コメント1件

516
デフォルトの名無しさん[sage]   投稿日:2015/11/26 20:32:29  ID:8ZZhqZvl.net(5)
>515
卑怯ですね。

バージョン管理ツールには、凄くいろんなことを求めて
それが出来ないと悪く言うくせに、

最初から何も出来ないものは、出来なくても文句言わないんですか?

> 何かに過信してリスク分散もできない会社のシステムなんて怖くて使えないわ

リスク管理っていうのはね。コストを考えなきゃだめなの。
ソースに履歴を残すことのデメリットを計算に入れてないから、
あんたの考え方は、考えるに値しないの。
コメント1件

517
デフォルトの名無しさん[sage]   投稿日:2015/11/26 20:54:13  ID:8nlnWQy6.net(6)
>514
何言ってるかわからん。
バージョン管理システムに反対してるつもりはない。使ってるし。
ソースにコメントで残す事を肯定もしてない。
素早く確実に出来るに越したことは無いよ。

出来れば良いんだよ。手段なんだから。
やらなくて良いことをやらないと決めるのもプロの仕事。
そう決めるにあたって、もちろん使ってみたり選定したりしてるけどね。
その選定や決断や調査にも工数かかるの。≒お金なの。
知らんで言ってるわけではない。

cloneするのは最初の一回、な。
常駐が入れ替わる度に数ギガのトラフィックか。

空論も良い所。
一回まともな体制のある程度の規模の開発に関わったらどう?

518
デフォルトの名無しさん[sage]   投稿日:2015/11/26 20:59:18  ID:sSZIJZMB.net
お、このスレでは日頃のストレスをぶつけ合えばいいのか?

519
デフォルトの名無しさん[sage]   投稿日:2015/11/26 21:13:24  ID:lIaAWQ2A.net(5)
>516
悪く言うつもりはないよ
ただあまりに頼りすぎてるとそれがダメになった時に崩壊するってこと
原発然りデータ分散保存してなかった会社然り
コストカットをやり過ぎた結果が全電源喪失なったの忘れたの?
東日本大震災あってコストカットのために東京にしかデータ残してなくて全データ喪失しましたで顧客は納得するの?
二重に安全策を行っておくくらい基本じゃないか?
余談だが俺の会社に20年前のバージョン管理の履歴残ってるプロジェクトひとつもない
コメント1件

520
デフォルトの名無しさん[sage]   投稿日:2015/11/26 21:17:07  ID:8ZZhqZvl.net(5)
なんかいきなり原発の話しだしてきワロタw

それとはぜんぜん違うだろう。

521
デフォルトの名無しさん[sage]   投稿日:2015/11/26 21:26:25  ID:lIaAWQ2A.net(5)
コストを削った代償の話で何も的を外してない
二重の安全策を怠った最も悲惨な事例だよ
高台に電源装置置いとけば事故は防げたんだから
過信といえばまだ二十年もたってないがアップルが経営危機に陥っていた時期に誰が10数年先にマイクロソフト抜いて世界一の企業になると予測できたか?
世の中本当に何が起こるかわからないよ

522
デフォルトの名無しさん[sage]   投稿日:2015/11/26 21:36:45  ID:8ZZhqZvl.net(5)
大きく的はずれだね。
必要ないと思っているものを削減するのと
必要あるものを削減するのとではぜんぜん違う。

また今度は関係ないアップルの話しだすし。
次はISISが戦争を始めるとかいいだしそうだ

523
デフォルトの名無しさん[sage]   投稿日:2015/11/26 21:55:52  ID:veIBFmvN.net(3)
原発おじさんはVCSの謎の突然死よりも
部下がこのスレに書き込んでいないかを心配した方が良いと思う

524
デフォルトの名無しさん[sage]   投稿日:2015/11/26 21:58:43  ID:lIaAWQ2A.net(5)
言いたいのは未来を予測できない以上二重以上の策を提供すべきということ
その必要かどうかはこの先ソースを保守する人間が判断するのであって今の人間が決めれることじゃない
20年前のプロジェクトの修正履歴見れるか試みたらすぐわかる話

525
デフォルトの名無しさん[sage]   投稿日:2015/11/26 22:23:35  ID:jGsOshgR.net
サンプルでないコーディングで
foo だ bar だ hoge だのと

526
デフォルトの名無しさん[sage]   投稿日:2015/11/26 22:40:27  ID:8nlnWQy6.net(6)
>519
うち、20年前のはコメントでの変更履歴がまだあるわww
未だ動いてるのが凄いんだけど。
コメント1件

527
デフォルトの名無しさん[sage]   投稿日:2015/11/26 23:09:16  ID:lIaAWQ2A.net(5)
>526
うちもコメントやifdef等で残ってるのがある
修正入る部分にこれがあると何となく当時の背景が見えてくるから助かってる
バージョン管理は次々鞍替えして数年分しかない
どこが早く履歴の標準規格化してくれたらもっと分かりやすく差分や経緯を見れるんだけどな

528
デフォルトの名無しさん[sage]   投稿日:2015/11/27 07:13:44  ID:vrZOFMnm.net(5)
> 修正入る部分にこれがあると何となく当時の背景が見えてくるから助かってる

過去のバージョン見ればいいだけでは?
コミットログを見れば、何をしたのかもわかるし。
コメント2件

529
デフォルトの名無しさん[sage]   投稿日:2015/11/27 07:14:59  ID:vrZOFMnm.net(5)
> どこが早く履歴の標準規格化してくれたらもっと分かりやすく差分や経緯を見れるんだけどな

差分の見方とコミットログの書き方を勉強しようよw

一体、何を標準化しろと言ってるのかわかんね。
お前なら、どういう規格を作るのか言ってみなさい。
コメント1件

530
デフォルトの名無しさん[sage]   投稿日:2015/11/27 07:29:24  ID:8OTsJ1NX.net(7)
>528
もちろん過去のバージョンと台帳と突き合わせて見ればいいんだろうけど、
そこに変更が入っている事、がソース変更時に読めるのはわかりやすいよ。
今でもチケット番号だけ書いてる。
チケット番号書いとけば、コミット時に拾ってくれて、チケットに対象として載るしね。
コメント1件

531
デフォルトの名無しさん[sage]   投稿日:2015/11/27 07:45:03  ID:vrZOFMnm.net(5)
> そこに変更が入っている事、がソース変更時に読めるのはわかりやすいよ。
ほぼすべての行に変更は入る。最初から何万行というコードが一気に出来上がるわけじゃない。

> 今でもチケット番号だけ書いてる。

ソースコードには、コードの意味ではなくてなぜそうしているか?を書く。

変更の理由という形ではなくて、なぜそうしたのか?を書かなければいけないほど
重要なことであれば、その理由を書いた上でチケット番号に関連付けるのは普通。

その場合は、コメント(チケット番号)は変更した理由という履歴ではく、
現在の姿として、なぜそうしているかという形で書けばいい。

変更したものを全部残すという考え方をしていると、現在のコードではなく
過去に存在し今は存在してないコードに対しての履歴まで残ってしまうだろ。
不要な履歴コメントは消すべきだ。
コメント1件

532
デフォルトの名無しさん[sage]   投稿日:2015/11/27 08:24:51  ID:8OTsJ1NX.net(7)
>531
何が言いたいかわからん。
関数の頭のブロックにもチケット番号列挙してあるんだけど、
古すぎるコメントはチケット番号だけ残して消せば良いんだよ。

何故そうしているか、はコーダさん用のコメントだよね。
それらは本来、変更仕様書に書いてあるべき内容。
重要なことも何も、ソース改修はすべて重要な事だからチケット切って文書化すべき。

何故そうしているか、だけでは片手落ちも良い所。
○○年度○月○○法改正により計算方法が変更になり、下記の計算方法で計算する必要がある
 以下計算式 資料 No.xxxxx Pp y-z及び…
なんて完璧にコメント書いてくのも、文書の方に書けと言いたくなる。

一切残さない、もありなくらい。
コメント1件

533
デフォルトの名無しさん[sage]   投稿日:2015/11/27 08:44:05  ID:vrZOFMnm.net(5)
1998年度○月○○法改正により計算方法が変更になり、下記の計算方法で計算する必要がある
 以下計算式 資料 No.xxxxx Pp y-z及び…


これは消していいだろう?
コメント1件

534
デフォルトの名無しさん[sage]   投稿日:2015/11/27 08:47:54  ID:vrZOFMnm.net(5)
>532
> 何が言いたいかわからん。

ソースコードに余計なコメントを書くな。
変更履歴も書くなって話だよ。

仕様は仕様書に書いてあるんだから、
documentディレクトリの○○テキスト参照って書けばいい。
仕様が新しくなったら、新しい仕様のファイル名に書き直すだけ。

修正のたびに行を増やす必要はなくなる。
コメント1件

535
デフォルトの名無しさん[sage]   投稿日:2015/11/27 10:41:14  ID:8OTsJ1NX.net(7)
>533
1998年度以前のデータが二度と確実に入って来ないのであれば消しても良いと思うけど、基本は残すべきだと思う。もちろん文書に。
コメントとして処理内容を書くのであれば、これくらい書かないと片手落ち。
不足のあるコメントは余計なコメントに等しいよ。

>534
だから、チケット番号で良いって言ってるんだけど。
文書載せられないようなトラッキングシステム使ってたらすまん。

536
デフォルトの名無しさん[sage]   投稿日:2015/11/27 12:04:27  ID:2nzZgJ9X.net
そもそもチケットがない

537
デフォルトの名無しさん[sage]   投稿日:2015/11/27 16:09:25  ID:nnLHIxqV.net(3)
>530
ソースコードに書かれたチケット番号をBTSが拾ってくれるの?
というか拾って何になるのか判らないけど
コメント1件

538
デフォルトの名無しさん[sage]   投稿日:2015/11/27 16:31:27  ID:de7c81om.net
チケット=作業、作業が終わるタイミング=コミットなのだから、
チケット番号(≒Issue番号)はコミットログにつけるもんだと思うが?
特に重要な事に関しては、Issueに対してソースコードで注釈入れるけどな。

Issue駆動で開発すると

1. 新たなIssue(バグ報告や機能追加など)を作成する
2. それに対してのプルリクエストを作る
3. そのプルリクエストに1つまたは複数のコミットが含まれる。
4. そのプルリクエストをマージするとIssueが閉じられる。

という流れになる。

またプルリクエストっていうのは(Issueもだけど)、掲示板みたいなもので
それに関しての情報を時系列に会話するように記録できる。

最終的な修正内容をプルリクエスト(会話部分じゃなくて主文)に書いてそれをコミットすれば、
ソースコードのコミットログとして修正内容がバージョン管理される。
あとから修正を追いかけたいときはコミットログを見れば修正内容がわかる。
リンクも記録されてるから、コミットログからプルリクエストにもIssueにたどり着けるって寸法

これがgithubを使った主な開発のワークフローね。

539
デフォルトの名無しさん[sage]   投稿日:2015/11/27 17:35:57  ID:8OTsJ1NX.net(7)
>537
拾ってくれるよ。コミット時に。
ソース管理もバグトラックも出てくる帳票も全部連携してる。
コミット時にも書けるけどね。
どの関数に手を入れたかわざわざ手で書かなくても良くなってるのと、
ソースとリリースノートだけ読んでもある程度わかるように。

あと、逆にリリース用チェックアウトした時にリビジョン等のスタンプも押される。
コメント1件

540
デフォルトの名無しさん[sage]   投稿日:2015/11/27 18:19:01  ID:G3gCBxYm.net
手動でソースコードに変更履歴書いて
古いコードを残す文化とまるで違うw

541
デフォルトの名無しさん[sage]   投稿日:2015/11/27 18:29:07  ID:nnLHIxqV.net(3)
>539
チケット番号←→コミットログ←→変更ファイルで芋づる式に取り出せる情報なのに
人間が変更ファイルをマーキングして周ってるのか
本人が言ってるならそうなんだろうけど随分変なやり方してるね
コメント1件

542
デフォルトの名無しさん[sage]   投稿日:2015/11/27 20:07:14  ID:8OTsJ1NX.net(7)
>541
正確には変更ファイルにマーキングしてる訳じゃないよ。
変更箇所にマーキング入れてるだけ。

いつでもdiff取れるわけではないからね。
コメント1件

543
デフォルトの名無しさん[sage]   投稿日:2015/11/27 20:15:00  ID:D0U2RhLm.net(8)
> いつでもdiff取れるわけではないからね。

いつでもdiff取れるようにしなさいよw
あほだなぁ。
コメント1件

544
デフォルトの名無しさん[sage]   投稿日:2015/11/27 20:41:52  ID:nnLHIxqV.net(3)
>542
納得した
そういうやり方ならありかもね

つってもソースコードから参照されてるチケットが陳腐化してないか
一々管理しなきゃならない不毛さを思うと
その時間でコメントを真面目に書けよって思うけどねw

545
デフォルトの名無しさん[sage]   投稿日:2015/11/27 21:17:32  ID:DVR9xOkV.net(3)
>528
その時コミットログ見れればそれでベストだが環境移行等で見れなくなった時の話
>529
差分やコミットログをどんな環境でも見れるためのファイルフォーマットだよ
ファイル仕様が決まれば別のバージョン管理ソフトも必ず対応するからOS変わろうがツール変わろうが将来見ることができるだろう
コードが理解不能になって作り直しってのはよくあるからな

546
デフォルトの名無しさん[sage]   投稿日:2015/11/27 21:34:46  ID:D0U2RhLm.net(8)
> その時コミットログ見れればそれでベストだが環境移行等で見れなくなった時の話
見れなくならないように、ちゃんと環境移行すればいいだけ

> 差分やコミットログをどんな環境でも見れるためのファイルフォーマットだよ
差分はgit diffでテキスト形式に変換される。
gitじゃなくてもすべてテキスト形式に変換できる。
テキスト形式が見れない環境など無い。
コメント1件

547
デフォルトの名無しさん[sage]   投稿日:2015/11/27 21:59:12  ID:DVR9xOkV.net(3)
>546
同じところにも存在してればなんとかなるかもしれんが配置変わったり消したりするのは普通に発生する
その時見れないのでは話にならない
古いプロジェクトやったことある人間ならわかると思うが修正履歴が完全に残ってすぐ見れるなんて夢物語
ドキュメントなんてないしあっても嘘八百
ソース=仕様ってのしかお目にかかったことないわ
10年くらい放置されてて突然手を加えるとなったときには開発環境が動かせないとかなw
コメント2件

548
デフォルトの名無しさん[sage]   投稿日:2015/11/27 22:03:24  ID:8OTsJ1NX.net(7)
>543
そりゃまあ、もちろんそうだけどね。それが実現するなら構わんけど。
地震が起きて、停電は起きるわ、窓ガラスは割れるわ、
支社とネットワークが上がらないわ、端末の何割かが壊れるわ、
なんやかんやで大変な事になっても
「今差分取れないし履歴も読めないのでわかりません、復旧まで待ってね」って投げちゃえるなら全部電子媒体で持ってて、必要な時に必要な分を随時取り出してもいいだろうね。
コメント1件

549
デフォルトの名無しさん[sage]   投稿日:2015/11/27 22:07:56  ID:D0U2RhLm.net(8)
>548
火事になって会社焼けたら困るなら、
別の所にあるHDDとコンピュータを使えばいいのでは?
コメント1件

550
デフォルトの名無しさん[sage]   投稿日:2015/11/27 22:09:31  ID:D0U2RhLm.net(8)
紙媒体だと、燃えたら全損だからな。
バックアップも取れないだろうし。
コメント1件

551
デフォルトの名無しさん[sage]   投稿日:2015/11/27 22:10:31  ID:D0U2RhLm.net(8)
>547
だから、デジタルで記録された、現在動いている
ソースコード以外役に立たないんだよw.
いくら紙の資料があっても、それが最新とは限らないからね。
コメント1件

552
デフォルトの名無しさん[sage]   投稿日:2015/11/27 22:11:26  ID:D0U2RhLm.net(8)
>547
> 古いプロジェクトやったことある人間ならわかると思うが修正履歴が完全に残ってすぐ見れるなんて夢物語

古いプロジェクトからずっとバージョン管理してるわw

修正履歴が残ってないのは、バージョン管理していない頃と、
紙媒体で履歴を保存していたものだけ。
コメント1件

553
デフォルトの名無しさん[sage]   投稿日:2015/11/27 22:14:12  ID:D0U2RhLm.net(8)
地震でてんやわんやですが、
「差分取れるし、履歴も読めます。ただ、沢山の紙の資料の中から
探すのに時間がかかるのでちょっと待ってください。
パソコンを直すよりも時間がかかりますがねwww」
コメント1件

554
デフォルトの名無しさん[sage]   投稿日:2015/11/27 22:16:58  ID:D0U2RhLm.net(8)
俺なら、地震で仕事にならないなら、
別の場所に支社があるんだろう?
そこに仕事まわすだろうな。

デジタルデータなら共有も簡単なので、そっちで差分見ればいい。
紙に保存した資料に頼ってるから、余計大変なことになってるわけで。

命の危険もある中で、地震で散らかっている倉庫を探しまわって
仕事をする必要はない。優先順位を考えれば当然そうなる。
コメント1件

555
デフォルトの名無しさん[sage]   投稿日:2015/11/27 22:28:38  ID:DVR9xOkV.net(3)
>552
紙で履歴保存してた頃にソース記述しとけば今でも見れたわけよ
俺は履歴は現行ソースと同等レベルで重要と思ってる
履歴がなくてコメントもろくにない中データ保存に分割してよくわからん計算してる理由わかるやつなんかそうそういないわ
わかった時には脱帽したよフロッピー先輩w
履歴あればすぐにわかったんだろうがな
今の時代にデータ保存にそんなことしない無理すぎた

556
デフォルトの名無しさん[sage]   投稿日:2015/11/27 22:47:37  ID:upceL5UO.net
つ ランプ型秘密分散法

557
デフォルトの名無しさん[sage]   投稿日:2015/11/27 23:01:18  ID:8OTsJ1NX.net(7)
>549
火事になっても大丈夫なように複写は他の所にも保管はしてあるよ。

>550
お前コピー機も知らないの?

>551
それは管理の仕方次第

>553
探さなくても台帳、リリースノート、変更仕様書、等々キングファイルに綴じてあるからすぐ見つかるよ。

>554
サブシステム毎に担当わかれてるからね。
こっちの命の危険なんか関係ないよ。
客先にはどんどん怪我人搬送されてたり、自家発電切れそうで縮退運転始まったり、
それこそこっちが一人二人死んだ位どうという事は無いよ。ただの労災。
命を預かる物作ってるのに、その責任に自分の命を代えられないほど情けない人間でもない。

558
デフォルトの名無しさん[sage]   投稿日:2015/11/28 00:28:53  ID:Fdg/GjsY.net
支社があるような会社の運用ではないように見えるのだが
コメント1件

559
デフォルトの名無しさん[sage]   投稿日:2015/11/28 08:03:00  ID:ozKXYRIx.net(2)
老害ってほんとうに嫌なものだ。
コメント1件

560
デフォルトの名無しさん[sage]   投稿日:2015/11/28 12:25:04  ID:THprgENb.net
>558
平時とは違うよ。
それこそ電子化されたもの見りゃいいからね。
電話が復帰したら関西に投げたし。
当日翌日があんな状態になってもちゃんと回っただけいい方だと思うけど。

>559
古い物を知らん奴が、解決策も無く古い物は良くないと言ってもなんの説得力も無い。
中学生の政治への憤りみたいに見える。

561
デフォルトの名無しさん[sage]   投稿日:2015/11/28 17:31:18  ID:hiaEqByC.net
資産を異なるメディアでバックアップする事と
ソースコードからドキュメントを自動生成する事は完全に別問題なんだけどね
今後者のアプローチとして突っ込みが入ってるのに
なんで災害を強調するの?

562
デフォルトの名無しさん[sage]   投稿日:2015/11/28 19:20:09  ID:W/xTcAqm.net(2)
災害だと体験した人が少ない。

それは「俺にはわかるがお前らにはわからんだろ」
という上から目線をいうことができるということを意味する。

わからんと思うことなら説明するのが筋なんだが、
説明ができないので、別の方法で代用する。

それが「お前らにはわからんだろ」という言葉で
圧力をかけること。そのために災害を強調している。
コメント1件

563
デフォルトの名無しさん[sage]   投稿日:2015/11/28 22:46:57  ID:ozKXYRIx.net(2)
何の根拠もなしに、古いものを知らないと断定出来る才能自体が老害だとは思う。

564
デフォルトの名無しさん[sage]   投稿日:2015/11/28 22:57:48  ID:W/xTcAqm.net(2)
>562はこういう喩え話でも説明できる。

あるとき若者が戦争についてあれこれ議論しているとする。
戦争について興味が無い人が多い世の中で素晴らしいことだが
そこで老人が現れて一言言う。


「戦争を実体験していないお前らに何がわかる?」


これでもう議論は止まってしまう。わからないのは事実だし
それはどうしようもないこと。その老人に勝つことは出来ない。

これは老人が正しいことを意味するわけじゃない。
例え老人の言うことが100%間違っていたとしても、
「お前らに何がわかる?」と言われれば反論できない。

議論の内容ではなく、その外側から圧力をかけて
黙らせているだけにすぎない。実に便利で姑息な手段だよ。

565
デフォルトの名無しさん[sage]   投稿日:2015/11/28 23:14:55  ID:tSvPCfh1.net
姑息か?

566
デフォルトの名無しさん[]   投稿日:2015/11/28 23:19:08  ID:fFSPKhVt.net
ジジイに叱られて黙る奴w

567
デフォルトの名無しさん[]   投稿日:2015/11/29 01:31:27  ID:XQ9qPP+R.net
ここまで構成管理という言葉なし。

レベル低すぎ。

568
デフォルトの名無しさん[sage]   投稿日:2015/11/29 08:50:40  ID:Q4OmYaLr.net(2)
何で、発作のようにはねっかえって来てるのかわからん。
システムも、アナログな管理でも、管理さえ出来てれば良いよね、ただの運用のための道具、手段だから。
ってだけの話でしょ。

よほどなんか負い目あるの?
コメント1件

569
デフォルトの名無しさん[sage]   投稿日:2015/11/29 09:27:52  ID:X6CLD+vb.net
無駄な労力を使わせているのが問題かと。

570
デフォルトの名無しさん[sage]   投稿日:2015/11/29 13:49:38  ID:Q4OmYaLr.net(2)
無駄じゃ無いじゃん

571
デフォルトの名無しさん[sage]   投稿日:2015/11/30 15:53:15  ID:XLc7iLvb.net
おっ 無駄か無駄じゃないかの水掛け論か?

572
デフォルトの名無しさん[sage]   投稿日:2015/11/30 16:31:16  ID:JF8UCarw.net(6)
ほんとね、理由言わずに無駄っていうやつ、何なんだろうねw
水掛け論始めたいのかってな。

573
デフォルトの名無しさん[sage]   投稿日:2015/11/30 16:33:31  ID:JF8UCarw.net(6)
>568
> システムも、アナログな管理でも、管理さえ出来てれば良いよね、

管理できるのは最低限で、効率的に管理して
コスト削減するのが、システム化の目的の全てでは?

当たり前すぎて、これだけで論破(笑)出来てしまう気がするが。
コメント1件

574
デフォルトの名無しさん[sage]   投稿日:2015/11/30 17:26:53  ID:L/K7X1IT.net
>573
その、最低限が業種によって違うよね。
って話してるのに、何言ってるの?
コスト削減、無駄の排除とそれは相反しないよ。
たとえれば、命綱はかける手間が無駄だから省略、作業場所に敷くマットは高いので敷かない、すべてロボットで窓ガラス拭きます!なんて話だよ。

その上で窓ガラス拭くならロボットで良いし、拭けないなら拭けるまで待っても死人が出ないからそれでいいね、って話だし、
災害時用の電波塔なら、拭けないなら拭けるまで待つなんて出来ないんだからいざという時は人が作業できるように体制は保持しようね、って話なんじゃん。

全然ソースコード関係ないけど。
コメント1件

575
デフォルトの名無しさん[sage]   投稿日:2015/11/30 17:37:12  ID:JF8UCarw.net(6)
>574
じゃあ文句言う対象は俺じゃねーだろ。

「無駄」と言った奴に対して、
最低限は業種によって違う。
無駄じゃないかもしれないだろって
説教たれろよ。

一般論でしか無いし全く無意味な説教だがな。
コメント1件

576
デフォルトの名無しさん[sage]   投稿日:2015/11/30 17:50:09  ID:JF8UCarw.net(6)
管理さえできていればいいよね・・・そこで思考停止
管理できるのは当たり前で、効率的に管理するのが重要・・・思考停止していない。
コメント1件

577
デフォルトの名無しさん[sage]   投稿日:2015/11/30 19:42:10  ID:Psvq4v1+.net(2)
>575
何をそんなにいきり立ってるの?
明後日のカイゼンかなんかを提案して怒られて拗らせてるの?

>576
管理さえ出来ていれば良いとしか言いようがないでしょ。
もしアホ揃いで紙運用回す能力もないなら、それは「紙では運用管理出来ない」んだから、管理出来ていない≒何らかのソフトで運用しなければならない、だよね。
まんま同じで、システムだけでは回らないのであれば、それは「システムでは運用管理出来ない」なんだから、紙モノも残さんといかんな、って話じゃん。
何も否定してないのに、アホなの?

全部手段で道具で、目的は「満足に管理して業務を回すこと」だよね。
思考停止でも何でもないよ。
コメント2件

578
デフォルトの名無しさん[sage]   投稿日:2015/11/30 19:44:53  ID:JF8UCarw.net(6)
>577
> 何をそんなにいきり立ってるの?

俺に言うべきじゃないことを俺に言うからじゃん。

> 明後日のカイゼンかなんかを提案して怒られて拗らせてるの?
お前の思い込みって、ほんと面白いよなw そんなの実経験から思いつくの?w
コメント1件

579
デフォルトの名無しさん[sage]   投稿日:2015/11/30 19:45:36  ID:JF8UCarw.net(6)
>577
だから管理できるのは最低限だって。

ここから更に効率が良くてコストも低い方法に変えていくの。
コメント1件

580
デフォルトの名無しさん[sage]   投稿日:2015/11/30 21:27:42  ID:Psvq4v1+.net(2)
>578
俺に言うべきこととかどうでもいいよ。
よっぽど自己評価高いのな。

実体験から思いつくよ。よくこの類のダメ出しはするから。

>579
何言われてるか理解できなければいいよ。
結果論として無駄に効率が悪くて無駄にコストがかかる運用なんて、その最低限を満たして無いよね、って話。

581
デフォルトの名無しさん[sage]   投稿日:2015/11/30 22:55:34  ID:5dGYmvKM.net
VCS標準化おじさんに原発おじさんに
面白い人がよく集まるスレですね

582
デフォルトの名無しさん[]   投稿日:2015/12/01 06:12:31  ID:9xHpez8hw(3)
ほんま殺伐としとるな。

583
デフォルトの名無しさん[sage]   投稿日:2015/12/01 09:43:08  ID:vya/mPuO.net
導入コストっつーか慣熟期間に一時的に落ちる効率が
導入後に取り返せる見込みがない場合ってあるよな。
太陽光発電システムを数年スパンで丸ごと入れ替える
みたいな、全然元が取れてないパターン。

584
デフォルトの名無しさん[]   投稿日:2015/12/01 17:01:30  ID:9xHpez8hw(3)
試してないけどどうやろこれ

Windows 8 風のWebサイトを構築できる「Metro UI CSS」
http://www.softantenna.com/wp/software/metro-ui-css/

585
デフォルトの名無しさん[]   投稿日:2015/12/01 17:01:53  ID:9xHpez8hw(3)
あっスレミスったサーセン無しで

586
デフォルトの名無しさん[sage]   投稿日:2015/12/01 17:07:22  ID:N36zTOa2.net(2)
俺が正しい
俺だけが理解している
俺の意見が理解できないやつはクソ

という論調の書き込みは読むに値しない
例え正しいことが書いてあったとしてもな
コメント1件

587
デフォルトの名無しさん[sage]   投稿日:2015/12/01 17:55:19  ID:d/SZPXKT.net
>586
それで、その意見は正しいのかね?
コメント1件

588
デフォルトの名無しさん[sage]   投稿日:2015/12/01 18:18:42  ID:N36zTOa2.net(2)
>587
正しくないぜ
当然じゃないかハハハ( ´∀`)

589
デフォルトの名無しさん[]   投稿日:2015/12/03 15:32:59  ID:i4g9lAHf.net(2)
hoge[1] = 89123;
hoge[2] = 123;
hoge[3] = 1234;
hoge[4] = 14323;
hoge[5] = 1123;
hoge[6] = 15623;
hoge[7] = 3123;
hoge[8] = 1323;
hoge[9] = 1223;
hoge[10] = 1234;

590
デフォルトの名無しさん[]   投稿日:2015/12/03 15:33:33  ID:i4g9lAHf.net(2)
2重書き込みのため表示しません 内容を確認する

591
デフォルトの名無しさん[sage]   投稿日:2015/12/03 18:06:22  ID:xWHq0tVP.net
あー、これ系のソース書いたことあるわ。
バイナリファイル中のファイル位置、サイズだったか、
固定長電文のフィールド位置だったか。

592
デフォルトの名無しさん[sage]   投稿日:2015/12/03 18:20:54  ID:d0OCrfZD.net
データセットを DataGridView に表示するのに、バインドせずにループで回して代入。
コメント2件

593
デフォルトの名無しさん[sage]   投稿日:2015/12/04 09:44:59  ID:pcaxFgNv.net
>592
ループしてるならまだ絶望的じゃないな

594
デフォルトの名無しさん[sage]   投稿日:2015/12/04 10:54:45  ID:QmIGWywN.net
データバインドとかここ10年くらいのものだろ
コメント1件

595
デフォルトの名無しさん[sage]   投稿日:2015/12/04 15:17:07  ID:prxSfFNA.net
>592-593
バインドなしループなしを見たことがある

596
デフォルトの名無しさん[sage]   投稿日:2015/12/04 16:01:55  ID:X5G422Yr.net
>594
> データバインドとかここ10年くらいのものだろ
いつが最初かしらないけど、Visual Basic 4.0の時代にはあったよ。
1995年発売だから20年前だね。

http://windowsitpro.com/windows/visual-basic-40
http://windowsitpro.com/site-files/windowsitpro.com/files/archive/win...

古くてちゃんとした情報は見つけづらいけど、MSRDC、RDO、DAO、DBGridあたりの
キーワードで調べれば断片的に見つかるはず。

ウェブのGUI技術なんて20年前の歴史を辿ってるだけだからさ。

597
デフォルトの名無しさん[sage]   投稿日:2015/12/04 16:14:52  ID:u0bQfuw3.net
そうだね

598
デフォルトの名無しさん[]   投稿日:2015/12/04 23:55:01  ID:wuaQKlp3.net
#define zero 1

599
デフォルトの名無しさん[sage]   投稿日:2015/12/05 00:48:19  ID:mCAwIdXZ.net
0=Off, 1=On を表すパラメータと、0=On, 1=Off なパラメータが混在していて
どっちがどっちかは列挙型の名前で区別するようになっているのだが
その名前付けが間違っている

enum FLAG_0_IS_OFF { OFF = 0, ON = 1 };
enum FLAG_1_IS_ON { ON = 0, OFF = 1 };

600
デフォルトの名無しさん[]   投稿日:2015/12/05 11:26:47  ID:pK0sc289.net
#define TRUE 1
...
if(hoge == TRUE){...}
コメント1件

601
デフォルトの名無しさん[]   投稿日:2015/12/05 12:16:35  ID:vOhmiziG.net
>600
if((hoge == hoge) == TRUE)

602
デフォルトの名無しさん[sage]   投稿日:2015/12/05 12:17:21  ID:4CEShJeO.net
なにかを召喚しようとしているとみた。

603
デフォルトの名無しさん[]   投稿日:2015/12/06 11:01:47  ID:pIhfFp+J.net
A4紙ペラ1枚の仕様書兼設計書しかないのに、10万行のソースコード。

604
デフォルトの名無しさん[sage]   投稿日:2015/12/07 01:49:58  ID:7ba3d2ub.net
昔、偽装請...派遣でいった会社で
ありとあらゆる引数が

const boost::shared_ptr<XXX> &val

となっている現場があった。
何かが、狂っていた。
コメント1件

605
デフォルトの名無しさん[sage]   投稿日:2015/12/07 07:56:35  ID:RcyQXLEI.net
開放領域への参照で落ちて地獄のデバッグよりか遥かにまし

606
デフォルトの名無しさん[sage]   投稿日:2015/12/07 09:53:30  ID:7ldc1+VM.net
C++の世界って相変わらず
ごちゃごちゃしてんのなw

動くのに間違いっていうのが多すぎる

607
デフォルトの名無しさん[sage]   投稿日:2015/12/07 10:15:40  ID:ybmjRjHL.net
>604
銀行だろ

608
デフォルトの名無しさん[sage]   投稿日:2015/12/07 15:38:41  ID:KuRdWB2c.net
>動くのに間違い

ほんそれ

609
デフォルトの名無しさん[]   投稿日:2015/12/07 19:35:15  ID:m8Fe/aU1B
変わり者多いよなぁ

610
デフォルトの名無しさん[sage]   投稿日:2015/12/08 21:57:19  ID:uAong+Yo.net
ループ変数がグローバルにおいてあって、
そのループ変数を使ったfor文の中から呼び出される
各関数内でループ変数がインクリメント・デクリメントされているコードに絶望した覚えがある

611
デフォルトの名無しさん[sage]   投稿日:2015/12/08 22:39:43  ID:ofZrfRww.net
やばいなそれ
それ仕様どおりなん?
コメント1件

612
デフォルトの名無しさん[sage]   投稿日:2015/12/09 10:07:13  ID:3EPxHLPC.net
再帰処理の中で再帰の深さ調べて云々するプログラムにそんなのあったな

613
デフォルトの名無しさん[sage]   投稿日:2015/12/09 21:23:43  ID:VkHBWGUX.net
>611
コードが仕様だ!

コーディングミスの副作用が絡み合い何故か動いているのだが
書いたやつやめたから誰も手が出せない、なんとかしろという展開。

614
デフォルトの名無しさん[sage]   投稿日:2015/12/09 22:54:35  ID:ZwktDk40.net
 
配列に間違って一つ余計なデータを加える

   +

ループ回数を間違って最後の一つを処理しない

   =

_人人 人人_
> 正常動作 <
 ̄Y^Y^Y^Y ̄
コメント1件

615
デフォルトの名無しさん[sage]   投稿日:2015/12/10 00:26:28  ID:ydUpcr2T.net
境界テストすらしない前提なの

616
デフォルトの名無しさん[sage]   投稿日:2015/12/10 00:28:09  ID:Ti4G586p.net(3)
関数内部の境界テストはしないね。

617
デフォルトの名無しさん[sage]   投稿日:2015/12/10 09:15:52  ID:PYxURZ6w.net
番兵さんを「余計なデータ」と言われた事ならある
コメント1件

618
デフォルトの名無しさん[sage]   投稿日:2015/12/10 12:17:34  ID:gg94mj0B.net
>614
最後にnull終端が(暗黙に)期待されてるバグありコードで
たまたまメモリが0で埋まってて動いてるソフトが世界中に沢山ある

619
デフォルトの名無しさん[sage]   投稿日:2015/12/10 12:28:09  ID:UXNiSsD5.net
C言語でbssセクションに配置された未初期化変数はzero-fillが保証されている
ことを知らない無能は結構多いよね。
コメント2件

620
デフォルトの名無しさん[]   投稿日:2015/12/10 12:36:25  ID:bHHbe/Q2.net
お前知ってる無能だな

621
デフォルトの名無しさん[]   投稿日:2015/12/10 13:00:08  ID:v8EHsCoC.net
>617
余計なデータだろう。
番兵はあくまでテクニックだ。

622
デフォルトの名無しさん[sage]   投稿日:2015/12/10 15:44:51  ID:Sckq1QsI.net
>619
そんなの知らねーが未初期化でReleaseビルドの時だけ発生するバグを埋めるアホはよく見てきた
新人でもはっきり判断できるような可読性高いもの書け
それがプロの最低条件

623
デフォルトの名無しさん[sage]   投稿日:2015/12/10 15:50:47  ID:Ti4G586p.net(3)
正確には「新人でも上級者でもわかる可読性が高いコード」な

新人が簡単に分かったとしても、
上級者が苦労するようなコードは本末転倒。

上級者がこっちのほうがわかりやすくシンプルだと思ってるのに
でも新人はこんな高度なテクニックは知りませんからね。
複雑で冗長になりますが、新人でも知ってるテクニックだけ使いますよ。
というのは大間違い。

わかりやすさの基準は上級者が決める

624
デフォルトの名無しさん[sage]   投稿日:2015/12/10 15:56:11  ID:pXSC4Dqg.net(2)
>619
俺の使ってたCスタートアップは.bssゼロフィルしてなかった
妥当な理由があったからなんだが、何だかモヤモヤした
コメント1件

625
デフォルトの名無しさん[sage]   投稿日:2015/12/10 16:01:16  ID:yNsK6Fxm.net
bssゼロフィルなんてものを前提にコード書く奴は素人
こういうバカはやっかいなバグをしこたま仕込むタイプ

626
デフォルトの名無しさん[sage]   投稿日:2015/12/10 16:04:42  ID:pXSC4Dqg.net(2)
グローバル変数とかスタティック変数は
初期値を入れてなければゼロが初期値ってのは前提でしょ

627
デフォルトの名無しさん[sage]   投稿日:2015/12/10 16:36:51  ID:Ti4G586p.net(3)
むしろ初期値が決まってない言語のほうが少ない。

628
デフォルトの名無しさん[sage]   投稿日:2015/12/10 16:42:29  ID:2ifIvV3l.net
>624
そういうのは処理系がエラーを吐けば問題ない

629
デフォルトの名無しさん[sage]   投稿日:2015/12/10 17:32:31  ID:iwZgNtxz.net
前提つーか言語仕様に書いてあるからなあ

630
デフォルトの名無しさん[sage]   投稿日:2015/12/11 00:36:04  ID:AA1k5ebD.net
言語仕様なんて現実の処理系の前じゃ単なるガイドラインにしか過ぎん

631
デフォルトの名無しさん[]   投稿日:2015/12/13 09:45:48  ID:+eRy+6gb.net
言語仕様としてプラットフォーム依存も定義されてるよ

632
デフォルトの名無しさん[]   投稿日:2015/12/13 20:56:58  ID:XKUJpg79.net
1クラスが6000ステップ以上のJavaソースをちらりと見た。
内部クラスを使っているかも知れんが、Javaってもっと細切れに
クラスを作るものかと思っていた。
コメント3件

633
デフォルトの名無しさん[sage]   投稿日:2015/12/13 20:57:59  ID:NoovkWNN.net
Javaだけじゃなくて、どんな言語でも、
クラスがある言語なら細切れにクラスを作るよ。

634
デフォルトの名無しさん[]   投稿日:2015/12/13 23:37:51  ID:WlyYs++B.net
>632
6000行くらい見ればいいのに。

635
デフォルトの名無しさん[sage]   投稿日:2015/12/13 23:57:49  ID:hOFu3SKo.net
>632
ダメな例だな
まとまってるから解析は比較的しやすいがテストとなると内部の状態が多すぎてまともなテストできない
クラスは小さいひとつのことに集中し他とはできるだけ疎結合

636
デフォルトの名無しさん[sage]   投稿日:2015/12/18 21:22:05  ID:FDwGFOf2.net
>632
クラスの責務があやふやなんやな

637
デフォルトの名無しさん[]   投稿日:2016/01/06 11:59:50  ID:nQqbz+/u.net
中級者はトリッキーはコードを好む
これだけは間違いない

638
デフォルトの名無しさん[sage]   投稿日:2016/01/06 12:29:20  ID:UK0rI12O.net
確かに上級者のコードは見やすい。
ロジックは複雑だがコードとしての見やすさ。

639
デフォルトの名無しさん[]   投稿日:2016/01/06 12:30:26  ID:Fg9nLK8i.net
トリッキーを好むのは意識高い系の無能やで

640
デフォルトの名無しさん[sage]   投稿日:2016/01/06 18:08:14  ID:/H9q/T9T.net
中級者と上級者の違いは?

641
デフォルトの名無しさん[sage]   投稿日:2016/01/06 19:38:59  ID:yluT1kPN.net
上級者:バカの相手をしない。馬鹿にかかわらない。
中級者:バカがいると頑張る。
初心者:バカをバカと認識出来ない。

642
デフォルトの名無しさん[sage]   投稿日:2016/01/07 12:52:08  ID:z61lpkpg.net
バカをコケにして楽しむ天才もいるけど

643
デフォルトの名無しさん[sage]   投稿日:2016/01/07 16:39:58  ID:Pe5rEwkw.net
それは中級者のことだな

644
デフォルトの名無しさん[sage]   投稿日:2016/01/07 17:03:25  ID:h6IODMw0.net
上級者は比較的謙虚だよ。
まあ、悟りが入っているからだが。

645
デフォルトの名無しさん[sage]   投稿日:2016/01/07 19:56:13  ID:JRHaZSLM.net
いろいろいる

646
デフォルトの名無しさん[]   投稿日:2016/01/07 20:47:13  ID:lRIC4Lm0.net
上級者をコケにしまくるノイマン

647
デフォルトの名無しさん[]   投稿日:2016/01/08 15:07:08  ID:tqKW36Gu.net
ifもelseも全部一行に詰め込むガイジは死ね
読みにくいんじゃボケ!!!!!!!!!!!!!!
コメント1件

648
デフォルトの名無しさん[sage]   投稿日:2016/01/08 15:14:42  ID:yBRKo/VZ.net
>647
個人的には、

if(kinoko == stick){

}else{

}

という書き方ではなく、

if(kinoko == stick)
{


}
else
{

}

って書く人は嫌い。
コメント2件

649
デフォルトの名無しさん[sage]   投稿日:2016/01/08 15:29:13  ID:d7AXElGo.net
>648
それが嫌いだと生きていくの辛いだろ

650
デフォルトの名無しさん[sage]   投稿日:2016/01/08 15:43:23  ID:BspTamKY.net(3)
俺はできるだけ改行しないほうが好きだが、コメントの位置が上手くできないのが悩みどころ

// このコメントはOK
if(){

}else{ // このコメントを先頭にしたいけどelseはこの位置が好き

}

651
デフォルトの名無しさん[sage]   投稿日:2016/01/08 16:04:25  ID:phA/d0Uk.net
こーだろ

if(){
  // 真の場合は・・・する

}else{
  // 偽の場合は・・・する

}

652
デフォルトの名無しさん[sage]   投稿日:2016/01/08 16:48:23  ID:OUzXo7qx.net
>648
嫌いだけど、 C#ってその形なんだよね

653
デフォルトの名無しさん[sage]   投稿日:2016/01/08 18:17:24  ID:/YBx4YCU.net
設定で変えられますよ。

654
デフォルトの名無しさん[sage]   投稿日:2016/01/08 20:08:25  ID:cnaeBvqG.net(4)
つーか、elseはあまり書くべきでない。

if(){
  // 真の場合は・・・する

}else{
  // 偽の場合は・・・する

}

ではなく、できるだけ

if(){
  // 偽の場合は・・・する
  return;(またはエクセプションをthrow)
}

// 真の処理

という形になるように常に心がける。

if else という書き方が深いネストを作るきっかけになっている事に気づかないと
いつまでたっても、初心者、中級者のまま。
コメント2件

655
デフォルトの名無しさん[]   投稿日:2016/01/08 20:43:14  ID:YP1TscYa.net
一画面で収まるなら別にネストしてていいや。
それ以上はオブジェクト化するかな

656
デフォルトの名無しさん[]   投稿日:2016/01/08 20:57:13  ID:KfqZIdgm.net
>654 MISRA を否定するのか。是非とも MISRA の連中を説教してやってくれ

MISRA-C ルール 15.5 推奨 関数は、その最後に1つだけの出口を持たなけらばならない
コメント3件

657
デフォルトの名無しさん[sage]   投稿日:2016/01/08 21:08:22  ID:BspTamKY.net(3)
>654
ifでもelseでも最終的に同じ処理してからリターンしたい場合は?
決め付けるのは自称上級者

途中リターンが見やすいと思った場合は使うしそうでない場合はelseも使う
コメント3件

658
デフォルトの名無しさん[]   投稿日:2016/01/08 21:14:13  ID:/AzKcaKs.net(2)
>656
C言語ではそっちの方がよかったんかね。
いまって関数単位で単一責務原則を適用して関数が小っちゃくなるから
あまりこだわる必要なさそうだけど。

659
デフォルトの名無しさん[sage]   投稿日:2016/01/08 21:19:49  ID:7GZox6yu.net
話ぶった切るけど今まで見た中で最高に頭沸いてると思ったのはこれ

// 前略

/*
* きっとキミは来ない 独りきりのcarch anything
* silent kill. do ignore.
*/
} catch (Throwable e) {
assert(true, "来ちゃった♪" + e);
}

書いた人は壊れて辞めたらしい

660
デフォルトの名無しさん[sage]   投稿日:2016/01/08 21:21:27  ID:cnaeBvqG.net(4)
>657

あまり書くべきではない とか できるだけ心がける
という、超初歩的な日本語の意味を理解できない馬鹿がいるとは…
さすが初心者はプログラムだけでなく日本語も不自由と見える。

そう書くのが妥当なら書けばいいに決まってるじゃないか。
コメント1件

661
デフォルトの名無しさん[sage]   投稿日:2016/01/08 21:25:13  ID:cnaeBvqG.net(4)
>656

世の中のコードが全てCで書かれているとは知らなかった。
そんな世の中なら、さぞ住みにくかろう。

662
デフォルトの名無しさん[sage]   投稿日:2016/01/08 21:38:36  ID:RkD3LFtP.net
客先ですごいお金が絡むシステムがスパゲティコードだったから担当になるまえに怖くて会社辞めた

663
デフォルトの名無しさん[sage]   投稿日:2016/01/08 21:51:57  ID:BspTamKY.net(3)
>660
常に心がける=できるだけ心がける?

664
デフォルトの名無しさん[]   投稿日:2016/01/08 22:15:24  ID:cnaeBvqG.net(4)
できるだけ〜になるように、常に心がける

なんかおかしいか?
ほんとに日本語不自由な奴ばっかだな。

665
デフォルトの名無しさん[sage]   投稿日:2016/01/08 23:40:56  ID:VOVSZHMX.net
>656
> MISRA-C ルール 15.5 推奨 関数は、その最後に1つだけの出口を持たなけらばならない

そのルールを守るのは簡単だよ。

途中でreturnしたくなったら、代わりに関数の最後にgotoすればいいw
コメント1件

666
デフォルトの名無しさん[sage]   投稿日:2016/01/08 23:50:27  ID:278l3d2Z.net
そのMISRAのバカルールはな大昔の最適化が物凄くしょぼかったコンパイラ
で出たコードをこれまたしょぼいデバッガでデバッグするために関数の入り口と出口を
アセンブラレベルで1つずつにするためのものなのだよ
もう完全に時代錯誤

667
デフォルトの名無しさん[]   投稿日:2016/01/08 23:53:53  ID:/AzKcaKs.net(2)
>665
gotoもダメなんじゃないかな?みすら的に考えて。
みすらそう思う。
コメント1件

668
デフォルトの名無しさん[sage]   投稿日:2016/01/09 00:43:27  ID:5qP+Va2j.net(2)
>667
ならwhile(1)してbreakすればいいよw

669
デフォルトの名無しさん[sage]   投稿日:2016/01/09 02:10:42  ID:zAGuqSNS.net(3)
マルチスレッド対応が当たり前になった今クソ長いコードや分岐だらけとか終わってる
シンプル・イズ・ベスト
大きな建造物と同様細かく作業を分けて小さな単位を積み上げていって大きくするのがセオリー

670
デフォルトの名無しさん[sage]   投稿日:2016/01/09 06:38:25  ID:sD5C6F8w.net
VB系だとよく脱出用の空ループで抜けたりするけどこれはみすら的にはどうなの?
andやorがC言語系の&&や||と違って全部評価されちゃうからifで書いてくしかなくて
それをまともにやるとifがネストになってくんだよね
do
 if not test1 then exit do
 if not test2 then exit do
 if not test3 then exit do
 :
 exit do
loop

上を普通に書くと
if test1 then
 if test2 then
  if test3 then
   :
※各testは最小限で評価したい

671
デフォルトの名無しさん[sage]   投稿日:2016/01/09 13:39:15  ID:B4VTiUSo.net
客が読みにくいという理由でガード(関数の先頭あたりでリターンする)を
すべて if else に書き直させられたが
何でくだらない仕事を増やすのだろうか
コメント2件

672
デフォルトの名無しさん[sage]   投稿日:2016/01/09 14:08:32  ID:1QZox6W1.net(15)
>671

客の脳みそが腐っているんだからしょうがないんじゃね?

腐っててもお金は払ってくれるんだから、まぁ、ごみ処理だと思えば。

673
デフォルトの名無しさん[sage]   投稿日:2016/01/09 14:23:51  ID:1QZox6W1.net(15)
自称上級者とかほざいてた >657 は、
そろそろ自分の馬鹿さ加減に気づく頃かな。
コメント1件

674
デフォルトの名無しさん[sage]   投稿日:2016/01/09 14:30:18  ID:zAGuqSNS.net(3)
>671
else;つけとけばいいだけ
わざわざelse句として書く必要ない

675
デフォルトの名無しさん[]   投稿日:2016/01/09 14:31:17  ID:hdqMNonU.net(4)
>673
ケースバイケースってことを言ってるんだと思うよ。
バカだとは思わないけどなあ。
コメント2件

676
デフォルトの名無しさん[sage]   投稿日:2016/01/09 14:36:03  ID:zAGuqSNS.net(3)
どちらのケースでもやりたいなら呼び出し元にコールさせればいい
分割がなされてないとそうなる
コメント1件

677
デフォルトの名無しさん[sage]   投稿日:2016/01/09 14:49:14  ID:1QZox6W1.net(15)
>675

5:5 くらいでどっちのケースもあると思ってるなら、
お前も>657も頭に糠味噌つまってるくらい馬鹿だ
コメント1件

678
デフォルトの名無しさん[]   投稿日:2016/01/09 14:51:11  ID:hdqMNonU.net(4)
>677
バカっていいたいだけなんじゃないの?
なんかあまり中身がないような・・・。
コメント1件

679
デフォルトの名無しさん[]   投稿日:2016/01/09 14:53:07  ID:hdqMNonU.net(4)
好みの問題だしなあ。価値観は優劣をつけるためのものじゃないと思うんだよね。
他人の価値観を自分の中に取り込んで自分の世界を広げるためのものなんだよ!!←できる人
コメント1件

680
デフォルトの名無しさん[sage]   投稿日:2016/01/09 14:53:18  ID:1QZox6W1.net(15)
>657
>ifでもelseでも最終的に同じ処理してからリターンしたい場合は?

そういう、共通処理っていうのは呼び出し元の処理なんだよ

いい加減に気づけ馬鹿 >675
コメント2件

681
デフォルトの名無しさん[sage]   投稿日:2016/01/09 14:54:33  ID:1QZox6W1.net(15)
>679

究極に頭おかしい人がきました。
好みの問題だと本当に思っているらしい。そりゃ、世の中クソコードで溢れるわ。

682
デフォルトの名無しさん[sage]   投稿日:2016/01/09 14:55:22  ID:1QZox6W1.net(15)
>678

中身が無いのはお前の頭です。

683
デフォルトの名無しさん[sage]   投稿日:2016/01/09 14:57:02  ID:1QZox6W1.net(15)
IDみたら同じやつか。こいつ、本当に糞コード生産マシンだろうな。

684
デフォルトの名無しさん[sage]   投稿日:2016/01/09 15:04:09  ID:1QZox6W1.net(15)
>他人の価値観を自分の中に取り込んで自分の世界を広げるためのものなんだよ!!←できる人

"←できる人"って、ばーーーーーーーーーーーーか!
コメント1件

685
デフォルトの名無しさん[]   投稿日:2016/01/09 15:06:12  ID:hdqMNonU.net(4)
>684
待って!落ち着いて!いまから私が言うことに耳を傾けて。
びっくりするかもしれないけどホントのこと伝えたいから。
プログラムはケースバイケースなの!!なんでもありなの!!!

686
デフォルトの名無しさん[sage]   投稿日:2016/01/09 15:14:34  ID:1QZox6W1.net(15)
ケースバイケースのことはあるが、今回のことは違う。
以上

馬鹿

687
デフォルトの名無しさん[]   投稿日:2016/01/09 15:22:04  ID:im9ptLOw.net
馬鹿バイ馬鹿のことはある

688
デフォルトの名無しさん[sage]   投稿日:2016/01/09 15:27:26  ID:5qP+Va2j.net(2)
さーらバイバイさーらバイということもある。

689
デフォルトの名無しさん[sage]   投稿日:2016/01/09 15:33:15  ID:+5afeFvR.net(2)
>680
じゃあif elseがない処理=呼び出し元の処理ということ??
関数作る必要ないじゃんwww

>676
呼び出し元が複数あったときにコードが増えるんですがw
何のための関数化だよ
せめて関数内で別関数としてコールする形式にしないと無駄が増える

経験的に、後から読むとき、関数最初でのreturnは見やすいけど、
途中でのreturnはelseのほうが見やすかったりする
だからケースバイケース
コメント1件

690
デフォルトの名無しさん[sage]   投稿日:2016/01/09 15:37:06  ID:hQalMJ4t.net(3)
>680
関数でローカルに取得したリソースの解放ってのは関数内部の処理だろう。
C++ならRAIIでやるところかもしれんが。

691
デフォルトの名無しさん[sage]   投稿日:2016/01/09 16:34:28  ID:5qnqwO4H.net(2)
>689
条件分岐を呼び出してあとに続く処理を実行する方を外から呼び出してもらうようにするだけ
分解すればあとの処理はifの条件にかかわることなく一回でテストが終わる
ダラダラ一つのメソッドに書くとマトリックス的にテストケースが発生し産廃コードが誕生する
コメント3件

692
デフォルトの名無しさん[sage]   投稿日:2016/01/09 17:46:59  ID:hQalMJ4t.net(3)
>691
そういう等価な書き換えでテストケースが減るわけがないんだがな。
C0カバレッジしか見てなくて途中returnのケースをテストしてないのかとも思ったが、
ひとつの関数だとマトリクス的にケースが増えるってのが意味不明だな。
どういう基準でテストしてるんだか。
コメント1件

693
デフォルトの名無しさん[sage]   投稿日:2016/01/09 18:23:22  ID:5qnqwO4H.net(2)
>692
if
A
else
B
C

Cが別関数になってないとACとBCのテストパターンコードがいる
一方別関数の場合はAとBそれと独立してCで事足りる
これが長いものになると前者は爆発的にパターンが増えていく
関係性がないものは分離する
関係性があっても関係性の部分だけを取り出し分離する
細かくなってればテストコード自動生成も実用性が出てくる
コメント2件

694
デフォルトの名無しさん[sage]   投稿日:2016/01/09 18:27:33  ID:NrfMM3wG.net(2)
デバッガで見るとreturnで関数の最後に飛んでいるから、
途中でreturnしてもいいんじゃないの?

一方職場でジャンプ関数使う人はいた。
でも1人でやってるプロジェクトなんで見て見ぬふりをしたw
自分以外がメンテナンスできないようにする人っているしね…

695
デフォルトの名無しさん[sage]   投稿日:2016/01/09 18:31:44  ID:e4D1bXEw.net
ジャンプ関数ってまさか
longjmp()とcome_from()?
gotoがましに見えるレベル

696
デフォルトの名無しさん[sage]   投稿日:2016/01/09 18:54:23  ID:hQalMJ4t.net(3)
>693
分岐網羅ならどっちにしろACとBCの2ケースになるように見えるが。
それともAとBとCの単体テストだけやっておしまいって話?
ついでに言えば、これがどう>691の説明になっているのかわからん。
コメント3件

697
デフォルトの名無しさん[sage]   投稿日:2016/01/09 18:56:50  ID:PkTsY4HK.net
>696
由緒正しき「継続」という奴だ,まさか,とかいっていいのか?

698
デフォルトの名無しさん[sage]   投稿日:2016/01/09 19:26:55  ID:NrfMM3wG.net(2)
come_fromって何かと思ったらサンプルコードじゃんw
「returnするのが面倒くさいからと」代わりにジャンプ関数使っていたな…
(なんでも手製でツールを揃えないといけない時代で)独立したツールだったから
誰もソースコードチェックしなかったんだろうね。

699
デフォルトの名無しさん[sage]   投稿日:2016/01/09 20:03:07  ID:1QZox6W1.net(15)
hdqMNonUの戯言に耳を傾ける馬鹿は+5afeFvRみたいな知恵遅れだけだ。

700
デフォルトの名無しさん[]   投稿日:2016/01/09 20:05:22  ID:j10t/SxZ.net(2)
人命にかかわる部分はたいていC/C++で書かれているから、C/C++を使う人だけ気を付ければ良いんじゃないだろかね。

701
デフォルトの名無しさん[sage]   投稿日:2016/01/09 20:05:40  ID:1QZox6W1.net(15)
>691 >693 に書いてあることの意味が分からない奴が、現役でプログラマしてるって事が恐ろしい…

702
デフォルトの名無しさん[sage]   投稿日:2016/01/09 20:13:15  ID:1QZox6W1.net(15)
>696
>それともAとBとCの単体テストだけやっておしまいって話?

だったらお前はその上層と下層を全て含めた
ABCDEFGHIJKLMN…
の全てのケースを含んだテストを一生かけてやってろ。

ユニットテストのしかたもする意味もわかってない馬鹿。

703
デフォルトの名無しさん[]   投稿日:2016/01/09 20:18:44  ID:j10t/SxZ.net(2)
単体テストのやり方がわかっていないからといって馬鹿とは限らない。
アインシュタインは単体テストのやり方を知っていただろうか。

704
デフォルトの名無しさん[sage]   投稿日:2016/01/09 20:32:29  ID:1QZox6W1.net(15)
単体テストのやり方がわかっていないから馬鹿だといってるのではない。
馬鹿だから単体テストのやり方がわかっていないと言っている。

705
デフォルトの名無しさん[sage]   投稿日:2016/01/09 20:36:35  ID:1QZox6W1.net(15)
AのバグとCのバグを合わせた結果、テストケースでは見かけ上正しい出力がされてグリーンになってしまいました、

ABとCが分けてなかったらどうやって隠れた問題を検出するんだ。

706
デフォルトの名無しさん[sage]   投稿日:2016/01/09 20:41:02  ID:+5afeFvR.net(2)
そもそも全てのプログラマがユニットテスト書くわけでもないしね(技術的にも仕様的にも)

707
デフォルトの名無しさん[sage]   投稿日:2016/01/09 20:47:18  ID:1QZox6W1.net(15)
ユニットテスト出来ない奴がいる事と、理想的なコード自体の書き方と、何の関係があるんだよ。


何がそもそもだ、ばーーーーーーーーーーーか!

708
デフォルトの名無しさん[]   投稿日:2016/01/10 06:54:26  ID:wBDEYS7B.net(2)
>1
RPGツクール2000 , RPGツクールMV https://tkool.jp/mv/ ( JavaScript 採用 )

WOLF RPGエディター http://www.silversecond.com/WolfRPGEditor/

デュエル・マスターズ Android版 ,i-OS版、公式 http://dm.takaratomy.co.jp/extra/dmapp/entrygate_ds/
デュエル・マスターズ対戦CGI ex
https://web.archive.org/web/20150809154946/http://www53.atwiki.jp/dms...

デュエル・マスターズ(デュエマ)DM ONLINE 1.8a  /  VanGuard ONLINE 1.5a
https://web.archive.org/web/20150809160254/http://uhyohyohyo.sak ura.ne.jp/hsp.html

ヴァンガード専用ネット対戦ツール【 VanGuard Online 】
https://web.archive.org/web/20150809155032/http://kiimaa.jugem.jp/?ei...

「カードファイト!!ヴァンガード」のネット対戦ができる公式オンラインゲーム「Cardfight!! Online」 2015年冬スタート
https://web.archive.org/web/20150809153724/http://supersolenoid.blog6...

遊戯王 Automatic Dueling System
https://web.archive.org/web/20150809164855/http://www3.atwiki.jp/ads-...

遊戯王 デュエル・オンライン
https://web.archive.org/web/20150809171527/http://www31.atwiki.jp/vip...
https://web.archive.org/web/20140628005202/http://do.yugioh-portal.ne...

ウィクロス( WIXOSS ) WEBXOSS http://webxoss.com/about_en.html http://webxoss.com/DeckEditor/

BG(ボードゲーム)Engine https://web.archive.org/web/20151209080842/https://bgengine.net/
https://web.archive.org/web/20151209172205/http://14owl.hateblo.jp/en...

アプレンティス  マジック:ザ・ギャザリング(MtG)オンライン化 http://homepage1.nifty.com/Q_Q/ap.html
https://web.archive.org/web/20151202202725/http://homepage1.nifty.com...
コメント1件

709
デフォルトの名無しさん[]   投稿日:2016/01/10 06:55:32  ID:wBDEYS7B.net(2)
【 オンラインTCGエディター 】   >1,>708

デュエル・マスターズ的な非電源TCGの 《 オンライン化ツクール系ソフト 》 制作の企画。

例えば、ガチンコ・ジャッジを直ぐにでも導入できる機能を持っておりながら、
当面それを扱わず単純化させておいて、事後的に導入拡張する際に当該システムを
ブロック構造の組み合わせで後付け挿入できるように予めシステム化してあるソフト(エディター)。
既存の非電源TCGを劣らずに再現できるならば大概のニーズに応えられる筈。
デュエマ、ヴァンガ、ウィクロス、ポケカ、デジモン、ゼクス、モンコレ、旧ガンダム・ウォー、ライブオン、ディメンション・ゼロ、シャーマン・キング、カードヒーローなど
のシステムを完全再現できるように設計するけど、他に此のTCGの此のシステムは再現希望とか有ったら書け。
マジック:ザ・ギャザリングの全システムを完全に再現するのは無理だから、此れだけは必用だ!って部分のみリクエストしろ。
個vs個、多数乱戦、チームvsチーム、個vsチームを実現し、P2P通信対戦プラグイン有り。

設計思想は 《 RPGツクール 》 が良いかな?  他に、優れたエディター有ったら挙げてみろ。

個人や企業などのベンダーが提示する開発費(見積もり)で折り合えば、発注する。

エディター群から基本コンセプトを絞り込む(もちろんオリジナルで優れた新ネタが有れば導入する)。

遊戯王OCGに関しては、タッグフォース、ADS、デュエルオンラインを発注先ベンダーに研究させる。
バトスピ、ヴァンガ、デュエマなど発売済みゲームソフトが存在してるTCGはベンダーに研究させる。

各社TCGを再現するテストプレイ ⇒ 更に改良や修正 + コード記述の仕様書(設計書)を作成。

機能制限した下位版を制作しても原則として発売せず + 上位版デュエリ−グ用でサーバー稼動。

下位版を仮に発売した場合の改造および商用利用には、別途で当社との契約が必要。

さ〜て、インド人ベンダーと日本人の翻訳担当SEを見つけよっと!ww
【報酬制カード】DUELEAGUE【デュエリーグ】17 /ラウンジクラシック板-16

710
デフォルトの名無しさん[sage]   投稿日:2016/01/10 13:12:39  ID:/ndDSiBm.net
971 名前:名無しさん@七周年[] 投稿日:2006/11/11(土) 00:56:10 ID:M8+ahUZV0
自称スーパープログラマー某

強烈加齢臭
メール見ない メール無視
ドキュメント見ない ドキュメント無視
説明聞かない 説明無視
話聞かない 話無視
ガム→むっちゃー むっちゃー むっちゃー むっちゃー
煎餅→バリバリバリバリバリバリ
菓子パン→モグモグモグモグモグモグモグモグモグモグ
カップアイス→むっちゃー むっちゃー ペロペロペロペロ

フロアすべてに響き渡る 超ばかでかいくしゃみ 当然手でおさえない

異音と異振動
ドスーン!ドスーン! ドカーン!ドカーン! バコーン!バコーン! ズドン!ズドン!
机が近いとマウスポインターが飛ぶ 誤操作誘発
書類だしたりしまうだけでドカンドカン

30秒ごとに口と鼻から異音
ふんっっ!    ふんっっ!   

備品破壊 貸与P C 破壊 他人のもの破壊

奴の作ったスクリプトとプログラムは使えない バグ製造機

電話や共有携帯電話 キーボードが油ベタベタ
奴に電話とPCとコンソールは触らせてはいけない

711
デフォルトの名無しさん[]   投稿日:2016/01/11 07:33:36  ID:+0r+kZff.net
>696
funcX(){
funcAB()
funcC()
}

funcAB(){
if
A
else
B
retuen
}

funcC(){
C
}

ってことなんじゃねーの。funcCが、funcABの動作に影響しないんであれば、
テストパターンは減らないけど、テストパターンごとの確認観点が減るんじゃない?

712
デフォルトの名無しさん[sage]   投稿日:2016/01/11 17:12:25  ID:L4NGHVvd.net
ABとCが常にセットにして呼ばれる仕様だとしたら、
関数が増えて見通しが悪くなるだけな気がするけど
ユニットテスト利用する場合ってこうするほうがいいの?

713
デフォルトの名無しさん[]   投稿日:2016/01/11 17:25:55  ID:WtkSn+b8.net
ソースコード見て問題なければテストする必要ないと思うの

714
デフォルトの名無しさん[]   投稿日:2016/01/11 17:50:15  ID:d9M93+6h.net
完璧なプログラムを書けばテストは必要ない。
テストに頼るのは甘え。
コメント2件

715
デフォルトの名無しさん[sage]   投稿日:2016/01/11 18:22:50  ID:zdgy9eHJ.net
プログラムが完璧でもコンパイラがバグっていて間違った実行ファイルができることもよくある

716
デフォルトの名無しさん[sage]   投稿日:2016/01/11 18:24:53  ID:I0GTrlSH.net
>714
ほんそれ

717
デフォルトの名無しさん[sage]   投稿日:2016/01/11 22:08:07  ID:c8FGpC/F.net
プログラム通りにペリフェラルが動くと思ったら大間違いだ

718
デフォルトの名無しさん[sage]   投稿日:2016/01/12 01:19:44  ID:j5pK34T9.net(2)
コンパイラのバグは稀たが、スペックシートのミスは日常茶飯事

719
デフォルトの名無しさん[sage]   投稿日:2016/01/12 01:21:08  ID:j5pK34T9.net(2)
ていうか、>714 はネタだろ?

720
デフォルトの名無しさん[sage]   投稿日:2016/01/12 06:24:29  ID:HCPDci+P.net
バグをバグと認めない鉄の心こそ必要

721
デフォルトの名無しさん[sage]   投稿日:2016/01/12 07:53:31  ID:fdNSnT90.net
16bit系組み込みCで
配列の要素数が16bitに制限されるのを
無視したコード渡されてバグってた事あるな
コンパイラからの警告一切無し
コメント1件

722
デフォルトの名無しさん[sage]   投稿日:2016/01/12 08:05:23  ID:fZplAbze.net
配列の添字が汎用レジスタのサイズ(≒int)の範囲に制限されるのは仕方ない
でもまともなコンパイラなら制限事項として明記してある

723
デフォルトの名無しさん[sage]   投稿日:2016/01/12 23:54:28  ID:iltzJQ7p.net
そんなの8086で散々経験しただろ

724
デフォルトの名無しさん[sage]   投稿日:2016/01/13 11:46:55  ID:1mKhW0n4.net(2)
>721
要素が16bit 越えるって、どんなソフトなんだ?

725
デフォルトの名無しさん[sage]   投稿日:2016/01/13 11:49:06  ID:O1+6xUWF.net
型がByteだとして
65536Byte=64KByte

組み込みだとしても十分ありうる
コメント1件

726
デフォルトの名無しさん[sage]   投稿日:2016/01/13 12:18:23  ID:1mKhW0n4.net(2)
>725
それだけ大きくなったら、普通ポインタとか使うだろ?
コメント1件

727
デフォルトの名無しさん[sage]   投稿日:2016/01/13 18:12:49  ID:yX2Is5Iq.net
気付かずに配列使ってたって事だろ。

728
デフォルトの名無しさん[sage]   投稿日:2016/01/13 18:16:44  ID:4t9WgEvh.net(2)
健全でない言葉が含まれているため表示しません 内容を確認する
コメント1件

729
デフォルトの名無しさん[sage]   投稿日:2016/01/13 18:21:42  ID:IMboGSkT.net(3)
>726
ROMに大きなテーブルだと配列使うでしょ

730
デフォルトの名無しさん[sage]   投稿日:2016/01/13 18:29:02  ID:IMboGSkT.net(3)
>728
Cの標準ライブラリが無いってことは最近では非常にマレ
ROM容量の関係で使えないことはある
これを無いって言うなら無い
デカいのはprintfとか
あとはfloat, double, long longもROM容量の関係で使えないことも
コメント1件

731
デフォルトの名無しさん[sage]   投稿日:2016/01/13 18:32:38  ID:IMboGSkT.net(3)
標準ライブラリを使うのをためらうくらいの規模なら、当然ヒープも使わない
当然OSレスで、シングルタスク+割り込みのみ

もっと小さく、時計レベルのコードになると、そもそもコンパイラを使わない

732
デフォルトの名無しさん[]   投稿日:2016/01/13 20:04:23  ID:AxNHdrPg.net(2)
>730
printf使えなかったらデバッグできないじゃん!
コメント3件

733
デフォルトの名無しさん[sage]   投稿日:2016/01/13 21:23:08  ID:VbVWsLR9.net
>732
リアルタイム性が不要ならICE(デバッガ)が使える
動かしながら変数の読み書きが出来るヤツもある

原始的なのだとポートを上げ下げしてオシロスコープで見るとか、LEDを点灯したりとか
コメント5件

734
デフォルトの名無しさん[sage]   投稿日:2016/01/13 21:43:03  ID:XS8ewNNM.net
>733
ちげーだろ?
そこはputs使ってるだろ。
見栄はらなくていいよw

735
デフォルトの名無しさん[sage]   投稿日:2016/01/13 21:57:55  ID:A49t3q/a.net
そもそもデバッグなどしない!

736
デフォルトの名無しさん[]   投稿日:2016/01/13 21:58:56  ID:AxNHdrPg.net(2)
>733
すごい世界

737
デフォルトの名無しさん[sage]   投稿日:2016/01/13 21:59:40  ID:4t9WgEvh.net(2)
putsどころかそもそも標準入出力ないからな
汎用ポートの空いてるピン使うか
JTAG使ってICEか計測器繋ぐかだな
コメント3件

738
デフォルトの名無しさん[sage]   投稿日:2016/01/14 00:14:52  ID:gzbByfkM.net
>737
真っ先に、シリアル入出力とprintfもどきを作るのはデフォだろ?
コメント3件

739
デフォルトの名無しさん[sage]   投稿日:2016/01/14 00:28:34  ID:qww60aj8.net
組み込みは感心する反面潰しきかないのがなんとも言えねぇ
組み込みは程々にした方がいいぞ

740
デフォルトの名無しさん[sage]   投稿日:2016/01/14 00:37:39  ID:Xzg+p3Xe.net(15)
シリアル入出力はよく使うけど、....
規模が小さいとデバッグ用だけにわざわざシリアルドライバを書かなかったり
そもそもシリアル用ハードが無かったり使えなかったり

非常にリアルタイム性が要求されるDSPプログラミングとかだと割り込みなんか使いたくないし、
小型マイコンだとバッファ用にメモリが割けなかったり

まあ物によってデバッグ方法もいろいろ
コメント1件

741
デフォルトの名無しさん[sage]   投稿日:2016/01/14 04:32:02  ID:fK8eMzuy.net(13)
どんな低速でもソフトUARTぐらい作れるだろ
ドライバって程かよアホが
コメント2件

742
デフォルトの名無しさん[sage]   投稿日:2016/01/14 15:09:22  ID:h8CGsofL.net(2)
低速マイコンでRAMも使わずにCPUも占有せず、場合によってはポートも使わないでソフトUARTか
頑張って作ってね

743
デフォルトの名無しさん[sage]   投稿日:2016/01/14 15:12:47  ID:h8CGsofL.net(2)
8pinマイコンとかしらないのかな?
コメント1件

744
デフォルトの名無しさん[sage]   投稿日:2016/01/14 20:34:54  ID:1Js/RlWK.net
>741
割り込み禁止にしてCPUサイクルでクロック作るのか
タイマ割り込み駆使してクロック作るのか
どっち?
コメント1件

745
デフォルトの名無しさん[sage]   投稿日:2016/01/14 20:44:59  ID:Xzg+p3Xe.net(15)
もう一個位は方法があるけど...
まあ普通はそんなことはせずもっと普通の方法を使う

スローCPU、RAM使えず、ピンが足りない、パフォーマンスがシビア
とかだと使えないし

746
デフォルトの名無しさん[sage]   投稿日:2016/01/14 20:46:17  ID:Xzg+p3Xe.net(15)
自分の主張を通す為に手段はどうでも良くなってるカワイソウな人は放っておこう

747
デフォルトの名無しさん[sage]   投稿日:2016/01/14 21:41:12  ID:fK8eMzuy.net(13)
なんでマイコン1個でやろうとすんだよ
そんな後付け条件出すなら信号垂れ流し用と信号待ち受け兼UART出力用のマイコン2つ使えばいいだろアホが
コメント1件

748
デフォルトの名無しさん[sage]   投稿日:2016/01/14 21:47:03  ID:fK8eMzuy.net(13)
>743
AVRやLPC810とかなら知ってるけど?
つーか米粒の6ピンすらソフトで全二重UARTぐらい実装できるだろ
アホが

749
デフォルトの名無しさん[sage]   投稿日:2016/01/14 21:56:18  ID:fK8eMzuy.net(13)
>744
ソフトUARTつても実装は色々あるからな
その全部かな
つーかアホはオシロやロジアナも使えないのか

750
デフォルトの名無しさん[sage]   投稿日:2016/01/14 22:09:04  ID:Xzg+p3Xe.net(15)
>747
いや、マイコンの規模によって、いろんなデバッグ方法があるって話だが

デバッグ用にわざわざマイコンを積むのか?
金をかけて
組み込みはコストが非常に重要だったりサイズが非常に重要だったりするんだけど
で、複数マイコンを積んだとして、マイコン間の通信はどうする?
デバッグじゃなくてシリアル通信が目的になってないか?
コメント1件

751
デフォルトの名無しさん[sage]   投稿日:2016/01/14 22:11:41  ID:fK8eMzuy.net(13)
>750
UART云々はシリアルでやるって流れから書いただけだよ
文脈読めアホが
コメント1件

752
デフォルトの名無しさん[sage]   投稿日:2016/01/14 22:21:14  ID:fK8eMzuy.net(13)
というか組み込みでデバッグ大変だわーで釣ってる奴が気に入らないわ
肝心なコアをMSに握られてるWindowsアプリのデバッグ考えるとただの愚痴にしか見えないんだわ

753
デフォルトの名無しさん[sage]   投稿日:2016/01/14 22:27:51  ID:Xzg+p3Xe.net(15)
>751
あり得ないデバッグ方法を突然書き出したお前が全て悪い
コメント1件

754
デフォルトの名無しさん[sage]   投稿日:2016/01/14 22:38:04  ID:fK8eMzuy.net(13)
>753
誰が悪って言うならデバッグ方法いろいろとか書いといて具体的な方法は何一つ提示しないアホが悪いなんじゃないの?
組み込みはこういう口ばっかの奴が多くてうざいわほんと

755
デフォルトの名無しさん[sage]   投稿日:2016/01/14 22:39:25  ID:Xzg+p3Xe.net(15)
は??
具体的な方法はいくつも書いただろうが
日本語が読めない?

756
デフォルトの名無しさん[sage]   投稿日:2016/01/14 22:39:57  ID:Xzg+p3Xe.net(15)

757
デフォルトの名無しさん[sage]   投稿日:2016/01/14 22:40:31  ID:fK8eMzuy.net(13)
そういやここ絶望的なコードのスレなんだが
そもそも組み込みで絶望的な事なんてあるか?
作った品が売れないとかか?
コメント1件

758
デフォルトの名無しさん[sage]   投稿日:2016/01/14 22:40:32  ID:Xzg+p3Xe.net(15)
あ、間違った
>733
コメント1件

759
デフォルトの名無しさん[sage]   投稿日:2016/01/14 22:43:01  ID:fK8eMzuy.net(13)
>756
>732は別のIDだしお前の発言かなんてわかんねーよ
ID:Xzg+p3Xeで具体的なこと何も書いてねーなーってことだよ
IDも判らないアホだって言いたいのか?

760
デフォルトの名無しさん[sage]   投稿日:2016/01/14 22:43:56  ID:Xzg+p3Xe.net(15)
>757
いくらでもある
組み込みも規模はいろいろ
時計や簡単なオモチャレベルからWindowsを積んだようなものまで

761
デフォルトの名無しさん[sage]   投稿日:2016/01/14 22:44:35  ID:fK8eMzuy.net(13)
>758
>733も違うIDだろ
もうアンカーはいいから自分の口で説明してみ?

762
デフォルトの名無しさん[sage]   投稿日:2016/01/14 22:45:24  ID:Xzg+p3Xe.net(15)
>733 はおれだ
俺の言葉で書いたレス
証拠はないが

763
デフォルトの名無しさん[sage]   投稿日:2016/01/14 22:46:09  ID:fK8eMzuy.net(13)
>いろいろある
>いくらでもある
吹いた
組み込み業界はこんなんばかりでまさに絶望的だな!

764
デフォルトの名無しさん[sage]   投稿日:2016/01/14 22:46:34  ID:Xzg+p3Xe.net(15)
なんか知らんが、そのあと無理やりUARTでデバッグする書き込みが続いた

765
デフォルトの名無しさん[sage]   投稿日:2016/01/14 22:48:44  ID:fK8eMzuy.net(13)
じゃあ>737にレスした>738が悪い

766
デフォルトの名無しさん[sage]   投稿日:2016/01/14 22:49:40  ID:Xzg+p3Xe.net(15)
組み込みを知らないのに知ったかぶって >741 を書いたのか
出来もしないのに

767
デフォルトの名無しさん[sage]   投稿日:2016/01/14 22:50:03  ID:fK8eMzuy.net(13)
組み込みって一人で何でもやるような商売だから
人とのコミュ力が試されるなー
コメント1件

768
デフォルトの名無しさん[sage]   投稿日:2016/01/14 22:51:11  ID:Xzg+p3Xe.net(15)
>738 があまりにトンチンカンだからつい >740 を書いたんだ

769
デフォルトの名無しさん[sage]   投稿日:2016/01/14 22:52:40  ID:y5xIxK0W.net(3)
なんでわざわざUART使うんだよ
普通JTAGとかLFASTとか使うだろ
コメント1件

770
デフォルトの名無しさん[sage]   投稿日:2016/01/14 22:52:42  ID:Xzg+p3Xe.net(15)
>767
いや、だから組み込みにもいろんな規模のがあるんだって

771
デフォルトの名無しさん[sage]   投稿日:2016/01/14 22:58:47  ID:Xzg+p3Xe.net(15)
>769
わざわざUARTを使う理由はいろいろある
UARTを使わない理由もいろいろある

使わない理由は既にいろいろ書いた

使う理由は、
ログをテキストで(簡単に)残せる
PCからいろいろな制御が出来る
テストの自動化がやり易い
などなど

デバッガはデバッガで便利だが、シリアルデバッグもいろいろと便利

772
デフォルトの名無しさん[sage]   投稿日:2016/01/14 23:00:29  ID:y5xIxK0W.net(3)
まあ>737は俺なんだけど
>738に言いたいのは
printfもどき作る暇があったらICE使ってステップ実行した方が効率的だってこと

773
デフォルトの名無しさん[sage]   投稿日:2016/01/14 23:01:56  ID:si8G2R6b.net(2)
いちいち止めて、デバッグとかできないのもあるのよ

774
デフォルトの名無しさん[sage]   投稿日:2016/01/14 23:13:33  ID:y5xIxK0W.net(3)
こういうこと言うのもアレだけど
JTAGとかLFASTがシリアルじゃないとでも?
プログラムトレースとかデータトレースはリアルタイムで吐かせようよ
どうせ周辺のIPが勝手にやっといてくれるんだし
ログっておいて後でデバッガで再生すりゃいいんだからさ

775
デフォルトの名無しさん[sage]   投稿日:2016/01/14 23:35:06  ID:si8G2R6b.net(2)
膨大かもしれないログ追えるんだ
すごいな〜〜〜〜〜
コメント2件

776
デフォルトの名無しさん[sage]   投稿日:2016/01/15 00:04:58  ID:zaUY/8Xo.net(2)
>775
なんで追えないの?
検索機能とか知らないの?

膨大なログを出すだけの実行コード行を
ステップで一行一行実行していく気?w

777
デフォルトの名無しさん[sage]   投稿日:2016/01/15 01:06:14  ID:9kMRmw2b.net
天災さんが降臨されてたんですね
失礼しました

778
デフォルトの名無しさん[sage]   投稿日:2016/01/15 01:42:09  ID:qO6Bm0rJX
このスレは怨念がぎっしり詰まってそうだ

779
デフォルトの名無しさん[sage]   投稿日:2016/01/15 08:33:23  ID:3+jxxZHF.net
膨大と言ってもせいぜい数百MB程度だから検索できない訳がない
printf使ったって結果はファイルにリダイレクトするだろ
同じようなもんだ

780
デフォルトの名無しさん[sage]   投稿日:2016/01/15 11:05:47  ID:qP185FEX.net
       ロギング

  ∧_∧          __
 ( ・∀・)         | i \ \
 ( U U          | i  l =l
 と_)_) ____     | |__ノ  ノ
       | i(;;)H|   | ̄ ̄| ̄ ̄|

781
デフォルトの名無しさん[sage]   投稿日:2016/01/15 12:53:25  ID:0fhpXD7V.net(2)
>775
追えるようにログを吐くんだよ

782
デフォルトの名無しさん[sage]   投稿日:2016/01/15 12:55:53  ID:0fhpXD7V.net(2)
そもそも、小さいマイコンじゃそんなに多量には吐けない

ブロッキングだと動作速度が大きく変わり
ノンブロッキングだと間引かれる

783
デフォルトの名無しさん[sage]   投稿日:2016/01/15 13:43:20  ID:zaUY/8Xo.net(2)
なんでノンブロッキングだと間引かれるんだよw

784
デフォルトの名無しさん[sage]   投稿日:2016/01/15 18:16:06  ID:9X5/eWgr.net(2)
小さいマイコンはバッファを大きく取る余裕がないから

785
デフォルトの名無しさん[sage]   投稿日:2016/01/15 18:16:55  ID:9X5/eWgr.net(2)
いっぱい出せばすぐにあふれる

786
デフォルトの名無しさん[sage]   投稿日:2016/01/16 14:50:47  ID:OsKsEu35.net
971 名前:名無しさん@七周年[] 投稿日:2006/11/11(土) 00:56:10 ID:M8+ahUZV0
自称スーパープログラマー某

強烈加齢臭
メール見ない メール無視
ドキュメント見ない ドキュメント無視
説明聞かない 説明無視
話聞かない 話無視
ガム→むっちゃー むっちゃー むっちゃー むっちゃー
煎餅→バリバリバリバリバリバリ
菓子パン→モグモグモグモグモグモグモグモグモグモグ
カップアイス→むっちゃー むっちゃー ペロペロペロペロ

フロアすべてに響き渡る 超ばかでかいくしゃみ 当然手でおさえない

異音と異振動
ドスーン!ドスーン! ドカーン!ドカーン! バコーン!バコーン! ズドン!ズドン!
机が近いとマウスポインターが飛ぶ 誤操作誘発
書類だしたりしまうだけでドカンドカン

30秒ごとに口と鼻から異音
ふんっっ!    ふんっっ!   

備品破壊 貸与P C 破壊 他人のもの破壊

奴の作ったスクリプトとプログラムは使えない バグ製造機

電話や共有携帯電話 キーボードが油ベタベタ
奴に電話とPCとコンソールは触らせてはいけない

787
デフォルトの名無しさん[sage]   投稿日:2016/01/16 18:22:51  ID:wGXFO9/q.net(2)
社員として使えないなら切れ
使えるなら我慢しろ

788
デフォルトの名無しさん[sage]   投稿日:2016/01/16 18:23:39  ID:wGXFO9/q.net(2)
せんべいはおれも食べる
ダメ?

789
777[777]   投稿日:2016/01/16 18:26:19  ID:XWGZA0lu.net
777げっち(´・ω・`)b

790
デフォルトの名無しさん[]   投稿日:2016/05/01 10:15:32  ID:tKi6j9CT.net
匿名通信(Tor、i2p等)ができるファイル共有ソフトBitComet(ビットコメット)みたいな、
BitTorrentがオープンソースで開発されています

言語は何でも大丈夫だそうなので、P2P書きたい!って人居ませんか?

Covenantの作者(Lyrise)がそういう人と話したいそうなので、よろしければツイートお願いします
https://twitter.com/Lyrise_al

ちなみにオイラはCovenantの完成が待ち遠しいプログラミングできないアスペルガーw


The Covenant Project
概要

Covenantは、純粋P2Pのファイル共有ソフトです

目的

インターネットにおける権力による抑圧を排除することが最終的な目標です。 そのためにCovenantでは、中央に依存しない、高効率で検索能力の高いファイル共有の機能をユーザーに提供します

特徴

Covenant = Bittorrent + Abstract Network + DHT + (Search = WoT + PoW)

接続は抽象化されているので、I2P, Tor, TCP, Proxy, その他を利用可能です
DHTにはKademlia + コネクションプールを使用します
UPnPによってポートを解放することができますが、Port0でも利用可能です(接続数は少なくなります)
検索リクエスト、アップロード、ダウンロードなどのすべての通信はDHT的に分散され、特定のサーバーに依存しません

コメント1件

791
デフォルトの名無しさん[sage]   投稿日:2016/05/01 12:38:30  ID:5H9PV7Hp.net
死ねカス

792
デフォルトの名無しさん[]   投稿日:2016/05/01 18:06:50  ID:XA7YY+e1.net
>790
絶望的なコードの紹介?

793
デフォルトの名無しさん[sage]   投稿日:2016/05/02 16:33:40  ID:aR8AOrvI.net
今までみたことのない糞レス

794
デフォルトの名無しさん[sage]   投稿日:2016/05/22 02:09:26  ID:PykTFw3U.net
変数名 data
コメント1件

795
デフォルトの名無しさん[sage]   投稿日:2016/05/22 12:11:03  ID:hKJLLsJo.net
凝集度をあげてほしい

796
デフォルトの名無しさん[sage]   投稿日:2016/06/02 23:05:04  ID:ZNUdZI3k.net
&hearts;

797
デフォルトの名無しさん[sage]   投稿日:2016/06/03 12:08:02  ID:cGjwwdHV.net
Enumを文字列のコード値にswitch文で変換して、それをswitch文で別のEnumに変換する
ってのがいろんな所に書いてあった

798
デフォルトの名無しさん[sage]   投稿日:2016/06/05 02:49:12  ID:b0qHmmcL.net
いまどき変数名が衝突して不具合を生じてたとか馬鹿な報告を上げてくる下請け
コメント1件

799
デフォルトの名無しさん[sage]   投稿日:2016/06/05 12:52:01  ID:sTpf+U42.net
>798
釣りかもしれんが
納品検収テストで見つけられない発注元の方に絶望するわ
コメント1件

800
デフォルトの名無しさん[sage]   投稿日:2016/06/05 13:12:06  ID:OYIyvlQD.net
国や公務員からしてそんなことやってるから三菱になめられるんだよ

801
デフォルトの名無しさん[sage]   投稿日:2016/06/06 05:03:16  ID:QbKl1YZH.net
>799
納品前の結合環境のバグだよ
まともなフェーズ管理のある環境で働いたことのないガキは引っ込んでろ

802
デフォルトの名無しさん[sage]   投稿日:2016/06/21 23:08:20  ID:GMAXhxXB.net
>794
使い所によるのでは?

803
デフォルトの名無しさん[sage]   投稿日:2016/06/22 08:46:39  ID:MtYOmoik.net
「datas」って英語圏でも使ってるの見るね。間違いではないのかな?

804
デフォルトの名無しさん[sage]   投稿日:2016/06/22 09:59:00  ID:t1NluOvj.net
int a[10];
int b[10];
int c[10];

があったとき、 a, b, c をまとめると datas
それぞれは data だっていうのを聞いたことがある

信じるか信じないかはあなた次第

805
デフォルトの名無しさん[sage]   投稿日:2016/06/22 11:15:52  ID:DmPvlaR4.net
datumなんて見たことすらないしな

806
デフォルトの名無しさん[sage]   投稿日:2016/06/22 11:55:36  ID:yBOVYSwe.net
datumは見たことあるな
miceとかも見たことあるな

807
デフォルトの名無しさん[sage]   投稿日:2016/06/22 21:58:10  ID:aSQEHncx.net
indicesを最近まで知らずにindexesって書いてたわ

808
デフォルトの名無しさん[sage]   投稿日:2016/06/23 11:49:21  ID:332nxUAD.net
railsみたいにそういうの判っててindexesにしてるケースもある

809
デフォルトの名無しさん[sage]   投稿日:2016/07/04 21:58:16  ID:0RWmorvn.net
2400bpsの通信速度のコンソールに9600bpsの通信回線の通信ログを吐き出すプログラム

810
デフォルトの名無しさん[sage]   投稿日:2016/07/05 23:20:03  ID:kKcHGrML.net
んー、ちょっとスレの趣旨と違うかな。

811
デフォルトの名無しさん[sage]   投稿日:2016/07/12 09:09:02  ID:GUx/gdNo.net
C#で、糞長いメソッド内の処理を、意味のある単位にregionで囲ってるの見ると、切り出したくてムラムラする。

812
デフォルトの名無しさん[sage]   投稿日:2016/07/12 12:22:44  ID:DRheqrQu.net
担当が逃げて押し付けられた、こんなコードに責任は持ちたくない
でも読まなきゃいけない読めなきゃいけない…
その妥協点がregionなのさ

813
デフォルトの名無しさん[sage]   投稿日:2016/07/13 22:27:12  ID:cbsCrAwe.net
読まずに保守するテクニックを身につけないと辛いよ

814
デフォルトの名無しさん[sage]   投稿日:2016/07/15 09:11:47  ID:RfCrCFKv.net
ドキュメンテーションコメントに嘘書くのやめろよ!
嘘になっちゃうような修正をするなら、コメントもちゃんと見直してくれや

815
デフォルトの名無しさん[sage]   投稿日:2016/07/31 13:48:17  ID:kJ3Jsux+.net
forの中が1000行以上・・・

816
デフォルトの名無しさん[sage]   投稿日:2016/08/29 07:53:30  ID:7JUajOeD.net
仕事でFORTRAN77の年代物の科学技術計算コードを最適化(並列化含)したことあるんだがあれはひどかった。

この世の糞が全て詰まってたコードだった。誇張抜きで

817
デフォルトの名無しさん[sage]   投稿日:2016/09/01 16:00:38  ID:G1V/juoY.net
#regionて、IDEで見る以外に意味ないんだよね?

818
デフォルトの名無しさん[sage]   投稿日:2016/12/08 09:16:13  ID:FEYStmIt.net
c++のコード引き継いだら

#define private public

てのを見たことある。
逆に新鮮だった。

もちろんこの行は消した。
コメント1件

819
デフォルトの名無しさん[sage]   投稿日:2016/12/09 22:56:12  ID:Pi2Dlq3z.net
>818
unit test でもやってたんじゃね?
コメント1件

820
デフォルトの名無しさん[]   投稿日:2016/12/22 11:56:29  ID:/ytrOsGa.net
>819
何の弁明にもならん

821
デフォルトの名無しさん[]   投稿日:2016/12/22 12:31:28  ID:mlmgTnRW.net
phpのecオープンソースmagento

822
デフォルトの名無しさん[sage]   投稿日:2016/12/29 21:32:42  ID:P8hgWrsI.net
#if true
string TestFilter=" AND ET000.ID > 8023354 "; // 開発専用。まともに回すととても遅いので…こんなのやりたくないっす
#else
string TestFilter="";
#endif
string Filter=" ET000.c_flg=1 AND ET000.memo LIKE '%start:2012/01%' " + TestFilter;
string Sql = " SELECT * " + CONST_NEW_LINE +
" FROM ET000 " + CONST_NEW_LINE +

823
デフォルトの名無しさん[sage]   投稿日:2017/01/01 19:19:04  ID:HLv5dR03.net
https://code.hackerearth.com/7b7b82s
https://code.hackerearth.com/431130T
一生懸命に12時間もかかって書いたのにあまりウけませんでした

824
デフォルトの名無しさん[sage]   投稿日:2017/01/01 21:15:21  ID:9MvoRZrQ.net
センスのかけらもない
コメント1件

825
デフォルトの名無しさん[sage]   投稿日:2017/01/03 18:26:56  ID:kDLE0pJc.net
>824
センスとはどういうことをさすの?
コメント1件

826
デフォルトの名無しさん[sage]   投稿日:2017/01/04 20:28:14  ID:EyqoOVTu.net
エレガンス

827
デフォルトの名無しさん[sage]   投稿日:2017/01/06 12:03:13  ID:Iab1DByP.net

828
デフォルトの名無しさん[sage]   投稿日:2017/01/06 12:11:20  ID:5QBUIDnx.net
>827
今ならクーラーではないか?
コメント1件

829
デフォルトの名無しさん[sage]   投稿日:2017/01/06 14:20:26  ID:NYT/unlz.net
>828
それはシロッコファン

830
デフォルトの名無しさん[sage]   投稿日:2017/01/06 15:24:21  ID:XtKi9eaG.net
Your joke is not Coooool!!!

831
デフォルトの名無しさん[sage]   投稿日:2017/02/06 19:10:19  ID:P0M4N+3Y.net

832
デフォルトの名無しさん[sage]   投稿日:2017/02/07 11:04:23  ID:hm/AHdrI.net
情報エキスパートしか知らないのか、入門書を真に受けたのか
受注クラスに受注のすべてが書いてあった

833
デフォルトの名無しさん[sage]   投稿日:2017/02/24 06:22:47  ID:8ATozeRB.net
// よくここで止まっていた(いつの間にか何故か解消しました)

834
デフォルトの名無しさん[sage]   投稿日:2017/02/27 12:20:37  ID:GGu6vxcV.net
一年前の自分のコード
更新情報
・スレッド一覧ページで過去ログのタイトル検索・一覧表示ができるようになりました(2016/1/20)
NGワード登録
登録する
スレッド内検索

プログラム板 タイトル検索

このスレッドが人気です(実況系)
情報ライブ ミヤネ屋★2 (381)NTV実況
バイキングとグッディ★6 (1000)フジ実況
バイキングとグッディ★7 (176)フジ実況
2017WBCワールドベースボールクラシック 決勝 アメリカ×プエルトリコ★9 (694)テレ朝実況
第89回選抜高校野球大会4日目 ★31 (302)NHK実況
NHK総合を常に実況し続けるスレ 132118 アッキーの寄付金 (863)NHK実況
喚問ライブ カゴイケ屋★2 (133)NTV実況
連続テレビ小説 べっぴんさん★241 (436)NHK実況
このスレッドが人気です(ニュース系)
【実況/国会中継】森友学園問題 籠池理事長 証人喚問 参議院10:00 衆議院14:50 ★20 (908)ニュー速+
【WBC】米国がWBC初優勝!プエルトリコに8-0で快勝 (327)音楽・芸能ニュース
【実況/国会中継】森友学園問題 籠池理事長 証人喚問 参議院10:00 衆議院14:50 ★19 (1001)ニュー速+
【実況/国会中継】森友学園問題 籠池理事長 証人喚問 参議院10:00 衆議院14:50 ★18 (1001)ニュー速+
【森友学園】籠池氏「50年国有地を借りれるよう昭恵夫人に依頼。付き人谷氏がFAXで断ってきた」 民進党福山氏「忖度が働いて面食らった」 (820)ニュー速+
【籠池氏証人喚問】籠池氏、はしご外したのは「松井知事」 (1000)ニュー速+
【実況/国会中継】森友学園問題 籠池理事長 証人喚問 参議院10:00 衆議院14:50 ★16 (1000)ニュー速+
【実況/国会中継】森友学園問題 籠池理事長 証人喚問 参議院10:00 衆議院14:50 ★16 (1000)ニュー速+
プログラム板の人気スレ
【統計分析】機械学習・データマイニング14 (282)
Excel VBA 質問スレ Part47 (283)
スレ立てるまでもない質問はここで 146匹目 (986)
オブジェクト指向って不自然な文法だよな (368)
くだすれPython(超初心者用) その32 (957)
Visual Studio 2017 (765)
C言語なら俺に聞け 139 (557)
次世代言語議論スレ[Go Rust Haskell Scala]第3世代 (274)
ふらっと C#,C♯,C#(初心者用) Part127 (129)
ねねっちと一緒にプログラムを勉強するスレ第2話 (60)
C++相談室 part129 (858)
C#, C♯, C#相談室 Part92 (590)
推薦図書/必読書のためのスレッド 81 (508)
Swift part10 (311)
Pythonのお勉強 Part52 (702)
Visual Studio 2015 Part8 (552)
【PHP】下らねぇ質問はここに書き込みやがれ 8 (67)
Xamarin Part3 (646)
Git 15 (314)
Java入門・初心者質問スレ Part.2 (864)
HSP総合スレ【part 10】 [無断転載禁止](c)2ch.net (242)
クラス名・変数名に迷ったら書き込むスレ。Part27 (929)
ドルオタワイ、1からプログラミングを学びたい (130)
☆★Java質問・相談スレッド179★★ (827)
プログラミング言語 Rust 2 (699)
Ruby 初心者スレッド Part 59 (888)
【初心者歓迎】C/C++室 Ver.100【環境依存OK】 (520)
VRプログラム雑談【Unity/UnrealEngine】【HTC Vive/Oculus Rift/その他VR】 (489)
関数型プログラミング言語Haskell Part30 (241)
このサイトについて
このサイトは2ちゃんねるからデータを取得し、表示するサービスです。
画像のインライン表示機能について
画像のURLの後ろにある[画像をインライン表示]をクリックすると、URLの下に表示します。
表示される画像は横幅100pxに縮小されていて、クリックすると原寸で表示します。
このサイトの特徴
1)スレッド内検索ができます
2)レス(「>>1」など)のポップアップができます
3)不適切な言葉を含む投稿を表示しません
4)ページ内で画像を直接表示できます
5)2ch他スレッドへのリンクはタイトル・板名つきでリンクします
6)すっきりとしたデザインで表示します
7)最新スレや前スレをチェック・一覧表示します
8)NGワード機能の搭載でイヤな言葉が目に入りません
9)荒らしを自動チェックします
10)スレッド内・同一IDの書き込みだけ表示できます
11)レスの返事をレスされた発言の下に表示する「まとめビュー」が利用できます
12)シリーズ化したスレッドの一覧を表示します
13)最新のスレッドがある場合はお知らせします
削除について
こちらをご覧ください
機能要望について
現在機能要望受付中です。
問い合わせについて
こちらのページからどうぞ
広告


首都圏の方、ソフトバンク光オススメですよ


このサイトは2ch.scからデータを取得・表示しています。削除などについてはこちらをご覧ください。 アクセスモード:差分取得 - 新着書き込みなし(304)