オブジェクト指向ってクソじゃねぇかよPart4

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2019/04/28(日) 23:38:35.09ID:URSBxRTf
無理やりオブジェクト指向にしたから出てきた問題を解決して凄い凄い言ってるだけ。
単なるマッチポンプ。


カプセル化(英語:encapsulation)とは、オブジェクト指向を構成する概念の一つで、
オブジェクト内部のデータを隠蔽したり(データ隠蔽)、オブジェクトの振る舞いを隠蔽したり、
オブジェクトの実際の型を隠蔽したりすることをいう。

偏差値の低い学校向けの情報処理系教科書において「大変すばらしいものであり絶対に使うように」と大体的に宣伝された。

一方、カリフォルニア大学バークレー校の有識者を中心としたインターネットを作った人たちは「階層化の有害性」として
「絶対に使うな」としている。大雑把にいうと、その時は良くても、将来的な改修の際に隠蔽されたデータに
アクセスできないと解決できない問題が出てきて、結果的にデスマーチに陥るというのである。

オブジェクト指向の発案者であるアラン・ケイもコーディング規約(頭文字にアンダースコアを付けるなどの命名規則)で
縛る程度にすることを推奨しており、アラン・ケイが関わったオブジェクト指向プログラミング言語にはどれも「private」
という概念はない。

https://monobook.org/wiki/%E3%82%AB%E3%83%97%E3%82%BB%E3%83%AB%E5%8C%96

前前前スレ
オブジェクト指向ってクソじゃね?
https://mevius.5ch.net/test/read.cgi/tech/1535085129/

前前スレ
オブジェクト指向ってクソじゃねぇよ? Part2
https://mevius.5ch.net/test/read.cgi/tech/1539872441/

前スレ
オブジェクト指向ってクソじゃねぇかよPart3
https://mevius.5ch.net/test/read.cgi/tech/1542884872/
325デフォルトの名無しさん
垢版 |
2019/05/05(日) 11:36:34.86ID:qgM2q7bL
>>324
実際にC++をCに変換して確認しりゃいいだろ。
2019/05/05(日) 11:40:56.87ID:3EWrT4Pn
>>325
すでに私は確認しており、C にトランスパイルされた時点で OO ではなかったと記憶しています
あなたは C でも OO できる、という立場であれば、>>172 の C++ コードに対して対応する C のコードを記述できるでしょうから、それを見せてください
C で OO の継承を記述できない、という立場であれば、私と同じです
327デフォルトの名無しさん
垢版 |
2019/05/05(日) 11:43:11.75ID:qgM2q7bL
>>326
C++はオブジェクト指向だと認めるんだよな?
で、C++はCの機能だけで作られていた。
Cの機能だけでオブジェクト指向が実現できる、以外の結論を主張するのが意味不明過ぎて。
2019/05/05(日) 11:49:03.20ID:3EWrT4Pn
>>327
>C++はCの機能だけで作られていた。
機能、という言葉の使い方があいまいですね
・「C++ をトランスパイルした結果が C のコードが出力される」という事実だけでは、C が(委譲とは区別された)継承を記述できるかどうかを示すことはできないのではないでしょうか?
329デフォルトの名無しさん
垢版 |
2019/05/05(日) 11:52:26.46ID:qgM2q7bL
>>328
お前も理解力が低過ぎるから説明するのが面倒になった。
ま、お勉強しような。
2019/05/05(日) 11:52:29.80ID:b3RuMaKH
アップキャストできるから移譲と区別とはならないの?
2019/05/05(日) 12:00:39.66ID:3EWrT4Pn
>>329
私は >>172 の C++ に対応する C コードを示していただければ満足します

>>330
多重継承のときは、そのアップキャストはどうなりますか?
2019/05/05(日) 12:33:06.22ID:C9BKoiC3
>>330
ずらしてキャストする関数を作れば
2019/05/05(日) 13:04:07.79ID:3EWrT4Pn
>>332
そのとおり!
そういうのを手でちまちまと書く、というのを「OO できている」とはいわないという主観です
334デフォルトの名無しさん
垢版 |
2019/05/05(日) 13:29:53.55ID:0ZGoSt+d
>>322
一周先の考えでは型とはなんぞや?
335デフォルトの名無しさん
垢版 |
2019/05/05(日) 13:31:39.27ID:0ZGoSt+d
>>333
なんで言わないん?
2019/05/05(日) 14:12:25.72ID:RwNImG1a
マシン語に変換された瞬間にOOできてないに変化するってこと?
2019/05/05(日) 15:40:51.80ID:n5gpFbvN
自分ルール押し付けって奴だね
2019/05/05(日) 16:09:03.66ID:z2iHj6R4
そう言われるだろうと思って自分でルールを作らなくなるんだろう
自分ではない誰かが作った教科書を読めとしか言わなくなる
2019/05/05(日) 18:05:11.84ID:3EWrT4Pn
>>335
基底クラスA, B とそのメソッド A.f(), B.g()
A, B を多重継承する派生クラス C とメソッド C.h()があったとして
(コード例は >>172)

