トップページ⇒tech
1001コメント306KB

消えてなくなれよ >オブジェクト指向 part.2

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2009/03/22(日) 06:57:59
前スレ
http://pc11.2ch.net/test/read.cgi/tech/1198822420/
0653デフォルトの名無しさん2009/05/27(水) 13:13:37
圏って所詮はグラフだろ
0654デフォルトの名無しさん2009/05/27(水) 18:19:09
面白がってる場合じゃないんだよ
明日役に立たない物はゴミなんだよ
0655デフォルトの名無しさん2009/05/27(水) 18:46:13
>>652
そうだろう、そうだろう。
数学的に書き下したものを仕様書の中に含めたら、
「意味がわからん!!! 書き直せ!!!」
と大いばりで言う自称 SE が良くいるもんな
0656デフォルトの名無しさん2009/05/27(水) 18:56:55
>>643
気持ちはわかる。
今の時代、何が飛び出てくるかを
追いかけるのは、もう量的に無理に
なってきているから、そういうものを
気にしない OO で行こうってことなんだろう。
0657デフォルトの名無しさん2009/05/27(水) 18:57:36
>>655
あのな、お前らコーダーがSEの仕事に口を出すから「意味がわからん書き直せ」なんて言われるんだよ。
お前がSEになれば良いだけのことだろ。
コーダーはプログラムを書くのが仕事。
0658デフォルトの名無しさん2009/05/27(水) 20:26:37
設計とコーディングを別に分けるからおかしくなるんだよ。
一人で設計&コーディングやればいいだけの話なんだが。だから日本は駄目なんだ。
0659デフォルトの名無しさん2009/05/27(水) 20:37:32
>>658
もちろんSEもプログラムは書くけど、コーダーはもっと細かいところを書く印象だな。
0660デフォルトの名無しさん2009/05/27(水) 20:57:57
>>659
それなら結構まともかもね。コーディング出来ないSEとかいるしな。
0661デフォルトの名無しさん2009/05/27(水) 21:04:13
>>660
そんな中小企業はどうでもいいです
0662デフォルトの名無しさん2009/05/27(水) 21:41:45
>>661
東証一部上場企業の話だぞ。聞いた話であって実際見たわけじゃないが。
企業規模だけでしか物を見れない奴って本当に低能だな。
0663デフォルトの名無しさん2009/05/27(水) 22:02:58
聞いた話を鵜呑みにするなんて
めくそハナクソですよね
0664デフォルトの名無しさん2009/05/27(水) 22:08:23
聞いた話をすべて信用しない奴って友達いないんだな
0665デフォルトの名無しさん2009/05/27(水) 22:19:55
事実確認もしないで信用するなんて俺にはとてもできないけどな
査定に引っかからないなら立ち回りが上手いんだろうそのSEは
0666デフォルトの名無しさん2009/05/27(水) 22:36:25
コーダーに権限と責任を与えないから悪い。だから日本は駄目なんだ
0667デフォルトの名無しさん2009/05/27(水) 22:39:34
結局、OOじゃ工数を1Hも削減できないってのが金も人も集まらない理由だよね
結局、最後は数字
これは俺の陰謀じゃなくて上が求めてくるものね
俺も会社も遊びで付き合ってるわけじゃないからなぁ・・・
0668デフォルトの名無しさん2009/05/27(水) 22:40:21
すべてにおいて事実確認をしないと信用できない原理主義者かお前は
設計だけやってコーディングは子会社丸投げということだ。
立ち回りがどうこうではなく組織の問題。
0669デフォルトの名無しさん2009/05/27(水) 22:41:21
>>666
給与を抑えるためにコーダーとSEを分離したのが悲劇の始まり。
0670デフォルトの名無しさん2009/05/27(水) 22:42:56
>>667
というよりOOで設計出来る奴が少なすぎるのが問題ってことだろ。
みんながOOで設計出来れば工数関係無しにそれなりに使われているはず。
0671デフォルトの名無しさん2009/05/27(水) 22:48:10
>>667
いや、工数を削減する能力がないだけ。
0672デフォルトの名無しさん2009/05/28(木) 00:13:47
>>670
PGの単価なんて削ってどうしようっていうのか?
ただでさえ安いもの削る必要なんかない
OO使って組んだら理解できる人間が少なくなるならそれは単に非効率なだけだろ

