2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

スパゲッティコーダーについて語ろう

1 :仕様書無しさん:2012/07/07(土) 13:43:17.91 .net
-スパゲッティコード、スパゲッティコーダーとは
-スパゲッティなコードはどうやったら回避できる
-こんなスパゲッティーなコード書いてるマがいた
-マが考えるおいしいスパゲッティの作り方
-何が原因で人はスパゲッティなコードを生み出してしまうのか
-スパゲッティを解くときのコツ

みたいな、スパゲッティに関することを話すスレがなさそうなのでたてました。
スパゲッティに関する持論や、職場での体験談などお聞かせください。

2 :仕様書無しさん:2012/07/07(土) 13:45:19.57 .net
んでとりあえず自分から

この間スパゲッティを履き違えてる人いたんだ
自分が理解できないコードは全部スパゲッティらしい
だから、自分が理解できる自分のコードはスパゲッティじゃないと思っているらしい

この人に、どうやって真実を伝えれば、事を穏便に済ませられ、みんなハッピーになれると思う?

3 :仕様書無しさん:2012/07/07(土) 14:01:17.87 .net
1メソッドに処理つめこんであったら、
コメントとかで処理概要な意図などしっかり書かれててもスパゲッティと呼べる
どうみてもマに向いてないタイプの糞コーダーはだいたいこのタイプ

新しいクラス作るときでも、まず似たようなクラス全体をコピペしてきて、処理を削る作業からコーディングに取り掛かる
無駄な手打ちをしろとは言わん
だが、まず最初に他のソースコピペからはじめる奴は、ほぼスパゲッティ職人の素質あると思うわ

メソッド呼ぶコストとか意識しないといけないような環境なら1本道処理も意味ある場合もあんのかもしらんが、
少なくともうちの職場でやってる仕事にそういうのはねーしな

4 :仕様書無しさん:2012/07/07(土) 14:19:57.01 .net
http://www.codeodor.com/About.cfm

5 :仕様書無しさん:2012/07/07(土) 14:55:56.83 .net
麺は少し塩を多めにいれ、茹でるだけ。ソースと同時並行でやるのがいい。
ソースはオイルソースがお手軽で簡単。
芯をとって縦に薄くスライスしたにんにくと、オリーブオイルを50cc〜くらいを、適当なパンに入れて弱火で加熱し、
種とった唐辛子を適当にちぎって入れる。(辛いほうが好みな人は、唐辛子の種も入れちゃってもいい)
にんにくに薄く色がつくくらいまで、じっくり香りと唐辛子の辛味をオイルに移したら、
一度オイルとにんにく唐辛子をパンから出して、ベーコン、セロリ(具は割と何でも合う)なんかを炒めて、
白ワインをちょっと加え(なくてもいいけど個人的にオススメ)、火が通るまで軽く炒める。
オイルと唐辛子、にんにくを戻して、麺の茹で汁をお玉一杯分くらい加えてソース完成。
味付けが足りないときは、軽く塩なんかを足して調整するといい。

同時作業は2口コンロないと鍋変えながら並行作業とかになって結構面倒だけど、
お手軽でおいしい、ペペロンチーノの完成です。

6 :仕様書無しさん:2012/07/07(土) 18:07:12.18 .net
スパゲッティなら解けるが、お団子は解けない

7 :仕様書無しさん:2012/07/07(土) 21:54:19.57 .net
既存メソッドにフラグ引数追加すんなや!!