今 C のインスタンス c に対して
c.f() と c.h() の両方を実行したいとき c の this から
c 内の A のために this を作り c.f() を呼ぶ…@
c 内の B のために this を作り c.h() を呼ぶ…A
@Aのどちらかあるいは両方について、c の this をずらして基底クラスの this を作らないといけません

>>172 の C++ では c->f() や c->h() とお気楽にかけるのに、C では、チマチマと this にオフセットを「人間が数えて」足し込むコードを書かなくっちゃいけない

そんな体たらくじゃ C では多重継承は書けないのと同等ですね
340デフォルトの名無しさん
垢版 |
2019/05/05(日) 18:51:56.99ID:0ZGoSt+d
>>339
それはC言語がオブジェクト指向プログラミング言語ではないと
言ってるに過ぎないと思うの

手でちまちまと書く、というのを「OO できている」とはいわないのはどうしてなん?
オブジェクト指向プログラミング言語でプログラミングすることだけを
オブジェクト指向と言うん? それはどうしてなん?

オブジェクト指向は考え方であって手段として手書きするのか
言語の機能を使うのかはどちらでも良いと思うのだけれども
どうして多重継承を言語としてサポートすることが大事だと思うん?
341デフォルトの名無しさん
垢版 |
2019/05/05(日) 18:52:30.16ID:0ZGoSt+d
なんでなん?
2019/05/05(日) 18:58:42.59ID:3EWrT4Pn
>>340
>それはC言語がオブジェクト指向プログラミング言語ではないと
>言ってるに過ぎないと思うの

であれば、それが私の言いたいことそのものですね、問題ないのではないでしょうか?

>手でちまちまと書く、というのを「OO できている」とはいわないのはどうしてなん?
手でちまちまと、すなわち手動で this を作らないといけないようではオブジェクト指向はできてないでしょうね…

>オブジェクト指向プログラミング言語でプログラミングすることだけをオブジェクト指向と言うん? それはどうしてなん?
そうはいってませんよ、単に C でオブジェクト指向にのっとったプログラミングはできない(なぜならばオブジェクト指向の重要な要素である継承が実現できないから)、といっているだけです

>オブジェクト指向は考え方であって手段として手書きするのか言語の機能を使うのかはどちらでも良いと思うのだけれども
>どうして多重継承を言語としてサポートすることが大事だと思うん?
多重継承を例にするのがわかりやすいから、多重継承を例にしただけです。
343デフォルトの名無しさん
垢版 |
2019/05/05(日) 19:04:45.27ID:0ZGoSt+d
>>342
君はオブジェクト指向プログラミング言語でプログラミングすることを
オブジェクト指向ができていると表現してるわけだね

C言語は多重継承をサポートしていないという事実から
C言語はオブジェクト指向プログラミング言語ではないを導き
C言語ではオブジェクト指向できてないを導出したわけですね

自明ですが、論理とは自明の積み重ねですからね
そういうの大事だと思います
344デフォルトの名無しさん
垢版 |
2019/05/05(日) 19:15:32.32ID:0ZGoSt+d
僕の考えるオブジェクト指向はこうです

オブジェクト指向とはオブジェクトを主要なものとしてシステムを作ることです
オブジェクトとは状態と振る舞いのセットです

分析や設計の段階でオブジェクト指向で考えることができますし
C言語や継承の機能を持たない古いVBでもオブジェクト指向を適用可能です

要件を満たすにはこういうオブジェクトが必要だ
この状態はこのオブジェクトが持つべきだ
この振る舞いはこのオブジェクトが持つべきだと
考えるのがオブジェクト指向なのです
345デフォルトの名無しさん
垢版 |
2019/05/05(日) 19:22:05.60ID:0ZGoSt+d
大事MANブラザーズバンドが昔
負けない事・投げ出さない事・逃げ出さない事・信じ抜く事 それが一番大事と歌いましたが
それを歌った本人は後年どれも大事じゃなかったと言いました
良い話です

