[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 04/21 23:10 / Filesize : 309 KB / Number-of Response : 1022
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

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



1 名前:デフォルトの名無しさん mailto:sage [2018/10/18(木) 23:20:41.34 ID:/ofNkRJS.net]
すごいんだよ?


カプセル化(英語: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/

477 名前:デフォルトの名無しさん [2018/10/28(日) 20:12:41.22 ID:rXYAu0j5.net]
低学歴知恵遅れにはムリ
それがコタエ

478 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 20:16:59.94 ID:1gIkUjQ9.net]
他人に対してバカしか言えないやつって頭が悪い可能性が高い

479 名前:デフォルトの名無しさん [2018/10/28(日) 20:17:58.05 ID:rXYAu0j5.net]
しっかり低学歴知恵遅れの理由を書いてあるからな
残念なことに

480 名前:デフォルトの名無しさん [2018/10/28(日) 20:50:15.29 ID:MrnoigLK.net]
登り棒してたらチンポがシコシコしてきた、小学生時代にそういう経験したか?

481 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 21:05:42.65 ID:tuMGnEVB.net]
>>456
素人露にすんなよw

482 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 21:12:11.91 ID:GjeNS8O7.net]
>>446
>一切ムダがない
ほとんど無駄話ばっかしやがって
なに言ってやがるw

483 名前:デフォルトの名無しさん [2018/10/28(日) 21:44:33.61 ID:MrnoigLK.net]
>>472
>ほとんど無駄話ばっかしやがって
>なに言ってやがるw

俺はもとよりパソコンに向かって独り言ブツブツ言って、チンポがシコシコしてるだけだが?

484 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 21:54:03.67 ID:GjeNS8O7.net]
局面が変わると融通が効かない複合型データ構造を元にscopeを持たせるから
データ構造のinstanceが依存ネットワークのhubみたいな役割を果たしてしまう。
private/protectedでメンバごとのscopeを人間が制御しようとしても、
一旦中に隠したものを、別の場面では外に見せなきゃいけなくなったりして
少し規模が大きくなると急激に複雑さをます。
また内部scopeからは幅広くすべてがglobal変数みたいに丸見え
局面に応じたscopeやextentの管理がしにくい
カプセル化1つとっても

485 名前:これだけ欠点があるよ []
[ここ壊れてます]



486 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 22:00:04.44 ID:GjeNS8O7.net]
でもカプセル化の一番の弱点というか欠点は
人間が把握しやすい階層的で入れ子なextent, scope管理としにくく
非階層的でランダムグラフ的な依存ネットワークを形成して
かつ本来状態が不要なところまでもinstanceを状態変数みたいにして
getter/setterで頑張って状態管理しちゃおうとしてカオスに向かうこと

487 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 22:02:38.88 ID:9S8iKrwU.net]
何言ってるのかさっぱりわからんかった
オブジェクト指向のメリットの説明はできたん?

488 名前:デフォルトの名無しさん [2018/10/28(日) 22:02:55.82 ID:L1fR1kUz.net]
a.foo()
foo(a)
どちらもaを渡してfooを呼んでいるのに
a.fooの方はグローバル変数と言うらしい

489 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 22:04:11.51 ID:GjeNS8O7.net]
継承にいたっては目も当てられない
コードの実装レベルの類似性に基づく共有のための手段として利用されがちで
論理的な構造、モジュラリティーを破壊し
クロスファイルで静的依存ネットワークを形成する。
その静的コードから動的にどのような依存を持ったインスタンスネットワークが
形成されるのかもはやカオスとなる
あフォトしか言いようがない

490 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 22:05:25.52 ID:qArEjd5e.net]
>>477
とりあえずそのfooの実装においてaがどんなふうにアクセスされるのか意識して
プログラムしてみたら?
少しはコードがマシになると思うよ。