>>671
いや、物理的にありえない
だって工数って何で決まるよ?
仕様の数や内容じゃねぇのけ?
OOって単なる実現手段で工数決める場に出てこないし
ってことは使っても使わなくてもなんもお金に影響ないってことだよね
0673デフォルトの名無しさん2009/05/28(木) 00:14:35
SEなんて営業にハクをつけるために作った言葉じゃん。
プログラム書けないのも当り前だよ
仕様も理解できないから工数とかも客の言いなりになってる奴も結構いるよ
0674デフォルトの名無しさん2009/05/28(木) 00:24:38
つか、工数は多く見積もって、少ない工数で作り上げるものなんちゃうの?
0675デフォルトの名無しさん2009/05/28(木) 00:30:49
>>674
だから少なくならないって
仕様を箇条書きで書き出して一つ一つOOで工数が削れるものをピックアップしてみろ
おそらく1つもないはず
0676デフォルトの名無しさん2009/05/28(木) 00:31:26
>>672
お前安価間違えてないか?

OO設計とプログラミングを混同してる奴って・・・
論点をずらすなよ
0677デフォルトの名無しさん2009/05/28(木) 00:34:19
>>676
俺はOOはどうせ使うなら仕様書で見える概念を
ソースにまでクラスって形でもっていけるのが唯一の利点だと思ってるから
同じだと思うし同じでないとメリットないと思うけど
君は違うの?
違うってことはソースと仕様書に大きく乖離があるってことだから多分君は設計が下手糞なんじゃないかな?
0678デフォルトの名無しさん2009/05/28(木) 00:46:59
> 俺はOOはどうせ使うなら仕様書で見える概念を
> ソースにまでクラスって形でもっていけるのが唯一の利点だと思ってるから
> 同じだと思うし同じでないとメリットないと思うけど
本気でそう思ってるならもう一度勉強し直してこい。
0679デフォルトの名無しさん2009/05/28(木) 00:52:35
>>672
> OOって単なる実現手段で工数決める場に出てこないし
そりゃそうだ。

> ってことは使っても使わなくてもなんもお金に影響ないってことだよね
同じお金もらえるんなら、工数少なくてすむ実現方法の方がいいよね。
0680デフォルトの名無しさん2009/05/28(木) 00:55:20
>>675
設計に失敗して、火を吹いてるプロジェクトは結構見かけるが。
06816802009/05/28(木) 01:01:58
OO使わなくても、きちんと設計されてるのならそれでいいんだろうけど、
設計するのならOOは有効な設計ガイドラインだと思うよ。
0682デフォルトの名無しさん2009/05/28(木) 01:12:13
どうでもいいけど、はやく消えてなくなれよ、オブジェクト指向なんて。
人類の負の遺産だわ。不良債権処理しなきゃ。
0683神と言われたヲトコ ◆vBOFA0jTOg 2009/05/28(木) 01:28:51
OOイラネっていっている奴は数十万ステップとか数百万ステップのコードを開発したことないやつだろ。
0684デフォルトの名無しさん2009/05/28(木) 01:37:44
神ならOOなんていらねえだろw
1億ステップのスパゲッティコードにバグ一つ入らん
0685デフォルトの名無しさん2009/05/28(木) 01:50:52
>>683
人力車が現れたときの駕籠かき、タクシーが現れたときの車夫。
酸っぱい葡萄だよ。
0686デフォルトの名無しさん2009/05/28(木) 03:10:32
>>667
お前はOOなんて使わなくても今まで業界でやってきて見積り精度にも
自信があるんだろうが、お前の下についた若いプログラマは
「プロジェクト仕切ってる上司が時代遅れすぎてありえねぇ。無駄な作業多すぎて鬱」
って2ちゃんねるで愚痴ってるかもしれないぞ。
0687デフォルトの名無しさん2009/05/28(木) 03:53:50
ここで今愚痴ってる奴は底辺ですよ
おれ無職だから説得力あるよね
0688デフォルトの名無しさん2009/05/28(木) 04:29:43
>>672
設計することと理解することは全く別。
今時OOで書かれたプログラムを読んで理解出来ない奴を雇っていることこそが
非効率の元凶であってOOが問題ではない。
0689デフォルトの名無しさん2009/05/28(木) 07:47:18
>>672
> OO使って組んだら理解できる人間が少なくなるならそれは単に非効率なだけだろ