オブジェクト指向プログラミング言語がもつ機能として
・カプセル化
・多態性
・継承
これらが提唱されてはいますが
オブジェクト指向にとってどれも大事じゃないです
良い話ですね
346デフォルトの名無しさん
垢版 |
2019/05/05(日) 19:22:33.16ID:0ZGoSt+d
お前ら涙拭けよ
347デフォルトの名無しさん
垢版 |
2019/05/05(日) 19:36:01.70ID:1Pm7tIcB
オブジェクト指向ってなんなのかもわからない人だらけで、クラスこととだと思ってる奴が未だに大勢いるからな
最近じゃクラスを持たないオブジェクト指向言語が使われ出してきていて誤解も減ってきてる気はするけど
2019/05/05(日) 20:16:31.15ID:6ho6Zive
クラスを持たないオブジェクト指向言語って具体的にはどれ?
2019/05/05(日) 20:20:35.27ID:yGiei76k
昔のJavaScript
2019/05/05(日) 20:26:03.69ID:3EWrT4Pn
>>343
>君はオブジェクト指向プログラミング言語でプログラミングすることを
>オブジェクト指向ができていると表現してるわけだね

いいえ、OO な言語でなくても OO で記述できる範囲を代替できれば、それも「オブジェクト指向ができている」とします。
ただし C 言語は単一であっても継承を委譲と区別して記述できない…@
継承は OO では基本的な考え方、枠組みである…A
@Aより C 言語では OO 的な記述はできない
となります

>C言語は多重継承をサポートしていないという事実から
>C言語はオブジェクト指向プログラミング言語ではないを導き
>C言語ではオブジェクト指向できてないを導出したわけですね

多重継承だけではなく、単一継承も C では不可能、とします。
なぜならば、
構造体の第一メンバのアドレスと、構造体そのもののアドレスが一致するとは限らない…B
構造体の各メンバの物理的な順序はプログラマから指定することはできない、構造体テンプレートごとにシャッフルされても文句はいえない…C
2019/05/05(日) 20:28:21.90ID:3EWrT4Pn
>>344
>要件を満たすにはこういうオブジェクトが必要だ
>この状態はこのオブジェクトが持つべきだ
>この振る舞いはこのオブジェクトが持つべきだと
>考えるのがオブジェクト指向なのです
これを@とします

@は
オブジェクト指向「的」に記述する
というなら許容できますが、オブジェクト指向そのものではないと思いますね
2019/05/05(日) 20:50:36.49ID:V2nyw4fH
人とか動物、鉛筆やボールペンならよく分かるんだが、実際のプログラムになると何がオブジェクトなのか途端に分からなくなる。
353デフォルトの名無しさん
垢版 |
2019/05/05(日) 20:53:26.28ID:dlXoi6fS
>>340
>どうして多重継承を言語としてサポートすることが大事だと思うん?

随意筋 不随意筋
  ↖ ↗
  チンポ

『継承』は、子クラス➡親クラス。

多重継承を否定できないのは、この現実世界においては、状況によって相反する属性が現れるから。
特に機械翻訳においては、文脈によってコトバの属性を選択しなければならない。
2019/05/05(日) 20:58:11.78ID:n5gpFbvN
>>352
実際のプログラムではそういったビジネス要件のクラスと
メモリ、データベース、ネットワークアクセスを上手くマッピングするレイヤーが
必要になるからな。
オブジェクト指向が役に立つ場面もあるが邪魔になる場面もある。
2019/05/05(日) 21:02:01.59ID:9yEU0+xl
多重継承をサポートしてる言語って
C++以外だと何がある?
356デフォルトの名無しさん
垢版 |
2019/05/05(日) 21:12:22.54ID:0ZGoSt+d
>>350
つまり結論はC言語はオブジェクト指向プログラミング言語じゃないってことですよねわかります

>>351
僕のオブジェクト指向と君のオブジェクト指向は異なることを言ってますね
それはそうです
357デフォルトの名無しさん
垢版 |
2019/05/05(日) 21:17:47.84ID:0ZGoSt+d
>>355
型の継承ならインターフェースって形でJavaはサポートしてますよん
Javaはインターフェースでのデフォルト実装ができるようになったので
実装の継承もできちゃう
2019/05/05(日) 21:41:28.11ID:uNdN3SuK
>>357
Javaで言うとクラスの多重継承の意味で聞きたかった
359デフォルトの名無しさん
垢版 |
2019/05/05(日) 21:43:00.38ID:0ZGoSt+d
>>352
プログラムで何をやるのかによって
変わってくるんじゃないかと

ソフトウェアが処理の対象にする分野はドメインと呼ばれるけれども
オブジェクトはドメインによって変わってくるかと

たとえば表計算というドメインでは「行」という概念があり「列」という
概念があり「セル」という概念があってそれぞれ状態や振る舞いを持つじゃん

ファイルはデータを読んで分析するというドメインでは「データソース」になるし
処理したデータを永続化するというドメインでは「データストア」になるし
データを連携するというドメインでは「連携データ」になる
てな具合で