491 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 22:12:05.45 ID:1CEqWH54.net]
>>476
とりあえず、インポートで名前がぶつかりにくい
ぶつかるのクラス名ぐらいだから

492 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 22:41:05.36 ID:3n4eNDQn.net]
>>478
継承元のクラスのコードだけを見てもコード変更の影響が推測できないのが本当に邪悪だよな

493 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 22:53:27.92 ID:oBRWPPCT.net]
>>464の意見は正しい
アホなやつほどシッタカレスに努力する
知ってることだけ言うんじゃなくて
知ってることを総動員して精一杯背伸びしたフワフワ文書を書き込むよね

初心者の子はカキコまんでいい
半年ROMれ

494 名前:デフォルトの名無しさん [2018/10/28(日) 23:01:01.96 ID:88TeNCm3.net]
グローバル変数との区別もできないようなので
話すだけ無駄かと

495 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 23:05:48.86 ID:1gIkUjQ9.net]
リファレンスのドキュメントを継承元スーパークラスから継承したメンバ(フィールド、メソッド)を含めて全部書いてもらえればもうおれはそれ以上は望まない
それだけでいい。。



496 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 23:06:03.23 ID:9S8iKrwU.net]
そもそもオブジェクト指向のメリットだけ説明すればいい

497 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 23:08:22.68 ID:9S8iKrwU.net]
自分が使ってる技術のメリットも説明できんやつはサルだろ
キーボード折って便所掃除でもしてろ

498 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 23:10:16.04 ID:1gIkUjQ9.net]
いちいち表現が大げさで過激なのは芸風?

499 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 23:26:53.50 ID:1CEqWH54.net]
>>484
inheritedで一覧出てくるのはあるよね

500 名前:デフォルトの名無しさん [2018/10/28(日) 23:43:18.92 ID:rXYAu0j5.net]
オレの正確無比でムダのないワルクチに耐えられないのは分かる

低学歴知恵遅れが射精できる今の板の状態はゆゆしき問題
まずコイツラに射精させないようにしないといけない
著しい低学歴知恵遅れのオマエ含めてな

低学歴知恵遅れに強いストレスを与え続けて排除することが板の正常化につながるということは
もうだれもが気付き始めてる

もう後戻りはない

501 名前:デフォルトの名無しさん mailto:sage [2018/10/28(日) 23:55:19.05 ID:Ho+tawR1.net]
射精くらいさせてやれよ、基本的人権にかかわるぞ
つかお前の書くレスもチンポちゃんレベルのゴミだな

502 名前:デフォルトの名無しさん mailto:sage [2018/10/29(月) 03:33:54.12 ID:cH/HmFkL.net]
今時継承とか使わないし
マジ包含だし

503 名前:デフォルトの名無しさん [2018/10/29(月) 06:35:34.63 ID:aSZfpFql.net]
継承は、サブタイピングの目的では使わないけど
差分プログラミングの目的では使う

504 名前:っしょ
ケースバイケースだよ
[]
[ここ壊れてます]

505 名前:デフォルトの名無しさん [2018/10/29(月) 07:25:07.42 ID:PWKZ4BcT.net]
>>478
>継承にいたっては目も当てられない
>コードの実装レベルの類似性に基づく共有のための手段として利用されがちで

戦神のベルトが倉庫を圧迫。仕分けましょう【DQ10】
okirakudq10.com/archives/53537205.html



506 名前:デフォルトの名無しさん [2018/10/29(月) 07:34:29.07 ID:PWKZ4BcT.net]
299 その名前は774人います (ワッチョイ db8e-7PZ0) sage 2018/10/24(水) 06:21:12.94 ID:U7GhzgwH0
ドラゴンクエストテン
〜目覚めし5つの倉庫整理〜

507 名前:デフォルトの名無しさん [2018/10/29(月) 07:37:42.87 ID:PWKZ4BcT.net]
187 その名前は774人います (バットンキン MMe3-9smq) 2018/10/28(日) 20:26:05.00 ID:+SX2t0AiM
新規さんに俺から質問。