8 :仕様書無しさん:2012/07/07(土) 22:41:48.94 .net
コピペを繋ぎ合わせてたら、絡まっちゃったw (テヘペロ

9 :仕様書無しさん:2012/07/08(日) 02:21:49.15 .net
疎結合だった所をいくつもまとめて密結合にしないで下さい
あんただけレビューに時間かかるし手戻りも多いんだから自覚してるだろうに

10 :仕様書無しさん:2012/07/08(日) 09:41:22.56 .net
コピペコーダーはスパゲッティ職人でもある

11 :仕様書無しさん:2012/07/08(日) 13:41:54.21 .net
スパゲットーニコーダーやスパゲッティーニコーダーは?
フェデリーニコーダーやカッペリーニコーダーも。
マカロニコーダーとかはまた別?

12 :仕様書無しさん:2012/07/08(日) 14:12:37.60 .net
むしろ、仕様変更繰り返すと、簡単にスパゲティになるよ。

13 :仕様書無しさん:2012/07/08(日) 16:38:49.05 .net
マカロニって見た目だけで中身はスカスカってことか?

14 :仕様書無しさん:2012/07/08(日) 18:53:39.70 .net
コンキリエコーダーとかなんかKHTMLとそれの派生関連の開発してそう。

15 :仕様書無しさん:2012/07/08(日) 19:16:27.84 .net
パスタ全般の話してたら、きりがない

16 :仕様書無しさん:2012/07/08(日) 19:28:37.95 .net
ここはいっそうどんコーダーで。

17 :仕様書無しさん:2012/07/08(日) 20:28:04.40 .net
スパゲッティコードの修正頼まれたらさらに意味不明なフラグを用意してジャンプ先でさらにフラグをセットして
そのフラグを元にジャンプしたりさせてさらに難解にする

18 :仕様書無しさん:2012/07/08(日) 22:54:56.88 .net
>>12
要求者のクセを先読みしないと無理だよな。
毎回リリース間際にスペシャルifを要求してくるし。

19 :仕様書無しさん:2012/07/10(火) 01:47:44.13 .net
スパゲッティ食べたくなってきたぞどうしてくれる

20 :仕様書無しさん:2012/07/10(火) 07:07:01.29 .net
>>19
スパゲッティを食べたいのならスパゲッティを食べればいいと思います。

21 :仕様書無しさん:2012/07/11(水) 19:08:37.44 .net
>>2にもあるけど、スパゲッティの定義も人それぞれだから、何を持ってスパゲッティというかは微妙なとこだな
馬鹿の考えるスパゲッティは、実は保守しやすく見通しがいい、クラスがきちんと作られてるいい実装だったりもするしww

22 :仕様書無しさん:2012/07/11(水) 19:50:43.36 .net
賢いフリしてる馬鹿の文章そのままなんだよなぁ

23 :仕様書無しさん:2012/07/12(木) 15:26:41.06 .net
>>21
そういうのはスパゲットーニと言って、ミートソースのような重いソースでも比較的ほぐれやすい。

24 :仕様書無しさん:2012/07/12(木) 19:15:06.66 .net
具体的に、どういうのがスパゲッティだと思う?

25 :仕様書無しさん:2012/07/12(木) 19:44:20.25 .net
>>24
メソッドが入り組んでる
aの中でb
bの中でc
cのなかでd
特に理由もなく

26 :仕様書無しさん:2012/07/12(木) 19:57:48.89 .net
>>25
それじゃ、a->b->c->dの一本道じゃないか。
せめてdからbを呼ばないと。

27 :仕様書無しさん:2012/07/12(木) 20:34:17.96 .net
一メソッドに20行超とか、アホみたいに機能詰め込んでるやつは、
そのメソッドのなかがこんがらがっててとてもスパゲッティ

28 :仕様書無しさん:2012/07/12(木) 21:03:20.95 .net
・公開されてるメソッド名やフィールドが俺々略語。
・1メソッドが無駄に長かったり、内部処理が全く分割されてない多機能メソッド。
・似た処理をコピペしたコードが点在している(仕様変更が入ると、修正箇所が増大するのでスパゲティ)。
・リテラルのハードコーディング'(同上)。
・インナークラスや匿名クラスの多用。
・他所の参照を持ちすぎ。
・temp/tmp/hoge/moge/hage のような汎用名の多用。

最後の派、1メソッドが長くなければローカル変数名は何でもいいと思うけど、
一本糞メソッド作る奴はローカル変数もこういうのばっかり使うしな

とにかく後の事何も考えてないあほ実装は、糞コードでとてもスパゲッティだと思ってる
あちこちに依存しててこんがらがってたり、コピペ量産しまくってたり

>>25
メソッド多いってだけじゃ読み解く側の理解力不足ってだけな事もあるだろうから、
入り組んでるかどうかは、実際のコード見てみないと判断つかない希ガス

メソッド名も理解しようとしなければ、IDEもろくすっぽ使えなくて
スクロールしまくってメソッド参照さがしたりしながら、複雑だーって言ってたりする奴うちにいるしw

29 :仕様書無しさん:2012/07/13(金) 00:37:09.66 .net
>コピペ量産しまくってたり
ネットで拾った大量のコピペを繋ぎ合わせて、コンパイルが通っただけで俺スゲェ
1日にコピペした「ステップ数」が俺スゲェ
…そんな文系脳の偽プログラマを混ぜないで下さい、本当に。

30 :仕様書無しさん:2012/07/13(金) 00:46:55.37 .net
スパを書き他人のスパを紐解くところから修行は始まるのじゃよ

31 :仕様書無しさん:2012/07/13(金) 03:32:29.95 .net
リゾットを分けるとリゾットごとにやってることが分かりやすくなるけど、
リゾットを呼ぶごとにかかるペナルティがわりとシャレにならないこともある。

32 :仕様書無しさん:2012/07/13(金) 13:26:24.15 .net
やっぱスパゲッティとリゾットは一人暮らしの料理として最適だよな
すぐできるし、ごはんたかなくてもいいし

33 :仕様書無しさん:2012/07/13(金) 13:29:03.18 .net
>>31
メソッドコールの負荷なんかも考えないといけないようなアレな環境だったらそうだけど、
今日日そうじゃないほうが多いからなー
コンパイラーさんのおぷちまいざーがやってくれるくらいで十分だったりする

微々たる差を埋めるより、あとで見返したとき考えないですぐ作業できるようなのが望ましい

34 :仕様書無しさん:2012/07/13(金) 13:53:44.83 .net
「オブジェクト指向」と「オブジェクト指向プログラミング」と「オブジェクト指向プログラミング言語」
http://engawa.2ch.net/test/read.cgi/poverty/1342142253/

35 :仕様書無しさん:2012/07/13(金) 15:35:09.42 .net
スパゲッティだと女性うけしないからパスタにしよ


36 :仕様書無しさん:2012/07/13(金) 16:06:06.03 .net
つってもスパゲッティ以外を食う機会なんてそんなに多くないけどなw

37 :仕様書無しさん:2012/07/13(金) 16:11:45.14 .net
日本人なら蕎麦コードだろ。
いや、たれ流し的に作っていくから、流しそうめんコードか?
流した後は俺シラネって意味でもしっくり来るな。

38 :仕様書無しさん:2012/07/13(金) 18:10:49.76 .net
トコロテンもあるでー

39 :仕様書無しさん:2012/07/13(金) 22:29:06.46 .net
納豆コード

40 :仕様書無しさん:2012/07/13(金) 22:49:17.17 .net
当たり前なんだけど、 obfuscatiin したコードは強烈なスパゲッティで全く読めなかった

41 :仕様書無しさん:2012/07/14(土) 01:19:15.48 .net
>>37
盆栽コードと呼びたいね

意図不明に捻じ曲がって何処と繋がっているかよくよく目を凝らさないと判らないようなところなんか特にね

42 :仕様書無しさん:2012/07/15(日) 08:45:33.69 .net
>>40
ウィルスの(検出を逃れる為の)変種って単に obfuscation 追加してるだけらしいね
スパゲッティにもプロダクトとしての実用性がある例だね

43 :仕様書無しさん:2012/07/19(木) 21:45:36.90 .net
「なんで、このクラスにその関数や変数を突っ込んじゃったんですか!(ありえないっしょ・・・)」

「そこに、クラスがあったから」



マロリーかお前は

44 :仕様書無しさん:2012/07/19(木) 21:53:33.24 .net
何をどのクラスやネームスペースに入れるかは熟練した人でも結構悩む設計に直結するから
ましてや新人やスパゲッティストにわかるわけがない

45 :仕様書無しさん:2012/07/19(木) 22:28:04.84 .net
とりあえず動くし

46 :仕様書無しさん:2012/07/19(木) 23:22:35.55 .net
明日までにとりあえず動くサンプルを用意して

元凶は客に良いかっこ見せたいアホのこんな一言の積み重ねにある

47 :仕様書無しさん:2012/07/19(木) 23:56:13.44 .net
しかも「朝イチまでに」

48 :仕様書無しさん:2012/07/20(金) 06:51:55.78 .net
「とりあえず動くし」をやめれば、デバッグの工数が激減すると思うのだが、
あくまでも思うだけなんだよな・・・・実際はどうなんだろう・・・・・?

49 :仕様書無しさん:2012/07/20(金) 16:11:53.22 .net
生産性が下がります

50 :仕様書無しさん:2012/07/21(土) 03:07:26.43 .net
クラス設計、テストの実装がきちんと出来ていればデバッグ工数は格段に減るよ
改修コストもかなりかるいし、UTあるとリファクタリングしやすいからいかようにも出来る
Excelチェックシートのテストとか頭悪い事この上ないって思うようになるよ

51 :仕様書無しさん:2012/07/21(土) 06:53:00.02 .net
曜日と時間から漂う絵に書いた餅感が尋常じゃない件

52 :仕様書無しさん:2012/07/21(土) 08:43:35.19 .net
>>51
こういうのは恨み節というんだよ
実感こもっている

53 :50:2012/07/21(土) 10:57:26.96 .net
>>51
週末は早寝しなくていいからなw
普段は朝6時起き、8時半始業〜の5時定時だから、その反動で夜更かししたくなるんだ

ああでも絵に描いたもちなのは確かにそうだ
最近やってるのはずっとそういうのが全くない環境で、頭の悪い仕事ばっかやってて気が狂いそう
腐ったスパゲッティをどうほどくのが今後楽になるか、ってことばっか考えてる
ほどく蕎麦からバグ出てくるし…

54 :仕様書無しさん:2012/07/21(土) 11:15:35.45 .net
>>53
麺類好きだな

55 :仕様書無しさん:2012/07/21(土) 11:27:12.92 .net
いま一つなSEの仕様書や設計書内容も、顧客が示す受け入れテストの内容も、開発工数には影響するけど、
アレな人が自分のアイディアで編み込むスパゲティーの原因にはならない。
当然、スパゲティーによって後日の改修工数が膨れる事の予防にもならない。

56 :仕様書無しさん:2012/07/21(土) 15:03:59.53 .net
貸し借り無しの、20年前に戻してあげよう。

57 :仕様書無しさん:2012/07/21(土) 21:35:40.72 .net
>>50
そもそも後でリファクタリングしないといけないようなものなんて・・・・・・

58 :仕様書無しさん:2012/07/22(日) 02:20:50.51 .net
ソフトウェアの開発能力:アメリカ、韓国、台湾産>>>>>>越えられない壁>>>>>>日本

国産スマホ期待の星 富士通ARROWSがカクカク・誤タッチ
http://ggsoku.com/2011/11/arrows-x-lte-f-05d/
181:名無しさん@涙目です。(dion軍):2011/11/30(水) 01:17:58.93:ID:zDKGRYD00
アメリカ、韓国、台湾産>>>>>>越えられない壁>>>>>>>>>>>>国産
なんでこんなに差つけられてんの?ほんと終わってるわ

192:名無しさん@涙目です。(茸):2011/11/30(水) 01:21:24.29:ID:79rmmTkM0
>>181
根本的にはソフトウェアの技術者を育成しなかったから
ただし賃金に見合うスペックの技術者を育てられたかというと難しい

205:名無しさん@涙目です。(アラバマ州):2011/11/30(水) 01:25:04.49:ID:6LGomvLY0
GALAXY Sとか1年半前の端末に負けるって終わりすぎてるだろ

327:名無しさん@涙目です。(長崎県):2011/11/30(水) 02:33:08.04:ID:bE6U4pHC0
本当にソフトウェアの開発能力がないんだな、日本は…どうすんだ、これ…

ガジェ大好き名無しさん 投稿日:2011年11月30日 15:53 返信
日本の開発環境→二次三次四次下請けへ丸投げ人員ピンはね業
実際にコードを書いてるのは五次下請けあたり
派遣まみれでプログラミングなんて知らない人達が書いてます

ガジェ大好き名無しさん 投稿日:2011年12月2日 09:47 返信
プログラミングを知ってるのは逆に一番下請の人たちだけど
何故か設計は元請けのプログラム知らない自称SEが設計してますwww
そりゃ日本の端末はダメだわwww

ガジェ大好き名無しさん 投稿日:2011年12月2日 12:30 返信
だってプログラミングのプの字も知らない奴らがポンチ絵描いて下請けに投げてるだけだもん
日本の産業糞すぎ

59 :仕様書無しさん:2012/07/22(日) 08:01:51.13 .net
>>58
いつも思うんだけど、日本ができていないのは
個々の技術者のスキルを一定水準に持ち上げることじゃなく
開発設計フローの組織化と最適化じゃないのか


さらに言えば、「ものづくり神話」(←勘違い!)のせいで
メカ>>>>>>エレキ>>>>>>ソフト
の順で技術者の「エラさ」が固定されているから
マイクロソフトやアップルのような企業は日本では出現しない

「昔の家電がiPhoneひとつに収まっちゃいました(電機業界が儲からないわけだよね)」って
画像を見たことがあるけど、まさにそれ

60 :仕様書無しさん:2012/07/22(日) 08:33:02.05 .net
日本のソフトウエア技術者と掛けて原子力保安院と解く。

その心は、
おまえら全員素人じゃないか!
(記者会見でブチ切れた記者のヤジ)

61 :仕様書無しさん:2012/07/22(日) 13:31:28.78 .net
うぉーたーふぉーるで縦に割れまくってるくせに出来上がるものはスパゲッティ
流すなら素麺みたいにもっとつるっとおいしく頂きたいもんだわ

ソフト系の業界はほんとアレだよな
何がダメって、大手が技術力を持たなさ過ぎ軽視しすぎでアレ
伸びっこないわ

62 :仕様書無しさん:2012/07/22(日) 15:23:03.04 .net
日本のIT産業の失敗には次の2つの理由がある

他産業への従属化に舵をきったこと
利益を重視してヒトやモノへの投資より消費を優先させたとこ

これのおかげで使い捨て奴隷ばかりが増し人材を作る環境が潰え
知識や技能の向上を人任せにさせ人材を作ろうという風潮まで潰えた

63 :仕様書無しさん:2012/07/22(日) 18:00:27.69 .net
ジョブスのスピーチを有難がって買い求めるサラリーマンとか笑えるwwwww
笑える・・・

64 :仕様書無しさん:2012/07/22(日) 19:30:11.89 .net
ジョブズに限った話じゃないだろ

65 :仕様書無しさん:2012/07/22(日) 20:45:41.86 .net
カッコいいところだけ一流の経営者のまねをしたいだなんてどんだけ小児的なんだよ
まるで現政権の首脳陣だよ

66 :仕様書無しさん:2012/07/22(日) 22:35:14.59 .net
ジョブズのスピーチって全部ゴーストライターが書いてて、本人は教養もなくゲスなアホだったらしい。
ジョブズが本当にドヤ顔で言ってた言葉としてAppleの幹部が非公式に認めているのは

ゲイツのチンコはマイクロでソフト

事あるごとにこのオヤジネタ繰り返して悦に至ってたらしいね

67 :仕様書無しさん:2012/07/22(日) 22:48:11.87 .net
>>66
wwwwwwwwwwwwwww

グッジョブw

68 :仕様書無しさん:2012/07/23(月) 02:54:22.59 .net
ジョブスも一応半田付けくらいはやったぞ。ほとんど肝心なところはウォズが作ったけど。

69 :仕様書無しさん:2012/07/23(月) 15:10:20.67 .net
自分の作った会社から追い出だされるような人だしな

70 :仕様書無しさん:2012/07/23(月) 16:18:11.69 .net
ジョブスは偉大だ

71 :仕様書無しさん:2012/07/24(火) 01:30:53.15 .net
N-BASICあたりでは、サブルーチンなし、条件比較分とGOTOだけのプログラム書いてたよ。
いまみたらさっぱり解らん、当時の俺は天才かもと思ってしまう。

72 :仕様書無しさん:2012/07/24(火) 10:48:21.71 .net
>>71
しかも、DAT文でマシン語だからね。

73 :仕様書無しさん:2012/08/06(月) 22:15:07.18 .net
>>66
”自分はアホ”と自分で認識していたんで優秀なゴーストライターを雇った

ってところが賢いと思うんだが

74 :仕様書無しさん:2012/08/06(月) 22:48:45.12 .net
引継ぎさせられると素人PHPerのスパゲティソースがマジでむかつく
更地にしてやりたくなる


75 :仕様書無しさん:2012/08/08(水) 10:40:11.12 .net
>>74
フレームワークの使い方わかってなくて、めちゃくちゃなことしてたりするよな。

76 :仕様書無しさん:2012/08/10(金) 00:26:31.38 .net
あるあるすぎる

こっちは納品後のソースに対し客が内部で開発してぶち壊した挙句
バグだってこっちに障害報告あげてきててマジはげそうだわ
内部開発自体もう数年繰り返してるんだから、少しくらい言語仕様学べよ…

77 :仕様書無しさん:2012/08/11(土) 17:19:09.73 .net
納品先が中身いじったんなら当然追加費用取れるだろ?
なら、別によくね?

78 :仕様書無しさん:2012/08/11(土) 17:46:42.99 .net
いや金の問題じゃなくて、いつまでたっても成長しない相手を嘆いてるんじゃまいかと

79 :仕様書無しさん:2012/08/11(土) 17:49:40.15 .net
最初なら丁寧に説明して対応する
二回目でも次からガンバレの気持ちで普通に対応する
でもそれが三度四度と続くと、お前等いい加減に汁!と怒りたくもなる

80 :仕様書無しさん:2012/08/11(土) 19:55:46.13 .net
いや、最初に譲歩しちゃダメ
ビジネスなんだから
そこ納得してくださいってことは丁重に説明するけど譲歩はダメだ客がつけあがる

81 :仕様書無しさん:2012/08/12(日) 10:11:46.60 .net
>>77
大手だから、客とやり取りしてる立場じゃないからなぁ
コード自体全て向こうの持ち物だっていう契約で、
渡されたコードに対して機能改修とかを加えるっていうアレなスタンスだから、どうにもならん

ぶっちゃけスパゲッティが量産されすぎてて、もう手に負えない

82 :仕様書無しさん:2012/08/12(日) 10:28:37.83 .net
>>78
それもあるなー
自分なんて、今の仕事始めて1年半弱くらいだし、プログラミング言語経験もほぼ同じくらいしかないにわかマ
そこに入ってから勉強しただけだってのに、なんか気づいたら一番詳しい人みたいな扱いされてたりする
客で開発してる奴も、うちで開発してる奴も、そういうの勉強する意思みたいなのあんまないしなぁ
動けばいい、あとの事は知らんって感じ

>>80
直接相手したことはないけど、うちのとこもだいたいそんな感じになってるっぽいな
客の客が相当馬鹿なこと言ってるらしくて、客がそれを丸呑みする状況になってるくさい…
やっぱ水が落ちてくるような感じの仕事はもうだめだと思うわ
とてもておくれている

83 :仕様書無しさん:2012/08/13(月) 05:49:34.47 .net
ウォーターフォールモデル、死すべし!

84 :仕様書無しさん:2012/08/13(月) 18:58:08.05 .net
>>83
ちゃんと設計やレビューがあるなら良いと思うの。実際は分析者なり設計者が思い付いたことだけ書き付けて、責任は後工程になすりつけるのが問題かと。
途中参加で仕様確認したら、何となくわかるやろとか、いい感じでと言われたよ。しかし、作り上げたもの見て思ったのと違うと言う。

85 :仕様書無しさん:2012/08/13(月) 19:20:10.85 .net
本当にほしいと思ってる人間と、作る人間の間に無駄に人が挟まりすぎるのが問題

86 :仕様書無しさん:2012/08/13(月) 21:46:50.43 .net
更に、仕様変更と言う名の手戻りが頻発するしな。
元の落水教授の論文では、それは全く別案件として新規料金が発生する
としてるが、現実問題としてIBMでも無い単なる派遣SIerの営業がそんな
交渉力持ってるはずもなく…

パンダは、タイヤブランコにブラ下がってれば良いと思うよ。

87 :仕様書無しさん:2012/08/14(火) 13:20:52.17 .net
あって当然の機能だから仕様にはないがあるものと思ってた。

なんのための仕様確認だよ。

88 :仕様書無しさん:2012/08/14(火) 21:35:17.52 .net
<?php
function();
?>
HTMLタグ
<?php
require(・・・);
?>
HTMLタグ
<?php
$・・・=new xxx();
・・・
?>

こういうソースがマジで嫌い。
javascriptとHTMLでスパゲティなのに、更にPHPでスパゲティw
しかもクライアントからコメントつけんな、引継ぎ前のソースそのままにしろとか、そういう仕事が回ってきたときの頭痛がハンパない

89 :仕様書無しさん:2012/08/14(火) 21:41:31.91 .net
>>88
アクセスカウンター埋め込むだけとかなら、そういう方が楽だけどな。大きくなってきたら変えるとか言うけど、大きくなってくると変えるの大変とか言い出すんだよな。

90 :仕様書無しさん:2012/08/14(火) 22:08:20.76 .net
そんな人達のためにRailsがある
というか、PHPでもMVCベースのフレームワークがあるんじゃねえの?

91 :仕様書無しさん:2012/08/14(火) 22:35:45.78 .net
>>90
その導入コストの話です。

92 :仕様書無しさん:2012/08/14(火) 22:45:45.56 .net
変えたくなくても、セキュリティの為にRubyを上げたらRailsも上げないといけなくて、
そして非互換性に泣かされる。

>>88
>引継ぎ前のソースそのままにしろとか
これ、どこのクライアントも言うよね。変更箇所は最小限にしろ、とか。
かえって大変なんですけど。それも凄く…。
そんなソースコードに限って、600万行も有って、初期は16bit MS-DOSコーダが
書いてたりして、intをshortに#defineしてたり…。それを64bit環境で元のソースを残せだと??

93 :仕様書無しさん:2012/08/14(火) 23:41:40.65 .net
>>91,92
スパゲティは嫌、フレームワーク導入への意欲も無しもじゃあ単なる無能だろ

94 :仕様書無しさん:2012/08/14(火) 23:42:15.60 .net
>>90
メジャーなものではCAKEPHPとかあるけど、デフォルトでソース汚いよ。

>>92
引継ぎ前のソースがスパゲティで統一感がないともうむちゃくちゃだよな。更にコメントが意味不明だったり無かったりする。
オブジェクト指向で書くのはいいんだけど、コーダーごとにルールが無茶苦茶だったりとか。
そのスパゲティソースを何万行、数百ファイル規模で現状維持と着たらもう皆こんな感じ

    /\___/ヽ  ?       
   / --=  、_:::::\nn     
  .| (●),ン <(●) 、.:|..| |^n   
  |   ,,ノ(、_, )ヽ、,, .:::::|.|..| |.|   
  .|   _,ィェエヲ`  .::::::|! : :|   
   \  `ー'´  .::::_人  :イ  
   /`ー‐--‐‐―´\|  │

95 :仕様書無しさん:2012/08/14(火) 23:43:22.91 .net
変更箇所が少ない方が工数が少ないと勘違いしてるのか、
変更箇所が空くなければ管理工数が少なくて済む(=俺たちの仕事増やすな)
のどちらかだとおもうよ。

96 :仕様書無しさん:2012/08/15(水) 00:38:11.66 .net
>>93
>>91でも言っているように、どこからスパゲティになるのかという話です。

スパゲティのおそろしいところは、あたたかいうちはマキマキできるが、時間が経って冷めるとマキマキしたときに全部くっついてくる依存関係。


97 :仕様書無しさん:2012/08/15(水) 02:16:13.65 .net
>>96
だからここで愚痴ばかりたれていないで、スパゲティをからませない上手い方法が
ないかを真面目に考えよう、と言ってるんだが。

98 :仕様書無しさん:2012/08/15(水) 02:27:10.84 .net
>>97
スパゲティなら茹で上がったら直ぐにオリーブオイルをからませば絡みません。
スパゲティは絡みやすいのでからまないパスタを使えば良いのです。

99 :仕様書無しさん:2012/08/15(水) 02:36:21.92 .net
>>97
単なる無能だろうと蔑むと絡まなくなるの?

100 :仕様書無しさん:2012/08/15(水) 12:25:35.91 .net
鳩山と同じさね。
自分の無知無策を棚に上げて他人のアイディアにすがるだけ。

101 :仕様書無しさん:2012/08/15(水) 12:52:37.28 .net
>>100
スパゲッティ茹でたの小泉だよ

102 :100:2012/08/15(水) 13:07:43.91 .net
>>101
ごめんね、97のスタンスを書いたんだけどそれ何の話?
あと、茹でるだけなら絡まないよね。

103 :仕様書無しさん:2012/08/15(水) 13:20:58.48 .net
対話と圧力!

104 :仕様書無しさん:2012/08/15(水) 13:24:02.02 .net
スパゲティじゃなくてマカロニを茹でさせればいいんだけどね。
コーディング規約で100ステップ以内と制限するとか。

キチガイがコーディング規約を守ってくれるという机上の空論ですが。

105 :仕様書無しさん:2012/08/15(水) 13:49:38.34 .net
>>104
エディタのスクロールバーをとっちまえ。

>>100
対策が必要になる規模を見極めるというアイディアを出したのだが、読めなかったか?

106 :仕様書無しさん:2012/08/15(水) 13:58:59.33 .net
>>97
スレ違いだろう。
必要だと思うなら、からまないようにするアイデアのためのスレを立てたらいい。
コーダーについて語りなよ。

107 :100:2012/08/15(水) 14:04:54.04 .net
>>105
ごめんね、何番をどう解釈する前提なのか説明できる?難しい?

108 :仕様書無しさん:2012/08/15(水) 14:34:57.87 .net
スパゲッティおいしいです

109 :仕様書無しさん:2012/08/15(水) 18:16:44.80 .net
コードレビューできるくらいに知識のあるコーダーが足りてない

110 :仕様書無しさん:2012/08/15(水) 18:17:04.73 .net
あとコードレビューするような時間も足りてない
明らかに見積もりが破綻してる

111 :仕様書無しさん:2012/08/15(水) 19:11:05.31 .net
>>107
>>89を素直に解釈すればいいよ。

112 :仕様書無しさん:2012/08/24(金) 00:33:06.53 .net
レビューするPMや顧客が、ソリテア爺。
プログラミング言語なんか分からないし、分かるつもりも無い。
配布資料の表紙や目次の構成、ページ番号の付け方やフォントwとか、
ソフトウェアの本質とは全く関係無い点にばっか注文。

そのくせ納品済んでから、現地テストの様子を背後から見て初めて
「何だ、これは!!」「こんなハズではなかった!!」「想定外!!」
を連発。何の為のレビューだよ…

113 :仕様書無しさん:2012/08/25(土) 00:07:55.47 .net
あるあるw
スパゲッティなのはコードよりも体制とかおえらいさんの頭の中だった、って事が多いw

114 :仕様書無しさん:2012/08/25(土) 13:10:55.21 .net
SEとかいう肩書きのメッセンジャーを外せば解決する。

115 :仕様書無しさん:2012/08/27(月) 01:15:25.20 .net
>>112
うちも同じだわ。
レビューという名の資料体裁チェック会をメンバー集めて儀式のように執り行う。

以前、品保から来ている爺に、内容についてもキチンと精査してくれ!と言ったら
「体裁がキチンとしていない資料は読むに値しない」と一言。
確かに一理あるが、内容を精査しなくてもいい理由にはならんだろうに・・・


116 :仕様書無しさん:2012/08/27(月) 02:38:55.27 .net
お役所関連は資料の厚さしか見ないから、ちょっと高級な厚い紙を使う。

117 :仕様書無しさん:2012/08/27(月) 09:49:56.40 .net
コピー用紙なら安い紙のほうが厚いぞ
アスクルあたりで大安売りしてる外国製のやつとか

118 :仕様書無しさん:2012/08/27(月) 15:12:43.73 .net
>「体裁がキチンとしていない資料は読むに値しない」と一言。
むしろ反比例してるのにな。
限られた時間とリソースの中で仕事するんだから、外見の体裁と内容に割く割合の問題。

119 :仕様書無しさん:2012/09/06(木) 00:46:35.46 .net
読むに価しない、という考え方が全くわからんわけではないが、
ゴールは体裁がきちんとした仕様書を作ってそれを眺めて満足することではなかろうにな

何が重要で、何処のクオリティを最優先すべきかの判断すら出来ないやつが、
上から指示してるってあたりがアレだわなw

まぁぶっちゃけ老害は内容を理解できないのを別の理由でごまかしてるだけなんだろうけど

120 :仕様書無しさん:2012/09/06(木) 03:16:13.92 .net
まぁでも資料もろくに作れない奴じゃコードもたかが知れてるだろ

121 :仕様書無しさん:2012/09/06(木) 21:19:53.10 .net
コード=資料
直接読めば済む話なのに。そもそもコードレビューなのに何故コード読まないの?
読めないの?

122 :仕様書無しさん:2012/09/07(金) 01:20:44.62 .net
ちゃんと読める奴がレビューするなら、ここまでスパゲッティが氾濫するわけないじゃん

123 :仕様書無しさん:2012/09/07(金) 02:36:33.24 .net
少なくとも、どの現場でも誰かが誰かのコードの悪口を言ってるな。
つまりは、自分の書いたコード意外は誰しも
醜いコードに見えている、ということじゃないか?

124 :仕様書無しさん:2012/09/08(土) 13:54:55.87 .net
理解力が足りなくて複雑に感じてる奴と、
そういう理解力が足りなかった奴が書いた酷いコードをスパゲッティと読んでる奴の両方がいる
本質的なスパゲッティ職人は前者なんだが、前者からしたらちゃんとしたコードですらスパゲッティになる

125 :仕様書無しさん:2012/09/08(土) 14:14:44.81 .net
モジュール間の依存関係が強いものをスパゲッティコードというんじゃないのか。絡まってるから、一箇所いじろうとすると全部ついてくる。
そもそも設計しないプログラマには依存関係なんて意識ないのか。

126 :仕様書無しさん:2012/09/08(土) 14:18:32.95 .net
最近は設計にかなり時間をかけるから昔みたいな本格的なスパゲッティは少なくなったお思う
残ってるのは零細がサクラエディタ一丁でいきなりコーディングはじめたサーバサイドJavaプロジェクトとかぐらいな気がする

127 :仕様書無しさん:2012/09/08(土) 14:43:33.54 .net
サクラエディタ一丁でいきなりコーディングはじめたサーバサイドJavaプロジェクト

いまどき↑そんなのあるか。

128 :仕様書無しさん:2012/09/08(土) 15:14:48.94 .net
メモ帳でperlいきなり書いてた頃が懐かしい。

129 :仕様書無しさん:2012/09/08(土) 15:19:26.53 .net
>>127
Javaなんてフリーで高機能でリソース大量に食うIDEがあるのにいきなり
テキストエディタで始めるやつなんておらんやろ。ろくなIDEも無いスクリプト系の
プロジェクトならいざ知らず。

130 :仕様書無しさん:2012/09/08(土) 15:21:41.68 .net
そうだ、とりあえずIDEのトラブル解決がメインだ。

131 :仕様書無しさん:2012/09/08(土) 16:37:12.13 .net
零細だとIDEすら使いこなせないのゴロゴロいるんだよ

132 :仕様書無しさん:2012/09/08(土) 17:07:00.47 .net
IDEで書こうがスパゲティにするやつはする

133 :仕様書無しさん:2012/09/08(土) 17:43:42.71 .net
IDEでしか開発できないやつって、トラブルに弱い。でかいチームの一部としてしか生きてけないな。

134 :仕様書無しさん:2012/09/08(土) 17:49:58.56 .net
うちの会社、そもそもIDEっていって通じないんだけど。

135 :仕様書無しさん:2012/09/08(土) 17:53:32.65 .net
らっきょ

136 :仕様書無しさん:2012/09/08(土) 17:53:36.91 .net
>>134
"いで"とか言ってんじゃないの。

137 :仕様書無しさん:2012/09/09(日) 00:20:46.34 .net
今は、P-ATA

138 :仕様書無しさん:2012/09/09(日) 02:57:34.35 .net
普通にVSとかEclipseとか固有名詞しかしらなくて、IDEってのを知らないって事だと思う

コーディングとデバッグくらいは何とかできる人は多いけど、
プロジェクトの作成とか初期設定的なことは一切出来ないやつ多いと思うよ
ショートカットで呼べるような機能使えないどころか、
クラス探すのも一覧から名前を目視で探して…みたなのも結構いる

そしてそういう奴は大抵、フォーマッターなんかを嫌ってて、
俺々コーディングルールやフォーマットに心血注ぐのが得意な、スパゲッティ農家

139 :仕様書無しさん:2012/09/09(日) 07:45:49.87 .net
問答無用でCtrl+Shift+F

140 :仕様書無しさん:2012/09/30(日) 10:07:31.40 .net
// 継ぎ足し継ぎ足した秘伝のソースです。よく絡めてお召し上がりください。

141 :仕様書無しさん:2012/09/30(日) 14:20:09.73 .net
濃厚な味わいすなぁ・・・・吐

142 :仕様書無しさん:2012/10/07(日) 16:27:49.31 .net
先生、141君がエラー吐きました。

143 :仕様書無しさん:2012/10/07(日) 22:56:38.49 .net
           , -- .、
         ,, - ´     `丶、
        ./  , -――- 、、 \、
      //, ´ : : : : : : : : : : : : :\ハ丶
    /∠ : : : : :./∧ : : : : :∧i : : :\ 丶
   <  / : : : : ,.i/  \:.:/ `!i: : : :,ヽ  >
     ヽi : : :/┴──`´──┴ : : : i/
 .     ゝイ|            i∨ i
      i( .|: | -━━   ━━- .i: i.):|      ォオ゛エ゛ェ゛ェ゛ェェ゛エエ゛エェ…
      |:ゝi:.|       ′     |.: :|:.|
      |: : |:ゝ.  r-------  ,イ.: .| :|
     ソ:/ |. ||`丶||||||||||||||||イ .|||:.: |: ∨
 .     /:/.:.:| .|| . ヘ||||||||||||||||/ ‖|:.: |i:.:∨
    /:./:.:.:| .YO |||||||||||||||| Y |:.: | i: :∨
 .   /: /|:.:.:.|./| 。.|||||||||||||||| .|ゝ|o:.| .i: :.∨
   /: :/ |.:.:.:|  >\||||||||||||||||/|. .|:.:.:| ゝ:.∨
 . /: :/--- o.>`|||||||||||||||||||||||<、|:.ノ-. ゝ:.:∨
 /:´/ ̄/。(三/|/\/\|\O三)\ ̄\`∨
./:/| \ ─___─────___─ / |:∨
.: | \_\ノノノ   ̄ ̄ ̄ ̄  ゝゝゝ/_/:./

144 :仕様書無しさん:2012/10/11(木) 01:00:56.96 .net
イカ墨スパゲッティのコーダかw

145 :仕様書無しさん:2012/10/11(木) 01:08:50.76 .net
すごく・・・黒いです・・・

146 :仕様書無しさん:2012/10/11(木) 20:48:31.64 .net
深いな。

147 :仕様書無しさん:2012/10/29(月) 20:19:57.32 .net
ミートスパコーダーもあるらしい

148 :仕様書無しさん:2012/11/03(土) 03:57:37.28 .net
コードレビュー仙人がいたらいいんだけど

149 :仕様書無しさん:2012/11/03(土) 17:04:33.50 .net
コードレビューする奴が書いたソースがスパゲティだからお話にならない。

150 :仕様書無しさん:2012/11/03(土) 18:34:47.43 .net
レビュアーという名の赤ペン先生
頼むから対等な立場でのコードレビューもさせてくれ・・・

151 :仕様書無しさん:2012/11/03(土) 19:40:26.89 .net
普通の設計できる人がいれば、どんな海鮮…タコプログラマでもそこまでスパゲッティにならない。

152 :仕様書無しさん:2012/11/03(土) 20:28:08.91 .net
レビューする以前に、フォーマッターすらかけれない糞も多い
使わない理由が俺々コーディングスタイル保持のためだったりするし手に負えない
そういうスパゲッティーコーダー未満は個人開発だけやってて仕事でコーディングしないでほしいわー

153 :仕様書無しさん:2012/11/04(日) 09:51:49.61 .net
>>152のコードこそがK&Rの伝統を無視したオレオレスタイル。晒しage

154 :仕様書無しさん:2012/11/04(日) 11:37:32.88 .net
…などと意味不明な供述を繰り返しており…

155 :仕様書無しさん:2012/11/24(土) 11:41:33.32 .net
これをご覧あれ。
http://www.columbia.edu/cu/computinghistory/plugboard.html
これはパンチド・カード・システム(PCS)のプログラム・ボード。
2枚目の写真のようにケーブルでジャックを繋いでプログラミングするのだが
要領が悪いとケーブルがぐちゃぐちゃになってまるでスパゲッティの
ようになる。
それでスパゲッティ・プログラムと呼ばれるようになったのだ。

156 :仕様書無しさん:2012/11/24(土) 12:30:46.86 .net
>>155
スパゲッティこうだ!







アッー

157 :仕様書無しさん:2012/12/12(水) 21:47:02.80 .net
スパゲティ!

158 :仕様書無しさん:2012/12/19(水) 04:07:44.70 .net
すぱげりぃ

159 :仕様書無しさん:2012/12/21(金) 00:10:02.82 .net
やっぱこれでしょう。
http://labaq.com/archives/51163885.html

160 :仕様書無しさん:2013/01/29(火) 01:55:34.48 .net
小汚いプログラムをスパゲッティに例えるのはスパゲッティに失礼
俺はナポリタンが好き

161 :仕様書無しさん:2013/01/30(水) 19:55:47.81 .net
スパゲッティはおいしくいただけるけど、糞コードは不幸しか生み出さないもんな…

162 :仕様書無しさん:2013/02/01(金) 08:07:59.43 .net
しかしスパゲティは糞となって出てくる。

163 :仕様書無しさん:2013/02/01(金) 10:27:22.09 .net
マカロニは食べるときに非効率

164 :仕様書無しさん:2013/02/01(金) 21:33:06.88 .net
マカロニウエスタンってホントはスパゲッティウエスタンって言うらしいな

165 :仕様書無しさん:2013/02/02(土) 01:32:59.75 .net
実際スパゲッティってさ、そんなに絡まってねーよな

166 :仕様書無しさん:2013/02/02(土) 15:24:11.96 .net
アメリカのスパゲッティ缶詰を知らんのか
茹でた物を詰めているのでブヨブヨに膨れあがっている恐ろしい代物だぞ

167 :仕様書無しさん:2013/04/01(月) 23:50:36.86 .net
UT実装できないような糞コード書く奴は全員スパゲッティに首しめられて息絶えて欲しい

168 :仕様書無しさん:2013/04/05(金) 01:48:07.62 .net
クソコードをテストで表現して行くのって地味だけど楽しいよな

169 :仕様書無しさん:2013/04/06(土) 09:19:44.29 .net
UTの実装に慣れてくると、どう実装するのがテストコード書きやすいか分かるようになって
結果的にスパゲッティしていない読みやすいコードになるよな
TDDは冗長なやり方だと思ってるけど、そういう意味ではTDDに近い開発やることの意味は大きいと思う

170 :仕様書無しさん:2013/07/28(日) NY:AN:NY.AN .net
オブジェクト指向を理解してない人ほど機能を一箇所に実装しようとしてスパゲッティする感じ
今更だけど、オブジェクト指向わかってない人がめっちゃいる

171 :仕様書無しさん:2013/07/28(日) NY:AN:NY.AN .net
Javaとかで機能単位で書いたことある人がオブジェクト指向余裕だぜって言っているだけでしょ。俺の周りでわかっている人は1割も居ない。
OMTとかRUP使わないと理解できなんじゃないか。

172 :仕様書無しさん:2013/07/28(日) NY:AN:NY.AN .net
OMTやRUPはなぜ失敗したのかわかる?

173 :仕様書無しさん:2013/07/28(日) NY:AN:NY.AN .net
俺の中ではOMTは問題なく使えているが。君はなんで使いこなせなかったの?

174 :仕様書無しさん:2013/07/28(日) NY:AN:NY.AN .net
お前が使いこなせるかどうかなんてどうでもいいよ。
嘘言っていたとしてもわからんのだから。

え? 俺の言ってることも信じられない?
じゃあ世間に問いましょう。

OMTやっててうまく言ってる事例、
ネットから探してください。
もちろん方法論提唱者の妄想以外で

175 :仕様書無しさん:2013/07/28(日) NY:AN:NY.AN .net
>>174
別に自分の要件が満たせているなら他人がどうでもいいだろ。
というか構造化の開発手法の成功事例はネットに氾濫しているのか?

176 :仕様書無しさん:2013/07/28(日) NY:AN:NY.AN .net
失敗したのはスキルのない技術者モドキが増えすぎたことであって、開発手法自体が失敗ではないと思う。

177 :仕様書無しさん:2013/07/28(日) NY:AN:NY.AN .net
>>174
そういうときはな、相手に成功例を求めるんじゃなく、相手の失敗例を提示するんだよ?

いつも他力本願で解決しようってスタンスじゃ、「わかりませんおしえてください><」って聞いて回って理解できず
コピペでスパゲッティを生み出していくゴミグラマと同レベルじゃないか。

178 :仕様書無しさん:2013/07/28(日) NY:AN:NY.AN .net
>>172
OMTの成功があったからこそ、今のOOP/OOD/OOA全盛期が生まれたのではないの?
少なくとも書籍「オブジェクト指向方法論OMT」が国内出版された1992年当時、
Smalltalkや初期のC++は登場していたけど、一般のプログラマにとって遠い存在だった。
それがOMTというソフトウェア設計を視覚的に表現できる技法が紹介されたおかげで、
一般のプログラマにもOOP/OODが爆発的に普及したと記憶している。

>>172が何をもってOMTが失敗したとみなしてるのか、まったく分からんよ

179 :仕様書無しさん:2013/07/28(日) NY:AN:NY.AN .net
どうせ 俺が理解できないから失敗 って奴でしょw
無駄会議と同じで続ける価値のある話題ですらない

スパゲッティコーダーがOOP理解してないってのは同意
まともな設計とかできないレベルのやつばっか

180 :仕様書無しさん:2013/07/28(日) NY:AN:NY.AN .net
オブジェクト指向というのは
プログラミング言語のために作られたもの。

OODとかOOAとかいうのは、
OOPでOOが普及したからその名前を借りたに過ぎない。

OODやOOAはオブジェクト指向という名前をつける理由がない。
何処にもオブジェクト指向の要素がないのだから。

181 :仕様書無しさん:2013/07/28(日) NY:AN:NY.AN .net
OMTによってOOP/OODが普及したというのなら、
OMTをだれだって知っているはずなんだが、
誰も知らんよ。

182 :仕様書無しさん:2013/07/28(日) NY:AN:NY.AN .net
>>181
OMTはJ.ランボー氏が個人的に考案した設計法だ
そしてOMTや類似の設計法が大いに普及するにつれて、それらを標準化する動きが生まれた
それがUMLであり、UMLの登場によってOMTは役目を終えた
ただし、OMTが役目を終えたとはいえ、初期のOO普及に貢献した事実が消え去ることは無い

で、現在だけど、オブジェクト指向をやってる人でUMLを知らない人なんているの?

183 :仕様書無しさん:2013/07/28(日) NY:AN:NY.AN .net
>>180
>何処にもオブジェクト指向の要素がないのだから。

継承(inheritance, インヘリタンス)も知らないの?

184 :仕様書無しさん:2013/07/28(日) NY:AN:NY.AN .net
>>182
UMLは分析手法じゃない。
ただの図形。

OMT(分析手法)が消えて、UML(図形)のみが
残ってることから明らかじゃないか。

必要だったのはOOPを図式化する図形の標準
標準を使わなくても図形を書くことは出来る。
だが統一したという功績のみは認める。

でもそれだけだよ。分析手法は見事消えてなくなった。

185 :仕様書無しさん:2013/07/28(日) NY:AN:NY.AN .net
消えてなくなったってのは何処ソースだよ
自分の住んでる井戸の中だけの話じゃないか?

186 :仕様書無しさん:2013/07/28(日) NY:AN:NY.AN .net
>>178
>少なくとも書籍「オブジェクト指向方法論OMT」が国内出版された1992年当時、
>Smalltalkや初期のC++は登場していたけど、一般のプログラマにとって遠い存在だった。

C++は1983年、smalltalkに至っては1970年代に登場していたわけで、オブジェクト
指向自体はかなり昔から存在しているんだよね。それでも使えない人の方が
圧倒的な現状では何を言っても説得力は無い。

187 :仕様書無しさん:2013/07/28(日) NY:AN:NY.AN .net
未経験歓迎うたって契約した奴隷を売りつける商売が賑わってるから、そりゃスパゲティコーダーだらけにもなるわなぁ

188 :仕様書無しさん:2013/07/28(日) NY:AN:NY.AN .net
TDDでSOLID原則意識して作ったら、今までと大分違うコードが出来た
これは楽しい

189 :仕様書無しさん:2013/07/28(日) NY:AN:NY.AN .net
>>180
お前が、OMT使ったことが無いということはわかった。

190 :仕様書無しさん:2013/07/28(日) NY:AN:NY.AN .net
>>186
昔からあるのはオブジェクト指向言語、つまりOOP(OOPL)だけだな。
それ以外のものは、オブジェクト指向の人気にあやかって
作られただけ。

関係ないものに無理やり「オブジェクト」って頭につけたんだよ。

191 :仕様書無しさん:2013/07/28(日) NY:AN:NY.AN .net
>>190
設計とかしたことないの?

192 :仕様書無しさん:2013/08/29(木) NY:AN:NY.AN .net
10: goto 100:
20: goto 200:
100: goto 20:
200: goto 10:
300: end;

193 :仕様書無しさん:2013/09/14(土) 15:11:02.53 .net
UMLはいらないスレから出てくんな

194 :仕様書無しさん:2013/09/15(日) 13:51:29.58 .net
メソッド名がいい加減でなにをやってるかがメソッドの実装を見ないとわからないタイプのスパゲッティと
メソッド分けすら出来ないタイプのスパゲッティの2種類がある。

195 :仕様書無しさん:2013/09/15(日) 19:30:56.39 .net
理解できないからスパゲッティってのにも、
読み手がクズの場合と書き手がクズの場合のスパゲッティの2種類がある。

196 :仕様書無しさん:2013/09/21(土) 13:11:24.21 .net
うちの会社のVB.NETの画面のソースが3万行超えてた。
COBOLでも見たことない。
regionで折りたたんでいるが、頭悪いと思った

197 :仕様書無しさん:2013/09/21(土) 13:43:31.25 .net
>>196
言葉の選び方が素人くさい

198 :仕様書無しさん:2013/09/21(土) 14:09:15.82 .net
1ファイルで10,000行のVB.Netなら見たことがあるぞ。
リファクタリングして6,000行になったが

199 :仕様書無しさん:2013/09/21(土) 15:00:59.60 .net
>>198
自社製フレームワークにも問題あるし
利用する側もオブジェクト指向を全く理解出来てないのも問題だと思った。
まぁupdate文にwhere句つけないようなお嬢ちゃんが主力だから仕方ないわw

200 :仕様書無しさん:2013/09/28(土) 17:43:44.12 .net
VB.NET使ったこと無いけど、普通は短くなるのか?
CとかC++ではアンロールでやたらと長いのはあるけど。

201 :仕様書無しさん:2013/10/15(火) 21:20:11.36 .net
ソースもだが詳細な設計が悪い、もしくは詳細な設計がない

202 :仕様書無しさん:2013/10/15(火) 22:12:59.90 .net
プログラム設計と言うべきレベルの詳細な設計は不要だけどな
フローチャートとかも

203 :仕様書無しさん:2013/10/17(木) 21:25:23.91 .net
設計が下手な奴って文才がないことが多いな。
だからと言って必ずしも逆は真ではないけど。

204 :仕様書無しさん:2013/10/20(日) 16:51:18.57 .net
スパゲッティコーダーになろう

に見えたスレタイ

205 :仕様書無しさん:2013/10/22(火) 23:36:12.39 .net
今更・・やってるのか?

おもしろいか?

206 :仕様書無しさん:2013/11/04(月) 04:48:08.39 .net
>>169 >>188
DI/AOP使って、正しいやり方でTDDすれば大抵の問題は防げる
ことに気づいた
俺もTDDでスパゲッティ卒業しました

207 :仕様書無しさん:2013/11/05(火) 17:24:04.76 .net
事前面接の事実をおさえて職安法44条で刑事告訴
http://wiki.algomon.com/wiki/%E4%BA%8B%E5%89%8D%E9%9D%A2%E6%8E%A5

208 :仕様書無しさん:2013/11/06(水) 04:24:21.60 .net
目的意識を高めてUNOTEでもホワイトボードでも買って仕様をまとめてからコード書く

209 :仕様書無しさん:2013/12/18(水) 15:07:27.03 .net
インヘリタンスってヘリコプターの入ってるタンス?

210 :仕様書無しさん:2013/12/22(日) 10:45:09.81 .net
一つのメソッドといわない。ひとつの関数のコードが
画面に収まるぐらいにしとけば読むに楽、25行ぐらい。
またネストを深くしない。

一つの関数が長くなるのは、プログラマが集中力を高めて作業しているからで、
後で読み直す人は、テンションを上げなければ、ならないから。
面倒なのよ、長いコードは

俺の見たスパゲッティソースは状態遷移が幾重にも続くやつなんだけど、
しがし、見事だったのは、その時々に遷移の位置を監視変数に入れていることだった
それで、プログラムが実行している位置を外部に分かるようにしてあった。

211 :仕様書無しさん:2013/12/23(月) 17:02:02.44 .net
中国人が作ったコードを見るだけで吐き気がする。
一体同じコードがどれだけあるんだよ・・・
開発コストは安く済んだのかもしれんが、保守費は数倍かかるぞ・・・
ほんと、上の連中は目の前の利益だけ求めて先のことをまったく考えてないよ。

212 :仕様書無しさん:2014/02/04(火) 22:17:55.59 .net
先輩の鬱陶しいスパゲッティを茹で直そうとしたらより煩雑なゲッティが

213 :仕様書無しさん:2014/02/05(水) 11:06:41.49 .net
>>212
一度ポイッしろよ( ´∀`)つ ミ