ソフトウェアが解決しようとしてるドメインを考えることによって
こういう概念があるとシステムがわかりやすいよね
処理しやすいよねって考えるのがいんじゃないかなと思いました
360デフォルトの名無しさん
垢版 |
2019/05/05(日) 21:43:22.15ID:0ZGoSt+d
>>358
それを言ったつもりだす
2019/05/05(日) 21:53:35.11ID:uNdN3SuK
>>360
Javaで言うとextendsで複数クラスを指定という意味
インターフェースはimplementsだから継承といよりは実装のほうが良いような
もちろんデフォルト実装があるのは知ってるけど
362デフォルトの名無しさん
垢版 |
2019/05/05(日) 21:57:42.22ID:2SY3w1vB
>>358
>Javaで言うとクラスの多重継承の意味で聞きたかった

随意筋 不随意筋
  ↖ ↗
  チンポ

『継承』は、子クラス➡親クラス。

多重継承を否定できないのは、この現実世界においては、状況によって相反する属性が現れるから。
特に機械翻訳においては、文脈によってコトバの属性を選択しなければならない。
363デフォルトの名無しさん
垢版 |
2019/05/05(日) 22:18:36.49ID:0ZGoSt+d
>>361
クラスにあってインターフェースにないものそれは状態
状態の多重継承ってことね
たしかにJavaではむりっすねー
364デフォルトの名無しさん
垢版 |
2019/05/05(日) 23:16:17.25ID:qgM2q7bL
>>352
その疑問は的を得ている。
そこで設計指針が必要になる。
365デフォルトの名無しさん
垢版 |
2019/05/06(月) 03:44:51.02ID:CTjazNaS
肉眼で見れば『空っぽ』のサンプル容器だが・・・

 2010年6月に小惑星探査機「はやぶさ」が帰還しました。11月になって持ち帰った岩石質の微粒子が
小惑星イトカワ由来と分かり、大変に注目され、また意気も上がりました。これはサンプルキャッチャー
と呼ばれる帰還したサンプル容器の内側を特殊なヘラで触って集めた約3300個のうち、
人工物(主としてアルミ片)を除いた約1500個の岩石質極微小粒子(大部分が10μm
[マイクロメートル、1μm=1mmの1000分の1]以下)の組成を調べて
分かったことです(図1におおよその鉱物組成比を示す)。
http://www.isas.jaxa.jp/j/forefront/2011/fujimura/

観測の仕方について、同じオブジェクトでも全く違う物になりうる!

>現代的な考え方: データ型=データの集合+演算・処理の集合
>01000001011000000000000000000000
>• int CPUが整数演算に使うなら 1,097,072,640
>• float CPUが実数演算に使うなら 14.25
>• String CPUが文字列処理に使うなら ”槍” とNULL文字
>• その他 CPUが画像処理に使うなら 白黒画像の一部
366デフォルトの名無しさん
垢版 |
2019/05/06(月) 03:51:02.37ID:CTjazNaS
>>363
>状態の多重継承ってことね
>たしかにJavaではむりっすねー

サンプル容器に『イトカワの砂』は入っていたのか?
367デフォルトの名無しさん
垢版 |
2019/05/06(月) 03:55:10.11ID:+kTw1En3
>>366
おいお前、知らない
すまない力になれなくて
368デフォルトの名無しさん
垢版 |
2019/05/06(月) 04:03:28.51ID:CTjazNaS
>>340
>どうして多重継承を言語としてサポートすることが大事だと思うん?

同一オブジェクトであっても、『視点』が変わると全然違う『属性』が表れてくるから。

新幹線の座席で寝ている人は、時速200キロで移動しながら寝ているのだぞ?
369デフォルトの名無しさん
垢版 |
2019/05/06(月) 04:40:25.91ID:+kTw1En3
>>368
新幹線の話はよくわからないんだけど
属性が全然違うなら全然違うオブジェクトにすればいいと思うの
370デフォルトの名無しさん
垢版 |
2019/05/06(月) 07:09:00.42ID:CTjazNaS
>>369
>属性が全然違うなら全然違うオブジェクトにすればいいと思うの

同一オブジェクトとして扱うが、『視点』は別々にしようってことなんだが?

>現代的な考え方: データ型=データの集合+演算・処理の集合
>01000001011000000000000000000000
>• int CPUが整数演算に使うなら 1,097,072,640
>• float CPUが実数演算に使うなら 14.25
>• String CPUが文字列処理に使うなら ”槍” とNULL文字
>• その他 CPUが画像処理に使うなら 白黒画像の一部
371デフォルトの名無しさん
垢版 |
2019/05/06(月) 07:25:59.25ID:+kTw1En3
>>370
同一オブジェクトにしなければ良いと思うの