仮にオフラインのゲームであれば「拾った」ことを検知して、プレイヤーの手にそれを持たせるなどの処理をかけば目的が達成できます。
(もちろん、ゲーム的に意味を付けるならもっと色んなことを書かないとダメですが)
しかし、オンラインゲームの場合、その「拾ったオブジェクト」はサーバおよび全クライアントで表示されています。
そしてその位置を動かした場合。誰の位置を信頼したらいいでしょうか。
サーバ側? でも、位置のアップデートはたった今拾ったプレイヤーの位置や行動によって変更されます。
edom18.hateblo.jp/entry/2017/05/30/120811

『キラキラマラソン金策』やってますか? 儲かるキラキラアイテムがアストルティアのあちこちにありますか?

ドラクエ10 キラキラの復活時間に仕様変更!
https://serious-takacchi.blog.so-net.ne.jp/DQ10_Kirakira-Marathon-Ver4-0

キラキラオブジェクトの復活時間、意識してますか?

508 名前:デフォルトの名無しさん [2018/10/29(月) 07:48:44.66 ID:PWKZ4BcT.net]
正式名称は分からないが、死亡ラグとは症状としては既に死んでしまっているが自分の視点ではまだ動けている状態となる。
俗に言う「赤ピン」と呼ばれる症状が長く続くことでダメージ判定が遅れてやってくる。
他のプレイヤー視点では既に倒れている。しかし、遅れているので自分では分からないためいきなり何もないところで死ぬ。
また、デスマッチなどでは既に死んでいるため、自分が動けてもリスポンされていたりして無敵時間が無くなり、
復活した瞬間に倒されることもある。自分がいつ死んでいるのか分からず突然死んで突然画面が切り替わってしまう。
その結果キルログを注視してしまいゲームを楽しめなくなってくる。
国内のゲームではこの「赤ピン」という症状が発生し、移動以外の全ての行動が遅れて同時にやってくる。
射撃も投擲も全て赤ピン状態が解除された瞬間に行われるが、射撃の弾丸は飛ばず音だけ重なって発生する。しかし、
投擲は投げたはずが飛ばす、赤ピン状態が解除された瞬間に投擲開始するため、
銃を構えていても突然投擲してしまい味方を巻き込んだり自爆したりしてしまう。
https://gamingpcs.jp/knowledge/basic/kankyou/yusentomusen/kaisenhuguai/

プログラミング言語の性能差
主な言語とスループット
言語 スループット 特性
C/C++ 100 静的言語ネイティブコード
Java 1〜10 静的言語VMバイトコード
Ruby/Python 0.1〜1 動的言語
オンラインゲームのサーバではC/C++が最も使われ

www.wata-lab.meijo-u.ac.jp/file/seminar/2013/2013-Semi1-Atsushi_Somekawa.pdf

メインとなるのはC++で書かれたゲーム関連のプログラムなんですけれども、他にもWebですね、
こちらはJavaで書かれていますし、他にもToolsとかスクリプトとか、実はいろいろなゲームがデータベース
に接続します。この時にある処理を全ての言語で同じように実装していくというのは非常に冗長なので、
Oracle側にSQL言語で書かれたAPIを実装して、どんな言語からでも、全くその実装のことが分からなくても、
同じ処理が呼び出せるという手法を取っています。
https://gigazine.net/news/20120824-dragonquest-backstage-cedec2012/

509 名前:デフォルトの名無しさん [2018/10/29(月) 08:05:48.40 ID:PWKZ4BcT.net]
俺にとっての『オナニー』はするしないではなくて気がついたらしていた、オナニーはそこにあったのだ!

510 名前:デフォルトの名無しさん [2018/10/29(月) 08:08:02.95 ID:PWKZ4BcT.net]
328 その名前は774人います (バットンキン MMe3-9smq) 2018/10/28(日) 21:03:44.64 ID:+SX2t0AiM
>>327
>桁直しは直すのは簡単。直ったか確認するのがすげーめんどくさい(金かかる)。

