オブジェクト指向ってクソじゃね?

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2018/08/24(金) 13:32:09.36ID:ifygL6bT
カプセル化(英語:encapsulation)とは、オブジェクト指向を構成する概念の一つで、
オブジェクト内部のデータを隠蔽したり(データ隠蔽)、オブジェクトの振る舞いを隠蔽したり、
オブジェクトの実際の型を隠蔽したりすることをいう。

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

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

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

https://monobook.org/wiki/%E3%82%AB%E3%83%97%E3%82%BB%E3%83%AB%E5%8C%96
352デフォルトの名無しさん
垢版 |
2018/09/28(金) 19:02:47.77ID:1UhvtMTy
それはポリモーフィズムを理解してないだけでは。
2018/09/28(金) 19:03:10.43ID:++iDCvgk
>>350
厄介だけど、どこかのレイヤで病気か否の状態は必要だろ?
それがアプリケーションレイヤよりさらに上なんてのはあり得ない。
2018/09/28(金) 19:08:25.24ID:++iDCvgk
ポリモーフィズムは参照先インスタンスに依存するので、それは間接的とはいえ状態そのものやね。
2018/09/28(金) 19:11:12.35ID:/ke/2lv3
>>353
だから対象オブジェクト内部に値を持たせないで関数のシグネチャーにして渡せと

関数に
病気かどうか
失恋かどうか
気分が悪いかどうか
前食べてからどのぐらい時間がたったか
と餌の量を値として渡せと
2018/09/28(金) 19:13:30.49ID:++iDCvgk
>>355
そのシグニチャを渡すのは誰?
全ての状態を人間であるユーザーが渡すのん?
2018/09/28(金) 19:18:47.60ID:/ke/2lv3
>>356
関数を使うものが渡す
その関数は勝手に知らない場所にある値を使わない
同じ値の組を与えたら必ず同じ値を返す
2018/09/28(金) 19:19:57.74ID:UT33gEiF
>>348
え?誰がそんなこと言ったの?
内部に持ってアクセスできないのが駄目だって何度も言ってるじゃん
関数実行したら出力全部出せよ
同じ引数で実行したら絶対同じ結果を返せ
2018/09/28(金) 19:22:08.98ID:++iDCvgk
>>357
関数を使う、突き詰めればOfficeのユーザーがどの設定画面のどのタブでどのチェックボックスが有効でどのボタンを押したかを一度に伝えるのん?
俺はそんなことはしてないなぁ。
少なくともどの画面が表示されてて何が選択されてるかはアプリの状態に依存してるわ。
2018/09/28(金) 19:23:07.62ID:TedNHSTO
犬に餌をやらなくても満腹にできる魔法
2018/09/28(金) 19:24:11.70ID:/ke/2lv3
何でモデルとアプリの状態の話を混同してるかがわからない
2018/09/28(金) 19:25:06.97ID:++iDCvgk
>>358
OKボタン押したら絶対に同じ結果になるのん??
仮に条件によりOKボタンが押せないなら、それはOKボタンを押せない条件がアプリにあるってことになる。
2018/09/28(金) 19:32:21.07ID:++iDCvgk
>>362
普通は分かるけどへんに誤解があるかもなので訂正。
誤 OKボタンを押せない条件
正 OKボタンを押せない状態
2018/09/28(金) 19:36:02.78ID:UT33gEiF
>>362
引数は同じなの?
お前さっきから人の話聞いてるのか?
2018/09/28(金) 19:37:20.39ID:UT33gEiF
>>362
そもそもお前のアプリって
同じ画像保存してもクリックするたび画像変わるんだろ?
さっさとクビ吊れよ
2018/09/28(金) 19:38:21.84ID:++iDCvgk
俺がはなっから言ってるのは、アプリ以下のどこかに状態は必要なはずで、それよりも外に状態を追い出すのは無理があるってことだけ。
2018/09/28(金) 19:39:58.48ID:++iDCvgk
>>365
お前のアプリは画像選択もしてないのに突然エロ画像表示するのかw
児ポで捕まっとけw
368デフォルトの名無しさん
垢版 |
2018/09/28(金) 19:44:25.53ID:+9bdVI5n
システムの状態とオブジェクトの状態をごちゃまぜにしちゃう無能がハッスルしちゃっとると聞いてw
2018/09/28(金) 19:45:26.35ID:/X9jOxDh
>>323-324
それな
関数型言語っつうのも所詮そんなもん
2018/09/28(金) 19:47:14.39ID:++iDCvgk
システム、つまりアプリの状態は少なくともアプリケーションオブジェクト以下が制御してるので、全てのオブジェクトが状態を管理しないってのは無理があるって話。
最初からそう言ってる。
2018/09/28(金) 19:50:57.15ID:lTwZu9zK
つか関数型餌やりだと餌やり関数から出力される犬は入力された犬のクローンじゃないのか?
2018/09/28(金) 20:15:03.29ID:UT33gEiF
>>366
理由は?
outputでstatusも出しゃいいじゃん
ハイ、論破
373デフォルトの名無しさん
垢版 |
2018/09/28(金) 20:18:19.44ID:+9bdVI5n
>>371にどう答えるかでバカのレベルが計れるw
いまのとこ華麗にスルーした>>372がキングやねw
2018/09/28(金) 20:20:36.12ID:++iDCvgk
>>372
具体的にどんな大多数のアプリがそう実装してるの?
悪魔の証明を避けるにはお前に実証責任があるからね。
375デフォルトの名無しさん
垢版 |
2018/09/28(金) 20:21:59.66ID:+9bdVI5n
>>374
今はおまえがしゃべっていい時間やないで
2018/09/28(金) 20:23:45.55ID:++iDCvgk
>>375
あ、すんません。
誰が喋っていい時間なのかよく分からないけど黙っときます。
377デフォルトの名無しさん
垢版 |
2018/09/28(金) 20:25:39.72ID:+9bdVI5n
>>376
うむ、おまえは既に名誉バカの称号を持っとるからここに参戦すべきやない
すこしおとなしくしとけ
2018/09/28(金) 20:26:26.12ID:++iDCvgk
>>377
あい、すんません。
2018/09/28(金) 20:28:27.44ID:UT33gEiF
>>374
c言語でグローバル変数使わなかったら他どんな組み方があるの?
引数か戻り値で渡すしかないでしょ?
グローバル変数使用禁止が作法のように語られてたんだから
昔の人は何をするべきかわかってたんだよ
2018/09/28(金) 20:56:14.71ID:/X9jOxDh
OOPは糞かもしれんが
じゃあ何がいいのかと言われたら別に他にこれといってないのが現状
381デフォルトの名無しさん
垢版 |
2018/09/28(金) 21:12:44.75ID:k5h2WtG4
頭悪いヤツにかぎって
うれしがってなんでも継承して抽象化とかいってるからな