Decimalオブジェクトもお金を扱うときはMoneyオブジェクトにするし
税金扱うときはTaxオブジェクトにするじゃん

同一オブジェクトという前提がおかしいんだよ
継承は設計が悪い兆候と心得よ
372デフォルトの名無しさん
垢版 |
2019/05/06(月) 07:28:10.67ID:+kTw1En3
視点が変われば属性が変わる属性が変わればオブジェクトを変えるべきですよ
2019/05/06(月) 07:46:25.25ID:r9zJcDQk
配列があれば満足できる
2019/05/06(月) 07:52:43.50ID:Raxrdjo7
それで生産性上がるんかいね?
375デフォルトの名無しさん
垢版 |
2019/05/06(月) 08:38:03.71ID:CTjazNaS
>>372
>視点が変われば属性が変わる属性が変わればオブジェクトを変えるべきですよ

同一の光であっても、波と粒子とで別々のオブジェクトにするのか?

新たに開発した電力変換装置は、太陽光発電システムと水電解装置のシステム構成上の制約を解消するものであり、
太陽光由来水素製造の規模拡大を加速するものである。太陽光発電システムと、それらから得られた
電気エネルギーによる水素製造のさらなる普及のため、システムを構成する集光型太陽電池、電力変換装置、
水電解装置の一層の効率向上と低コスト化はもとより、さらには急激な日照の変動による入力電力の
変動に対応したシステムの耐久性向上が求められる。
https://pr.fujitsu.com/jp/news/2018/07/19.html
376デフォルトの名無しさん
垢版 |
2019/05/06(月) 08:54:09.49ID:CTjazNaS
>>372
>視点が変われば属性が変わる属性が変わればオブジェクトを変えるべきですよ

勃起するときのチンポは随意筋だけど、オシッコを出すときのチンポは随意筋だな。
2019/05/06(月) 08:55:11.74ID:ksMcUqow
>>375
光という基底クラスがあって、波動を表現する波光クラスと粒子を表現する粒光クラスという派生クラスを作るんじゃね。
378デフォルトの名無しさん
垢版 |
2019/05/06(月) 08:59:00.47ID:CTjazNaS
勃起するときのチンポは『不随意筋』ね。

オシッコ出すときのチンポと、勃起するときのチンポは、別々のオブジェクトってことだな!

376 デフォルトの名無しさん 2019/05/06(月) 08:54:09.49 ID:CTjazNaS
>>372
>視点が変われば属性が変わる属性が変わればオブジェクトを変えるべきですよ

勃起するときのチンポは随意筋だけど、オシッコを出すときのチンポは随意筋だな。
379デフォルトの名無しさん
垢版 |
2019/05/06(月) 09:01:42.65ID:CTjazNaS
>>377
>光という基底クラスがあって、波動を表現する波光クラスと粒子を表現する粒光クラスという派生クラスを作るんじゃね。

チンポという基底クラスがあって、勃起するときの不随意チンポと、オシッコするときの随意チンポと、
別々の派生クラスを作るんじゃね?
2019/05/06(月) 19:08:43.91ID:aP0f4Ais
粒子と波の性質を持つなら、それぞれのinterfaceを定義して、その両方を実装するのがいまどきのオブジェクト指向でしょ。
2019/05/06(月) 19:12:47.88ID:aP0f4Ais
チンコは性器と泌尿器のinterfaceを実装するのが筋。
あと、陰茎は海面体だから、随意筋でも不随意筋でもないぞ。
382デフォルトの名無しさん
垢版 |
2019/05/06(月) 19:51:30.24ID:CTjazNaS
>>377
>光という基底クラスがあって、波動を表現する波光クラスと粒子を表現する粒光クラスという派生クラスを作るんじゃね。

リスコフの置換原則
この原則は「基本クラスを使っている場所で基本クラスの代わりにサブクラスを使っても
問題なく動かなけらばならない」というものです。
https://qiita.com/UWControl/items/98671f53120ae47ff93a
383デフォルトの名無しさん
垢版 |
2019/05/06(月) 20:24:22.96ID:+kTw1En3
>>382
リスコフの置換原則は型の継承の原則だから
実装の継承を使った差分プログラミングが目的なら
リスコフの置換原則にこだわる必要はないかと

君が大好きな多重継承は差分プログラミングが目的なんじゃないかな?
384デフォルトの名無しさん
垢版 |
2019/05/06(月) 20:25:59.73ID:+kTw1En3
君はちんぽと本気で向き合ってない
ちんぽを舐めるな!
2019/05/06(月) 22:20:10.50ID:WnKg5gHm
わかりました〜頼まれても、舐めまへん。
2019/05/06(月) 22:21:30.67ID:WnKg5gHm
>>364
その「設計指針」とやらをさらせヨ
2019/05/06(月) 23:48:17.16ID:Z/i23U2E
チンポマンってインターフェース使わないのか?
2019/05/07(火) 00:06:37.95ID:VFfldi74
童貞だからな、界面を知らない。
2019/05/07(火) 00:08:02.65ID:VFfldi74
海綿体ばっか膨らませて手メコしてばっか
390デフォルトの名無しさん
垢版 |
2019/05/07(火) 00:16:40.53ID:i3X/nQoG
>>383
>リスコフの置換原則にこだわる必要はないかと