オブジェクト指向によるアプリケーション開発は、変更されない箇所を軸に、
頻繁に変更されるであろう箇所をクラスに抽出するプログラミングスタイルです。
例えば、店舗がどんどん増えていくファーストフードのシステムを開発することになったとしましょう。
店舗が増えていくということは、そこは「頻繁に変更される箇所」なのでクラスに抽出して設計する必要があります。
そうすると近い将来起こる「店舗が増える変更」に対して柔軟に対応できるようになります。
https://qiita.com/tutinoco/items/6952b01e5fc38914ec4e

511 名前:デフォルトの名無しさん mailto:sage [2018/10/29(月) 08:12:33.59 ID:QZvcvvpv.net]
半角さん、いろんなところで論破されて、ついには相手に低学歴と言う機能しか無くなってたんだな

512 名前:デフォルトの名無しさん mailto:sage [2018/10/29(月) 08:36:03.61 ID:WYy8uN+t.net]
win32apiでは無理なんだーというのは論破なんですかね

513 名前:デフォルトの名無しさん [2018/10/29(月) 08:51:11.68 ID:PWKZ4BcT.net]
>>474
>private/protectedでメンバごとのscopeを人間が制御しようとしても

集約と汎化、制御と独立の使い分けが大切なんだよな。

514 名前:デフォルトの名無しさん [2018/10/29(月) 08:58:50.49 ID:PWKZ4BcT.net]
>>475
>でもカプセル化の一番の弱点というか欠点は

チンポは独立した生き物、とは考えられないか?

515 名前:デフォルトの名無しさん [2018/10/29(月) 09:05:50.09 ID:PWKZ4BcT.net]
>>366
>多重継承によってクラス間の依存度が高まることでデバッグが難しくなってしまうのが問題の本質なんだから

シコシコするチンポは不随意筋だが、オシッコをするときのチンポは随意筋だろ?



516 名前:デフォルトの名無しさん [2018/10/29(月) 09:09:30.28 ID:PWKZ4BcT.net]
2013-05-17 00:04
チンコの随意筋と不随意筋
d.hatena.ne.jp/tottokotokoroten/touch/20130516/1368716650

517 名前:デフォルトの名無しさん mailto:sage [2018/10/29(月) 09:34:03.09 ID:532STKfj.net]
>>492
差分にこそ使うなよ

518 名前:デフォルトの名無しさん mailto:sage [2018/10/29(月) 09:42:25.11 ID:532STKfj.net]
>>498
単に同じ種類のデータが増えるのは変更とは呼ばんだろ

519 名前:デフォルトの名無しさん mailto:sage [2018/10/29(月) 19:05:03.88 ID:nnLR5iCS.net]
DBがカオスなのでオブジェクト指向でいくら頑張っても無駄

520 名前:デフォルトの名無しさん [2018/10/29(月) 19:43:48.51 ID:aSZfpFql.net]
>>505
なんで?

521 名前:デフォルトの名無しさん [2018/10/29(月) 22:31:26.97 ID:PWKZ4BcT.net]
「りっきーのなんでもおコタえしまショー!」 当日のプレイバック
hiroba.dqx.jp/sc/topics/detail/286674e3082feb7e5afb92777e48821f/

質問 11
アイテム・装備欄がキツキツなのに 
春イベでナスの衣装券5ワクをくれたり しかも人に渡せなかったり。
この件に関して 開発は何を考えているのか 教えてください。

【回答】 齋藤力
アイテム枠の軽減についてはできる限りのことをしたいと思い 
日々スタッフが総力戦で取り組んでいるというのが正直な現状です。
一方で 新しいアイテムが まったく増えないようなゲームにもするわけにはいかない思っております。


↑これに対するありがたいお言葉