214 :仕様書無しさん:2014/02/08(土) 01:58:14.33 .net
構造化とか知らないのかな
古いプログラムに go toがいっぱい

215 :仕様書無しさん:2014/02/10(月) 09:51:41.93 .net
call "A";

A:begin
call "A1":
end;
A1:begin
call "A11":
end;

だらけ・・・

216 :仕様書無しさん:2014/03/08(土) 22:20:46.78 .net
スパゲッティになるのって、オブジェクト指向とか、
単体テストとか理解していない奴が陥りやすいよな。

特にテストを書かない奴は、変更とか機能追加とか
ひとつの関数に詰め込んで、肥大化していく。
他人が見たときはもうどうにも手が付けられない。

217 :仕様書無しさん:2014/03/09(日) 07:58:49.77 .net
>>216
スパゲッティとかにならないように、オブジェクト指向が生まれたんだろ。
昔のやり方で品質だけ今時を求めるクライアントとか、馬鹿なんじゃないかと思う。

218 :仕様書無しさん:2014/03/09(日) 09:22:22.32 .net
インタフェースでスパゲッチw

219 :仕様書無しさん:2014/03/09(日) 15:08:46.85 .net
>>217
昔のやり方で品質だけを求めるのは元請のSE様じゃね?

220 :仕様書無しさん:2014/03/09(日) 15:17:51.61 .net
>>219
元請けのSEより、ベンダーのIT部門の方が酷いイメージ。まあ、専業じゃないから知識がないのはいいが、それなら人の話を聞けと。
何にせよ途中まで決めたのなら、最後まで責任とれと。別に古いやり方で、生産性や品質が落ちるのは俺は構わない。その責任を取らされるのが困る。