複数のサブクラスから共通の『属性』を抽出するのがスーパークラスということなのに、
もしもリスコフの置換法則を無視するならば、スーパークラスとサブクラスの関係は成り立たなくなるのでは?
391デフォルトの名無しさん
垢版 |
2019/05/07(火) 00:34:53.38ID:i3X/nQoG
>>223
>必要無いメソッドを空実装しなければならないというのは、クラスの設計として間違っています。

大学入試物理を自動回答するのに、高校物理の履修範囲から逸脱した公式(メソッド)を出してはいけない!
392デフォルトの名無しさん
垢版 |
2019/05/07(火) 00:47:51.00ID:i3X/nQoG
>>372
>視点が変われば属性が変わる属性が変わればオブジェクトを変えるべきですよ

コンテキスト視点でということで、同一人物であっても別オブジェクトに指定したほうが良いということだな。
まあ確かに、そのほうがシンプルでわかりやすいシステムが出来るだろう。

「モノ、コンテキスト、役割」の関係は、「モノ、照明、影」で例えられます。
モノに照明を当てると、影が出来上がります。影は、照明を当てる角度により形が異なります。
つまり、照明=コンテキスト、影=役割とすると、
仕事コンテキストでは従業員
家庭コンテキストではお父さん
趣味コンテキストではゲーム制作者
https://qiita.com/MinoDriven/items/2a378a09638e234d8614


けれどもこれは業務用のデータベース管理システムにしかならない!
393デフォルトの名無しさん
垢版 |
2019/05/07(火) 01:02:22.20ID:i3X/nQoG
>>259
>>225
近年はデータベースよりも実写モデルが重視されつつある。

データベース管理だけなら、多重継承抜きの『オブジェクト指向プログラミング言語』で十分。
しかしながら人工知能やシミュレーションともなると、『水』をどういうオブジェクトとして扱うか、
オブジェクトの多様性と流転性と属性変化を常に意識しなければならなくなる。

210 デフォルトの名無しさん 2018/09/24(月) 07:12:53.20 ID:61Bjkcq4
>>208
>「水」

1化合物
2容器に入った液体
3噴水
4漏水
5水滴
6溶媒
7水溶液

これくらいの使い分けは出来るようにしたい。

211 デフォルトの名無しさん 2018/09/24(月) 07:18:18.60 ID:61Bjkcq4
おっと。

8流水
10蒸発水
11結合水
12貯水

高校物理化学だけでもこうした訳し分けが重要。
394デフォルトの名無しさん
垢版 |
2019/05/07(火) 01:13:08.17ID:i3X/nQoG
>必要無いメソッドを空実装しなければならないというのは、クラスの設計として間違っています。

ゲームもまたシミュレーションの一形態だ。

オンラインゲームくらいなら、勃起するチンポとオシッコするチンポは別オブジェクトに指定すれば良いだろう。
しかしながら最新の医療シミュレーションについては、チンポは同じチンポとして多重継承するしかない。
395デフォルトの名無しさん
垢版 |
2019/05/07(火) 01:22:56.86ID:i3X/nQoG
>>381
>陰茎は海面体だから、随意筋でも不随意筋でもないぞ。

オシッコを出す・オシッコを止める(随意筋)、そんなことも出来ないのか?

928 デフォルトの名無しさん 2018/11/21(水) 18:59:11.61 ID:8Yc2p7H1
>>922
>ナンチャッテメッセージングスタイルになったのは

チンポ.オシッコを出す
チンポ.オシッコを止める

さっきトイレでやってきた。


929 デフォルトの名無しさん 2018/11/21(水) 19:07:17.83 ID:8Yc2p7H1
>>915
>単なる動的なメソッド呼び出しをメッセージと称し、ただしコールするメソッドが見つからない場合だけメッセージを
>ハンドリングできる省コストなナンチャッテメッセージングスタイルに落ち着いた。

×
俺.オシッコを止める 俺.オシッコを出す