いま目の前にあるもんをちゃんと使ってそれを面白くするほうが先
ttp://i.imgur.com/UMoHBoY.jpg

宮本
いま、若いデザイナーがゲームをつくってる時、
面白くないから、ついつい新しい材料を追加して
面白くしようとするんですよ。
実は、いま目の前にあるもんをちゃんと使って
それを面白くするほうが先やのに、
新しいものを持ってくるという。

岩田
新しい材料をどんどん増やして
面白さを導き出そうとするんですね。

522 名前:デフォルトの名無しさん [2018/10/29(月) 22:34:06.97 ID:PWKZ4BcT.net]
>>366
>多重継承によってクラス間の依存度が高まることでデバッグが難しくなってしまうのが問題の本質なんだから

随意筋   不随意筋
  ↘   ↙ 
   チンポ

523 名前:デフォルトの名無しさん [2018/10/29(月) 23:32:40.68 ID:LL+W6ENh.net]
随意筋←implements─チンポ─implements→不随意筋

524 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 00:22:04.00 ID:t1FWEUWr.net]
関数型言語のやり方がそれなりに普及しちゃったんで、全てオブジェクト指向でプログラムを書くメリットはそんなに残ってないんだよ
オブジェクト指向が唯一の抽象化の手段になってる言語ばっかりだった時代はもう過ぎ去ったんだよ

525 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 00:32:22.39 ID:J+0nEgfQ.net]
オブジェクト指向に対比するものは関数型なんだろうか?
オブジェクト指向や関数型は「抽象化」なんていうすごいことを
本当にしているんだろうか?
オブジェクト指向の「抽象化」は似たメソッドがあったら
スーパークラスを設けて継承、
「抽象化」とはそんなものなんだろうか?



526 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 00:35:20.31 ID:J+0nEgfQ.net]
インチキマンセーなオブジェクト指向よさらば

527 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 00:52:27.86 ID:WPZpU4UL.net]
何かswiftでpostする時クッキーオブジェクトなるものを複数使って
ただデータ投げたいだけなのにクソ面倒臭い段取り組んだけど
関数型というかクロージャ使うというもう1つの別案が出来てからこういうのでいいんだよ感はかなりあった

528 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 00:56:16.44 ID:iPJEDoz1.net]
スーパークラスとか、何でもかんでも詰め込まれた四次元ポケットみたいになってるだけの場合もあるからな
抽象化はスーパークラス生成の必要条件ではない

529 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 05:10:38.28 ID:8OzYaVjS.net]
ビジターパターンとか考えると糞だと思うーん!!
パターンマッチグーあればこんな紛らわしいパターンはいらなくてグーなのにな

530 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 06:18:44.10 ID:2OC/bUyM.net]
パターンマッチングがなければ?

悪いのはパターンではなくて、言語だろう?

531 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 07:36:22.58 ID:LiqPRKTy.net]
ああ、>>517はビジターパターンの利点をまるでわかっていないな。
ばーか

532 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 09:46:44.93 ID:t1FWEUWr.net]
横からでスマンがビジターパターンの利点って何?ExpressionProblemに対処できるってのはもう利点にならないよ

533 名前:デフォルトの名無しさん [2018/10/30(火) 11:42:53.14 ID:M87fl2aa.net]
「助けてー!ドラえもーん!!」
それはのび太ーパターン。

534 名前:466 [2018/10/30(火) 16:39:31.71 ID:m+t0SJNK.net]
>>485
大規模開発で構造化プログラミングよりは責任分担し易いってだけ。
でも給料払う側にも貰う側にも、コレが最重要。

Linux作者や関数型言語や論理型言語信者はオブジェクト指向なぞ不要と言ってる。(のは、その個々が開発力あるから?)

>>500
コールバック関数が引数固定な以上論破は無理だろ。
他の事例なら関数型言語みたく引数増やせば良いじゃない戦法もあるが。
それだって限界ある。
(関数型言語もマルチスレッドにオブジェクト指向より向いてるだけで、銀の弾丸では無い)