221 :仕様書無しさん:2014/03/09(日) 17:48:20.02 .net
群馬にきたら「シャンゴ」な

そこかしこにあるローカルチェーン店だが
ガッツリいけるメニューも豊富で女子もOKなこじゃれた内装

222 :仕様書無しさん:2014/03/09(日) 18:04:00.13 .net
>>220
開発から管理の方に回れば今時のツールやライブラリ、フレームワークのこととか
分からなくなっていくからね。開発プロセスはともかくツール類の進歩に着いて行け
ないような感じだな。現場の人間だってアンテナ広げてても追っつかない状態なのに
そうじゃない人だと余計に。 後は昔の成功体験とかが色々と邪魔をするね。

223 :仕様書無しさん:2014/03/09(日) 18:49:22.37 .net
>>222
ついていけてないことを理解してて、どういうアウトプットが必要か考えるか聞いてくれればいいんだけどね。自分のやり方こそが唯一と思っているから、下流が無理矢理合わせて倍の工数かかる。
しかもそういうプロジェクトに限って言語やフレームワークが最初から決まっている。

224 :仕様書無しさん:2014/03/11(火) 22:59:29.52 .net
>>223
C言語で標準ライブラリ無しとか
組み込みでは良くある話

225 :仕様書無しさん:2014/03/11(火) 23:32:09.10 .net
>>224
組み込み限定の話にしたいのか?

226 :仕様書無しさん:2014/03/12(水) 06:41:06.68 .net
ライブラリどころかコンパイラやOSすらないとか

227 :仕様書無しさん:2014/03/12(水) 08:30:43.94 .net
>>225
組み込みも含めた話にしたいのさ

228 :仕様書無しさん:2014/03/12(水) 11:01:44.66 .net
>>227
全ての分野で一貫して言える話なんてほとんどないだろ。
銀の弾丸はない。

229 :仕様書無しさん:2014/03/12(水) 16:04:36.09 .net
じゃ一般論禁止で

230 :仕様書無しさん:2014/03/12(水) 16:17:22.38 .net
組み込みだと保守性より性能優先の場合も多いイメージ。
スパゲッティコードの話の主戦場はスペック気にしないサーバ、特にビジネスの影響を受けやすい業務系な気がするが、どうよ。

231 :仕様書無しさん:2014/03/12(水) 19:15:46.08 .net
組込みにひどいソースがあるのは、アセンブラ時代に習熟した人による部分が大きいかも。俺がいた現場はそうだった。

>>230
> 組み込みだと保守性より性能優先の場合も多いイメージ。
現場によるがどちらも優先されなくて、ずさんなテストで納期に突っ込む場合が多いイメージ。

232 :仕様書無しさん:2014/03/15(土) 15:01:01.61 .net
早飯とスパゲッティコードの早読みは芸のうちだよね

233 :仕様書無しさん:2014/03/16(日) 01:49:08.49 .net
C++で書いているのに、5000行位のコードがmain.cppとheader.hて言うのがあったわ。超絶スパゲッティでメンテに苦労した。分割コンパイルも知らん用な奴はコードを書くなと言いたい。

234 :仕様書無しさん:2014/03/16(日) 22:01:37.56 .net
>>233
コードの分割もセンスと力量で変わるよな
スコープの関係で#include "hoge.cpp"みたいなグレーゾーンなソースになっているのは良く見る
個人的には見づらい

235 :仕様書無しさん:2014/03/16(日) 22:13:29.17 .net
パスタ板に出入りしてる俺が書くソースコード

236 :仕様書無しさん:2014/03/17(月) 01:09:42.05 .net
ミートソース?

237 :仕様書無しさん:2014/03/17(月) 01:44:32.90 .net
最近はオイルソース

238 :仕様書無しさん:2014/03/17(月) 06:44:25.70 .net
>>234
自動生成以外の .c/.cpp を include するのはグレーじゃなく真っ黒だろ。

239 :仕様書無しさん:2014/03/19(水) 20:49:51.51 .net
真っ黒って事は、イカ墨のスパゲッティか。

240 :仕様書無しさん:2014/03/20(木) 17:15:37.02 .net
>>236
オレがパスタ屋で「カルボナーラ」と言ったら
同僚がかっこつけて「Me too!」と言ってミートスパが来たのを思い出したよ。

241 :仕様書無しさん:2014/03/20(木) 17:29:08.30 .net
>>240
それがお前のすべらない話なの?

242 :仕様書無しさん:2014/03/20(木) 22:13:22.00 .net
>>240
俺そういうの結構好きw

243 :仕様書無しさん:2014/03/21(金) 03:23:25.65 .net
リファクタリングしろとか言うやついるけど、
わざわざリスク犯してまで次の人のために
綺麗なコードを書いてくれてごくろうなこったな。

無駄な仕事して何が嬉しいんだか。

スパゲティは更においしいスパゲティにするに限る。

244 :仕様書無しさん:2014/03/21(金) 08:36:28.58 .net
貴様イタリア人

245 :仕様書無しさん:2014/03/21(金) 09:58:05.29 .net
>>243
リファクタリングは自分のためだろ。

246 :仕様書無しさん:2014/03/21(金) 10:39:55.17 .net
>>243
はるか昔に自分で作ったスパゲティを食わされる可能性について

247 :仕様書無しさん:2014/03/21(金) 11:17:25.70 .net
>>243
なんか変な形のものとか、間違ったものを見ると、正しい形になおしたくてその事が頭から離れなくならない?
なおしたいが優先して仕事はかどらなくて、ずっと吐き気になやまされない?

そうならないなら、お前には病気が足りない。

248 :仕様書無しさん:2014/03/21(金) 11:18:40.22 .net
っていうか、カイゼンってそういうことだろ?
リスクないカイゼンなんてないしさ。

お前職場をより良くしようとか思わないの?
会社のためではなくて、自分のために。

249 :仕様書無しさん:2014/03/21(金) 11:34:48.56 .net
>>247
それやって金になんの?
無駄なことしないで、さっさと終わらして空き時間で
好きに使ったほうが有意義じゃん。

スパゲッティなソフトは、きちんと見積もりできてなかったり、
設計理念を持たない技術力のない会社のクソプログラムなんだから
またスパゲティになるもんなんだよ。

長期的に関わりそうな案件ならやるよう提案するけどな。
状況を考えろってことだよ。

250 :仕様書無しさん:2014/03/21(金) 11:37:07.34 .net
スパゲッティを書く奴は、時間がなかったとか、使用変更が入ったとか、いろいろと言い訳するけど、
結局は知識や技術、設計力がないだけなんだよ。
最後まで責任を持って自己完結するなら誰にも影響は無いが、誰かがそのコードをメンテなり拡張する必要がでで来るので、考えを改めて欲しいわ。
何が言いたいのかというと、スパゲッティコーダーは生産性を下げるガンでしかないので、早めに切った方がいい。

251 :仕様書無しさん:2014/03/21(金) 11:38:45.62 .net
> 結局は知識や技術、設計力がないだけなんだよ

まったくもってその通り。
いい加減認めろと言いたい。

ソフトウェアの開発は、作ったものを元にして
次を作るのがほとんどだから、
最初が汚いと、どんどんあとにしわ寄せが来る。

最初に書いた奴が悪い。

252 :仕様書無しさん:2014/03/21(金) 11:42:24.65 .net
使えない仕様書や設計書は捨ててコード見ればいいから
どんなに汚いものであっても影響は大きくないんだよね。

どんなに悪くてもゼロより下にはならないという意味で(笑)

でもコードはマイナスになる。
コードが汚かったら新規開発の進捗を大幅に下げることになる

253 :仕様書無しさん:2014/03/21(金) 11:42:36.86 .net
スパゲティでもいいからさっさと仕事終わらせる。
→仕事はやいねー いい人材でよかった

リファクタリングとか無駄なことを試みる
→仕事おそいねー あれ?なんかデグレってんだけど?なに勝手なことしてんの?

254 :仕様書無しさん:2014/03/21(金) 11:43:31.78 .net
スパゲッティを書く人=デグレ起こす人だろw

255 :仕様書無しさん:2014/03/21(金) 11:44:10.65 .net
リファクタリングをちゃんと知っている人は
技術力が高いからデグレ起こさないんだよね。

結局技術力がモノを言う訳で。

256 :仕様書無しさん:2014/03/21(金) 12:11:12.04 .net
スパゲティは追加しかしないからデグレを引き起こさない。
デグレが起きたってことはリファクタリングしたってことなんだよね。

そうやっていつも無駄な仕事を増やすのはリファクタリングコーダー。

保守性が悪いのは折込済みで、
見積もりに将来性の考慮が入っていないなら
リファクタリングは望まれてない作業なんだよ。

257 :仕様書無しさん:2014/03/21(金) 12:16:53.92 .net
保守性の悪い原因ってスパゲティ書いたやつじゃなくて、
コードに対してレビューできないアホがプロジェクト仕切ってるからでしょ。

258 :仕様書無しさん:2014/03/21(金) 12:35:01.52 .net
>>256
だから技術力が低いって
素直に認めなさいよw

259 :仕様書無しさん:2014/03/21(金) 12:50:46.54 .net
こいつ一人でしかプログラム組んだことないのか。こいつの上の人間は大変だな。

260 :仕様書無しさん:2014/03/21(金) 12:51:44.97 .net
いや、単なるニートか。

261 :仕様書無しさん:2014/03/21(金) 12:58:00.31 .net
他人に迷惑かけてるんだよな。
技術力が低い奴は。

なんで直さなきゃいけないほど汚いコードを書くのか?
それが汚いとわかってないんだよな。

262 :仕様書無しさん:2014/03/21(金) 16:44:51.68 .net
このスレなんで急に盛り上がってるの?

263 :仕様書無しさん:2014/03/21(金) 17:00:29.61 .net
年度末の人事異動でヘボプログラムを引き継ぐことになったんじゃない?