俺.チンポに力を入れる 俺.チンポから力を抜く
2019/05/07(火) 02:03:30.26ID:Mcy3O3yB
30にもなってチンポとか・・・
小学生じゃあるまいし、歳を考えろと・・・
397デフォルトの名無しさん
垢版 |
2019/05/07(火) 02:28:40.89ID:i3X/nQoG
>>396
チンポは随意筋なのか不随意筋なのか?
2019/05/07(火) 05:29:19.14ID:fa0JIMs4
チンポマン30歳なのか
職業は?
399デフォルトの名無しさん
垢版 |
2019/05/07(火) 06:52:13.09ID:i425fQY3
>>398
1975年5月生まれ。
2019/05/07(火) 07:18:06.83ID:i425fQY3
気になったのが太陽が東から昇り西に沈むという問題
これは便宜上そう見えるから一般常識化しているけど
正確には地球が動いている。そこまでいわないと。天動説は覆ったんだから。
https://ameblo.jp/cinnamon-rilakkuma/entry-12459204488.html

気になったのは、チンポ『を』シコシコするという問題。

これは便宜上そう見えるから一般常識化しているけど、
正確にはチンポは自らシコシコしてる。そこまでいわないと。チンポは独立した生き物なのだから。
2019/05/07(火) 08:25:00.29ID:H5JxHblt
ちんぽが太陽を周回しているのです
2019/05/07(火) 08:25:52.98ID:H5JxHblt
人間はちんぽの衛星である
そういうことですね?
2019/05/07(火) 08:26:30.92ID:H5JxHblt
ちん動説
2019/05/07(火) 08:31:36.28ID:H5JxHblt
>>400
シコシコするは他動詞だから目的語がないと
言葉として成立しない

ちんぽがシコシコするはNG
ちんぽが人間をシコシコするが正しい
そういう理解でいいですね?
2019/05/07(火) 08:48:59.41ID:Vs/eSqzX
ちんぽと人間が独立してると仮定する場合
ちんぽが死亡したとしても人間が死亡するとは限らない
よってちんぽと人間のライフサイクルが同じになる継承や
コンポジションは使えない

ちんぽと人間は集約によって結びつくのが妥当
つまりちんぽコンストラクタは引数として人間を受け取り
状態として保持する

ではちんぽオブジェクトを作成する責務はどのオブジェクトが
持つべきであろうか
2019/05/07(火) 08:54:47.93ID:wiO0Hzhi
朝気がつくとチンボがシコシコする。
何事かと目を開けると下半身を黒い何かが覆っていた。
いや、それは人の頭部であり裸の女が俺のイチモツを咥え込んで荒々しく上下していたのだ。
「おい、おこすならもっと普通にやれ。」
つい最近同棲し出した彼女…と言うかそもそも女か?に声を掛けると、怪しい笑顔で俺を見て、
2019/05/07(火) 08:56:44.76ID:Vs/eSqzX
答えは太陽である
ちんぽは時として人間から俺の息子と呼ばれるわけだが
これはちんぽの創造主がザ・サンであることの名残である
そのことを言いたかったわけですね?
2019/05/07(火) 09:18:56.32ID:Mcy3O3yB
幼稚園児「ちんぽー、うんこー。ぎゃははは」


30歳男児「ちんぽー、うんこー。ぎゃははは」
2019/05/07(火) 13:32:08.23ID:i425fQY3
>>408
>30歳男児「ちんぽー、うんこー。ぎゃははは」

1975年5月生まれ。
2019/05/07(火) 13:43:39.98ID:i425fQY3
>>236
>陰茎が勃起するのは生理現象で

俺って立派に科学者してるだろう?
2019/05/08(水) 02:37:31.30ID:X1nlK/si
インタフェースってオブジェクト指向なの?
オブジェクトが手続きを所有すんの?
それとも手続きが必要なオブジェクトを所有すんの?
412デフォルトの名無しさん
垢版 |
2019/05/08(水) 04:40:00.49ID:pZQhMDAG
>>404
>ちんぽが人間をシコシコするが正しい

<チンポ>
「 その瞬間、竜哉は体中が引き締まるような快感を感じた。彼は今、リングで感じるあのギラギラした、
抵抗される人間の喜びを味わったのだ。 」

まさにチンポが竜哉くんをシコシコさせて、 竜哉は体中が引き締まるような快感を感じたのだ!

違うか?
413デフォルトの名無しさん
垢版 |
2019/05/08(水) 04:53:36.41ID:pZQhMDAG
>>303
>数学における「集合」の意味

データベース型の統計的機械翻訳なんて、もはや10年前のIBMワトソンを最後に全てが終わっている!

学校でならう『数学』はユークリッド幾何学であり、例えば複素数平面なんてゲームの世界でしかない!