逆だ。クズPGを排除することで効率化が実現される。

プロジェクト管理の肝は、できないPGが足を引っ張るのに対してどう対処するかにある。
できないマネージャーはできないPGを教育しようとしたり、できないなりの仕事をさせる。
一方で、できるマネージャーはチーム内からできないPGを排除する。
すると、マネージャーもできるPGも快適に作業を進めることができる。
0690デフォルトの名無しさん2009/05/28(木) 09:22:33
>>689
>クズPGを排除することで
そして誰もいなくなった、的な。
0691デフォルトの名無しさん2009/05/28(木) 09:28:28
> 俺はOOはどうせ使うなら仕様書で見える概念を
> ソースにまでクラスって形でもっていけるのが唯一の利点だと思ってるから

このパターンだよな。この手の人が気軽にOO批判する。
0692デフォルトの名無しさん2009/05/28(木) 09:47:42
おまいら OOがどうこう言ってる奴
まずオブジェクト指向が何なのか説明汁 ボケ!
0693デフォルトの名無しさん2009/05/28(木) 09:51:31
  ハ,,ハ
 ( ゚ω゚ )  >>692お断りします
_(__つ/ ̄ ̄ ̄/_
  \/     /
0694デフォルトの名無しさん2009/05/28(木) 10:36:15
>>692
ググレカス
0695デフォルトの名無しさん2009/05/28(木) 10:40:41
>>690
いるいる。チームから気に入らないPGを排除して自分勝手に進めるやつ
プロジェクトが成功すればいいけど、失敗したら何も残らない…
0696デフォルトの名無しさん2009/05/28(木) 11:27:51
おまえら オブジェクト指向でプログラムするとき
どんな言語使ってる?
0697デフォルトの名無しさん2009/05/28(木) 11:33:25
クズPGはooというか言語仕様を活用しまくってる複雑なソースにはさわれんが、
単価の安いPGなんて、そんなのばっかりだろ。

出来る人にベースを作らせて、クズPGにはooとか意識させずに「この手順でやってください」
手順を明示しても出来ないクズは流石に切った方がいい
0698デフォルトの名無しさん2009/05/28(木) 12:18:07
設計はプロパーがやります。協力会社の方はコーディングだけしてください。
というような変な分業体制作っちゃったから日本の技術力が落ちたんだけどね。
0699デフォルトの名無しさん2009/05/28(木) 12:39:50
建築家と大工を分業しているのに日本の建築技術は世界一ぃぃ
何でだ?
0700デフォルトの名無しさん2009/05/28(木) 13:03:35
日本に限らず、依存性逆転なんて言ってるやつらは
コーディングしやすさを考えて設計したら駄目
と思ってんじゃねーの
0701デフォルトの名無しさん2009/05/28(木) 15:04:13
>>699
プログラミングにおいて設計変更は日常茶飯事だからな。
一部金融系なんかの仕様書ガチガチな業務システムを除いては
設計しながらコーディングというのがあるべき姿であって、
分離する事自体が間違い。

つーか日本のブルーカラーの勤勉さは世界一と言っても過言じゃないぞ。
その代わり給料もそれなりにもらってるがな。
0702デフォルトの名無しさん2009/05/28(木) 15:06:19
日本にはブルーもホワイトもないと思う。
0703デフォルトの名無しさん2009/05/28(木) 15:24:25
仕様書ガチガチだと、プログラミング段階ではオブジェクト指向の恩恵を感じにくいかもなー
0704デフォルトの名無しさん2009/05/28(木) 15:27:31
それはあるだろうね。
0705デフォルトの名無しさん2009/05/28(木) 17:52:17
>>693 >>694
お前ら本当に"オブジェクト指向"をちゃんと定義できるの?

俺が今まで見た中で一番マトモなオブジェクト指向の定義はこれだが
ttp://practical-scheme.net/trans/reesoo-j.html
はっきり言ってこんなの未定義と不定と実装依存を足して3で割ったようなもんだと思う

もっと見事な定義ができるとか、ググればマトモな定義が見つかるっていうなら
是非見せてもらいたい。
0706デフォルトの名無しさん2009/05/28(木) 18:00:58
>>705
それよりよほどましな定義
http://e-words.jp/w/E382AAE38396E382B8E382A7E382AFE38388E68C87E59091.html
0707デフォルトの名無しさん2009/05/28(木) 18:01:23
    ___
    /    \       ___
  /ノし   u;  \   ;/(>)^ ヽ\;
  | ⌒        ) ;/  (_  (<) \;
  |   、       );/   /rェヾ__)⌒:::  ヾ;     はっきり言ってこんなの
  |  ^       | i   `⌒´-'´  u;  ノ;;     未定義と不定と実装依存を足して
  |          | \ヽ 、  ,     /;      3で割ったようなもんだと思うお
  |  ;j        |/ \-^^n ∠   ヾ、
  \       / ! 、 / ̄~ノ __/ i;
  /      ⌒ヽ ヽ二)  /(⌒    ノ
 /       r、 \ /  ./   ̄ ̄ ̄/
0708デフォルトの名無しさん2009/05/28(木) 18:09:28
>>706
その定義はC++やJavaなどに毒されているんじゃないか
オブジェクトに対するメッソッドじゃなくて
オブジェクト間のメッセージが本流だろ
0709デフォルトの名無しさん2009/05/28(木) 18:19:33
有名なまとめ
http://d.hatena.ne.jp/sumim/20040525/p1
0710デフォルトの名無しさん2009/05/28(木) 18:28:37
>>709を読むと、>>642がいかにAlan Kayの言う「オブジェクト指向」に
毒されているのが良く分かるな。
0711デフォルトの名無しさん2009/05/28(木) 18:35:37
オブジェクト指向の定義を決めるところから始めなきゃいけないのか
0712デフォルトの名無しさん2009/05/28(木) 18:52:15
>>710
逆だろw >>642がイメージしているのはKay的OOとは正反対だ。
0713デフォルトの名無しさん2009/05/28(木) 19:05:10
俺定義:
オブジェクト指向:ツリー型
0714デフォルトの名無しさん2009/05/28(木) 19:12:34
>>712
それはまったく違うぞ。
>>642の脳内での「オブジェクト指向」の定義はKay的OOだが、
オブジェクト指向「プログラミング」はC++的なものだと思ってるってことだ。
0715デフォルトの名無しさん2009/05/28(木) 20:31:55
"メッセージ"とかご大層なもののように言うけど、単に遅延束縛だろ。いや、ちがう、メッセージとはメタファーでゴニョゴニョとか言うなよ、あくまでプログラミングが便利になる機能かどうかの話だからな。
0716デフォルトの名無しさん2009/05/28(木) 20:37:05
メッセージなんて単にシンタックスシュガーに過ぎん。所詮は関数呼び出し。
0717デフォルトの名無しさん2009/05/28(木) 21:09:35
>>715
> "メッセージ"とかご大層なもののように言うけど、単に遅延束縛だろ。
うんにゃ、メッセージってのは、「ノイズも含めて」ただの信号だ
信号処理系をどうデザインするかは、手法によって変わるんだろうけど

少なくともOOAとかOODって言ってる奴等は
「ノイズも信号のうち」
って、当たり前の事実が分かってない

0718デフォルトの名無しさん2009/05/28(木) 21:11:26
メッセージってどうやって送んの?>>716の言うように関数呼び出し?
0719デフォルトの名無しさん2009/05/28(木) 21:14:03
>>718
単なる関数呼び出し。Objective Cのコードとか見てみろって。
0720デフォルトの名無しさん2009/05/28(木) 21:14:27
>>717
うけねらい?それともOO信者お得意のメタファー?
ネタなら、ごめん。意味分からん。
たとえ話なら、そんなのいいからプログラミングの機能の話がしたい。
0721デフォルトの名無しさん2009/05/28(木) 21:22:30
>>720
OO信者というより、通信理論や信号処理をかじった奴が能書き垂れてるだけだろ。
とんだお笑いものだがな。
07227172009/05/28(木) 21:24:39
>>720
いや、厳然たる事実

OOA とか OOD とかやってる連中って、やたら例外を作る
「ノイズも信号のうち」と考えてデザインすると
物事はもっと簡単になったりする

# もとハード屋のつぶやきだ
0723デフォルトの名無しさん2009/05/28(木) 21:36:16
>>722
じゃあどう簡単になるのか設計の具体例を挙げてみてよ
0724デフォルトの名無しさん2009/05/28(木) 21:57:14
722じゃないが
nullで例外出さないでNullableで演算を最後まで通してしまうとかかな
07257172009/05/28(木) 22:38:47
>>724
ソフト的に考えたらそうなんだろうけど

ノイズそのものも評価対象にいれるってゆうか…

ハードつくる場合って例外事象への対応はとってもコストが
かかるんで、伝達関数書くときに外乱を意味する変数を作って、
それも一緒に処理の中に含めるってゆうか…

外乱とかノイズとかも最初から入力の一つの要素として扱う
ってのが、賢いハード屋
0726デフォルトの名無しさん2009/05/28(木) 22:52:03
>>725
だからソフトウェア開発でお前の言った方法論が適用出来る具体例を挙げろよ
07277172009/05/28(木) 22:54:55
だからゆってんじゃん
例外扱いしなきゃいいって
0728デフォルトの名無しさん2009/05/28(木) 22:57:51
言ってねーだろうが

具体的に何を例外扱いせずにどう処理するんだよ
07297172009/05/28(木) 23:08:14
>>728
例外事象も入力のうちって捕らえたら
out = f (in, exception-case)
の関数だよな. 内部の状態は適当に隠蔽するとして…

後はカリー化して1入力-1出力の関数になるだろ?
0730デフォルトの名無しさん2009/05/28(木) 23:09:03
>>699
製造業や建設業における設計が、ソフトウェアでは設計+実装に当たるから。
ソフトウェア産業での「製造工程」ってのは、ビルドフェーズになる。
つまり、既に自動化されている。
0731デフォルトの名無しさん2009/05/28(木) 23:10:42
例外モナドですねわかります
0732デフォルトの名無しさん2009/05/28(木) 23:30:30
nullをNullableで通すっていうのは、maybeモナド
0733デフォルトの名無しさん2009/05/28(木) 23:37:20
exception handling considered harmfulとかありそうで無い
0734デフォルトの名無しさん2009/05/28(木) 23:53:16
>>729
だから入力がfで処理できないようなものだったらどうするのか、ってことなんだが。
0735デフォルトの名無しさん2009/05/29(金) 00:06:34
>>732
C#だとNullableがあってもRoundなどNullable用のメソッドがないから
自分で作っていたが
もしかしてMaybeモナドってそんなことしなくてすむようになるんかな
だとしたらHaskellすごい
0736デフォルトの名無しさん2009/05/29(金) 00:06:38
>>729
で、それがオブジェクト指向とどう関わりがあるんだ?
0737デフォルトの名無しさん2009/05/29(金) 00:11:44
OOってさ、データ構造と手続きを一緒にして何が嬉しいの?
カプセル化?データ構造や内部関数の隠蔽ならMLのモジュールでもできるよ。
逆にデータ構造と手続きを分離できないから、visitorパターンなんていうばかばかしい
テクニックを使わなきゃいけなくなる。
データと手続きを一緒にする意義ってあるの?正直ナンセンスだよ。
0738デフォルトの名無しさん2009/05/29(金) 00:20:18
オブジェクト指向って意味がわかんないんですけど、
サブルーチンのカタマリにしてくってことですか?
0739デフォルトの名無しさん2009/05/29(金) 00:23:32
>>737
カプセル化だけがOOだと思ってるなら勉強不足にも程がある
0740デフォルトの名無しさん2009/05/29(金) 00:25:13
そうそう、そんな感じ。実際にはもっと難解で無意味だから近寄らないほうがいいよ。
おっと、こんな時間にだれかk(ry
0741デフォルトの名無しさん2009/05/29(金) 00:25:57
>>737
データと手続きを分離した場合、無制限に操作を許すと
「システムとして有り得ない状態」を作り出しやすいんだよね。
もしくは、状態を多数つくって管理が破綻するとか。
敢えて制限をかけることで制御のし易さを得ることができるというわけ。
0742デフォルトの名無しさん2009/05/29(金) 00:26:33
構造化言語や構造化設計の経験からOOやOOPに入ったら。
OOの方がいいと思うけど。OOから入った人は、OOが当たり前に有るから。
その欠点しか見えないかもしれないね。これもゆとりの・・・
0743デフォルトの名無しさん2009/05/29(金) 00:26:47
>>739
OO信者最強の武器「勉強不足」www
0744デフォルトの名無しさん2009/05/29(金) 00:27:47
>>741
ジェネリックプログラミングは型の型による制約で分離しつつもそれを防いでいる
0745デフォルトの名無しさん2009/05/29(金) 00:30:13
>>743
アホか?信者じゃねーぞ
批判するならOOを知った上でないと>>737みたいな勘違い批判になるってことだ
0746デフォルトの名無しさん2009/05/29(金) 00:34:04
カプセル化は結果だと思っている
0747デフォルトの名無しさん2009/05/29(金) 00:37:59
>>745
737は勘違いなのか?データと手続きは分離したままで、「システムとして有り得ない状態」
が出ないように隠蔽できるというMLの型システム(モジュール)を知っての上での批判だと思うが。
0748デフォルトの名無しさん2009/05/29(金) 00:38:22
>>744
ジェネリックプログラミングとOOは排他的な概念じゃなかろうもん。
0749デフォルトの名無しさん2009/05/29(金) 00:43:41
MLでも依存型とか型族持ってこない限り力不足は否めないけどな
その意味ではコンストラクタとデストラクタ間で制約を設けられるような類のOO言語の方が有利な場合もある
0750デフォルトの名無しさん2009/05/29(金) 00:45:50
>>747
そんなことは言っていないぞ。

MLのモジュールシステムは基本的に関数やデータタイプを個別の名前空間に閉じ込める
だけだから、「システムとして有り得ない状態」を防げるわけではない。

> データと手続きを一緒にする意義ってあるの?正直ナンセンスだよ。
なんて言う時点で勘違い。
0751デフォルトの名無しさん2009/05/29(金) 00:48:52
>>749
力不足というのは同位
>コンストラクタとデストラクタ間で制約を設けられるような類のOO言語の方が有利
ここ、もちょっとkwsk
0752デフォルトの名無しさん2009/05/29(金) 00:52:39
>>750
>MLのモジュールシステムは基本的に関数やデータタイプを個別の名前空間に閉じ込める
>だけだから、「システムとして有り得ない状態」を防げるわけではない。
そこまで知ってるなら、なぜシグネチャーを知らない?
■ このスレッドは過去ログ倉庫に格納されています