ホモを人間クラスから派生するぐらい愚かなことやってる
2018/09/28(金) 21:16:43.74ID:l603LAAk
基本は当たり前すぎて、階層化であり局所化であり
順序回的な「無用な」状態保持は極力回避し組みあわせ回路的・関数的構造にし、、、、
関連はネットワーク構造よりもツリー構造を指向して見通しよくし、
関連性の強い物は近くにおき(遠くのファイルからあちこち継承してクロスファイルでmethod取り込むようなことはせず)、
といった、、、アー効けく茶後期ツのための基本セオリー。
その表現技法は言語のパラダイムによって変わるだろう。

問題はオブジェクト指向がそういった基本セオリーに反するような手法として普及してしまったことだよ。
2018/09/28(金) 21:17:57.02ID:l603LAAk
>>382 ひでえ誤字すまん
×「アー効けく茶後期ツ」
○「アーキテクチャー構築」
2018/09/28(金) 21:23:02.60ID:/X9jOxDh
なんでコイツ急にポエりだしたん?
385デフォルトの名無しさん
垢版 |
2018/09/28(金) 21:25:30.29ID:k5h2WtG4
オレぐらいのレベルでないと
オブジェクト指向は使いこなせない
2018/09/28(金) 21:27:24.36ID:l603LAAk
たとえば関数型であれば、クロージャーや部分適用を使うことにより、
クラスをイロイロ作ったり状態instance変数でオブジェクトに特徴をもたせ分けるより
非常にシンプルに表現できるし、
また、解法を関数の段階的 細分化で構成することにより、
内側の回関数は小さくなるにつれ速やかに単純な構造になる上、
(再帰も含めた)関数呼び出しの引数リストと帰り値のスタック階層および局所変数が、
自然と個々の階層の参照する「近くにあるべき」状態を単純な木構増階層のかたちで保持できる。

