オブジェクト指向システムの設計 173 [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2017/08/08(火) 17:52:14.38ID:4Kd2O+xB
前スレ
オブジェクト指向システムの設計 172
http://mevius.2ch.net/test/read.cgi/tech/1467992113

類似スレ
手続き型システムの設計 1
http://mevius.2ch.net/test/read.cgi/tech/1500282714
2017/09/16(土) 12:21:42.56ID:FAEJW2nX
>>396
じゃあイメージしている人に対して説明すればいいだろ?
お前が説明しないのが問題だって言ってるんだから
2017/09/16(土) 12:25:21.02ID:hF16Uo8A
前から疑問だったんだけど「あらゆる意思決定の遅延」の話がなんで「無停止デプロイ」の話にすり替わってんの?
全く別の話だよねこれって
2017/09/16(土) 12:35:04.15ID:FAEJW2nX
>>395
> 現代のOSは複雑だから
結局そこなんだよな

システムが巨大でインターネットを介して世界中にの複数台の
サーバーで一つのシステムを構成してるっていうのは
昔の一台の構成のコンピュータでアプリを動かすのとは訳が違う

せめて遅延結合とかメッセージとかじゃなくて、
処理の非同期実行と呼んでいれば、ウェブサービス=クラス
サービスを実行してる仮想マシン=インスタンスと無理やり
結びつけることも出来たかもしれないね。言葉は重要だw

でも非同期実行だと、サーバーが再起動したとしても最終的に処理できればいいわけで
アランケイが本当に目指していたことである、プロセスを再起動せずに更新反映は
必要ないってことになっちゃうかw

まあすべてを非同期にする必要はないだろうけど、要所要所で
非同期で処理しておけば、システムの更新もしやすくなるんやで
2017/09/16(土) 12:40:46.80ID:FAEJW2nX
>>398
> 全く別の話だよねこれって
結局のところ、意思決定の遅延が何をもたらすのかを
説明できてないのが原因だろうねw


あらゆる意思決定の遅延
→それがあると何ができるか?
→プロセスを停止せずに変更が可能 (ここが一番重要)
→停止して変更すればよくね? (これにうまく反論ができない)
→停止するとつかえなくなる時間がー (苦し紛れの理由)
→それらはデプロイ技術で解決できること
2017/09/16(土) 12:49:12.64ID:0nrSN7bk
>>400
アラン・ケイの主張なんだからとりあえず彼が書いたこれを読もうよ
http://squab.no-ip.com/collab/uploads/61/IsSoftwareEngineeringAnOxymoron.pdf
それから解らないことを具体的に訊いてけばいいと思うよ
2017/09/16(土) 12:50:38.87ID:FAEJW2nX
>>401
読んだ。で?
2017/09/16(土) 12:51:58.36ID:FAEJW2nX
わからないことは何も無いが、俺が勘違いしている可能性はある。
だが勘違いしている俺には、その事実がわかるはずもない。

だから他人から見て間違っているというのであれば
それを説明しろって言ってるだけなんですがーw
2017/09/16(土) 12:58:19.60ID:hF16Uo8A
>>400
→それがあると何ができるのか
→プロセス停止しないで変更可能(ここは全然重要じゃない。無停止デプロイは副次的な効果のうちの1つでしかない)

正しくはこうだろう
ここから間違えてるから議論が明後日の方向に突き進んでる
2017/09/16(土) 13:00:21.80ID:FAEJW2nX
いや、だから副次的な効果ではなくそれ以外の真の効果(なにそれ?)が
言えないのが問題だって言ってるんだが。

間違ってる場所を指摘するだけじゃなくて正しい効果とやらを言えよ
だからいつもデプロイ技術で解決できちまうんだよ。
2017/09/16(土) 13:03:13.48ID:FAEJW2nX
ちなみにさっきも言っているが「変更」自体はプロセスを停止して
リセットすることで、行うことができる。

そのリセットにかかる時間はデプロイ技術で短くなってきており
リセットしないまま慎重に時間をかけて変更するよりも、
変更してリセットしてセーブポイントから再開した方が早い

アランケイはリセットしたほうが早いというのを
計算に入れることができなかったんだろうね
2017/09/16(土) 13:11:46.44ID:hF16Uo8A
正しい効果なんてとっくに明確になってるだろ「意思決定を遅延させることができる」
そのまんまだよ

データベーススキーマが完成するまでアプリケーションの開発チームは何もせず待機するのか?
そうじゃないだろう
普通はモックやスタブを使ってアプリケーションを開発する
これはデータベーススキーマに関する意思決定を遅延したということだ

そしてこういった意思決定の遅延を普遍的なモデルとして再考してあらゆる問題に適用しようぜというのがメッセージ指向の本質
無停止デプロイの話なんてどこにも出てこないんだよ
無停止デプロイはメッセージ指向を応用すれば簡単に実現できるね程度の枝葉の話だ
2017/09/16(土) 13:12:37.99ID:FAEJW2nX
「意思決定を遅延させることができる」
→それがあると何ができるか?
→プロセスを停止せずに変更が可能 (ここが一番重要)

ほらまた同じ流れw
2017/09/16(土) 13:15:03.01ID:FAEJW2nX
>>407
> データベーススキーマが完成するまでアプリケーションの開発チームは何もせず待機するのか?
> そうじゃないだろう
> 普通はモックやスタブを使ってアプリケーションを開発する
> これはデータベーススキーマに関する意思決定を遅延したということだ

データベーススキーマに関する "本物の実装" を遅延させただけ
データベーススキーマに関する "意思決定はなされた" からこそ
モックやスタブという "偽物の実装" を遅延させずに早期に開発することが可能なった

これが正しい解釈だからねw
2017/09/16(土) 13:25:28.76ID:FAEJW2nX
> 無停止デプロイの話なんてどこにも出てこないんだよ

それがでてくるんだよなぁ。
停止して良いのならば、静的型付け言語でコンパイルして完全に型が
決定していようとも、再コンパイルすることで変更することができる。
停止していいならばね。

だからプロセスを停止するかしないかだけが焦点となってしまう。
2017/09/16(土) 13:28:34.44ID:6N2IGxKU
世界改変のためには一度世界を滅ぼす必要があるのか!
2017/09/16(土) 13:31:13.63ID:FAEJW2nX
安心しろ。世界を滅ぼさなくても一部だけを修正すればいいだけだ。

そしてソフトウェアは世界じゃない。
止めてリセットして同じところまで再開することが可能なのに、
わざわざ止めずに修正する必要なんて無いんだよ。
2017/09/16(土) 13:36:49.70ID:hF16Uo8A
だめだこりゃ
話を聞かない人間に物事を理解させることほど難しいことはない
2017/09/16(土) 13:38:39.88ID:FAEJW2nX
そりゃお前が「物事を他人に理解させるための説明」を
何一つしないからだな。

「話を聞かない」の前に、お前の話はどれだよ?ちゃんと反論してるだろ
その俺の反論した話を聞かないのはお前だろ
2017/09/16(土) 13:46:23.09ID:gf/ZkNkm
この議論はID:FAEJW2nXのほうがまともだね。
2017/09/16(土) 13:46:23.43ID:u+EwIGwO
優越コンプレックス餓ひどい奴がいるな
かわいそうに
2017/09/16(土) 13:48:02.25ID:FAEJW2nX
一応>>416は俺ではないことを示しておこう
2017/09/16(土) 13:51:47.58ID:gf/ZkNkm
>>407
意思決定が遅延できることには価値があるけど、それにはトレードオフが伴う
それを理解せずに普遍的なモデルとしてあらゆる問題に適用しようぜって言ってるうちは
世迷いごとと言われて当然

まずアラン・ケイの主張に対して自分たちのスタンスを明確にしたら?
困ったら「アラン・ケイの主張なんだから」じゃ議論にならんよね
2017/09/16(土) 14:03:12.81ID:gf/ZkNkm
もう一つ言っとくと無停止デプロイの類は
入れ替え可能なコンポーネントについて事前に意思決定してるからできる事なんだよ
遅延可能な意思決定の範囲ついて事前に意思決定をしてる

アラン・ケイがトレードオフについて理解できてないとは俺は思わないけどね
2017/09/16(土) 14:12:17.50ID:FAEJW2nX
全てがオブジェクトが入れ替え可能というふうに
事前に意思決定をしているアラン系(笑)
2017/09/16(土) 14:50:07.64ID:amUiv1H5
開発プロセスを止めて意思決定を待つ必要が無いってことなら大きいな

運用中のシステムを一時停止する話とは全然違う
2017/09/16(土) 14:52:50.48ID:/gVs+HA3
自分だけは常に正しいという前提
2017/09/16(土) 14:55:11.70ID:FAEJW2nX
>>421
もう一回言っておくね。
例えばC言語で、完成してないモジュールを勝手に定義して
自分の担当のモジュールを作ることは出来ます。

止めれば良いのだから、モジュールが完成してから
再コンパイルして変更することも出来ます。

これがあなたが言ってる「意思決定を待つ必要がない」と
いうことそのものです。
2017/09/16(土) 14:56:16.78ID:FAEJW2nX
これからは開発プロセスを止めて意思決定を待つ必要が無いという開発を
>423のことと定義しましょう。実際その通りなのですからね。
2017/09/16(土) 15:18:35.50ID:0nrSN7bk
なんかこいつ>>307っぽいな
端から理解する気なんかないくせに難癖付けて絡んでくるの
相手するだけ時間の無駄
2017/09/16(土) 15:27:55.42ID:KTBQzRbQ
そもそも立ち位置がアンチ「アラン・ケイ」&「Smalltalk」だから
それらに関係しそうな主張はいっさい聞く耳もたないし
もしかしたら思考も意識的に停止させてるっぽいから
説明尽くしても届かない
2017/09/16(土) 15:49:34.15ID:gf/ZkNkm
>>426
少なくとも俺はアラン・ケイを尊敬してるよ。
アスキーのアラン・ケイ本を何度も読み返すくらいにはね。

以前の議論はともかくとして今日の議論は
ID:0nrSN7bk や ID:hF16Uo8A より
ID:FAEJW2nX のほうが言ってることがまとも

議論から逃げて個人攻撃するしかできないのなら
端から難癖つけて絡むやつと同レベルだよ
2017/09/16(土) 15:57:16.09ID:FAEJW2nX
>>425
お前のそのレスは、難癖つけてるだけか?
それとも議論か?よく考えたほうが良いよ
2017/09/16(土) 16:39:45.47ID:2BjiIsa6
スマホまで使ってご苦労なことだ
2017/09/16(土) 17:18:39.42ID:0nrSN7bk
>>418
別に困ったからじゃない
アラン・ケイの主張なんだからアラン・ケイの主張を読み解くところから始めようというだけ
2017/09/16(土) 17:42:14.48ID:FAEJW2nX
>>430
教祖様の主張なんだから教祖様の主張を読み解くことから始めようという言い方で
無宗教の人を勧誘する行為はマヌケだなって思わない?

そんな宗教に入りたくもないのに、なぜ自ら洗脳されるために勉強しなければらないのか?
まずは信者のお前が、どういう宗教なのかを自分の言葉で語るのが最初だろ

読めばお前も信者になるはずだっていう考えは
すごくマヌケだよw
2017/09/16(土) 17:47:16.58ID:0nrSN7bk
>>427
ID:FAEJW2nX ほどの人物ならちゃんと読んで咀嚼しようと試みれば疑問はいくらでも出てくるはずなのに
読んでもいっさい疑問はないとつっぱねる

>>307だと分かった時点で、俺はいっさい相手をするつもりはなかったけれど、それと知らずに
善意の ID:hF16Uo8A が >>407 でアラン・ケイが挙げているよりもっとイメージしやすいところを挙げてくれているのに
それに対してだってとんちんかんな反応を繰り返すだけ

これ以上、なにをどうせいっちゅうんじゃ?
2017/09/16(土) 18:04:49.40ID:FAEJW2nX
>>432
なんで疑問が出るんだ?お前は疑問が出てるのか?
読んだら誰だって疑問が浮かぶはずだと思ってるのか?
どういう理屈なんだそりゃw

当時の時代背景ではそうだっただろうね。
今当てはまってないのは、時代が変わったからだね
という納得しか無いわw

> >>307だと分かった時点で、
「俺は相手が誰だか見抜きました。すごいだろー」
っていうのは今の議論に何の関係があるんだ?
それこそどうだって良いことだろ

> これ以上、なにをどうせいっちゅうんじゃ?
アランケイを読んだ上で、俺独自の意見を言ってるんだから
それに対して反論してくれればいい。お前すべて見なかったことにしてるだろw
俺が理解してないというのなら、理解していないならばこそ俺の意見に穴があるはずだろ?
その穴をお前はつけばいいだけなのに「教祖様の話を聞けば改宗するはず」と繰り返してるだけ

えとな、自分の言葉で説明できないのは、理解してないからなんやで?
2017/09/16(土) 18:18:55.20ID:0nrSN7bk
「オブジェクト指向」には抽象データ型をクラス等で実現するストラウストラップのそれとは別にアラン・ケイのそれがある
よくメッセージングで象徴されがちだけど、「決定の遅延の徹底」という真の目的まで言及されないことが多いから要注意な
ってなことを紹介してるだけなのにどうして宗教の押しつけだの教祖がどうのこうの難癖つけられるのかわからん

「カプセル化、継承、多態性」に象徴されるストラウストラップの考え方を紹介するとこれも宗教なのか?

むしろアンチという宗教の押しつけをやめてほしいわ
2017/09/16(土) 18:19:21.66ID:FAEJW2nX
> 「決定の遅延の徹底」という真の目的まで

それは目的じゃない。手段
2017/09/16(土) 18:21:11.83ID:FAEJW2nX
「決定の遅延の徹底」ではなく「決定の遅延の撤廃」と言い換えれば、

決定の遅延の撤廃が真の目的だ!と言われた時に
お前はなんで?って聞き返すだろ。
これは目的じゃなくて手段だからだ。
2017/09/16(土) 18:37:56.50ID:FAEJW2nX
わずか30秒の速攻レスにもうお手上げかなw
速攻でレスしたんだから、気づいてないはず無いよね

早く決定の遅延を徹底する目的
何のために決定の遅延を行うのかってのを
言ってほしいものなんですがね

まあここまでいくつも出た目的をさんざん打ち破ってきたので
これ以上目的が思いつかないってのもわかりますがねw
2017/09/16(土) 18:58:32.38ID:0nrSN7bk
つくづく独りよがりの哀れなやつだな…きっと長生きするよ
2017/09/16(土) 18:59:50.46ID:FAEJW2nX
ほんと議論する気ねーのなw
そのくせそんな書き込みだけはすると
2017/09/16(土) 19:09:37.99ID:hF16Uo8A
決定の遅延の目的はシンプルで明確だよ
システム開発において「依存元に着手する時期 <= 依存先が解決する時期」という不等式は必ずしも成立しない
むしろ社内政治の都合で不等式が成立しないことの方が圧倒的に多い
これはコーディングフェーズだけの問題ではなく企画から運用まで様々なフェーズで起こりうる問題
依存関係木の葉から順番に問題を解決するやり方ではとてもじゃないが納期には間に合わない
なので依存先の解決を待たずに依存元の解決を可能にして並列に処理しなければならない
そのためには決定の遅延を導入する必要がある
2017/09/16(土) 19:15:16.87ID:FAEJW2nX
>>440
コーディングフェーズの話をしてくれ

単に仕事をする上で仕様等が決まっていなくても
こうなるだろうという仮の"決定"を行って
先に作業をすすめる。あとで本当に決まった時に
仕様変更するという話にしか聞こえん

それだと別に静的型付け言語でコンパイルするようなものでも
仮の仕様を先に決定して、あとから修正することも可能だろ
2017/09/16(土) 19:18:50.27ID:FAEJW2nX
一般論の話をすすめるのなら、契約が済んでいなくても
待ち時間を無駄に過ごすぐらいなら、先行して作業することが有るだろう
だけど契約することなく終わってしまえば、その作業は無駄になる。
トレードオフの話になってしまって、決定の遅延は必ずしも正解ではなく
徹底するのはやめた方がいいという当たり前の結果になる。

で、まだこのまま一般論の話を続ける?
当てはまらなくて意味がないから、
さっさとコーディングベースの話をしてほしいんだが
2017/09/16(土) 19:19:11.35ID:0nrSN7bk
せめて「疎結合システムは言語レベルで実現するものではない」とかいう的外れな拘りから離れられない限り議論なんて無理

もっともその縛りを解いたら、ケイの書いている「決定の遅延の徹底」のメリットの例に疑問も異論はないんだろ?
議論しようにも争点が見当たらないよ
2017/09/16(土) 19:20:06.21ID:0nrSN7bk
コーディングベースの話がしたいなら次世代言語スレでも行けば?
2017/09/16(土) 19:20:10.55ID:FAEJW2nX
>>443
だから、俺が言った(?)言葉を再掲して終わりじゃなくて
それに対してお前の意見を言えよw

お前の意見じゃなくて俺(?)の意見を、
お前が言ってるだけじゃねーかw
2017/09/16(土) 19:21:08.54ID:FAEJW2nX
>>444
じゃあ何の話をしたいんだよw

一般論の話で決定の遅延はトレードオフなんだから徹底するものではないと
いったはずだぞ。読んでないのかもしれないが。
2017/09/16(土) 19:52:57.54ID:RZXlyLKz
ああ分かった分かった「徹底」にひっかかってんのね
「徹底」っていうのは文字通り「底まで貫き通す」という意味以外にも
慣用的には努力目標(この場合はそれよりちょっと強めだけど)とする場合もあるんだよ
適用不可能と思われる局面でもそれを克服するために工夫するということはあっても
あきらかに適用したらダメな局面にもバカみたいに例外なく貫き通すって意味じゃあない
生きるのつらくない?
2017/09/16(土) 19:53:51.63ID:hF16Uo8A
>>442
もちろんコストとメリットのトレードオフはあるがそれはコントロールできるもの
そして評価は統計的な視点で行うべきだ
あまりにも期待値が低いなら無理に利用する必要はない

例えば「契約が取れるかどうかもわからないのに完全な納品物を作る」という決定の遅延は期待値が低いので避けるべきだ
あるいは「同じ取引先の別案件が成功して本案件の契約が取れる見込みが高まったので技術的な調査とテンプレート作成に限定して先行着手させる」という決定の遅延ならば期待値が高いので採用してもいいだろう

その辺りはバランスの問題だな
なんらかのリスクがあるから決定の遅延は絶対にダメだなどというのはあまりにも思慮に欠けるよ
2017/09/16(土) 19:58:03.28ID:FAEJW2nX
やっぱり一般論の話の方をしたいのか(苦笑
オブジェクト指向とは全く関係ないな
2017/09/16(土) 20:11:50.81ID:FAEJW2nX
なんか話がアランケイの話から
オブジェクト指向にすり替えられようとしてるな
気づいてよかった

>>387
> できたらアップデートするアプリケーションも再起動しないで済む仕組みだとなおいいね
結局それはトレードオフの問題だからね。

アプリを修正したら即反映できるかっていったらそうとは限らない。
メモリ内のデータ構造の変更が必要になることが有る。

だから単純にオブジェクトを入れ替えるだけではなく
データ構造的に互換性がある形にするか
新旧両方のデータ構造に対応させるか
データ構造の変換機能(マイグレーション)が必要になる。

で、それが面倒だから本当に永続化しなければいけないものを限定して保存することで
再起動してそれ以外の重要ではない部分を破棄させる。

だからOSや言語だけで対応できることじゃないんだよ。
今でもやろうと思えばできるが、コストがかかるからやらないってこと
2017/09/16(土) 20:21:12.24ID:FAEJW2nX
要点だけ言っておくと、アランケイが目指したシステムっていうのは
当時の世界観でのシステムであり、当時の世界観の
システムっていうのは言語そのものだった。言語がOSだと言っても過言じゃない。

だからアランケイが目指したシステムは今では言語で実装するものではなく
OSやアプリケーションレベルで実装したほうがよい。

アランケイが目指した再起動なしにオブジェクトを入れ替えられるという機能で
実現したかったものは、オブジェクトよりも大きな単位であるアプリケーション
・サービス・OS・仮想マシン・コンテナなどの単位で入れ替えることで実現できるようになった
2017/09/16(土) 20:59:57.74ID:8gG27N70
>>450
> メモリ内のデータ構造の変更が必要

やっぱ読んでないんじゃん…
2017/09/16(土) 21:08:35.29ID:AcW1bn43
>>440
アランケイの文脈から外れるけど
依存関係逆転とかはOOの原理のひとつだし
修正しやすいのはOOのメリットだと思う

>>441
Javaのインターフェイスと
Rubyのダックタイピングじゃ
修正の柔軟性が違ってくる
2017/09/16(土) 21:15:27.53ID:AcW1bn43
>>451
そうだよ
アランケイの遅延決定の話は
OSレベルまで射程範囲がある

だけどだからこそ本当に
理論が実現できるかは別の話で
Smalltalkのシステムを現代のOSに
そのまま適用できるかというと大いに疑問

あのままだと動的で自由過ぎて
収拾がつかなくなりそうな予感がする
2017/09/16(土) 21:19:29.29ID:FAEJW2nX
>>452
だから自分の意見を言えって
俺が言ったことを復唱しても、
俺が言ったこと以上の意味は持たない

>>453
OOの文脈の話なんかしてない
アランケイの世界が今と外れてるって話をしてる

> Javaのインターフェイスと
> Rubyのダックタイピングじゃ
> 修正の柔軟性が違ってくる

トレードオフ。Rubyのダックタイピングはインターフェースがないのではなくて
インターフェースは有るが、明示的に書かないってだけ。

ソースコードで書く代わりに、ドキュメントとして書く
ひどいものになるとソースコード読んで同じ名前のメソッドの
利用状況から判断しろになるがだがw

いずれにしろ、コードとして書くか、ドキュメントとして書くかの違いで
書く量は減るが読む時に苦労するのがRuby。Javaはその逆
2017/09/16(土) 21:50:13.44ID:AcW1bn43
>>455
>トレードオフ
これはそうだが

>インターフェースは有るが、明示的に書かないってだけ
仕組みとしてない
(似たことをできなくはないが)
2017/09/16(土) 22:05:02.64ID:FAEJW2nX
>>456
例えば○○メソッドを持っていること
というのもインターフェースだよ

それをソースコードとして表現するか、
ソースコードとして表現できないから
ドキュメントとして書くかの違い
2017/09/16(土) 22:38:02.81ID:+qyS/XRX
要するに、アランケイのOOは
現在では
「粒度がおかしい」

アランケイは、生態系がどうとか、インターネットの機器がどうとか、言うが
粒度がおかしい
オブジェクトに持ち込むようなことではなかった
2017/09/16(土) 22:39:58.18ID:8gG27N70
アンチ-アラン・ケイ教の布教だから
相手するだけ時間の無断
2017/09/16(土) 22:45:30.49ID:FAEJW2nX
俺に言い負かされて反論しないんじゃあ
そりゃ時間の無駄だろうね
2017/09/16(土) 22:48:28.33ID:8gG27N70
ID:FAEJW2nX とアラン・ケイの対立軸は
今のOSが最適解だとするか、そういう態度が間違いだとするかだな

あとID:FAEJW2nX は自分の結論を前面に押し出してアラン・ケイの意見を潰そうとしているが
アラン・ケイは「決定の遅延」はあくまで次善の策だと予防線を張っていて謙虚さも違う
2017/09/16(土) 22:50:21.55ID:+qyS/XRX
粒度とかスケール感ってかなり重要で
大型ダンプをそのままびょ〜んと縮小しても軽トラにはならないからな
コックピットが小さすぎて人が乗れないし、きっとエンジンもかからない

アランケイの言ってるようなことはプロセスとかの大きな単位でやれば良いこと
便利そうっつって縮小してオブジェクトに持ち込んでもしかたがない
人間が仕事しやすい粒度ってものがある
2017/09/16(土) 22:53:11.22ID:gfl3F5WN
アランケイは良いことも言ってると思うけどな
その意見の具現化であるSmalltalkは完全に出来損ないのゴミだけど
2017/09/16(土) 23:11:06.48ID:8gG27N70
「わずか30秒の速攻レス」とか「言い負かす」とか中学生のメンタリティだな
的外れなこと言って呆れられてるのに気づかずに勝ち誇ってちゃ世話ないわ
2017/09/16(土) 23:17:00.20ID:gf/ZkNkm
>>461
「決定の遅延の徹底」が真の目的だとか言っておいて、
今度はアラン・ケイは決定の遅延」はあくまで次善の策だと言ってるなの?

しかも自分の主張ではなく、あくまでこれはアラン・ケイの主張だからねっていうスタンスだしさ
自分の意見を明確に出さず、まともに議論しようとしてないから宗教って言われるんだぞ
2017/09/16(土) 23:21:50.60ID:8gG27N70
>>465
>>434
2017/09/16(土) 23:41:04.18ID:gf/ZkNkm
>>466
>「カプセル化、継承、多態性」に象徴されるストラウストラップの考え方を紹介するとこれも宗教なのか?

カプセル化ってどういうこと?って聞けば具体的にオブジェクト指向の文脈で答えが返ってくるだろ?
ストラウストルップはこう言ってる、ストラウストルップの主張をまず読めとは返されないでしょ

決定の遅延ってどういうこと?って聞いても具体的にオブジェクト指向の文脈で答えが返ってきてるか?
その答えらしきものとして返ってきたのがアプリケーションのライブアップデートとか
データベーススキーマの意思決定の遅延とかそういうのだったからそこに反論されてるんだろ?
そしたらその反論にきちんと答えず、アラン・ケイの考えに対しての自分がどう考えるのかも明確にせず、
最後には「アラン・ケイは〇〇と主張してる」に戻るから宗教って言われてもしょうがないよ

アラン・ケイの主張と関係なく、君らのせいでアラン・ケイがバカされてるじゃん
2017/09/16(土) 23:43:38.30ID:8gG27N70
>>463
Smalltalkが出来損ないなのは同意するが
アラン・ケイが次善の策とする「決定の遅延」の実践の場としては
目的外で作られた既存の他の何を使うより幾分かはマシ
2017/09/17(日) 00:03:16.50ID:79Ps/QF/
>>467
その批判は対称性を欠いてるよ

ストラウストラップのオブジェクト指向である抽象データ型のオブジェクト指向は
現在主流で「オブジェクト指向」と言ったときに想像されるものとそれほど祖語がない
だから、カプセル化とはなにかと問う人がいても他の大多数が「オブジェクト指向」の文脈と認識する説明は容易だ

それに対してケイのメッセージングのオブジェクト指向はほとんど正確に語られることがなく
現在主流の「オブジェクト指向」の文脈からも離れた主張だ
ケイの言葉を借りずにどうやって説明できようか
まして全く異質の現在主流の「オブジェクト指向」の文脈にのせなあかん縛りとかどんな無理ゲーだよ

あと蛇足だが、もし「カプセル化とは?」ではなく「抽象データ型とは?」と訊かれたら
やはり「*ストラウストラップによれば*“ユーザー定義のデータ型”だ」と答えるよ
リスコフのそれとは違うからね
2017/09/17(日) 00:13:32.68ID:Q8dFbDIz
まあアレだな。占いや予言と一緒だ。
曖昧かつ一般論的に言っておけば後から
都合の良い解釈ができると
2017/09/17(日) 00:28:33.69ID:79Ps/QF/
>>454
OSレベルまで射程範囲…がらみではケイの発言ではないけど関係者から
ここでいう「決定の遅延」をサポートする“OS”としては
(可能なかぎり)それ自体存在させるべきでないというスタンスが示されているよね

▼Smalltalkの底を流れる設計思想
http://web.archive.org/web/20041016084842/http:/marimpod.homeip.net/chomswiki/24

オペレーティングシステムがこの原則を破っているようである
ことはちょっと注目すべきだろう。プログラマーは一貫した
記述の枠組みをはなれ、蓄積されたコンテキストをあとにし、
まったくかけ離れた、そしてたいていはとても原始的な環境を
相手にしなければならないのだ。そんな必要はない;

オペレーティングシステム:オペレーティングシステムは
言語におさまりきらないものを集めたもので、これは存在すべきでない
2017/09/17(日) 10:05:34.04ID:iyMogwhx
はいはい電波電波
こんなの真に受けるやつ居ないよ、マジで
80年代ならいざ知らず、今はもう2017年
2017/09/17(日) 10:20:43.76ID:79Ps/QF/
>>470
それはなかなか興味深い指摘だね
煽りとしてはありがちな事実誤認に基づいていてまったく正しくないが
ここで言うケイの「決定の遅延」の文脈からは言い得て妙ともとれる内容だ

まずケイの件のアイデアは
40年以上動き、変化もし続けているSmalltalk(彼自身も認める出来損ないではあるが)によって
ある程度その実効性が検証・実証されているからアイデアだけと揶揄したり
まして結果にコミットしない「占いや予言」の類とひとくくりにするのはおよそ見当違い

一方で、「占いや予言」がそうであるように将来の状況の変化に対応できるように
将来の状況の変化を見越して“対象物”をその根本を後から“どうとでも”できるように作っておくことは
まさに「決定の遅延」を実践であり
くしくもケイの主張の本質を(おそらく発言者はそうとは意識せずに)なぞらえているようでいて面白い
2017/09/17(日) 10:22:14.63ID:Q8dFbDIz
>>471
> (可能なかぎり)それ自体存在させるべきでないというスタンスが示されているよね

そして目的はなくなっちゃってるよね。

手段が目的となってしまっていて、なぜ存在させるべきではないのかが
どこにもなくなっちゃってる。
2017/09/17(日) 10:27:47.75ID:Q8dFbDIz
そしてアランケイの時代とは違い
変更しやすくするのと真逆の方向に進んでいる。

https://ja.wikipedia.org/wiki/Immutable_Infrastructure
> Immutable Infrastructure(イミュータブル インフラストラクチャ)は
> 不変なサーバー基盤のこと。具体的には、一度サーバーを構築したらその
> 後はサーバーのソフトウェアに変更を加えないことを意味する。
> 通常、サーバーにはソフトウェア構成の変更がしばしば行われ、場合によっては
> それがアプリケーションの安定稼働に大きな影響をもたらすことがある。
> また、アプリケーションがサーバーソフトウェアに変更を加え、サーバー環境が破壊されてしまうこともある。

変更できることは素晴らしいと思うけれど、安定動作という点においては危険なわけだ
車を走らせながらその車の修理をするようなもの。最後の手段としてはありだと思うが
通常の運用においては変更できることは、安定した動作の妨げになる。
2017/09/17(日) 10:45:39.57ID:Q8dFbDIz
自称アランケイに詳しい人が、何のために「決定の遅延」を
行うのかを全然説明してくれないから、そこはぼやかして書くけど

ようはアランケイはOSなどアプリとはレイヤーが違う所まで
アプリの手法と同じやり方で目的を達成しようとしていた。
当時は厳密な区別がなかったから仕方なかったとも言える。

重要なのは目的を達成する事であり(アプリと同じ)手段を用いることではない。
つまり「決定の遅延」という手段は必要なかった。

その一つがイミュータブルインフラストラクチャ。
変更するのをやめて壊して作り直すということ。
「決定の遅延」で達成できる目的は「決定を破棄して変更」に
置き換えることが可能である。
2017/09/17(日) 11:38:04.95ID:BJxCKTla
国会じゃないんだから否定することが目的の議論は時間の無駄だよ
アラン・ケイを神格化して鵜呑みにすのも馬鹿げているが
その主張をろくすっぽ読みもせずに、なんの役にも立たない、時代が違うと問題領域を取り違えた反論を繰り返すのもどうかと思う
キミもいいかげん「疎結合システムは言語レベルで実現するものではない」とかいう持論への固執をやめた方がいい
2017/09/17(日) 12:14:12.99ID:Q8dFbDIz
> 国会じゃないんだから否定することが目的の議論は時間の無駄だよ

そう。だからずっと反論してくれと言ってる。


> キミもいいかげん「疎結合システムは言語レベルで実現するものではない」とかいう持論への固執をやめた方がいい
それが「否定することが目的」になってるよね?
2017/09/17(日) 12:17:55.64ID:Q8dFbDIz
否定することが目的の議論は時間の無駄だよと言った本人が
否定することが目的のセリフを吐いて、
こいつ頭悪いのかとしか思えなかったが、
俺が言った言葉として受け取ってくれ。

俺が自分の考えを述べているのだから、
単に否定するだけではなく(否定するのを目的としてはいけない)
自分の考えをちゃんと言うように。
アランケイの何かを読めも。全然反論になってない。

否定したいなら反論(自分の考え)を言うように
それこそが時間の無駄ではない議論というものだ。
繰り返し言うぞ。否定することが目的の議論は時間の無駄だ。
2017/09/17(日) 12:21:10.27ID:awplre+w
2chてお互いが押し付けあっているだけで無駄
2017/09/17(日) 12:22:39.58ID:Q8dFbDIz
俺は自分の考えを言ってる。
自分の考えを言わないやつは
押し付けるやつよりたちが悪い。


お前が間違ってる(どーん!)
勉強すれば俺と同じ宗教に入ることになるはずだ(どーん!)
2017/09/17(日) 12:30:39.47ID:BJxCKTla
何を言っても諭しても
言葉尻を捉えてくだらん揚げ足取りで話を明後日の方向へ持って行こうとする
つくづくコミュニケーションに向かない人だな

持論に固執してケイが想定している問題領域と違うトンチンカンな反論を繰り返しても無意味だと再三指摘している
2017/09/17(日) 12:32:59.15ID:Q8dFbDIz
反論できなくなったら

「言葉尻を捉えてくだらん揚げ足取りで話を明後日の方向へ持って行こうとする」

というだけで、どの部分が揚げ足取りなのかも言えないし
正しい方向に持っていくこともできない。

ただただ、それは「揚げ足取りなんだー(ぶつぶつ」っていうだけ
議論にならないのも当然だろう?
2017/09/17(日) 12:34:40.72ID:Q8dFbDIz
ケイが想定している問題領域とはなに?

答 勉強すれば俺と同じ宗教に入ることになるはずだ(どーん!)


コミュニケーションに向かないから
自分の言葉で説明できない
2017/09/17(日) 12:43:04.70ID:BJxCKTla
お前が間違ってる(どーん!)
勉強すれば俺と同じ宗教に入ることになるはずだ(どーん!)

はいみじくも、「自分の考え」という錦の御旗をかかげつつ、
しかしその実はアンチ-アラン・ケイ教を押し付け続けるキミの言動そのものだよ
2017/09/17(日) 12:44:38.32ID:Q8dFbDIz
↑こういうのが揚げ足取りな

何故かと言うとこのスレの議論の内容とは全く関係なく
言葉尻を捉えてくだらん揚げ足取りで話を明後日の方向へ持って行こうとしているから
2017/09/17(日) 12:45:13.72ID:LRoa+qIa
決定の遅延

正しい例「優れた言語の構文なんて簡単に決めようがないから、各々が自由に言語を作って選ぶことにして、それを連携できるシンプルな仕組み(例:http)を用意しよう」

間違った例「神の言語Smalltalkを使え」
2017/09/17(日) 12:45:40.25ID:Q8dFbDIz
さて、また答えられない質問のひとつになるのかね?

ケイが想定している問題領域とやらに
自分の言葉で答えてくれるのを待ってるんだが
2017/09/17(日) 12:47:16.47ID:ZH0tEj4R
お疲れさまでした!
2017/09/17(日) 13:26:48.05ID:Ix55LYJg
まるであの人だな
主張するだけで人のレスは全部無視
2017/09/17(日) 13:30:45.50ID:Q8dFbDIz
俺のレスもまた無視されてるしな
2017/09/17(日) 13:33:32.92ID:Ix55LYJg
>>491
2017/09/17(日) 13:36:16.29ID:Q8dFbDIz
新規IDが俺に絡むのってなんでなんだろう?
上の方で誰かがスマホまで用意してーとか言っていたが
それか?
2017/09/17(日) 13:43:56.28ID:VnyEb10w
プロレスはもういいんで
もっとタメになるオモロイこと書いてや
Smalltalkに興奮したおじいちゃんの話は退屈
なだけなので止めてや
2017/09/17(日) 13:47:38.61ID:Q8dFbDIz
ケイが想定している問題領域を聞いた
俺のレスはまた無視状態で終わるわけか
2017/09/17(日) 13:49:17.64ID:Ix55LYJg
>>493
そりゃ簡単な理屈だよ
お前さんのようにダラダラと一日中スレに張り付いて書き込みを続けるような人ばかりではない
最初の書き込みが昼過ぎの人もいれば夕方の人もいる
そしてここに来た人が最初に目にするのは意味不明な理屈で大暴れするお前さんだ
自覚ないかもしれんが悪い意味で凄い目立ってるんだよ
そうなるとその日最初のレスがお前さんへの苦言という形のレスになってもなにもおかしくはないだろ
これが単発が仕組んだようにお前に絡むように見えるトリックな
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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