ロボマインド・プロジェクトでも、同じ問題に直面しました。
我々、人間は、「ドアの外の廊下の上には天井がある」などと覚えているわけではありません。
それでは、どうやって、認識しているのでしょう?
頭の中で、部屋からドアを開けて廊下に出たところを想像するだけです。
廊下に出れば、上には天井がありますよね。
それでは、これを、コンピュータで実現するにはどうすればいいでしょうか?
それには、家の3DCGモデルを作れば実現できます。
データベースを使うのでなく、実際に見えるままの姿を3Dモデルで作成するのです。
https://robomind.co.jp/symbolgroundingproblem/

実在気体 理想気体
  ↖  ↗
   気体

随意筋 不随意筋
  ↖ ↗
  チンポ

波動  粒子
 ↖ ↗
  光

データベース検索なら別オブジェクト扱いで良いが、自動翻訳やシミュレーションなどは多重継承しかない!
2019/05/08(水) 05:48:05.74ID:n2G/0O6p
>>413
自動翻訳ソフト作ったことあるん?
2019/05/08(水) 05:51:37.36ID:n2G/0O6p
多重継承を使うと多重継承を使わないときより
こういうところがこんなに素晴らしくなりました的な
ご知見を教えていただけると
2019/05/08(水) 05:52:50.94ID:n2G/0O6p
机上の空論では意味がないので
2019/05/08(水) 06:26:14.95ID:+/8+1j3a
オブジェクト指向は理解できても、実際に使って有用性を感じられない
オブジェクトの有用性を感じられるかは、規模の違いによってですか?
418デフォルトの名無しさん
垢版 |
2019/05/08(水) 07:05:27.11ID:pZQhMDAG
>>415
>多重継承を使うと多重継承を使わないときより
>こういうところがこんなに素晴らしくなりました的な
>ご知見を教えていただけると

俺の股間に付いているのが、そんなに羨ましいか?

随意筋 不随意筋
  ↖ ↗
  チンポ
419デフォルトの名無しさん
垢版 |
2019/05/08(水) 07:08:08.30ID:pZQhMDAG
>>416
>机上の空論では意味がないので

机上の空論では意味がないので、トイレに行って、チンポに力を入れたりチンポから力を抜いたりしてみよう!

928 デフォルトの名無しさん 2018/11/21(水) 18:59:11.61 ID:8Yc2p7H1
>>922
>ナンチャッテメッセージングスタイルになったのは

チンポ.オシッコを出す
チンポ.オシッコを止める

さっきトイレでやってきた。


929 デフォルトの名無しさん 2018/11/21(水) 19:07:17.83 ID:8Yc2p7H1
>>915
>単なる動的なメソッド呼び出しをメッセージと称し、ただしコールするメソッドが見つからない場合だけメッセージを
>ハンドリングできる省コストなナンチャッテメッセージングスタイルに落ち着いた。

×
俺.オシッコを止める 俺.オシッコを出す

俺.チンポに力を入れる 俺.チンポから力を抜く
420デフォルトの名無しさん
垢版 |
2019/05/08(水) 07:20:18.52ID:H+xjJkLb
>>419
シミュレーションソフト作ったことあるん?
421デフォルトの名無しさん
垢版 |
2019/05/08(水) 07:29:27.55ID:pZQhMDAG
>>420
シミュレーションソフト開発などしなくても、オブジェクト指向は俺の股間に付いているぞ?
422デフォルトの名無しさん
垢版 |
2019/05/08(水) 07:40:27.36ID:H+xjJkLb
>>418
いろんな処理のあるプログラム書くと有り難みがわかるかも

# 仕様1
・DBからテーブルAのデータを取得する
・取得したデータをExcelに出力する
・Excelは行が1000行を超えたらシートを変える
・Excelのシート名はデータ1,データ2・・・のようにする
・出力したExcelをZIPで圧縮する
・ZIPを添付したメールを文面Aの内容で送信する

# 仕様2
・DBからテーブルBのデータを取得する
・取得したデータをExcelに出力する
・Excelは行が1万行を超えたらシートを変える
・Excelのシート名はデータ1〜10000,データ10001〜20000のようにする
・出力したExcelをZIPで圧縮する
・ZIPを添付したメールを文面Bの内容で送信する

同様の仕様が追加される予定ありみたいな
状況を想定して作ってみると良いよ
423デフォルトの名無しさん
垢版 |
2019/05/08(水) 07:40:55.22ID:H+xjJkLb
>>422
間違えた>>417
424デフォルトの名無しさん
垢版 |
2019/05/08(水) 07:43:57.26ID:H+xjJkLb
>>421
シミュレーションでは多重継承がいるんだ
多重継承のためにちんぽがあるんだってことだと思うんですが
ちんぽはあなたの股間に付いてるからシミュレーションはいらないと
本末が転倒しておられる
あなたのちんぽはねじれてます
■ このスレッドは過去ログ倉庫に格納されています