ちなみに上にも書いたけど俺はfunctinalマンセーじゃないからな。
2018/09/28(金) 21:29:55.72ID:l603LAAk
>>385
俺の周りでは、素人に毛がはえたか分からんような又派遣さんが、
専門学校でインチキ教わったのか知らないが、
そういう薀蓄をたれながら、くそコード量産して要らぬバグ入れて
残業大会やってるよ
388デフォルトの名無しさん
垢版 |
2018/09/28(金) 21:33:34.54ID:k5h2WtG4
あえていえば
できるだけ自律的であることが適切で
なおかつそのようにほぼ自律的に振舞うように実装されていれば
内部状態が保持されることは実装として適切

ただし、すべて外部的な要因で翻弄される続けるオブジェクトが内部状態を保持することは
適切な理由がないかぎり、できるだけ避けるべきといっていい
2018/09/28(金) 21:35:43.41ID:l603LAAk
問題によってどうしても必要な内部状態というものはあるからな。
そこまでだれも否定はしてない
390デフォルトの名無しさん
垢版 |
2018/09/28(金) 21:36:39.96ID:k5h2WtG4
刺身の上にタンポポ乗せる作業なんか
ほっといってもいい

そのクラスだけでほぼ完結できる
2018/09/28(金) 21:37:59.71ID:/X9jOxDh
> 外部的な要因で翻弄される続けるオブジェクトが内部状態を保持する

まぁアンタの言うように避けたようがよさげにも見えるが
ここでふと思い出されるのはコンテクストとかビルダの働き

java.awt.Graphicsみたいなコンテクストオブジェクトをグニグニいじったり
java.lang.StringBuilderのようなビルだオブジェクトをグニグニいじったり
そういうところこそにOOPの楽しみがあるように俺には少し思えるんだ
2018/09/28(金) 22:12:55.17ID:bBdkrZUa
ボタンやチェックボックスがGUIの共通の振る舞いを制御する親クラスがいるのはC++で書かれる前から実装継承するように設計されていた。

一方、普通預金、当座預金、定期預金の共通関数があったとして、預金というスーパークラスを書いているシステムはないぞ。メガバンクの情報系であってもな。
393デフォルトの名無しさん
垢版 |
2018/09/28(金) 22:24:55.23ID:+9bdVI5n
お、キングを抜いた奴がでたでw
今は>>389がバカキングなw
2018/09/28(金) 22:51:26.95ID:HosvZzhg
>>259
OOコード養成ギブス
http://d.hatena.ne.jp/akkt/20080424/1209051266

置いとくぞ忘れてはならない戒め
2018/09/28(金) 23:17:45.51ID:EiOshXgh
>>394
>>260
2018/09/28(金) 23:49:37.69ID:/ke/2lv3
普通はそれってオブジェクト指向エクササイズっていうんだけど
同じ表現だから同じひとなんじゃないかな
2018/09/29(土) 01:23:56.63ID:NuLdKSCl
そいやオブジェクト指向てデザパタとかメジャーなのに肝心のこっちは影が薄いな
2018/09/29(土) 01:57:58.03ID:MMtb4Amd
プロパティとはなんと罪深い発明か
399デフォルトの名無しさん
垢版 |
2018/09/29(土) 02:12:47.80ID:IuTgmxg/
バカでも作れる処理は
入力の構造体と出力の構造体を関数に渡す程度で済む処理
2018/09/29(土) 09:11:35.70ID:nymKFaQh
>>398
IDEと組み合わせるには相性がよかったのかもね
あと典型的なGUIのパーツであるとか
インスペクトしたときズラズラっと出るのが気持ち良いような物に対しては
401デフォルトの名無しさん
垢版 |
2018/09/30(日) 01:13:02.43ID:2u8tHsEV
age
2018/10/02(火) 00:59:29.31ID:clFFurIb
https://qiita.com/raccy/items/58254f842788707f8c53
403デフォルトの名無しさん
垢版 |
2018/10/02(火) 01:05:20.08ID:A7JQSPUH
考察が浅い
2018/10/02(火) 01:13:19.56ID:HjCi0xKJ
長すぎるから産業
2018/10/02(火) 07:20:53.80ID:JB7ad13/
>>403
確かに浅いな
オブジェクト指向のメリットは全くわからなかった
解説してる内容もそもそもクラスを使う側が構造を知ってないと使えない例で書かれてて笑う
2018/10/02(火) 07:35:05.76ID:ju0/OZW1
キータって参考になる記事あんまりないんだよな。ある程度の知識もっているのが前提になってるし
プログラミング関連で検索すると常に上位でヒットするのが嫌だわ
2018/10/02(火) 09:44:25.77ID:3qG7W8x7
>>402
こういう嘘歴史書いて悦に入っちゃう自称識者のほうがゴリラみたいな底辺コンサルよりずっと始末が悪い
2018/10/02(火) 10:15:48.80ID:ti/Lih16
見た目が? 何がゴリラなん?
2018/10/02(火) 10:49:30.13ID:6qOrAQgQ
力だろ?
2018/10/02(火) 12:34:43.67ID:AvMzrL7k
ゴリラコンサルの所業