>>492
そう。
ケースバイケース。
ただ、それが分からないまま使う奴も多いのがね。
案外複雑だから。
親クラスのprotectedが子クラスのprivateとか。代数重ねると新入社員には無理。
そういう言う人間の限界も含めた譲位。
クラスライブラリからの継承とか、本当一部だけが継承で有効。

535 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 16:58:47.55 ID:bp+Jjz8r.net]
継承した時点で密結合になるので特に外部作成のクラスは継承せず包含しましょうは基本

ほとんどのケースはパブリックインターフェースを使用して事が済むので



536 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 18:33:42.29 ID:+RULmJtu.net]
>>522
リーナスはC++を嫌ってるだけで、オブジェクト指向については否定してないぞ

537 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 18:41:52.81 ID:6OfBsZVT.net]
抽象化苦手な人ってどうしても居るからね

538 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 19:03:28.13 ID:aG1tKkvM.net]
>>524
いや相当否定してるぞ。
ただlinuxのファイルシステム回りはオブジェクト指向的だし、
その辺りについてはlinusも必要性を言ってた気はする。

539 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 19:14:04.91 ID:aG1tKkvM.net]
>>525
実際は抽象馬鹿で具体的なテスト内容を思いつかない馬鹿のが問題だけどな。

540 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 19:18:11.16 ID:XuNoXE89.net]
>>527
具体的に言うと?

541 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 19:23:17.43 ID:6OfBsZVT.net]
抽象化を理解してるレベル帯ならSOLIDも理解してるだろう
これができてる人はテストが非常にエレガントだ(何故なら設計がエレガントだから)
抽象化が出来ない人の方がテストよくわからんと嘆いてるね
話を聞いてみると組み合わせ爆発を起こしてパンクしてしまうんだと

542 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 19:27:37.65 ID:RlVgLquL.net]
>>526
明確にオブジェクト指向を否定してるコメントなんかあったか?

543 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 19:27:39.02 ID:XuNoXE89.net]
オブジェクト指向を理解してないやつはSOLIDも理解してない

544 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 19:30:03.47 ID:ZgZ/9CmG.net]
>>530
C++を否定するってことは、オブジェクト指向を否定してるってことなんですよ?

545 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 20:03:29.74 ID:bp+Jjz8r.net]
c++はマルチパラダイム云々なので
何でもアリ言語やぞ



546 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 20:08:42.36 ID:RlVgLquL.net]
>>532
それはない

547 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 20:10:28.83 ID:0wy2mEm7.net]
>>532
お前の母ちゃんを否定するってことは、女を否定するってことなんですよ

548 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 20:14:21.32 ID:aG1tKkvM.net]
>>530
https://srad.jp/~taro-nishino/journal/509450/

ほとんどの部分はc++に対するヘイトだけど
OO言語について語ってる部分がオブジェクト指向の否定と思う。
だいたい言ってることは一理あるわ。
少なくともここでの議論よりかは意味がある。

549 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 20:16:11.62 ID:ZgZ/9CmG.net]
> OO言語について語ってる部分が

それどこ?

550 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 20:57:56.92 ID:IL+nqSpb.net]
Linusがオブジェクト指向を否定する理由の一つがまさに>>536
C++やオブジェクト指向の否定とも読めるが
それはKernelというコンテキストの中での話だ
egrep "オブジェクト|C++" としたときに
Kernelというコンテキストを隠蔽しているのだ

C++は本気で嫌ってるのかもしれんが
オブジェクト指向に関してはどこまで否定的なのか読めん

551 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 21:09:06.98 ID:ZgZ/9CmG.net]
ということで結論はLinusはオブジェクト指向を
否定してないってことでいいかな

552 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 21:23:48.92 ID:rGP4zqaC.net]
>>536
相当否定してる、から一転