264 :仕様書無しさん:2014/03/21(金) 17:08:36.60 .net
メールアドレスが空なのは同一人物かね?
と思ってみると面白いw

265 :仕様書無しさん:2014/03/21(金) 17:26:19.67 .net
>>252
本当にそう思うわ。

266 :仕様書無しさん:2014/03/21(金) 21:00:11.19 .net
>>256
デグレは出ないだろうが
大抵その中に虫が紛れ込んでるんだよ

267 :仕様書無しさん:2014/03/21(金) 22:32:32.71 .net
汚いコードみたらむかつくよ。
だから俺もそのままにしておく。

出向先の技術レベルに合わせたコードを提供する。
保守しやすいように整理しましたからーなんてアピールするより、
綺麗な資料作った方がポイント高いし。

リファクタリングという概念を持たない現場で、
んなことしたって何も特にならんし、
俺がいなくなった後、そこで利益が出るような仕事は絶対にしない。
自分がいる時に利益を実感できるようにやるんだよ。

268 :仕様書無しさん:2014/03/21(金) 22:47:20.26 .net
>>267
もったいないなぁ。
そこに格好の練習材料があるんだから
リファクタリングの練習に使えばいいだろう。
何事も自分を高めるために使わなきゃ損だよw

269 :仕様書無しさん:2014/03/22(土) 01:03:26.11 .net
お前ら、プログラムは新規作成しかしないのな…
恐ろしいわ

270 :仕様書無しさん:2014/03/22(土) 01:04:15.28 .net
そうそう、俺も昔はスパゲティしか書けなかったが、
リファクタリング本とデザパタ本を参考にリファクタリングしまくってたら、
最初からある程度リファクタリング済みwなコードが書けるまで上達したし。

271 :仕様書無しさん:2014/03/22(土) 01:05:44.86 .net
それはリファクタリングじゃなくプログラム設計だ。
あらかじめ存在するプログラムを、機能を変更せずに構造を変更するのがリファクタリングな。

272 :仕様書無しさん:2014/03/22(土) 01:44:14.22 .net
あたりまえだけど同じことしてても成長しない。

昔に書かれたコード(汚いという前提)を見て、
それを真似して書いた所で成長しない。

既存のコードがこういう風になっていたから
同じように書きました。とかやる奴いるけど
それは何も考えてないということでしかない。

既存のコードを放置するのも同じ。
放置しても何も改善されないし、真似して書いても
汚いコードが増えるだけ。

より良い方法を知っているのなら、より良い方法で書くべき。
今度はそれを見た人が真似をする。(もしくはもっと良いコードを書く)

273 :仕様書無しさん:2014/03/22(土) 01:45:50.57 .net
>>271
いや、リファクタリングを通して
技術力が上がったから設計能力そのものも上がって
最初から良いコードがかけるようになったという話でしょう?

汚いコードを真似して書いても
技術力が上がるわけないんだから。

274 :仕様書無しさん:2014/03/22(土) 01:50:46.66 .net
リファクタりたいけど工程が許してくれない

275 :仕様書無しさん:2014/03/22(土) 01:56:48.76 .net
リファクタリングするのに一番多いケースって、誰かがお手上げしたコードを引き継いだ時だろ。

276 :仕様書無しさん:2014/03/22(土) 02:06:22.69 .net
>>274
それはリファクタリングを開発工程と別にしてるからだろ。
リファクタリング=開発工程なんだよ。
だから開発工数に含めるのあたりまえじゃないか。

そんな当たり前のことがわかってないから、見積が大幅にずれるんだよ。
既存コードがどうなっているかを考慮せずに
追加部分だけで工数出すから予定よりも開発時間がかかる。

リファクタリングするべきコード = 解析と修正に時間がかかる = 開発時間。

誰かがお手上げしたコードとか、引き継いだ後”解析する時間”が必要だろ?
それこそがリファクタリングの時間そのものなんだよ。
解析して理解したことをコードに反映する(=リファクタリング)か
コードに反映しないで、後に修正する時に ”また” 解析するかの違い
後者(リファクタリングしない)だと、どんどん工数が増えるようになるからね。

277 :仕様書無しさん:2014/03/22(土) 04:15:26.57 .net
テストハーネスを作るまでにある程度まとまった時間が必要で、その間は目に見えるアウトプットがない
これがリファクタリングの障壁だな
リファクタリングが必要なコードほど今すぐアウトプットを求められる皮肉

278 :仕様書無しさん:2014/03/22(土) 04:18:09.74 .net
>>276
結局開発者側のジレンマと同じレベルの話が発注側にもあるわけだ
「技術的負債を俺が返す必要はない。ツケは将来の担当者に払わせることにして今回は買い叩こう」

279 :仕様書無しさん:2014/03/22(土) 04:20:02.80 .net
>>277
それいっぺんに時間かけてリファクタリングしようとするからだよ。

リファクタリングは小さく少しづつやるもの。
目に見えるアウトプット=日々の開発に小さく加える。

リファクタリングと開発を分けて考えるのが根本的な問題。

280 :仕様書無しさん:2014/03/22(土) 04:22:14.13 .net
その発注者の思惑どおり営業は平気で買い叩かれて受注する
開発者は「そんな工数じゃ今の糞コードに手を入れる時間なんかないだろ・・・」と糞コードを増やして納品する。これの繰り返し
どこかで「献身的な」開発者がプライベートを削って(=自腹で)直すか、炎上してすべてがぶち壊しになるか
結末はどっちかしかない

281 :仕様書無しさん:2014/03/22(土) 04:30:49.29 .net
>>279
俺の経験だと、全体設計がそこそこマトモで問題がモジュールの内部実装なら、小さなリファクタリングの繰り返しで改善できる。
だが、そもそも全体に一貫したアーキテクチャのないシステムだと、ボトムアップのリファクタリングをいくら繰り返しても全体の改善には繋がらない。
そういうシステムの派生開発だと、担当者が各々スプラウトクラス、スプラウトメソッドを生やすことを繰り返して、
最終的により混沌となっていくというのがありがちな悪夢。

282 :仕様書無しさん:2014/03/22(土) 04:40:45.81 .net
なんだ? 結局開発者の
技術力不足って話か?

283 :仕様書無しさん:2014/03/22(土) 09:12:50.85 .net
というより、リファクタリング工数の捻出問題かな。

うちも10年以上メンテしてきたシステムが有るが、
ちょっとした変更でもドキュメントを大量に書いて客に承認を貰わないといけないんで、
リファクタリングでソースを変えるなんてそもそも認められる訳が無い環境。
だから、今は大規模に膨らんだソースが設計的にも実装的にもあらゆる階層でスパゲティ状態w

284 :仕様書無しさん:2014/03/22(土) 09:15:41.21 .net
あえていうなら、マネジメント側の問題じゃない?

短納期とか客がアホだとか、
スパゲティはスパゲティになるべくしてなったもんだと思うけど。

自分の書く分はそれなりに綺麗にかくけど、
既存の部分は基本手を加えない。

大手とかのシステムだと無理できないし、
リーダーが改修に否定的な人間多いし。

話が分かる客、話をつけられるリーダー、
開発者が能力を発揮できる環境がなきゃな。

285 :仕様書無しさん:2014/03/22(土) 10:35:42.62 .net
>>282
SI案件なんてなんのIT知識の無いまるなげ客とExcel方眼紙にお絵かきしか出来ないSEという
素人集団での開発だから仕方ないな。

286 :仕様書無しさん:2014/03/22(土) 12:19:38.57 .net
>>283
あぁ、なるほどね。

諦めてるからダメなわけね。

交渉しようとしないからダメなわけね。

提案しようと思わないからダメなわけね。

説得できないからダメなわけね。

顧客の奴隷になってるからダメわけね。

287 :仕様書無しさん:2014/03/22(土) 12:20:56.58 .net
話が分かる客じゃないからだめなんだ。

話をつけられるリーダーがいないからだめなんだ。

開発者が能力を発揮できる環境がないからだめなんだ。

俺のせいじゃない。
みんな周りがダメだから悪いんだ。

288 :仕様書無しさん:2014/03/22(土) 12:30:24.43 .net
障らぬ神に祟りなし。皆リスクを負うのが嫌なんだよ。
ソース汚くても動いてりゃ問題ないしエンドユーザには見た目が全てだしwww

289 :仕様書無しさん:2014/03/22(土) 12:37:45.90 .net
それで苦しむのは自分だけってこと?
Mなの?

290 :仕様書無しさん:2014/03/22(土) 12:53:39.68 .net
いや、自分は辞めれば済む話だし
そこに掛けて頑張るのは仕事出す側の社員だろ
どうせ理解されないだろうし上からしたまで全ての人が諦めてるんだよ

291 :仕様書無しさん:2014/03/22(土) 13:07:30.67 .net
>>284
>リーダーが改修に否定的な人間多いし。

まともな提案があれば勘案するだろうけど、たいがいは絵に描いた餅以前の
妄想を垂れ流すのが多いからな。 このツールクソですよ止めましょうとか
いうけど、じゃあどのツールを使えば今やっていることの代替が出来るのか、
教育コストや導入コストはどうなるのかまで詰めてるのを聞いたこと無いよ。

言い出しっぺの法則ってのはあんまり好きじゃないが、提案するのは私、
考えて実現するのはあなた、ってので言われても否定するしか無いじゃん?
それが権限のある上からならともかく、何の実績もない下から言われたら
余計そう思うでしょ。

292 :仕様書無しさん:2014/03/22(土) 13:15:28.05 .net
>>290
じゃあ働いている人はMってこと?
今働いてないの?

293 :仕様書無しさん:2014/03/22(土) 13:54:12.81 .net
>>291
下というか俺の場合は派遣される場合が多いのでな。
そりゃ、初対面の相手を信用しすぎるのも怖いだろう。

294 :仕様書無しさん:2014/03/22(土) 13:56:32.62 .net
普通に追加の開発(修正)するより、リファクタリングしてから行った方が両方足してもコストが安いからするだけ。

295 :仕様書無しさん:2014/03/22(土) 20:09:19.10 .net
>>292
いや、誰のために働いてるのかって話だよ
請負う側がなんでそんなリスクおわなきゃいけないんだよ

296 :仕様書無しさん:2014/03/23(日) 01:27:31.14 .net
リスクの無い改善はないから。

それとも改善をやらないとでも言うのか?
会社、潰れちゃうよ?

297 :仕様書無しさん:2014/03/23(日) 07:41:38.22 .net
いや、俺の所有物、自社の所有物ならそうするって。
他社のリスクをわざわざ背負えないって話だ。

298 :仕様書無しさん:2014/03/23(日) 09:13:12.26 .net
請負の仕事で、単なるメンテフェーズならわざわざリファクタリングする必要も
ないけど、自社開発で今後も改善が予想されるものは確実にリファクタが必要。
騙し騙しスパゲッティに手をつけて行くと、何処かで手の施しようがないが無く
なるのだが、そうなった時は、「そのスパゲッティを茹でたのはお前」と輝かし
いレッテルが貼られるので、注意が必要。

299 :仕様書無しさん:2014/03/23(日) 09:48:50.01 .net
意識高い系の意見って実績の伴ってる奴が言わないとバカにされるだけだから匿名掲示板では通らないだろ

300 :仕様書無しさん:2014/03/23(日) 10:35:05.93 .net
ここまでスパゲッティスレッド

301 :仕様書無しさん:2014/03/23(日) 10:51:09.42 .net
荒らしが暴れとるだけやん

302 :仕様書無しさん:2014/03/23(日) 11:37:27.46 .net
GoTo文が消えても
スパゲティコードは消えないのであった

303 :仕様書無しさん:2014/03/23(日) 12:12:35.21 .net
むしろこれからは、うどんコードが流行る!!

304 :仕様書無しさん:2014/03/23(日) 13:27:01.70 .net
渇水でもうどんを茹でる香川県のように
金と時間と人員が足りなくてもプログラムを作るのか

305 :仕様書無しさん:2014/03/23(日) 15:15:12.75 .net
処理があっちこっちベタベタ引っ付いて解析に苦労する納豆コード

306 :仕様書無しさん:2014/03/23(日) 19:04:01.65 .net
コメントと実際の処理が異なる
クラス名関数名変数名と実際の処理が異なる

307 :仕様書無しさん:2014/03/24(月) 00:18:24.66 .net
スパ、スパ、スパパパ、スパパ、スパ、スパ、スパパパパパパパパパパ

308 :仕様書無しさん:2014/03/24(月) 18:43:35.69 .net
リファクタリングの余地がなくなるまでレビューで指摘を受けるってのは
恵まれた環境だってことか

309 :仕様書無しさん:2014/03/24(月) 22:19:17.18 .net
>>308
意味はわかるんだけど、それ多分リファクタリングじゃないな。
コードの無駄がなくなるまでレビューで指摘をうけるって
言ったほうがいいと思う。

リファクタリングってのはコードの成長とともに継続的に
やるものだからリファクタリングの余地が無くなることはないよ。
またコードが短いのに将来必要になるかも?程度で過度にやるものでもないし。

コードを修正する時に、既存のコードをなるべくいじらないように無理やり追加するのではなくて、
複雑にならないように既存の関連部分を綺麗にするのがリファクタリング。

310 :仕様書無しさん:2014/03/24(月) 22:39:33.17 .net
>>306
上の関数の説明と一緒とか。
コピペしただけとか。テンプレ使えよ。

311 :仕様書無しさん:2014/03/25(火) 23:16:47.09 .net
スパゲティにコピペ、グローバル変数ははいかがですかw

312 :仕様書無しさん:2014/03/27(木) 17:18:15.99 .net
処理に名前、変数に名前を付けれない人間が書いたコードはスパゲってる

313 :仕様書無しさん:2014/03/28(金) 16:41:33.54 .net
スパゲッティといってもタイプがあろうが。
ナポリタンとかカルボナーラとか。

314 :仕様書無しさん:2014/03/30(日) 03:42:58.74 .net
種類がどうこうというレベルではなく
虫の足が入っている

315 :仕様書無しさん:2014/03/30(日) 17:29:25.00 .net
昔おったな、なんでもGO TOで飛ばすやつが
そいつ2種の試験合格したと自慢しとった
構造化プログラミングを知らないかったそうだ

316 :仕様書無しさん:2014/03/30(日) 17:43:14.52 .net
オブジェクト指向言語で継承しても、ここを通ってこうやったらこうなってと、GOTOとしか考えていない奴がいる。
設計を学べよ。

317 :仕様書無しさん:2014/03/30(日) 20:58:01.93 .net
理想は、ウェイディングケーキな。

構造をちゃんと設計して、カステラの焼き上げを
外注に任す。 我々は、クリームを練りに練ったり
飾り物の果物の調理をやる。

いよいよカステラにクリームを塗り、飾り物を並べ
さらにデコレーションの仕上げに念を入れる。

晴れの舞台でのケーキカットオーバーで
ソフトの完成だ!

318 :仕様書無しさん:2014/03/31(月) 00:07:19.52 .net
現実は、喫茶マウンテン

319 :仕様書無しさん:2014/04/01(火) 00:06:22.47 .net
>>317
現実はケーキ職人の代わりに植木職人の見習いが間違ったレシピで作ってたりするけどな

320 :仕様書無しさん:2014/04/01(火) 06:57:03.60 .net
おかんの作ったスパゲッティー

321 :仕様書無しさん:2014/04/02(水) 16:36:13.82 .net
半年ぶりにここ来たんだが、またサーバー名変わったのか?
2chはいつになったら板名をサブドメイン名にするんだ?

322 :仕様書無しさん:2014/04/02(水) 19:04:19.43 .net
何言ってんのこの馬鹿

323 :仕様書無しさん:2014/04/15(火) 09:12:10.05 .net
正直なんでスパゲッティなのかと。
フォークするからか?
よく絡むという意味ではむっちり太麺のラーメンでよくね?

324 :仕様書無しさん:2014/04/15(火) 10:43:50.73 .net
お前、自分でスパゲティ茹でたことないだろ?
茹でたスパゲティを少しおくとゴテゴテに麺が絡みついて離れなくなるんだよ。

325 :仕様書無しさん:2014/04/15(火) 20:46:29.92 .net
>>324
それコピペで継ぎ接ぎされたコードだな

326 :仕様書無しさん:2014/04/15(火) 22:21:47.12 ID:pUJE5jDQJ
なぜ自分で選んだ職業に文句を言うのか

バカの発想はわかりかねる

327 :仕様書無しさん:2014/04/15(火) 21:49:36.64 .net
>>324
そーめんもなかなか。

