オブジェクト指向ってクソじゃねぇかよPart4
■ このスレッドは過去ログ倉庫に格納されています
無理やりオブジェクト指向にしたから出てきた問題を解決して凄い凄い言ってるだけ。
単なるマッチポンプ。
カプセル化(英語: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/ >>678
いやいや、DSLが云々じゃなくて、
フレームワークの設計の話だから >>679
俺が言おうとしたことを言ってくれてありがとう。察しが良くて助かります。
>>677
ちょっと煽られたくらいで発狂しないでくれよ...。別板だったら更にからかってやりたい気分だが、ム板民同士、仲良くしよーぜ。
オブジェクト指向ってここの人達が思っている以上に世の中のソフト開発に貢献している技術なんだよって言いたかっただけ。 >>670
>ではシコシコするとはどういう感覚を言うのか、そこが問題だ。
では質問するが、チンポは随意筋なのか不随意筋なのかどっちなんだ? オブジェクト同士は常に二人称で、「俺」←対話(メッセージング)→「チンポ」。
つまりチンポは独立し自ら考えて行動する別の生き物なのである。
この考え方に至ってからは、オブジェクト指向の理解もすんなり進みました。
上手くオブジェクトを定義して、上手く会話させてやるのがオブジェクト指向
での設計なんだなーと今でも思っています。
https://blog.mah-lab.com/2014/03/18/object-oriented/
チンコの随意筋と不随意筋
http://d.hatena.ne.jp/tottokotokoroten/20130516/1368716650
<俺>
「 部屋の英子がこちらを向いた気配に、彼は勃○した陰○を外から障子に突きたてた。障子は乾いた音をたてて破れ、
それを見た英子は読んでいた本を力一杯障子にぶつけたのだ。本は見事、的に当って畳に落ちた。 」
<チンポ>
「 その瞬間、竜哉は体中が引き締まるような快感を感じた。彼は今、リングで感じるあのギラギラした、
抵抗される人間の喜びを味わったのだ。 」
まさに独立した人格を有したチンポという、もう一人の俺がそこに現れるのである!
【藤子・F・不二雄】「みきおとミキオ」現在と未来、憧れの入れ替わり生活!
https://www.google.com/amp/s/middle-edge.jp/articles/0izbO.amp >>683
ちんぽは俺の意思に逆らって、勃ったりり勃たなかったりするから、不随意だろ? オブジェクト指向って構造体なんだって
ふーんなるほどね 新入社員の胸に丸いおっぱいが2つ付いてた
俺は「お、オブジェクト指向だね」そう言って乳首の先に両手の人差し指を当てた
するとその娘は「もっと手続き的にしてください」と言った
俺はC++をやめてCを書くことにした >>685
>ちんぽは俺の意思に逆らって、勃ったりり勃たなかったりするから、不随意だろ?
トイレでオシッコを出すのとオシッコを止めるのはどうなんだ?
928 デフォルトの名無しさん 2018/11/21(水) 18:59:11.61 ID:8Yc2p7H1
>>922
>ナンチャッテメッセージングスタイルになったのは
チンポ.オシッコを出す
チンポ.オシッコを止める
さっきトイレでやってきた。
929 デフォルトの名無しさん 2018/11/21(水) 19:07:17.83 ID:8Yc2p7H1
>>915
>単なる動的なメソッド呼び出しをメッセージと称し、ただしコールするメソッドが見つからない場合だけメッセージを
>ハンドリングできる省コストなナンチャッテメッセージングスタイルに落ち着いた。
×
俺.オシッコを止める 俺.オシッコを出す
○
俺.チンポに力を入れる 俺.チンポから力を抜く おしっこのコントロールはちんぽ関係ないだろ?
女だっておしっこのコントロール出来るんだからさ。 C++のオブジェクトは、構造体と関数の集まりだけどな。
これって実装依存になるのか? >>690
オシッコをするときのチンポは随意筋、勃起するときのチンポは不随意筋。
これがオブジェクトの多重継承というものだ。 https://ideone.com/pMPcFp
自分の知識フル活用して、こういうテストモック作ってみたよ。
これの欠点を指摘せよ。 ベースコードで80行もかかってるんだ。
俺の思ってるOOは俺には重過ぎるわ!!! 英語が変
なにもかも変
なにがしたいのかわからない
何を目的にしているのか
確かめたいことは何なのか ちんこより一般な議論が見たかったから、物故んでみたのだ〜。
まぁ、ノイズだ。 あ、確かめたいことは、俺が十数年2chで見てきた議論は合っているかということもあるな。 なんか横着な無能を上げ足とってひたすら罵りたい要求が沸き上がってきた
自分も大概だから職場でやるとやばい
あなたを罵っていいですか >>692
海綿体が充血して膨張するのは筋肉関係ないだろうにw >>703
>海綿体が充血して膨張するのは筋肉関係ない
つまりチンポはそれ自体が独立した生き物であり、チンポはチンポ自身が
独立した自らの意思で勃起するということだな。 英語的に少し疑問はあるけど、それはいいとして...
>>693
SetMessagerとGetMessagerはMessageオブジェクトを受け渡しするものなんだよね?
どっちもMessageという名前で実装した方が覚えることが少なくてオブジェクトを使う人にとって分かりやすい気がする。
引数あり→Get,引数なし→Set
あなたは違うかもしれないけど、オブジェクト指向を理解したての人は何でもかんでもGetXXX,SetXXXというメソッドを用意しようとする傾向があるので注意。
絶対だめとは言えないけど、乱用すると変数をprivate化する意味が薄れるケースがある。
...といっても、このコードだけだと自分のアドバイスが的を射ているかは微妙で、なんとも言えぬ。 >>707
普通にtipoしたのと、オブジェクトのとらえ方の問題かも。 >>708
構造的には、Podderはシェアードオブジェクトになっていて、橋渡し。
HighPodderはメッセージの書き込み権限を持っていて、主観に一つ持つ。
会話の発話者のような感じ。
とあるときに、OOは通信が必要なのだ。
と、熱弁していた人がいたのを思い出したので、
通信オブジェクトで自分の例では全二重通信になってる。 >>712
>HighPodderはメッセージの書き込み権限を持っていて、主観に一つ持つ。
会話の発話者のような感じ。
928 デフォルトの名無しさん 2018/11/21(水) 18:59:11.61 ID:8Yc2p7H1
>>922
>ナンチャッテメッセージングスタイルになったのは
チンポ.オシッコを出す
チンポ.オシッコを止める
さっきトイレでやってきた。
929 デフォルトの名無しさん 2018/11/21(水) 19:07:17.83 ID:8Yc2p7H1
>>915
>単なる動的なメソッド呼び出しをメッセージと称し、ただしコールするメソッドが見つからない場合だけメッセージを
>ハンドリングできる省コストなナンチャッテメッセージングスタイルに落ち着いた。
×
俺.オシッコを止める 俺.オシッコを出す
○
俺.チンポに力を入れる 俺.チンポから力を抜く >>703
>海綿体が充血して膨張するのは筋肉関係ない
頭に血が登るというが、チンポに血が下るとはいわないのか? おしっこ止める筋肉にちんぽ関係ないだろ?
括約筋どこにあるか調べてから書けよ。 >>715
>括約筋どこにあるか
チンポの一部だろう? >>715
>括約筋どこにあるか
おしっこをするときのちんぽは、括約筋と尿道を通じて、本体と繋がっている。
勃起するときのちんぽは本体とは離れて、チンポ自身の意思でチンポに血が下る。 だから、おしっこを止める為の筋肉は、ちんぽとは切り離して考える方が合理的なんだが、
…が、しかしおしっこを排出する末端機関の種別によって許容範囲…即ちパラメータの上限値に違いが出て来るんだが、これは末端機関自身にパラメータを持たせるべきか否か。
まあ、基本クラスから継承されたそれぞれのオス型メス型のクラスを作るのが無難だな。
あと、入出力処理機能としてクライアントかサーバーかの設定も同時に継承されたオス型メス型で一意に決定する…と。 >>720
>おしっこを止める為の筋肉は、ちんぽとは切り離して考える方が合理的なんだが、
おしっこが出るのはチンポなんだが? チンポが尿を止めたり出したりするのは、『尿道括約筋』を通じて本体と繋がっているためである。
しかしながら勃起するときのチンポはチンポ自身が本体と切り離された自分の意思で充血して勃起する。 >>721
だから、何で男限定なんだよ。
もっとオブジェクト指向しろよw 例えが卑猥すぎて断片的にしか読んでないけど...
階層構造やカプセル化の考え方も取り入れた方がいいと思うよ。
君はトイレで糞したり放尿する際にチンXを操作するわけだが、いちいち筋肉の働きとか意識しないでしょ? この際、放尿機能にのみ着目して、エスイーばつに関する機能の話は除外しようず。 『シコシコ』という擬音はどうでもよい。問題は、
自我 チンポ
↓ ↓ チンポ=自我
チンポ 自我
オブジェクト指向では、この三種類が考えられるということだ。
>チンポ=自我
散歩している時、自分もチンポも所在地は同一である。
https://i.imgur.com/j3uTk1K.jpg
夏目くんの場合は、チンポが自我を圧倒し、体が自然に滝川さんの股間に近づいていったのだ。
『笑ってごまかすな!!』
と言われても、夏目くんは何と言えば良かったのだろう?
『チンポが自我を超えてしまった』を簡略化して、チンポがシコシコする!
チンポがシコシコしていると(チンポが自我を超越していると)、息もハァハァになる。
チンポがシコシコしている(チンポが自我を超越している)と、顔もアヘ顔になる。
つまりその顔は『チンポの一部』つまりチンポの皮と同じということ。
博士号の肩書きがあっても、STAP細胞のそれは間違いであり科学者として失格。
チンポと自我の関係について、それが間違いということなら、俺も科学者を自称するのを止めよう。
しかしながらあの夏目くんは、笑ってごまかす以外に何と申し上げたら良かったのか。 ちんぽがしこしこして、ちんぽがしこしこしすぎて『帰らぬ人』となってしまった!
「大阪にいる愛人とラブホテルでコトに及んでいる最中に、体調を崩して、そのまま帰らぬ人になったんです」
いわゆる「腹上死」である。しかもこの事実が週刊誌の記事で大々的に報じられてしまったのだ。
明るく気さくな性格で、人望も厚かった音羽山親方だけに、その死因は世間に大きな衝撃を与えた。
https://gendai.ismedia.jp/articles/-/66956
これがハッピーエンドというものだ! 引数を使わず
ローカル変数を使わず
戻り値を使わず
すべてをインスタンス変数に設定して
メソッドを分割しまくってるソースコードを眺めてる
これが君たちの言うオブジェクト指向かね!? >>571
>そんなくだらない事にコスト費やす前に広場BANした方がマシだわw
でもこっちではBANにならないぞ?
!
ぜ
る
す
コ
シ
コ
シ
が
ポ
ン
チ ン ポ が シ コ シ コ す る ぜ !
ン
ポ
が
シ
コ
シ
コ
す
る
ぜ
!
他人のことはとやかく言っても野暮なんで、俺は俺のやりたいようにやるだけだ! >>732
>これが君たちの言うオブジェクト指向かね!?
オブジェクト指向は俺の股間に付いているが?
. , ャ ィE5!..
.. ,,.e;〆 .、 w===|====!. π .e、x&
.. ^~ ! ``= π ,, カ. _ _ ̄オ⌒|! `ヘ
. fラ⌒ ̄l「~~~^. ,.タ. .ル .ll ~\_ 〃 〃. ^..
. .オ.. ,...__,xf~. ^ f! 、
. '^´  ̄ ̄..
.. l|.. r=キ'⌒..
. `!、 ~~~~~~⌒... l}
⌒heィ~. .+s_、_e. .^+--w=f `ヲse、._ _、... ′ 批判する人の方が詳しかったりするから聞くんだけど、
オブジェクト指向って簡単に教えてくれない?
利点と短所も。
思想は良くても実際はうまく機能してないことって多いから オブジェクト指向はフレームワークやライブラリを作るのが楽
フレームワークやライブラリを使わない人にとっては使うのが楽 >>741
>オブジェクト指向って簡単に教えてくれない?
では聞くが、「チンポがシコシコする」という日本語表現は、文法的に正しいのだろうか?
チンポ「を」シコシコするのではなくて、チンポ「が」シコシコする。この場合、「チンポ」は主語となる。
オブジェクト指向で言う「集約」は2種類あって、全体(俺)と部分(チンボ)が繋がっている場合と、
全体(俺)と部分(チンポ)が別々になっている場合とが考えられる。けれども「チンボ」はそれ自体
が独立した生き物であり、所有者の意思とは無関係に、勃起して「シコシコする」。
例えば寝てる時にエロい夢みて朝起きてみたらチンコが勃起して射精してたとか。
違うか?
「胸がドキドキする」は良いが、「チンポがシコシコする」はダメな理由を、50字以内で述べろ! >>743
自動詞と他動詞の違いでしょ
中学校で習うじゃんwww >>741 批判的な視点で見ている者ですが、簡単に述べます。
「オブジェクト指向」の本質は、オブジェクトまたはインスタンスに紐づくようにした
スコープを持つプロパティー(インスタンス変数)やメソッドを使い、継承や多態などを
組み合わせてプログラムを構築していく方法だと捕らえています。
利点は、オブジェクトに関連し必要な機能やインタフェースがオブジェクト自身に
関連付けられているため、データ(オブジェクト、プロパティー)と処理の一体化が図られ、
見通しのようソフトウエアの構築などの面に色々と役立つ筈だった(あえて過去形)と思います。
欠点は、特に型クラスと継承を使うスタイルのオブジェクトでは、複合型したデータ構造において
メンバに対するアクセス制御とアクセサによる穴あけが局面によって融通が効かず、
階層的でシンプルなスコープ管理に劣ること、複合型したデータ構造の継承が
入り組んだ依存構造を作り出し見通しが悪く解読やデバッグのしにくいプログラム構造を
形成しがちなこと。動的に生成したオブジェクトが広範なスコープ・extentを持つ
データの集合体のような役目を持って一人歩きし、アクセサや多数のメソッドcallを繰り返して
各階層を行ったりきたり、本来シンプルになるはずだのプログラムが、なにやってんだがわからなくなることなど
欠点多数です >>748
それは一般化過ぎて一言で言える解にいたるのは非常にムヅカしいと思います。
オブジェクト指向が有効な場面もあります。レイヤや応用、場面によって変わってきますし…
私としてはレイヤと用途によって向いたパラダイムを分けて考えていますす
・最内・最下位レイヤはオブジェクト指向の出番はまずない。手続き的な記述
あるいはリストや再帰を使うならfunctionalで宣言的な記述が適している
・中間レイヤ;特定のコンパクトなデータ構造に対するまとまりのある処理を表現する場合は
オブジェクト指向が有効な場合もありますが、従来からある静的・階層的な
スコープとextent管理および、機能をパッケージまたはモジュール化する機能階層分割による構造構築
・上位・アプリレイヤ:複合型化オブジェクト指向は記述に適さず、従来からある静的・階層的な
スコープとextent管理および、機能をパッケージまたはモジュール化
以上は個人的な考えです >>749
非常に論理的な否定派ですね
ありがとうございます オブジェクトの多態性って言うだろ?
>>746
>途中からちんぽがちんぼになってる
チンポが棒になってしまった、これは肉棒だ!
(チンボ)
チンポは俺のムスコだ!
(チンコ) >>749
>スコープとextent管理および、機能をパッケージまたはモジュール化
抽象論では意味がないので、トイレに行って、チンポに力を入れたりチンポから力を抜いたりしてみよう!
928 デフォルトの名無しさん 2018/11/21(水) 18:59:11.61 ID:8Yc2p7H1
>>922
>ナンチャッテメッセージングスタイルになったのは
チンポ.オシッコを出す
チンポ.オシッコを止める
さっきトイレでやってきた。
929 デフォルトの名無しさん 2018/11/21(水) 19:07:17.83 ID:8Yc2p7H1
>>915
>単なる動的なメソッド呼び出しをメッセージと称し、ただしコールするメソッドが見つからない場合だけメッセージを
>ハンドリングできる省コストなナンチャッテメッセージングスタイルに落ち着いた。
×
俺.オシッコを止める 俺.オシッコを出す
○
俺.チンポに力を入れる 俺.チンポから力を抜く >>751-752
そうすると女性はオブジェクト指向できませんね… >>744
>自動詞と他動詞の違いでしょ
では聞くが、チンポは随意筋なのか不随意筋なのか?
随意筋 不随意筋
↖ ↗
チンポ
『継承』は、サブクラス➡スーパークラス!
オブジェクトの『属性』とは、そこのお前は一体何者なのかという問いかけであり、
オブジェクト間メッセージングとはまさに自我とチンポの二人称対話に他ならない。 >>754
チンポの大部分は海綿体という組織でできてて興奮することによって血液が流れ込んで勃起するっていうのは中学校の保健体育で習うじゃん 国語でも保健体育でもそうなんだけどドメインに関する基礎知識が不足してて適切なオブジェクトを設計できないだけなんじゃないかな
プログラミングの手法を語るのはまだ早いよ >>755
>チンポの大部分は海綿体という組織でできてて興奮することによって血液が流れ込んで勃起する
チンポは『独立した生き物』であり、従ってチンポは自らの意思で血液を吸い込んで勃起する。 チンポの話してる奴、オブジェクト指向とかちゃんと理解した上で、頭良いこと言ってれば面白いのに、言ってることがクソ馬鹿だからつまらん >>761
頭良くても、同じことを何度も繰り返してるだけだと
クソレスでしか無いよw >>760
チンポはオシッコを止めたり出したり出来るが、心臓は血液を止めたり出したり出来ない! >>761
>オブジェクト指向とかちゃんと理解した上で
オシッコのチンポと勃起のチンポ、これがオブジェクトの多態性である! だらだらっとプログラムを書くと大体1000行ぐらいで
訳が分からなくなる。言語は問わない。
ある方法論の下でプログラムを書いた方が破綻することが少ない
その方法論の一つがオブジェクト指向だ。
だが、オブジェクト指向ですべての問題が解決するわけではない。
使わないよりはましというだけ。現在のところオブジェクト指向よりも
ましな方法論がない。それだけの話だ。
巨大 and/or 複雑なプログラムはどういう方法論を使っても
しょせん無駄だが。いわゆる天才待ち。 >>760
心臓にはメッセージング出来ないが、チンポにはメッセージング出来る! >>766
>ある方法論の下でプログラムを書いた方が破綻することが少ない
>その方法論の一つがオブジェクト指向だ。
オブジェクト指向は常に独立指向であり、メッセージングとはオブジェクト間の二人称対話である!
心臓とは対話出来ないが、チンポとは対話できる。それでいてチンポは独立性を失わない! つまりオブジェクト指向とは、俺の股間に付いているモノなのである!
. , ャ ィE5!..
.. ,,.e;〆 .、 w===|====!. π .e、x&
.. ^~ ! ``= π ,, カ. _ _ ̄オ⌒|! `ヘ
. fラ⌒ ̄l「~~~^. ,.タ. .ル .ll ~\_ 〃 〃. ^..
. .オ.. ,...__,xf~. ^ f! 、
. '^´  ̄ ̄..
.. l|.. r=キ'⌒..
. `!、 ~~~~~~⌒... l}
⌒heィ~. .+s_、_e. .^+--w=f `ヲse、._ _、... ′
チンポは独立した生き物であり、本人の意思とは無関係に、自らの意思で勃起してシコシコする! >>770
まぶたがまばたきするのは条件反射だけど、チンポが勃起するのはチンポ自身の意思決定である。 >>770
>>772
まぶたは条件反射でまばたきするだけなので、オブジェクト指向のような知能回路は必要無い。
対するチンポはもう一人の自分であり、自ら考える知能回路が不可欠。
>>745
>欠点は、特に型クラスと継承を使うスタイルのオブジェクトでは、複合型したデータ構造において
>メンバに対するアクセス制御とアクセサによる穴あけが局面によって融通が効かず、 >オブジェクト指向ってクソじゃねぇかよ
チンポには知能回路が不可欠だが、まぶたには必要無いな。 オブジェクトは自立して動くものというのが理想だったからな
現実は自立して動かないから指示系統が複雑化してヤブヘビに
という訳で切り離すべきはモノじゃなくて処理という観点から軽量プロセスや関数型が注目されると >>777
全部違う
wikipedia見たがいい >>745
肯定派に発言権があるかはわからないけど、オブジェクト指向の利点はもっとシンプルだと思います。
そういえば、スレタイは オブジェクト指向はクソ でしたね。では、糞で例えます。
非オブジェクト指向
kusoDasu1();
kusoDasu2();
kusoDasu3();
※一見、短いコードに見えるが...3つの糞を生むために、3つのkusoDasu関数を定義する必要がある。
オブジェクト指向
Kuso kuso1 = new Kuso();
Kuso kuso2 = new Kuso();
Kuso kuso3 = new Kuso();
kuso1.Dasu()
kuso2.Dasu()
kuso3.Dasu()
※3つの糞を生成するために、1つのKusoクラス一つ定義だけで済む。
一つの関数を使い回すのでブレークポイントを張っても馴れないと分かりにくいのはあると思います。でも、可読性やコーディングのしやすさという観点ではどうでしょうか?
一つのクラスを定義しただけで糞を簡単に量産できるんですよ?
3つの糞なんてケチ臭い制約はいりません。メモリが許す限り、アンリミテッド・糞・ワークスができるんですよ?
しかも、継承を使えば...
Kuso kuso1 = new Poo();
Kuso kuso2 = new BananaKuso();
Kuso kuso3 = Ore.Dappun();
kuso1.Dasu()
kuso2.Dasu()
kuso3.Dasu()
このように様々な糞を様々な方法で生成できます。どうでしょう?オブジェクト指向の良さを理解していただけましたか? ■ このスレッドは過去ログ倉庫に格納されています