553 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 21:53:48.89 ID:bOd1i88g.net]
>実際の問題が特別なデータ記述で関連付けられるとは私は考えない。
>貴殿はその類のデータのためのライブラリルーチンを欲しくない。
>つまり

554 名前:A貴殿はデータとその他の種類のデータ両間で相互作用するコードを欲しいのだ。


オブジェクト指向の欺瞞の心臓
初心者から上級者までおそらく全員が思ってること
すばらしい
[]
[ここ壊れてます]

555 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 21:54:42.59 ID:IL+nqSpb.net]
>>539
私見だが6割程度は否定してると思う
コンテキストが一つのオブジェクトに依存している範囲のみ
オブジェクト指向は使える、と考えているのでは?

> だが、OO言語は、オブジェクトが重要であり、オブジェクトに関連付けられたメソッドを持つべきだという手段を考える傾向にある。まさに馬鹿げた話だ。一つのオブジェクト(又は、ある型のオブジェクトの当り前なコレクション)が本当の関心事ではない。
> 関心すべきは、異なる型の異なるオブジェクトが相互作用し、ロッキングルールを持つ等々の時なのである。その時点で、重要なのは一つのオブジェクトではもうないのだから、"オブジェクトインターフェイス"を隠蔽しようとするのは絶対に間違っている。

> だから、私はデータの記述が重要であることに賛成であるが、同時に、最も記述が本当に重要である事柄は、いかにデータが矛盾無いか、一貫性の必要条件があること、ロッキングルールがあること(そして、一つのデータオブジェクトのためでないことも)等々である。



556 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 22:00:25.32 ID:UtoqQUYR.net]
なんか分かりにくい日本語だな、もっとマシな言い方はできなかったものか

557 名前:デフォルトの名無しさん [2018/10/30(火) 22:14:27.78 ID:xkGCjv5u.net]
半角先生の超訳をお願いします

558 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 22:14:59.00 ID:bOd1i88g.net]
実際に言ってることがおかしい気がする

>重要なのは一つのオブジェクトではもうないのだから、"オブジェクトインターフェイス"を隠蔽しようとするのは絶対に間違っている。

ようするにまだるっこしいインターフェース介さずに
手順をすっとばして中直接いじらせろって言ってるんだろ?
遅いから。
コンパイラがバグるから。

基地外

559 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 22:19:26.57 ID:UtoqQUYR.net]
あんまりOOPの欠点の核心を突いていない
ような文書も散見される希ガス

560 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 22:21:27.12 ID:GV6qK/VB.net]
複数のオブジェクトが相互にかかわる煩雑なメソッドを
そのうちの一つのオブジェクト内に押し込めようとしているのは間違っている

それによって矛盾や一貫性やロッキングルールが失われるのはよくねえよ

561 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 22:22:00.26 ID:UtoqQUYR.net]


562 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 22:27:42.15 ID:UtoqQUYR.net]
ぴったり産業の意訳で結構分かりやすくなったが
行間あいてるし
デモなんかやっぱOOPの極端に目立つ欠点の一側面を述べてるだけじゃん感があるな

563 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 22:31:36.48 ID:bOd1i88g.net]
>だから、私はデータの記述が重要であることに賛成であるが、同時に、最も記述が本当に重要である事柄は、
>いかにデータが矛盾無いか、一貫性の必要条件があること、ロッキングルールがあること(そして、一つのデータオブジェクトのためでないことも)等々である。

>私は、それらを本当に容易にコンパイラへは書けないと思う。結局、どうしても自分でそのコードを書かざるを得ない。


それを達成してくれるのが隠ぺいだろ
メンバ変数間の整合性は公開メソッド使ってる限り保たれるはず

最終的にはマシン語自分で見ないと安心できないような世界の人のいうこと

564 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 22:39:26.06 ID:bp+Jjz8r.net]
カーネル作ってる連中からすりゃそりゃそうだろ