328 :仕様書無しさん:2014/04/15(火) 23:41:29.65 .net
>>325
熟練のプログラマが一つ一つ手作業で生み出す、ナチュラルなスパゲティの味をお前はしらない!!

329 :仕様書無しさん:2014/04/16(水) 01:25:51.69 .net
1週間待ってください
本物のスパゲティを(ry

330 :仕様書無しさん:2014/04/16(水) 01:56:13.92 .net
ラーメンも忘れないでね

331 :仕様書無しさん:2014/04/16(水) 03:23:58.93 .net
ラーメンみたいにつるっとしてればいいんだが…

332 :仕様書無しさん:2014/04/16(水) 03:28:04.36 .net
>>323
一つには、goto だらけのプログラムが良くある頃の話だ。
また、命名は欧米だ。

333 :仕様書無しさん:2014/04/16(水) 03:51:17.16 .net
>>332
ネストが深い(複雑度が高い)。
そのネストの中にいろんな機能が分散して入り組んでる。
例外やifでジャンプ…
処理の共通化のための謎の継承関係、親子間に依存があって切り離せない継承関係

ジャンプがなくなった今でも、そんなスパゲティを食わされ続けているが

334 :仕様書無しさん:2014/04/16(水) 06:57:26.15 .net
>>333
まるで横溝正史の探偵小説だね

335 :仕様書無しさん:2014/04/16(水) 09:30:37.93 .net
>>155を読め
「スパゲッティ・プログラム」って言葉は戦前から使われてる

336 :仕様書無しさん:2014/04/16(水) 14:49:43.13 .net
MFCをつかったVCのクラスの多さ
で、1クラスのステップが決まっていればいいのだが
何千とある行数。
つまりプログラマはマイクロソフトにスパゲッティということを
植えつけられている。まぁマイクロソフトは悪だね

337 :仕様書無しさん:2014/04/16(水) 18:49:41.96 .net
>>324
そうならないようにオリーブ油を垂らして混ぜておくんだよ。

338 :仕様書無しさん:2014/04/17(木) 05:28:49.62 .net
>>335
信じたの?

339 :仕様書無しさん:2014/04/17(木) 06:27:24.76 .net
どうすればスパゲッターを脱出できるのだろうか

340 :仕様書無しさん:2014/04/17(木) 07:05:39.04 .net
できるだけコードを書かない

341 :仕様書無しさん:2014/04/17(木) 07:48:27.57 .net
PCのデスクトップやらフォルダやらを使いやすいように分類してみるとか、
日常的に身の回りを整理整頓するとか、
文章はアウトラインから考えて書くようにするとか、
トップダウンの考え方を憶えるとか、

こんな感じかな

342 :仕様書無しさん:2014/04/17(木) 10:06:36.65 .net
>どうすればスパゲッターを脱出できるのだろうか

ソースコードの横に図があって、今はこの表示処理をやっているとか

入力処理のコードの横に、または人とPCのインターフェースが図にあるという具合にすれば。

343 :仕様書無しさん:2014/04/17(木) 21:18:18.03 .net
>>339
設計の勉強しなよ。
>>340
ホントそれに尽きるよな。
達人プログラマー読むとスパゲッターはかなり削減できると思う。

344 :仕様書無しさん:2014/04/18(金) 13:50:00.55 .net
プロトタイプとして
A->B->C->D->判定という処理
があったとしよう

で、ユーザから「A->B->D->Cという順番で判定できるようにしてほしい」
というのがあったとき

A->B->D->C->判定
 |
  ->C->D->判定
といように書くときスパゲッティになる

345 :仕様書無しさん:2014/04/18(金) 14:04:05.09 .net
地獄はビールの気が抜けていてストリッパーが性病持ちであるという事以外天国と同じである

346 :仕様書無しさん:2014/04/18(金) 19:33:11.50 .net
>>344
正解はこれでいいか?

@A→B→X→C→X→D→判定
AA→B→X→D→X→C→判定

>>345
嘘だ
地獄なら猫がいないはずだろ

347 :仕様書無しさん:2014/04/19(土) 01:12:56.75 .net
スパモンか

348 :仕様書無しさん:2014/04/19(土) 09:38:40.65 .net
>正解はこれでいいか?

いいよ

A->B->D->C->判定
  |
  ->C->D->判定


動いているルーチンだからと貼り付けて処理を完成させる。同じコードが二箇所あるわけ
コードを増やさずswich文なんかで処理を分岐させるというのをやると、Cの関数(処理)、Dの関数(処理)
に手をいれなきゃならんから。動いているものをわざわざ壊すという。

349 :仕様書無しさん:2014/04/19(土) 10:10:05.53 .net
348の説明がいまいちだから

これでどうだろう

@の関数をつくる
A→B→X→C→X→D→判定

Aの関数をつくる
A→B→X→D→X→C→判定

とやるのがスパゲッティ

348の説明は
A->Bとやってから
{
switch

case C:
 C処理
 ↓
 D処理
 break;
case D:
 D処理
 ↓
 C処理

というもの。

350 :仕様書無しさん:2014/04/19(土) 15:35:42.53 .net
モジュールを部品という考え方になればスッパラゲッチョにしたらまずいだろう
再利用できないじゃないか

351 :仕様書無しさん:2014/04/25(金) 07:48:05.95 .net
判定ロジックの順序入れ替えなんて要望が出てきた時点でABCDをそれぞれ関数オブジェクトにしてDIできるようにしとくのが普通では

352 :仕様書無しさん:2014/04/26(土) 08:35:59.66 .net
まずDIという概念を知っている人間がどれだけいるかが問題だ

353 :仕様書無しさん:2014/04/26(土) 11:15:41.33 .net
springだっけ
前にそんなコードを改修したことはあったがそれっきりで
もう殆ど忘れた

354 :仕様書無しさん:2014/04/29(火) 22:41:27.31 .net
>>337
コードでいうオリーブオイルの役割ってなんだろう

355 :仕様書無しさん:2014/04/29(火) 22:49:41.76 .net
>>354
/********************************************************/
とか
//////////////////////////////////////////////////////////
とか
//--------------------------------------------------------


よほど酷くない限り多少はマシになるかなと

356 :仕様書無しさん:2014/04/29(火) 23:17:41.47 .net
>>354
構造化等の設計による疎結合。
後がけしたいなら、リファクタリング。

357 :仕様書無しさん:2014/04/30(水) 12:51:17.18 .net
スパゲッティコーダーがよく言う言い訳で「時間がなかったから適当に作った」
というのが多いんだけど、コードを見ると時間をかけないで適当に作ったという
感じがしないんだよね。単に技術がないとか、先を見通す力がないだけなんだよ。

あと、自分の仕事が無くならないようにわざと汚いコード(本人は難しいコード
だと思っている)を書くと言っている奴がいるんだけど、見ていて痛々しい。実
際そいつには頼まなくなってきているんだよね。

358 :仕様書無しさん:2014/04/30(水) 19:40:35.20 .net
>>357
汚いコード書くやつは1000倍時間があっても汚いんだよね。
綺麗なコードを書くやつはどんなに時間がなくてもそれなりに綺麗なコードになる

359 :仕様書無しさん:2014/04/30(水) 21:39:57.77 .net
時間をかけるほど汚くなっていく。

360 :仕様書無しさん:2014/04/30(水) 22:26:45.56 .net
よしオリーブオイルだ

361 :仕様書無しさん:2014/05/01(木) 03:38:25.40 .net
スパゲッティリコーダーって何ですか?

362 :仕様書無しさん:2014/05/01(木) 08:58:22.92 .net
本当に時間が無いときは根元からスプラウトするからむしろ綺麗になる説

363 :仕様書無しさん:2014/05/01(木) 09:34:54.89 .net
>スパゲッティリコーダー

そういうのいは、一つの関数を一画面25行に収めるとやっているといい。
すこしはよくなる。またクラスを千行を目安にするというのもいい
描画クラス、判断クラス、ファイルの入出力クラスというようにわける

364 :仕様書無しさん:2014/05/01(木) 19:27:38.08 .net
>>363
>そういうのいは、一つの関数を一画面25行に収めるとやっているといい。

そうすると、引数が25個あるかグローバル変数が25個になるかのどちらか。
センスの無いヤツにはクラス分割も関数分割も無理wwwwww

365 :仕様書無しさん:2014/05/01(木) 19:36:27.17 .net
むしろ引数25個とかセンスを感じるわ

366 :仕様書無しさん:2014/05/01(木) 20:26:11.57 .net
>>365
引数25個のコンストラクタを昨日見たばかりなのだが

367 :仕様書無しさん:2014/05/01(木) 20:47:37.84 .net
きっとゲームプログラムだったんだよ

368 :仕様書無しさん:2014/05/02(金) 00:53:35.74 .net
DelFlgとかやめてほしい。
Deletedのが分かりやすいし素直。
true/falseで意味のわかる名前にしろと。

369 :仕様書無しさん:2014/05/02(金) 20:16:25.83 .net
>>368
DelFlg で十分わかりやすいと思うが
DelFlg == false が削除済みだったらクレイジーだけどなwww

370 :仕様書無しさん:2014/05/02(金) 20:31:33.08 .net
略語は読みにくいよ
他人も読むんだし、なるべく単語のままがいいさね

371 :仕様書無しさん:2014/05/02(金) 23:52:46.88 .net
>>369
DelFlgぐらいならまぁ許せなくもないが、変数名からtrueかfalseか判断できるようにしないと。

372 :仕様書無しさん:2014/05/03(土) 10:43:22.30 .net
>>371
if (DelFlg == '3') {
...とかあるともぉ何がなんなんだか

373 :仕様書無しさん:2014/05/03(土) 12:22:41.76 .net
function isNumber(value, option){
 if(option==false){
  数値チェック
 }else{
  半角英数チェック
 }
 return 結果
}

isNumberという名前は何のため

374 :仕様書無しさん:2014/05/03(土) 12:27:11.51 .net
そういうフラグ系の意味が増えた場合って数値じゃなく文字列にしたほうがよくね?

375 :仕様書無しさん:2014/05/03(土) 12:33:24.99 .net
>>374
そう言うのは列挙体だろ

376 :仕様書無しさん:2014/05/03(土) 12:49:26.19 .net
列挙体ってはじめてきいたわ
これでも良さそうだけど、DB直接いじるのとか不便なんだよな

377 :仕様書無しさん:2014/05/03(土) 12:54:15.35 .net
enum 知らんとか冗談だよな

378 :仕様書無しさん:2014/05/03(土) 15:34:28.65 .net
使い方自体はイメージできるし自分で似たようなの作ったりもしたぞ
言語に用意されてないから

379 :仕様書無しさん:2014/05/03(土) 17:45:10.79 .net
列挙型にはお世話になったな
文字列を考えている間が楽しい

380 :仕様書無しさん:2014/05/03(土) 20:53:43.25 .net
>>372
修正でRDBMSの列使いまわすやつみたいな感じか。こうすれば動く的な。

381 :仕様書無しさん:2014/05/04(日) 00:01:22.90 .net
>>375
昔なら列挙体でというところだが、最近の若いプログラマだと文字列でも
良いかもしれない。それも組み込みかGUIかでかなり違ってくるし、言語
にもよるからなあ。

しかし、列挙体や文字列にしないで数値直打ちはなんとかして貰いたい。
他人が見たらはっきり言って意味不明だし、書いた本人も後で見たらわか
らんだろう。

382 :仕様書無しさん:2014/05/04(日) 09:55:25.17 .net
>しかし、列挙体や文字列にしないで数値直打ちはなんとかして貰いたい。
他人が見たらはっきり言って意味不明だし、書いた本人も後で見たらわか
らんだろう。

お前ら、俺が解説してやる
下記の構造体があるうとしよう
struct {
int a;
int b;
int c;
}hoge;

で、こういうのが列挙だな
enum {eA, eB, eC, eEnd};
#define HOGE_SIZE eEnd;

int a[HOGE_SIZE];


だめなのがこういう書き方
a[0] = hoge.a;
a[1] = hoge.b;

列挙型の使い方な
a[eA] = hoge.a; 
a[eB] = hoge.b;
.



こうやるとエラーが出にくくなるのが大きい。hogeの変更があった場合の
影響を防げる。そして実際変更はしょっちゅうおきるよ

383 :仕様書無しさん:2014/05/04(日) 10:03:08.37 .net
>>381
列挙体だとインテリセンスが効くからそっちのが便利

384 :仕様書無しさん:2014/05/04(日) 10:28:38.69 .net
>列挙体だとインテリセンスが効くからそっちのが便利

プログラム書いていないのにはわからんだろうから、さっきの続きな
hoge構造体が変更になるわけ
struct {
int a0;
int a;
int b;
int c;
}hoge;

で、さっき配列はこう書き直される

a[0] = hoge.a0;
a[1] = hoge.a;

列挙型の使い方では配列は書き直されない
a[eA] = hoge.a; 
a[eB] = hoge.b;
追加するだけ
a[eA0] = hoge.a0;
enum {eA0, eA, eB, eC, eEnd};
#define HOGE_SIZE eEnd;

HOGE_SIZEも書き直しがない

385 :仕様書無しさん:2014/05/04(日) 11:04:05.90 .net
>>384
eEndで列挙体の要素数をあらわすのはc, c++では常套手段なのか?
c#プログラマ的には違和感ありまくりだが。

それなら、eEndじゃなくてeCount, eSizeの方が分かり易いと思う。

386 :仕様書無しさん:2014/05/04(日) 11:47:09.03 .net
>それなら、eEndじゃなくてeCount, eSizeの方が分かり易いと思う。

状態遷移でもそれがつかわれる。だからend

おまえリファクタリングやったことあるのか?
命名の見直しなんかもある、意味づけが間違っているとか、命名の統一のためとか
初期の命名なんか関数名をTmpなどとやっているとこだらけだ、
またそれは、おまえのいうように違和感を消すという作業なわけだ

387 :仕様書無しさん:2014/05/04(日) 12:13:22.14 .net
>>386
お前のようにちょっと指摘すると切れ気味になるやつが多いので
自分に火の粉が降ってこない限り指摘するのを止めたwww

それにダメプログラマー指摘しても応用が効かないので
指摘したことの適用範囲外なのに何にでも適用されて酷い事になる。

ダメプログラマーに付ける薬はないなwww

GW暇なので煽り入ってるw

388 :仕様書無しさん:2014/05/04(日) 14:20:57.32 .net
>おまえリファクタリングやったことあるのか?
コミュ障プログラマの得意技来たな
自分から説明しておいて突然半キレって、病院逝け

389 :仕様書無しさん:2014/05/04(日) 16:58:33.27 .net
>>382,384
列挙型の意味を間違って理解しているよ
配列のインデックス値定数の宣言について、
自分なら以下のように書く

#define EA 0
#define EB (EA + 1)
#define EC (EB + 1)
#define HOGE_SIZE (EC + 1)

そのコードは要素の値が0から始まり1づつ増えるという
C言語の仕様を前提に設計されているけど、
そもそも列挙型の値は整数ではない

列挙型とは、ある変数が取りうる値を列挙することで定義されるデータ型だ
数学用語であれば「外延的な定義」と言い換えてもいい

390 :仕様書無しさん:2014/05/04(日) 17:56:58.33 .net
defineだらけにするのは読みにくいから止めて欲しい
定義よりも他人の認識力を優先してくれ

391 :仕様書無しさん:2014/05/04(日) 18:15:23.52 .net
批判だけなら子供にもできる
では自分ならこうする、ってのを示せて一人前の大人

392 :仕様書無しさん:2014/05/04(日) 18:44:21.17 .net
大人なプログラマっているのか?

393 :仕様書無しさん:2014/05/04(日) 18:57:44.66 .net
文字で示せないが、絵で示せる天才タイプと
文字で示せるが、絵で示せない秀才タイプ
大体この二種類の人間しかいないと知った時、大人になれる

スパゲッティコーダーは前者に多い
残念ながら天才タイプはプログラマに向いてない

394 :仕様書無しさん:2014/05/05(月) 02:27:35.64 .net
>>389
これって各値が何かさっぱり分からんよね。
新しい値をEBとECの間に追加しつつ、かつ既存の値は変えてはいけないとなったら破綻しないか?

あと例題をHOGEとかで挙げるやつは大体だめだと思う。
例題ならイメージしやすい変数名をつけるべき。

395 :仕様書無しさん:2014/05/05(月) 09:24:25.13 .net
>>394
意味の無い変数には hoge や foo だろ

396 :仕様書無しさん:2014/05/05(月) 09:52:47.30 .net
>>394
配列のインデックスに使うのは>>384のほうが使いやすいだろうな。
もっと言うなら、enum {eA0=0, eA, eB, eC, eEnd};としておいたほうが
親切だし、安心だろう。
ただ、 配列の要素が少ないなら、構造体にしておくのも手だよ。

397 :仕様書無しさん:2014/05/05(月) 10:36:44.15 .net
c言語は余りわかってないから構文は怪しいかもしれないが
スパゲッティコーダーならこうやるべきだろw

struct {
  int a0;
  int a;
  int b;
  int c;
}hoge;

for (int i=0,int *p=&hoge.a0 ;i <sizeof(hoge)/sizeof(int); i++) a[i]=*p++;

398 :仕様書無しさん:2014/05/05(月) 10:38:45.22 .net
一行足りんかった
int a[sizeof(hoge)/sizeof(int)]; 

399 :仕様書無しさん:2014/05/05(月) 13:24:14.71 .net
>>397
まさにスパゲッティの王道だな。
濃厚な味をありがとう。
もっと欲を言うと、真のスパゲッティはスコープ?なにそれ?
って感じに変数iをグローバルに宣言するもんだよ。

400 :仕様書無しさん:2014/05/05(月) 13:36:42.67 .net
コードを読むヤツの思考を止める濃厚な粘着感と
何をやってるかが分かった後の脱力感が半端ないコードである

401 :仕様書無しさん:2014/05/05(月) 14:01:08.25 .net
>>398
改良してみた

int i=0;
int *p=&hoge.a0;
int s=sizeof(hoge)/sizeof(int);
while(1) {
  if (i < s)
    a[(i)]=*p;
  else
    break;
  i++;
  p++;
}

 

402 :仕様書無しさん:2014/05/05(月) 14:05:57.03 .net
醜悪さが足りない
パスタ修行して出直してくる orz

403 :仕様書無しさん:2014/05/05(月) 17:30:31.84 .net
>>395
意味のない変数なんて存在するの?

404 :仕様書無しさん:2014/05/05(月) 19:42:00.92 .net
>>394
>新しい値をEBとECの間に追加しつつ、かつ既存の値は変えてはいけないとなったら破綻しないか?

ここでの仕様上の値とは配列のインデックスだけど、分かっていないみたいだね
EBとECの間に追加すれば、既存の値は追加個数分だけ増加するのは当たり前の話だ
以下では、EBとECの間にEXとEYを追加した場合のコードを示す

#define EA 0
#define EB (EA + 1)
#define EX (EB + 1)  /* 追加 */
#define EY (EX + 1)  /* 追加 */
#define EC (EY + 1)  /* 変更 */
#define HOGE_SIZE (EC + 1)


>>396
やはり列挙型の意味を理解していないみたいだね
厨学生に外延とかを理解しろというのが無理ゲーだったのかもな

#defineマクロではなく列挙型を用いるべき単純な例は
いくらでも挙げる事はできるのに、
わざわざ列挙型にふさわしくない例を挙げて
知識自慢するのがいかにも厨房らしい

405 :仕様書無しさん:2014/05/05(月) 19:47:04.23 .net
また一人でキレだしたぞ
どうして独り言でキレる事ができるんだ

406 :仕様書無しさん:2014/05/05(月) 21:13:23.29 .net
>>404
うん、よく分からんw
hoge構造体の中にa変数があって、それとは別にa配列があったり・・・
これこそスパゲッティ解説

俺が破綻すると言ったのは、EAとかEBの値がデータベースに保存される場合。

407 :仕様書無しさん:2014/05/05(月) 21:43:35.50 .net
>>403
foo, hoge, bar ってサンプルコードには良く出てくるでしょ。
何にでも置き換えられるメタ構文

408 :仕様書無しさん:2014/05/05(月) 21:46:59.10 .net
>>404
配列へのオフセットだったら、それぞれに+1するより
EA基準で+1、+2、+3ってやった方が分かりやすくないか。

間に追加すると番号振り直さないといけないが。

409 :仕様書無しさん:2014/05/05(月) 22:50:43.80 .net
>>407
引き継いだシステムにもか入ってた。
hogeとかはexample.comとかみたいなものだと思ってるのに困る。

410 :仕様書無しさん:2014/05/05(月) 23:02:38.45 .net
hoge.comは実在する企業だなw

411 :仕様書無しさん:2014/05/06(火) 02:01:44.73 .net
>>404
もう完全にスパゲッティじゃないか。

412 :仕様書無しさん:2014/05/06(火) 09:13:43.39 .net
>>404

int a[EC];
と記述してあればaの大きさ宣言。これ普通

404 は、a[EC] = hoge.a; という書き方を推奨
馬鹿みたい

413 :仕様書無しさん:2014/05/06(火) 11:01:40.82 .net
>>412
それだと一つ足りませんから〜

414 :仕様書無しさん:2014/05/06(火) 16:32:17.82 .net
404が書いてた記述。EA,EB,EX,EY,ECの順番になっている

誰が見てもEA,EB,ECと考える。ECはEXより小さいと考える。馬鹿みたいな記述

415 :仕様書無しさん:2014/05/06(火) 18:03:33.01 .net
404のようなコードのマズさを指摘した時の山椒魚(仮名)のリアクション


「アセンブリコードは確認したのか?コンピュータはアセンブリコードが全てなんだよ!小手先の薀蓄なんか意味ないね批評家クン」

416 :仕様書無しさん:2014/05/06(火) 18:16:52.27 .net
やはりコンピータの意味を理解していないみたいだね
厨学生に外延とかを理解しろというのが無理ゲーだったのかもな
知識自慢するのがいかにも厨房らしい

まず機械語で書きます

417 :仕様書無しさん:2014/05/08(木) 01:35:08.48 .net
>>407
それが何のサンプルかというだけで、変数名は意味のあるものに決められるだろ
本当に意味の無い変数の実例を挙げてくれんか?

418 :仕様書無しさん:2014/05/08(木) 06:06:05.84 .net
>>417
変数定義されていて値もセットされているが結局最後は何処でも使われてない
なんて変数はちょこちょこ見かける気がするぞw

見るものを惑わすと言う意味で意味の無い変数じゃないかもだがwww

419 :仕様書無しさん:2014/05/08(木) 07:40:24.34 .net
つまりこういうことだよな


          \       ヽ           |        /        /
          \      ヽ               /      /
‐、、   殺 伐 と し た ス レ に イ ン ド 象 が ! !   _,,−''

       ,-'"ヽ         ∩___∩
      /   i、  _,、    | ノ      ヽ
      { ノ    "'"  "'"'"/  ●   ● |
      /         |    ( _●_)  ミ
      /          彡、   |∪|   ミ  _/\/\/\/|_
     i    し ま う ま  \  ヽノ  /   \          /
    /              `ー-ー'" }   <  ニャーン! >
    i'    /、                 ,i   /          \
    い _/  `-、.,,     、_       i     ̄|/\/\/\/ ̄
   /' /     _/  \`i   "   /゙   ./
  (,,/     , '  _,,-'" i  ヾi__,,,...--t'"  ,|
       ,/ /     \  ヽ、   i  |
       (、,,/       〉、 、,}    |  .i
                `` `     ! 、、\
                       !、_n_,〉>

    /'''7'''7     /'''7       / ̄ ̄ ̄/    / ̄ ̄ ̄ /
    / /i  |      / /      .. ̄ .フ ./.    / ./二/ /  . . ____
  _ノ / i  i__ . ノ /__,l ̄i   __/  (___   /__,--,  /    /____/
 /__,/  ゝ、__| /___,、__i  /___,.ノゝ_/    /___ノ..

420 :仕様書無しさん:2014/05/08(木) 08:38:07.51 .net
ダメ構文

421 :仕様書無しさん:2014/05/08(木) 09:04:41.75 .net
>>419
こういうプログラム見かける
俺の貴重な人生の時間を奪うやつ

422 :仕様書無しさん:2014/05/09(金) 00:27:39.95 .net
>>418
今時のIDEはそういう変数はチェックして警告とか出してくれるけどね。

423 :仕様書無しさん:2014/05/09(金) 01:22:49.73 .net
>>422
昔からlintでやってると思うけどね。

424 :仕様書無しさん:2014/05/09(金) 06:53:35.27 .net
>>422
思いっきり波線出てるんだけど無視されてるのさw
スパコーダーにIDEの警告なんて意味なし

425 :仕様書無しさん:2014/05/09(金) 12:59:05.37 .net
>>418
いや、サンプルの話をしているんだが……
意味の無い変数を含むサンプルがあるのか?

426 :仕様書無しさん:2014/05/09(金) 18:48:34.06 .net
>>425
おいおい、「意味の無い変数名」が「意味の無い変数」に置き換わってるぞ。
サンプルだから「意味の無い変数名」を使うのだよ。

話が振り出しに戻ったから、もう二、三周するかいwww

427 :仕様書無しさん:2014/05/09(金) 20:49:23.73 .net
>>426
それは>>417を読んだ上でのレスなのか?

428 :仕様書無しさん:2014/05/09(金) 21:16:53.27 .net
「動いているから良いでしょ」

一言でできる反論教えてくれ。

429 :仕様書無しさん:2014/05/09(金) 21:31:15.20 .net
>>427
K&R 見てみたがさすがに foo, bar はないが

int i, j, k;
char c;
char s[10];
func(int x, int y)

大御所が書いた本でもこんなもんだぞwww

430 :仕様書無しさん:2014/05/09(金) 21:33:23.89 .net
>>428
「動いているから良いってもんではないぞ…」
小一時間説教

なんて先輩が昔は居た気がするな

431 :仕様書無しさん:2014/05/09(金) 23:13:20.52 .net
>>428
初心者なら十分だな。
二度と修正しないのならばな。
潜在的バグがないと言い切れるのならばな。
駄目。

432 :仕様書無しさん:2014/05/09(金) 23:51:30.03 .net
>>429
昔は紙に書いてパンチャーさんに入れてもらってたから、少しでも節約するために
文字数減らしてたんだよ。 短いほうがパースするのに時間がかからないから
経済的だしな。

433 :仕様書無しさん:2014/05/10(土) 01:29:29.42 .net
>>429
あー・・・すまん、的外れな回答をさせてしまった。
日本語の通じない奴らだなあ、と思ってたんだが、よく振り返ったらこっちも複数の事を一緒くたに書いてた。
こっちの言いたい事をすっかり書く事にするよ。

1.サンプルコードとは何かを解決する手法を例示するものである以上は目的が明確なはずで、ならばそこに登場する変数にも当然明確な役割があり、だからその名前は半自動的に意味のあるものに決定できるはず。
2.サンプルコードに必要無い変数(≠変数名)があるのなら提示せよ。

つまり、サンプルコードに必要無い変数などあるはずが無く、だから無意味な変数名があるサンプルコードはおかしいんだよ、という事が言いたかった。
そして>>407はそれを迎合するようなレスだったんで、釘を刺したかったんだ。

付け加えるなら、サンプルコードに無意味な変数名があるのは既知だけど、それがそもそも間違ってるかと。
例示の段階で適切な命名をするところまでしないと、実践でそれを模倣してしまう奴が絶対出てくるので、カニチャーハンは悪書だなと。
例えばK&R第2版P.33、power関数の実装サンプルなんだけど、
power(base, n)
int base, n;
{
int i, p;

p = 1;
for(i = 1; i <= n; ++i)
p = p * base;
return p;
}
イディオムというものがある以上、iはこれでいいと思う。
baseも関数名そのものとその引数である事の二点から、何となく類推はできる。
nもそうだけれど、しかし1文字の変数名を仮引数に割り当てるのはどうかと。せめてnum。
そしてpは本格的にダメでしょ、pを本当に局所的に使うポインタ変数に割り当てる、というイディオムがある以上はなおさら。
サンプルコードで、こんなコードを示しちゃいけない。
まあこんな意見は、>>394をはじめ散々がいしゅつ(←なぜか変化できない)なんだけどね。

434 :仕様書無しさん:2014/05/10(土) 01:48:15.26 .net
スコープ小さいならむしろ一文字変数の方が正義だと思うけどな
10行の命の変数にわかりやすさもクソもないと思うが

スコープに比例して説明的にすべきって某書籍に書いてあったし

435 :仕様書無しさん:2014/05/10(土) 02:18:31.54 .net
>>434
これがべき乗を表現する常套手段だって知らない人がこれを見た場合、1文字変数にどんな正義があるんだ?
長さに比例すべきという案には賛成で、これより長くなるのなら俺はこれより長い名前を付ける。

436 :仕様書無しさん:2014/05/10(土) 07:22:21.64 .net
何で int が i, j, k, l… なのか知らないヤツ多いよな

437 :仕様書無しさん:2014/05/10(土) 07:28:44.71 .net
>>433
ライブラリのpowは、double pow( double x, double y ) なので
K&R で power(base, n) としているのは意味のある変数を付けてる方だと思うが。

438 :仕様書無しさん:2014/05/10(土) 07:40:56.51 .net
>>437
ねえ、突っ込むところそこなの?
それはある程度認めるけど足りないって書いてあるの読めない?
あとカニチャーハンのサンプルはまずいって話に標準ライブラリのプロトタイプは何か関係あるの?

439 :仕様書無しさん:2014/05/10(土) 08:49:25.91 .net
>ねえ、突っ込むところそこなの?

power(base, n)
int base, n; の関数なんだけど

結果がオーバーフローしちゃう。こういうのは実装できない

440 :仕様書無しさん:2014/05/10(土) 10:07:02.72 .net
>>438
皆が使う標準ライブラリーだから分かり易いプロトタイプじゃないと駄目でしょ

それとK

441 :仕様書無しさん:2014/05/10(土) 10:34:32.35 .net
>日本語の通じない奴らだなあ、と思ってたんだが

日本語の出来るプログラマなんて、まだこの世に存在してないんだが

442 :仕様書無しさん:2014/05/10(土) 11:22:31.96 .net
>>439
その突っ込みは非常に残念だが、ありだwww

>>440
おっしゃる事はもっともだけど、それが>>433への突っ込みなんだとしたら、まったく受け入れられないよ?
あと、最後の書きかけがもし同じ作者うんぬんだったとしたら、それこそまったく関係無い話だよ?

443 :仕様書無しさん:2014/05/10(土) 11:23:34.84 .net
>>441
お願いです、それはネタだという建前にしといてくださいorz

444 :仕様書無しさん:2014/05/10(土) 12:07:36.72 .net
int が i, j, k, l…
って fortran だっけ(あえて小文字で)

445 :仕様書無しさん:2014/05/10(土) 15:05:56.51 .net
ま、intでなくINTEGERだけどね。
I,J,K,L,M,Nが暗黙の宣言で整数形はFORTRANとPL/I。

446 :仕様書無しさん:2014/05/10(土) 15:12:11.36 .net
>>445

447 :仕様書無しさん:2014/05/10(土) 18:04:27.09 .net
可読性はセンスだよね

そして、可読性とパフォーマンスは別の問題である

448 :仕様書無しさん:2014/05/10(土) 18:55:41.82 .net
>>447
その通り。
現在では可読性はとても重視される
それは、きちんと動かすための大きな助けになるからだ
動作安定性が確保されれば、パフォーマンスが重視される局面は限られている

449 :仕様書無しさん:2014/05/10(土) 18:57:12.55 .net
で、>>445の立場は一体……

450 :仕様書無しさん:2014/05/10(土) 21:34:49.37 .net
Fortranの整数型がすんなり出てきたり、K&Rって言っている時点で
このスレの平均年齢は高いと推測する

451 :仕様書無しさん:2014/05/10(土) 21:43:49.45 .net
今時K&Rはないだろう。
あとスコープがせまかったらi,j,kでも許されるよ。
最悪なのは数千行に及ぶmain関数の最初に

int i,j,k

と定義され、以下forループでそれらの変数を使いまわす奴がいるという事。

452 :仕様書無しさん:2014/05/10(土) 21:55:57.88 .net
>>451
未だ同じ用途で使いまわすのは良いが、使うたびに型が同じなだけで
意味が違うものに使いまわす秀逸なセンスを持つスパグラマーが存在する。

453 :仕様書無しさん:2014/05/11(日) 01:24:57.98 .net
だからiはIntegerのIじゃないとあれほど

454 :仕様書無しさん:2014/05/11(日) 22:16:59.82 .net
たしかにintegerのiだったら、
jは何の略か? kは何の略か?ってことになるよな。

で、何の略?

455 :仕様書無しさん:2014/05/11(日) 23:08:30.86 .net
○や□が何の略か、考える必要があるだろうか
俺達は○や□を使う権利すらないという事だろうか
○や□を最初に考え出した人は、何を思っていたのだろうか

愚かな

456 :仕様書無しさん:2014/05/12(月) 01:07:51.64 .net
数学の添字由来だから index の略だろうな。

457 :仕様書無しさん:2014/05/13(火) 07:20:37.94 .net
インなんとかさん?

458 :仕様書無しさん:2014/05/14(水) 20:04:55.87 .net
数式で添え字を使う時、i jをつかわなかったっけ?
昔のことでおぼろだけど、f(i j)のように

459 :仕様書無しさん:2014/05/14(水) 20:15:30.91 .net
君たち、画面描画は処理が遅いて知っている
グラフィック処理というやつね。分けたほうがいいよ
スパゲッティさんは計算の処理とか判断とか一緒くたに書いていそうだ

自分はパスタとベーコンの組み合わせががすき。

460 :仕様書無しさん:2014/05/14(水) 22:29:53.81 .net
俺はラーメン派だ
夜に麺類は肥満の元になるから気をつけなよ〜

461 :仕様書無しさん:2014/05/15(木) 21:56:35.71 .net
>>459
天下のNECが作ったHOLONって開発環境は
共通処理を関数化したらコンパイルできなくて
イベントハンドラにすべての処理を書かなきゃいけなかったんだぞ

462 :仕様書無しさん:2014/05/16(金) 20:01:29.78 .net
自分が見てきた限りでは、
「自分に課せられた任務(作る業務=仕様)を理解していない。というより理解する気が無い」
もしくは
「『修正を最小限にしろ』という変な指令に従わざるを得なかった」もしくは「作り直すという選択肢は予算的に有り得ない」
というパターンが一番多かった。

前者が最初のスパゲッティを書き、後者がそのスパゲッティを泣く泣くメンテという構図…。

463 :仕様書無しさん:2014/05/21(水) 17:54:01.98 .net
順次 選択 反復

464 :仕様書無しさん:2014/05/22(木) 16:05:50.06 .net
予算がないから設計工程は省く、
って、余計にコストかかるよな。

465 :仕様書無しさん:2014/05/22(木) 23:17:19.83 .net
むしろ設計工程が予算を食いつぶしてるような...
そして割を食うのはテスト工程

466 :仕様書無しさん:2014/05/23(金) 14:24:25.28 .net
いやそれが正しい姿だ

467 :仕様書無しさん:2014/05/23(金) 17:47:25.08 .net
その工程のツケは次工程に行く前に清算しろよ。

468 :仕様書無しさん:2014/05/23(金) 18:22:39.49 .net
それが理想だが、その工程が完璧であることを
証明する方法がないのだから、
絶対に次の工程に残るものがある。

それをどうするかを決めないといけない

ウォーターフォールが失敗するのは、
工程が完璧であり戻りがないという
前程になっているから。

納品した後サポート期間があるように、
工程も次工程に渡した後にサポート期間を儲けないといけない。
つまり下流は納品物を検証し上流へ苦情を出す。

469 :仕様書無しさん:2014/05/23(金) 19:13:30.73 .net
後工程に押し付けるウォーター便所方式では、前工程はさっさと逃げ出す。

ケツを伸ばすか、プロジェクト中止すればいい。
何の根拠もなく次の工程で取り戻しますというPMを信じるな。
あと慌てて増員も余計に酷くなる。

470 :仕様書無しさん:2014/05/23(金) 22:26:21.34 .net
>>454
i,j,k,l,m,nはFORTRANでの暗黙の整数型で、その流れからだと思うんだけど。
iから始まってるのは、もちろんint型の頭文字からきている。

あれ?、俺、もしかして釣られてる?....

471 :仕様書無しさん:2014/05/23(金) 22:31:44.63 .net
アホはIよりいでてIよりアホし

472 :仕様書無しさん:2014/05/25(日) 00:38:46.23 .net
プログラムは数学の流れから来てるんだから変数名は数学の頃からの慣例だろ

473 :仕様書無しさん:2014/05/25(日) 12:00:35.53 .net
>>470
それが正解

>>472
数学だと x, y, z でしょ
それに i は虚数だし

474 :仕様書無しさん:2014/05/25(日) 12:03:51.45 .net
Σのiだと思っていた

475 :仕様書無しさん:2014/05/25(日) 12:21:07.92 .net
行列のi,j,...かと(ry

476 :仕様書無しさん:2014/05/25(日) 14:00:17.08 .net
>>474
これだろ

477 :仕様書無しさん:2014/05/26(月) 07:44:09.90 .net
Σ(iωi)

478 :仕様書無しさん:2014/05/26(月) 19:00:34.10 .net
無限ループは、while(true) より for( ; ; ) がいい

479 :仕様書無しさん:2014/05/26(月) 19:46:42.75 .net
while (1);

480 :仕様書無しさん:2014/05/26(月) 22:56:48.35 .net
普通は>>479だろ。

481 :仕様書無しさん:2014/05/27(火) 10:47:02.90 .net
do whileじゃね?

482 :仕様書無しさん:2014/05/28(水) 21:21:46.89 .net
>>480
せ、セミコロン

483 :仕様書無しさん:2014/06/17(火) 01:58:08.03 .net
iはiterationのiだろ
まあinteger説も濃厚だが、少なくともindexは必ずしもループカウンタにはならない

484 :仕様書無しさん:2014/06/17(火) 02:49:02.73 .net
increment かとばかり

485 :仕様書無しさん:2014/06/18(水) 06:35:55.15 .net
何この妄想で語るスレ
住人がスパゲッティコーダーじゃん

486 :仕様書無しさん:2014/06/22(日) 00:09:24.04 .net
forに使うiはindexの事だとおもってた

487 :仕様書無しさん:2014/06/22(日) 00:58:24.04 .net
最近は言語の方が進化してforeach使うことの方が多いから、int iとか登場しなくなった。逆にObject oとか出てくる

488 :仕様書無しさん:2014/06/22(日) 07:39:35.04 .net
長い名前

489 :仕様書無しさん:2014/06/22(日) 09:35:50.29 .net
(i) こう使うと i もまた別の趣がでる

490 :仕様書無しさん:2014/06/22(日) 20:57:06.75 .net
スレッドプログラミングの話ですか今度は

491 :仕様書無しさん:2014/06/23(月) 22:35:14.73 .net
未だにCで変数は関数の頭で宣言しろっていう人が嫌いです
視認性悪いのになぜこだわるのOOできない人って

492 :仕様書無しさん:2014/06/24(火) 00:19:44.59 .net
コンパイラによってはエラー吐くからでしょ

493 :仕様書無しさん:2014/06/24(火) 00:55:50.76 .net
コンパイラがエラーを吐くからとか言う人にかぎって
昔っからスコープの頭で宣言しても大丈夫だってことは
知らないんだよなあ。

494 :仕様書無しさん:2014/06/24(火) 06:01:18.24 .net
コード汚すなクズ

495 :仕様書無しさん:2014/06/24(火) 09:28:05.17 .net
>>491
コーティングルールで禁止されてる

496 :仕様書無しさん:2014/06/24(火) 10:38:35.61 .net
>>495
そのコーディングルールが今では間違っているって話だと思うんだが…
思考停止してコーディングルールに従ってる奴は汚いコード書く奴と同じくらい迷惑

497 :仕様書無しさん:2014/06/24(火) 11:23:17.08 .net
>>491
C89のコンパイラでエラーになるだろうが!

498 :仕様書無しさん:2014/06/24(火) 12:41:54.88 .net
ルールが嫌いなら、職業から間違えてる

499 :仕様書無しさん:2014/06/24(火) 15:48:28.80 .net
>>496
コーディングルールはプロジェクトごとに決めるものでしょう。大抵はテンプレから選ぶだけだけど。
一貫性を持たせるために使うもので、正しいとか間違ってるとかで途中で変えるものではない。
テンプレを良くしていくのには賛成。

500 :仕様書無しさん:2014/06/24(火) 16:32:47.38 .net
> 正しいとか間違ってるとかで途中で変えるものではない。

間違ってるルールを守ることに何の意味があると思うの?
ルールを守ることで生産性を下げて、それで誰が特をするというの?

極端な例で、コーディングルールに従うと、
脆弱性になるって場合でもルールの方を守れというの?

特に長いプロジェクトであれば、間違っていれば途中で変えるものだよ。
法律でさえ変えるものなんだからさ。

ルールブックには、決めたルールを書くだけじゃなくて、そのルールを決めた理由と
ルールを変更するための手順も明記しないとダメ。

頻繁に変えたり、場当たり的に変えるのはだめだが、ルールは定期的に見直し、
間違っていたり、現状に合っていなかったり、合わなくなったり、
人的リソースやツールに変化があれば、見なおして問題あるなら躊躇なく変える。

途中で変えたらダメと思うのは、ルールを100%守らなきゃいけないと思ってるから
ルールを変えたら、全ソース修正になって大変と思うからなのかな?
旧ルールで書かれた古いコードって解釈すればいいだけなんだが。

ルールを守ることで得られるメリットを得ることが目的であって、
ルールを守ることが目的じゃないんだからさ、
メリットがないルールは守る必要がないの。

501 :仕様書無しさん:2014/06/24(火) 16:38:50.66 .net
>間違ってるルールを守ることに何の意味があると思うの?
政府に言えw

502 :仕様書無しさん:2014/06/24(火) 16:42:06.11 .net
>>501
選挙に行け

503 :仕様書無しさん:2014/06/24(火) 17:18:14.23 .net
>>499
>コーディングルールはプロジェクトごとに決めるものでしょう。

そんなにコロコロ変えるものではないだろ。
一度決めたら何百ものプロジェクトに適用されるんだから
正しさを担保するために年単位の時間をかける。

504 :仕様書無しさん:2014/06/24(火) 17:21:46.05 .net
プロジェクトが終わらないどころか、進まないパターンだな。
正しいかどうかは生き延びてからゆっくり考えろ。

505 :仕様書無しさん:2014/06/24(火) 17:25:17.09 .net
>>503
いくつかあって、その中から選択するという意味で変わるかなと。プロジェクトごとに作るという意味ではなかったです。
言語が違えばコーディングルールも違ったりするし、
ソフトウェアハウスだと、クライアントによっても変わったりするし。

506 :仕様書無しさん:2014/06/24(火) 17:48:57.80 .net
一般的にはクライアント毎かな、とは思う

507 :仕様書無しさん:2014/06/26(木) 22:51:53.83 .net
>>500
お前みたいなのが二人居るとボクシング始めだして話が進まなくなるんだよね
歩行者用信号が赤の時に道路に飛び出してくるアホと青の時にアクセル踏んで加速するアホ同士のボクシング
こいつらはその場に車や人が見えなければ信号は無視した方が効率が良いと、お互いに微妙にズレた主観に基づいて殴り合う

でも、普通に信号守ってる奴からすりゃあ轢かれたり人を轢くハメになっていい迷惑なんだよね
これまで脳死で良かったのに、ルールを守らないアホに対しても配慮しないといけなくなるんだからな

508 :仕様書無しさん:2014/06/26(木) 23:26:24.09 .net
>>507
お前、話を混乱させたくないなら関係無い話を持ち出すなよ
今ここで語られているのは間違ったルールについてであって、道路交通法には基本的に欠陥は無いからまったく関係無い話だ

ちなみにみんな勘違いしているが、ドライバーがザルと呼んで叩きまくっているシロモノの正体は道路交通法じゃなくて道路交通法施行令だからな

守らなきゃいけない事があるからルールに定められるのであって、ルールだから守らなきゃいけないんじゃないからな

509 :仕様書無しさん:2014/06/26(木) 23:37:12.52 .net
ウチのSEはどんな言語のコードでも全く理解出来ないので
どんなコーディングやろうが動けば何も言わないw

また、テーブルに主キー以外のインデックスが存在しないので
データ量が増えるとレスポンスが悪化するw

510 :仕様書無しさん:2014/06/27(金) 08:37:34.11 .net
>>508
ルールと法は違う、まずそこから。
ルールは愛嬌で構成される。だから正しいも糞も無い。
法は無情で構成される。だから正しいも糞も無い。
焼肉屋で、焼いてからタレ漬けてる奴が居たとする。
それを見て『なんて効率の悪いルールだ!タレを付けてから焼かない奴は死刑だ!』と考えた奴がいたとする。
妥協できないなら法を作れ。
スターリンのように。

511 :仕様書無しさん:2014/06/27(金) 10:51:00.60 .net
このスレ
スパゲティ作るの上手いやつ多そうだな

512 :仕様書無しさん:2014/06/30(月) 09:50:06.28 .net
結局ルール自体が正しいとか正しくないって言うこと自体がナンセンス

513 :仕様書無しさん:2014/06/30(月) 10:35:06.49 .net
A. 人間は過ちを起こす → だから → 人間の考えたルールは正しくない
B. 人間は過ちを起こさない → だから → 人間の考えたルールは正しい
C. 人間は過ちを起こす → だから → 人間の考えたルールは正しい

Cの論理を主張されてもスパゲッティだわな

514 :仕様書無しさん:2014/07/13(日) 02:02:35.35 .net
使い方のドキュメントがしっかりしてれば
スパゲッティでもちゃんと動くんだったら問題ないよ?
もう中身なんか二度と見ないから

515 :仕様書無しさん:2014/07/13(日) 08:18:50.71 .net
>>514
仕様変更、追加要求。

516 :仕様書無しさん:2014/07/13(日) 12:04:40.28 .net
運用で対応してください

517 :仕様書無しさん:2014/07/13(日) 12:24:56.86 .net
>>515
変更○○○万円、追加○○○万円
これで変更も追加も無くなる

518 :仕様書無しさん:2014/07/13(日) 18:22:32.28 .net
>>517
通信先の仕様が変わったり、法令が変わることもある。
そして要求を発するのが自分のこともある。

519 :仕様書無しさん:2014/07/13(日) 19:17:48.86 .net
>>518
いや工数が発生するんだから金払えよ

520 :仕様書無しさん:2014/07/13(日) 23:15:06.65 .net
>>519
自分で自分に払っても

521 :仕様書無しさん:2014/07/14(月) 08:11:35.30 .net
要求が変わっても無改造でちゃんと動くなら問題ないが
普通そんなことはない

522 :仕様書無しさん:2014/08/06(水) 23:10:00.42 .net
スパゲティじゃないが、スペルミスでhandleをhangleと書いてしまった。
バージョン管理がgitでよかったぜ。

523 :仕様書無しさん:2014/08/07(木) 11:39:36.83 .net
supaget

524 :仕様書無しさん:2014/08/15(金) 14:01:54.33 .net
組み込みプログラマーが書いたコードはグローバル変数てんこ盛りだから必然的にスパゲッティーだな。

525 :仕様書無しさん:2014/08/15(金) 14:15:45.66 .net
趣味はセックスです

526 :仕様書無しさん:2014/08/17(日) 20:47:44.31 .net
そして童貞です

527 :仕様書無しさん:2014/08/23(土) 01:40:27.38 .net
助けて〜
デグレが怖いからってツギハギなコーディングを求められて
テストして悪いとこ出し切ってまとめて修正しようとしてるのに
見つけた瞬間ここ直しておいてだの対応を迫られるし、
リーダーとまったく理念が合わない〜

528 :仕様書無しさん:2014/08/23(土) 04:18:32.12 .net
どうしようとしているのか先に整合しろよ

529 :仕様書無しさん:2014/08/23(土) 10:49:54.50 .net
>>527
リーダとやらは、お前がバグを見つけた瞬間に言わなくても分かるエスパーなのけ?
でなけりゃ言わんで貯めときゃ良いべなw

530 :仕様書無しさん:2014/10/13(月) 11:44:03.69 ID:ch1fZtLiv
>>517
それやっていいの?

531 :ギンコ ◆BonGinkoCc :2014/12/05(金) 06:22:38.07 .net
どこの道順に繋がっているかがわからないプログラムをスパゲッティプログラムといいます。

自動車の道路でいえば、東京の高速道路における大橋ジャンクションとかだね。
初めて訪れるドライバーだとはっきり言って真宵マイマイ状態ですね。

532 :仕様書無しさん:2014/12/05(金) 08:27:58.05 .net
時間が経つとくっついて、フォークを刺しても全てがくっついてくるコードを、スパゲティプログラムと言います。

533 :仕様書無しさん:2014/12/22(月) 23:02:00.22 .net
super-getty

534 :仕様書無しさん:2015/03/09(月) 07:25:59.80 .net
マジレスすると複雑度が全体的に高い

535 :仕様書無しさん:2015/05/01(金) 12:41:10.31 .net
ナポレオン食べたくなったよ

536 :仕様書無しさん:2015/05/01(金) 12:42:14.08 .net
間違ったナポリタンだよw

総レス数 536
124 KB
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver.24052200