朝礼で歌を歌わせる、挨拶の練習
○○(会社の名前)イズムの継承と言ってブラック労働を肯定する
定期的に変なセミナーに通わされる
2018/10/02(火) 15:30:45.55ID:/tnW96SL
知能がゴリラ
2018/10/02(火) 18:20:49.67ID:/RdnJML/
qiita.comは動機が不明
なぜ頼まれもしないのに不確かな二次情報を書き散らすのか
なぜ頼まれもしないのにノイズをせっせとネットに増やすのか
あれってお金でももらって記事を書いてるのか?

stackoverflow.comは単純
質問者がいて、答えてあげたい人が要る
質問にも回答にも評価がされるようになっており
有益な情報が共有できるようにつくられてる
質問者、回答者、閲覧者の動機がよくわかる
2018/10/02(火) 18:28:36.78ID:6qOrAQgQ
評価ならqiitaでもされるだろ
2018/10/02(火) 19:04:58.66ID:TcNkDYl8
stackoverflow で答えてあげたい人と大差ないだろ
2018/10/02(火) 19:39:52.33ID:YrRJAaFS
承認欲求なのです・・・
416デフォルトの名無しさん
垢版 |
2018/10/02(火) 19:50:57.77ID:eaArETqj
教えたがりのクズのくせに答えたあげたいとか言っちゃう気持ち悪さw
2018/10/02(火) 19:56:41.61ID:YaWzkSZx
>>412
書いたことあるけど、昔はもうちょっと面白い場だった。
こんなの面白かったよ、とか試してみた、とか。
今は何かというとポエムやら言う奴が出てきたり、本気でレベル低い人も何番煎じかわからん記事書いたりして、収拾ついてない。
コミュニティとしては死んでいってると思う。
418デフォルトの名無しさん
垢版 |
2018/10/02(火) 19:59:28.60ID:Weccy6g3
>>412は便所の落書きのアホさ加減が光る書き込み
419デフォルトの名無しさん
垢版 |
2018/10/02(火) 20:06:51.71ID:eaArETqj
昔は良かったボクちゃんw
2018/10/02(火) 20:24:30.19ID:JlZ/oy05
qiitaはメモ帳として結構便利
家で調べて纏めて仕事ですぐ使えるようにする
githubにテンプレートを置いとくと尚良
2018/10/02(火) 20:28:55.64ID:6qOrAQgQ
gistつかえよ
2018/10/02(火) 20:30:00.28ID:clFFurIb
俺は結構便利だと思ってるけどな
新しいことのとっかかりにしたり
頭の中にない情報を得るのに使ってるわ

まあゴミ記事も多いけど
2018/10/02(火) 20:35:43.11ID:YrRJAaFS
技術的な事読みたいのにポエムばかり上位にくるqiita
424デフォルトの名無しさん
垢版 |
2018/10/02(火) 20:38:05.56ID:eaArETqj
そもそもなんでqiita検索しとんねんwアホやろw
2018/10/02(火) 20:43:51.32ID:YrRJAaFS
ほんの少しだけいい記事もある。

今オブジェクト指向に関するポエムが乱立してるのはアホみたいだがな。
426デフォルトの名無しさん
垢版 |
2018/10/02(火) 21:14:37.02ID:R8M7QKDK
qiitaみたいなしょうもない個人の日記帳読んでるヤツいるの
427デフォルトの名無しさん
垢版 |
2018/10/02(火) 21:27:51.22ID:WxkRXB6W
個人の日記帳として読んでる
428デフォルトの名無しさん
垢版 |
2018/10/02(火) 22:21:33.48ID:HWestuUb
5chみたいな便所落書き読んでる奴いるの?
2018/10/02(火) 22:35:01.96ID:/RdnJML/
便所の落書きはむしろ健全なんだよ
書くほうも読むほうももうそれは分かってるから

>>417
> 何番煎じかわからん記事

ほんとそれ
検索結果を汚すのはもうやめて…
つべの歌ってみたレベルで悲しい
430デフォルトの名無しさん
垢版 |
2018/10/02(火) 22:35:39.44ID:BVvmn2A/
そんなことは自己紹介板に書きなよ
431デフォルトの名無しさん
垢版 |
2018/10/02(火) 22:37:06.75ID:BVvmn2A/
>>430>>428
2018/10/02(火) 22:49:52.65ID:m0qWbxoK
何か上から目線だけどどこのサイトでもいいから
自分で正しいこと書けばいいんじゃないの?

それで次に言うのは
「ゴミポエムだらけでオレの記事が正しく評価されない」
2018/10/02(火) 22:55:41.37ID:YrRJAaFS
ゴミポエムだらけでオレの記事が正しく評価されない
2018/10/02(火) 23:00:45.18ID:1/02bXao
>>432
結果として自分のブログに戻ったよ、俺は。
まあゴミに埋もれる程度ならその程度の評価だと思うし。
2018/10/02(火) 23:02:07.94ID:/RdnJML/
> 自分で正しいこと書けばいいんじゃないの?

何で分かってくれないの…
自分で正しいと思ったことを「書かないで」と言ってる

歌ってみた?歌わんでいい
書いてみた?書かんでいい
2018/10/02(火) 23:07:36.42ID:YrRJAaFS
>>435
有益な情報はどこで仕入れてるの
437デフォルトの名無しさん
垢版 |
2018/10/02(火) 23:26:49.40ID:R8M7QKDK
オレのレスは有益
2018/10/02(火) 23:29:31.38ID:LVKvBfXE
全てを分かってるやつが嘘っぱちを自信満々で流すのが厄介
2018/10/02(火) 23:34:15.18ID:YrRJAaFS
そこはわかってない奴じゃないのか?
2018/10/02(火) 23:59:13.66ID:LVKvBfXE
>>439
ワザと嘘を流す奴がいる
2018/10/03(水) 00:49:14.98ID:p3pJJViF
そんな奴は他の奴に指摘されて恥をかくのさ。
442デフォルトの名無しさん
垢版 |
2018/10/03(水) 00:59:18.00ID:75/JdiDV
オブジェクト指向とは何で
何が良くて
何が悪くて
そしてどうしたらよかったのかとか
纏められるといいんだけれどもねえ
443デフォルトの名無しさん
垢版 |
2018/10/03(水) 01:01:35.24ID:75/JdiDV
目的指向というよりも
手段指向というか方法論指向で始終しちゃって
明後日の方向に愚民を導いて
混乱をもたらしたのは
なんともむなしい
444デフォルトの名無しさん
垢版 |
2018/10/03(水) 01:03:16.82ID:75/JdiDV
日本の失われた20年とちょうど時期が重なる
日本のITの暗黒時代
2018/10/03(水) 01:03:23.91ID:Uljc2mte
>>441
手強いよ
さらに誰に金もらってるのか
特定の言語や商品の悪評を流すことを目的としてるから
2018/10/03(水) 04:50:56.65ID:gboWSeYU
260はいい記事やったけど402はイマイチやったな。てか全部読んでないけど
2018/10/03(水) 10:56:50.79ID:gykQQ827
邪魔する奴の中に
単純に自分を有利にしておきたいから他人が自分の居るレベルまでこれ無い様に邪魔をする
という奴も居るからな
相対的な位置で報酬は決まるから他人を蹴落とす
というのを息をするようにやる奴がかなり居る
全体が進展するより停滞させて自分だけ有利にしようとする下劣な奴が結構居る
教育を変える必要が有るのに今のままでいい
とか言ってる奴もそういう連中
2018/10/03(水) 17:15:26.13ID:bSsx2t9M
>>412
stackoverflow.comって初めて知ったわ。
teratailよりいい?
2018/10/03(水) 17:55:44.54ID:H+WLzHql
>>448
teratailなんて比較対象にすらならない
2018/10/03(水) 19:12:16.15ID:p3pJJViF
stackoverflow人少なすぎない?
451デフォルトの名無しさん
垢版 |
2018/10/03(水) 19:23:56.48ID:ksSGRyva
まさか日本語版とかいうゴミ見てるんじゃないだろうな…まさかな…
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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