565 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 22:43:09.18 ID:GV6qK/VB.net]
複数のオブジェクトを隠蔽したオブジェクト内でどこかで不具合があったらどういう状況で起こってるのかわかりづらいし
どこで誤作動が起こってるか見当がつけにくい
中のオブジェクトが他のオブジェクトでも隠蔽されていたらまあ悲惨

関数だとシグネチャーでどのオブジェクトを使ってるかややわかりやすいんじゃないかな



566 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 22:44:00.50 ID:GV6qK/VB.net]
オブジェクトじゃなくて構造体か

567 名前:デフォルトの名無しさん [2018/10/30(火) 22:46:26.39 ID:M87fl2aa.net]
おいおいLawrence Krubnerとかいうクソザコがとんでもないこと言ってるぞwww
今をトキメくオブジェクト指向に楯突くとか身の程知らず過ぎwwwww

www.smashcompany.com/technology/object-oriented-programming-is-an-expensive-disaster-which-must-end
「オブジェクト指向の強みだと思われているほとんどの要素はオブジェクト指向固有ではなく、オブジェクト指向固有の強みなど、実際には一つもない」

568 名前:デフォルトの名無しさん [2018/10/30(火) 22:59:09.30 ID:M87fl2aa.net]
【悲報】Oscar Nierstraszとか言うクソザコ、身の程知らずにもオブジェクト指向批判の記事を書いたためにコメント欄で5年に渡って叩かれ続けるwwwww
blog.jot.fm/2010/08/26/ten-things-i-hate-about-object-oriented-programming/

569 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 22:59:51.90 ID:sh92d/1G.net]
私が心配する最も大きな問題はコードではなく、コードと開発の"フロー"だ。

いいね
やっぱり超頭いい人って違うね

570 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 23:12:40.53 ID:sh92d/1G.net]
一つのオブジェクト(又は、ある型のオブジェクトの当り前なコレクション)が本当の関心事ではない。

関心すべきは、異なる型の異なるオブジェクトが相互作用し、ロッキングルールを持つ等々の時なのである。その時点で、重要なのは一つのオブジェクトではもうないのだから、"オブジェクトインターフェイス"を隠蔽しようとするのは絶対に間違っている。


これだよ
オブジェクト同士の相互作用が複雑なんだろ?

571 名前:デフォルトの名無しさん [2018/10/30(火) 23:28:38.97 ID:M87fl2aa.net]
オブジェクト指向は、オブジェクト指向にしかない問題を作り上げそれを解決するという産業を作り出し金を稼いでいる
harmful.cat-v.org/software/OO_programming/why_oo_sucks

しかしそれってある意味立派なことではないだろうか?
プログラマの雇用をC++を作ることで守った人みたいに。

572 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 23:50:44.94 ID:UtoqQUYR.net]
金まき上げる層にとってはそうかもしれないが
OOPに苦しめられている開発者のことも忘れないでください

573 名前:デフォルトの名無しさん [2018/10/30(火) 23:53:00.63 ID:H/liFP07.net]
AというオブジェクトからBというオブジェクトにアクセスする場合
よほどの理由がないかぎりBからAにアクセスすることは避けないといけない

できるだけコンポジションにするべき
この場合、AがBを内包するようにする

574 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 23:56:18.20 ID:UtoqQUYR.net]
A<->B 相互参照は避けろって
どうした、熱でもあるのか当然のことなぞ書いたりして
いい子だから射精して早めに寝なさい

575 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 23:58:33.02 ID:sh92d/1G.net]
AとBを内包するCを作り中ではAとBに殴り合いの喧嘩をさせる
生き残った方も潰す



576 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 23:59:09.37 ID:sh92d/1G.net]
Cも潰す

577 名前:デフォルトの名無しさん [2018/10/31(水) 00:00:14.64 ID:THFaDY1P.net]
オレはこのことを前スレでも書いている






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<309KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef