カプセル化(英語:encapsulation)とは、オブジェクト指向を構成する概念の一つで、
オブジェクト内部のデータを隠蔽したり(データ隠蔽)、オブジェクトの振る舞いを隠蔽したり、
オブジェクトの実際の型を隠蔽したりすることをいう。
偏差値の低い学校向けの情報処理系教科書において「大変すばらしいものであり絶対に使うように」と大体的に宣伝された。
一方、カリフォルニア大学バークレー校の有識者を中心としたインターネットを作った人たちは「階層化の有害性」として
「絶対に使うな」としている。大雑把にいうと、その時は良くても、将来的な改修の際に隠蔽されたデータに
アクセスできないと解決できない問題が出てきて、結果的にデスマーチに陥るというのである。
オブジェクト指向の発案者であるアラン・ケイもコーディング規約(頭文字にアンダースコアを付けるなどの命名規則)で
縛る程度にすることを推奨しており、アラン・ケイが関わったオブジェクト指向プログラミング言語にはどれも「private」
という概念はない。
https://monobook.org/wiki/%E3%82%AB%E3%83%97%E3%82%BB%E3%83%AB%E5%8C%96
オブジェクト指向ってクソじゃね?
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2018/08/24(金) 13:32:09.36ID:ifygL6bT420デフォルトの名無しさん
2018/10/02(火) 20:24:30.19ID:JlZ/oy05 qiitaはメモ帳として結構便利
家で調べて纏めて仕事ですぐ使えるようにする
githubにテンプレートを置いとくと尚良
家で調べて纏めて仕事ですぐ使えるようにする
githubにテンプレートを置いとくと尚良
421デフォルトの名無しさん
2018/10/02(火) 20:28:55.64ID:6qOrAQgQ gistつかえよ
422デフォルトの名無しさん
2018/10/02(火) 20:30:00.28ID:clFFurIb 俺は結構便利だと思ってるけどな
新しいことのとっかかりにしたり
頭の中にない情報を得るのに使ってるわ
まあゴミ記事も多いけど
新しいことのとっかかりにしたり
頭の中にない情報を得るのに使ってるわ
まあゴミ記事も多いけど
423デフォルトの名無しさん
2018/10/02(火) 20:35:43.11ID:YrRJAaFS 技術的な事読みたいのにポエムばかり上位にくるqiita
424デフォルトの名無しさん
2018/10/02(火) 20:38:05.56ID:eaArETqj そもそもなんでqiita検索しとんねんwアホやろw
425デフォルトの名無しさん
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みたいな便所落書き読んでる奴いるの?
429デフォルトの名無しさん
2018/10/02(火) 22:35:01.96ID:/RdnJML/430デフォルトの名無しさん
2018/10/02(火) 22:35:39.44ID:BVvmn2A/ そんなことは自己紹介板に書きなよ
432デフォルトの名無しさん
2018/10/02(火) 22:49:52.65ID:m0qWbxoK 何か上から目線だけどどこのサイトでもいいから
自分で正しいこと書けばいいんじゃないの?
それで次に言うのは
「ゴミポエムだらけでオレの記事が正しく評価されない」
自分で正しいこと書けばいいんじゃないの?
それで次に言うのは
「ゴミポエムだらけでオレの記事が正しく評価されない」
433デフォルトの名無しさん
2018/10/02(火) 22:55:41.37ID:YrRJAaFS ゴミポエムだらけでオレの記事が正しく評価されない
434デフォルトの名無しさん
2018/10/02(火) 23:00:45.18ID:1/02bXao435デフォルトの名無しさん
2018/10/02(火) 23:02:07.94ID:/RdnJML/ > 自分で正しいこと書けばいいんじゃないの?
何で分かってくれないの…
自分で正しいと思ったことを「書かないで」と言ってる
歌ってみた?歌わんでいい
書いてみた?書かんでいい
何で分かってくれないの…
自分で正しいと思ったことを「書かないで」と言ってる
歌ってみた?歌わんでいい
書いてみた?書かんでいい
436デフォルトの名無しさん
2018/10/02(火) 23:07:36.42ID:YrRJAaFS >>435
有益な情報はどこで仕入れてるの
有益な情報はどこで仕入れてるの
437デフォルトの名無しさん
2018/10/02(火) 23:26:49.40ID:R8M7QKDK オレのレスは有益
438デフォルトの名無しさん
2018/10/02(火) 23:29:31.38ID:LVKvBfXE 全てを分かってるやつが嘘っぱちを自信満々で流すのが厄介
439デフォルトの名無しさん
2018/10/02(火) 23:34:15.18ID:YrRJAaFS そこはわかってない奴じゃないのか?
440デフォルトの名無しさん
2018/10/02(火) 23:59:13.66ID:LVKvBfXE >>439
ワザと嘘を流す奴がいる
ワザと嘘を流す奴がいる
441デフォルトの名無しさん
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の暗黒時代
日本のITの暗黒時代
445デフォルトの名無しさん
2018/10/03(水) 01:03:23.91ID:Uljc2mte446デフォルトの名無しさん
2018/10/03(水) 04:50:56.65ID:gboWSeYU 260はいい記事やったけど402はイマイチやったな。てか全部読んでないけど
447デフォルトの名無しさん
2018/10/03(水) 10:56:50.79ID:gykQQ827 邪魔する奴の中に
単純に自分を有利にしておきたいから他人が自分の居るレベルまでこれ無い様に邪魔をする
という奴も居るからな
相対的な位置で報酬は決まるから他人を蹴落とす
というのを息をするようにやる奴がかなり居る
全体が進展するより停滞させて自分だけ有利にしようとする下劣な奴が結構居る
教育を変える必要が有るのに今のままでいい
とか言ってる奴もそういう連中
単純に自分を有利にしておきたいから他人が自分の居るレベルまでこれ無い様に邪魔をする
という奴も居るからな
相対的な位置で報酬は決まるから他人を蹴落とす
というのを息をするようにやる奴がかなり居る
全体が進展するより停滞させて自分だけ有利にしようとする下劣な奴が結構居る
教育を変える必要が有るのに今のままでいい
とか言ってる奴もそういう連中
448デフォルトの名無しさん
2018/10/03(水) 17:15:26.13ID:bSsx2t9M449デフォルトの名無しさん
2018/10/03(水) 17:55:44.54ID:H+WLzHql >>448
teratailなんて比較対象にすらならない
teratailなんて比較対象にすらならない
450デフォルトの名無しさん
2018/10/03(水) 19:12:16.15ID:p3pJJViF stackoverflow人少なすぎない?
451デフォルトの名無しさん
2018/10/03(水) 19:23:56.48ID:ksSGRyva まさか日本語版とかいうゴミ見てるんじゃないだろうな…まさかな…
452デフォルトの名無しさん
2018/10/03(水) 19:32:35.85ID:p3pJJViF 紹介されたから見に行ったら日本語版だったの
453デフォルトの名無しさん
2018/10/03(水) 19:42:27.24ID:bSsx2t9M 英語版なんて読めないよ・・・
コードはなんとなくわかるが質問文が
コードはなんとなくわかるが質問文が
454デフォルトの名無しさん
2018/10/03(水) 20:03:14.53ID:OyXOgA+h455デフォルトの名無しさん
2018/10/03(水) 20:24:40.36ID:p3pJJViF 英語版いいな。情報量が圧倒的に多い。センキュー
456デフォルトの名無しさん
2018/10/03(水) 20:50:59.00ID:L7SsoV0I 海外でHelp me, Stackoverflow. You’re my only hope.って書かれたTシャツ着たやつ見るくらい
457デフォルトの名無しさん
2018/10/03(水) 22:09:14.84ID:2Mgu08sP >>454
今なら正しくOOPを実践してるコードばかりなの?
そもそも正しいOOPってどんなものなの?
第一デザパタは前の方がさかんに取りざたされていたじゃない。
振り返って今だからこそ分かるんじゃじゃないの?
世に流布していたOOPはくそコードを量産した元になったと。
今なら正しくOOPを実践してるコードばかりなの?
そもそも正しいOOPってどんなものなの?
第一デザパタは前の方がさかんに取りざたされていたじゃない。
振り返って今だからこそ分かるんじゃじゃないの?
世に流布していたOOPはくそコードを量産した元になったと。
458デフォルトの名無しさん
2018/10/03(水) 23:08:05.48ID:G0/tEBDY 我々はね、間違うのよ
だいたいのことを間違うの
OOPだから糞コードになったんじゃなくて
OOP関係なく、糞コードにしかならないの
その一点についてすら自覚が無いの
だいたいのことを間違うの
OOPだから糞コードになったんじゃなくて
OOP関係なく、糞コードにしかならないの
その一点についてすら自覚が無いの
459デフォルトの名無しさん
2018/10/03(水) 23:16:15.49ID:p3pJJViF main関数から始まるc++はオブジェクト指向か?
(オブジェクト指向をちっとも理解してないものの意見です)
(オブジェクト指向をちっとも理解してないものの意見です)
460デフォルトの名無しさん
2018/10/03(水) 23:39:24.91ID:YTuGf5mm >>459
C++はオブジェクト指向(をサポートした)言語だよ
Cと違って継承や多態の機能が標準であるでしょ?
今からふり返ると中途半端な部分もあるけど
ただそのC++を使って書いたコードが
オブジェクト指向らしく書けているかは別の話
OOPとOOA(D)の違い
C++はオブジェクト指向(をサポートした)言語だよ
Cと違って継承や多態の機能が標準であるでしょ?
今からふり返ると中途半端な部分もあるけど
ただそのC++を使って書いたコードが
オブジェクト指向らしく書けているかは別の話
OOPとOOA(D)の違い
461デフォルトの名無しさん
2018/10/04(木) 00:22:43.55ID:e2lTbi2R >>458
OOPの弊害について議論して来たのに
「OOP関係なく、糞コードにしかならない」と言われると、
OOPは糞コードの元となる害なかった無関係だと暗にほのめかしているようで
論点をすり替えてずるくごまかされたような印象を受けるよ
OOPの弊害について議論して来たのに
「OOP関係なく、糞コードにしかならない」と言われると、
OOPは糞コードの元となる害なかった無関係だと暗にほのめかしているようで
論点をすり替えてずるくごまかされたような印象を受けるよ
462デフォルトの名無しさん
2018/10/04(木) 00:28:26.90ID:bhAz8In7 OOPが原因で糞コードになるんなら
どうすればいいか一目瞭然じゃん
よかったな世界が平和になって
どうすればいいか一目瞭然じゃん
よかったな世界が平和になって
463デフォルトの名無しさん
2018/10/04(木) 00:32:28.79ID:e2lTbi2R 本当はいいものとなる筈だったのに、
ボタンを掛け違えたのか、変な使い方が一人歩きして普及しちゃったというか
なんというか、、、
最近は継承を廃止したり
他のパラダイムも併せた言語がどんどん出てきて
より良い解はいっぱい出て来るでしょう
ボタンを掛け違えたのか、変な使い方が一人歩きして普及しちゃったというか
なんというか、、、
最近は継承を廃止したり
他のパラダイムも併せた言語がどんどん出てきて
より良い解はいっぱい出て来るでしょう
464デフォルトの名無しさん
2018/10/04(木) 00:44:45.46ID:s35zoLCp 継承の時にc++のprotectedは有害か?
465デフォルトの名無しさん
2018/10/04(木) 00:53:04.18ID:e2lTbi2R んなもん使い方しだいにきまっとろうが
基本的に依存が込み入る元なので
十分静的に設計し尽くしてよほど律して使用するならともかく
変なテクニックを披露するため乱用したら害だろうな
悲惨だわ
基本的に依存が込み入る元なので
十分静的に設計し尽くしてよほど律して使用するならともかく
変なテクニックを披露するため乱用したら害だろうな
悲惨だわ
466デフォルトの名無しさん
2018/10/04(木) 19:08:28.34ID:bhAz8In7 典型的なフワフワ野郎やなこいつ
467デフォルトの名無しさん
2018/10/04(木) 21:04:04.79ID:lUzJxSj8 関数型の弊害の話をしたら必然的にオブジェクト指向の弊害の話になると思うの
468デフォルトの名無しさん
2018/10/04(木) 21:07:13.85ID:vhCji18k 弊害ちゃう元からおまえの頭が悪いだけや
469デフォルトの名無しさん
2018/10/05(金) 01:42:06.04ID:GLbBoG3S これがオブジェクト指向を吹聴していた者たちの反論か…
科学的工学的有効性のかけらも無い
科学的工学的有効性のかけらも無い
470デフォルトの名無しさん
2018/10/05(金) 06:56:18.75ID:u1B1EyaQ471デフォルトの名無しさん
2018/10/05(金) 08:22:51.05ID:jK12bSnX >>464
c++自体有害
c++自体有害
472デフォルトの名無しさん
2018/10/05(金) 10:34:10.65ID:kQel6lTj >>467
オブジェクト指向と関数型に何の関係があるんだ?
オブジェクト指向と関数型に何の関係があるんだ?
473デフォルトの名無しさん
2018/10/05(金) 10:55:46.34ID:4oQp/Mop474デフォルトの名無しさん
2018/10/05(金) 10:58:14.90ID:kQel6lTj >>473
その理屈だと、むしろ無関係なもの探す方が難しいなw
その理屈だと、むしろ無関係なもの探す方が難しいなw
475デフォルトの名無しさん
2018/10/05(金) 11:10:54.95ID:HilDODP3 クソとか言っている人間の方がよっぽど
>科学的工学的有効性のかけらも無い
と思うけど
>科学的工学的有効性のかけらも無い
と思うけど
476デフォルトの名無しさん
2018/10/05(金) 12:04:19.49ID:4oQp/Mop >>474
なに言うてんねん、必死やな
なに言うてんねん、必死やな
477デフォルトの名無しさん
2018/10/05(金) 14:35:10.66ID:kQel6lTj べつにオブジェクト指向の概念は関数で実装しなくてもいいんだよ?
メッセージでもいいしな。
メッセージでもいいしな。
478デフォルトの名無しさん
2018/10/06(土) 00:01:51.18ID:LmyRE988 OcamlやF#のようにオブジェクト指向と関数型パラダイムを合わせて持つ言語もあるが、
内容は覚えていないけど本質的・理論的にはこの二つのパラダイムは相反するものだと聞いている。
確かに局所的、ミクロに上手くかかれた関数型の呼び出しは
型クラスのような複合構造の使う余地はもはや無く、自然なスコープで
各記憶クラスのインスタンスにアクセスを表現できるから
相反するのもうなずける話だと思っている。
OcamlやF#は詳しくないがどのレイヤでオブジェクト指向と関数型を使うかが分かれるんじゃないかな
numpyで関数の返り値が気がつくと内部クラスのオブジェクトになってた、みたいな。
内容は覚えていないけど本質的・理論的にはこの二つのパラダイムは相反するものだと聞いている。
確かに局所的、ミクロに上手くかかれた関数型の呼び出しは
型クラスのような複合構造の使う余地はもはや無く、自然なスコープで
各記憶クラスのインスタンスにアクセスを表現できるから
相反するのもうなずける話だと思っている。
OcamlやF#は詳しくないがどのレイヤでオブジェクト指向と関数型を使うかが分かれるんじゃないかな
numpyで関数の返り値が気がつくと内部クラスのオブジェクトになってた、みたいな。
479デフォルトの名無しさん
2018/10/06(土) 00:23:54.73ID:wNGV+/Yb >自然なスコープで
各記憶クラスのインスタンスにアクセスを表現できるから
この辺が気になる
オブジェクト指向プログラミングの場合は
クラス内に操作対象(変数)を封じ込めてクラス外からアクセス出来ないようにして
グローバル変数が各所からアクセスされることで無限のアクセスパターンになるというのを避けている
というのが肝なんだと自分は思ってるんだけど
関数プログラミングは難しくてさっぱり且つ入門もまともにやった事ないんだけど
状態なんかを副作用?とか呼んでなるだけ外に出す
という方法で対処する
みたいだそうなんだけど?
その辺どうなんだろうか?
少し上の方にその話になりそうな流れが有って少し期待してたんだけど
違う方向に流れたようで残念だったんだけど
各記憶クラスのインスタンスにアクセスを表現できるから
この辺が気になる
オブジェクト指向プログラミングの場合は
クラス内に操作対象(変数)を封じ込めてクラス外からアクセス出来ないようにして
グローバル変数が各所からアクセスされることで無限のアクセスパターンになるというのを避けている
というのが肝なんだと自分は思ってるんだけど
関数プログラミングは難しくてさっぱり且つ入門もまともにやった事ないんだけど
状態なんかを副作用?とか呼んでなるだけ外に出す
という方法で対処する
みたいだそうなんだけど?
その辺どうなんだろうか?
少し上の方にその話になりそうな流れが有って少し期待してたんだけど
違う方向に流れたようで残念だったんだけど
480デフォルトの名無しさん
2018/10/06(土) 00:49:03.56ID:LmyRE988 >>479
俺の書ける範囲で述べると、
身近な局所変数>一層外側のブロックの内部変数>。。。>大外側の大域変数
というスコープ階層は知ってるよね?
これに加えて関数呼び出しの階層
特に相似的階層構造の再帰で自然に繰り返しの表現(最終的には末尾再帰を
最適化で単純なloopに変換したコードが生成されるのだけれども)
この論理的(≠物理的)関数呼び出し階層構造では、
各階層における引数リストと返り値リストの相似的階層構造が
型クラスとその継承や委譲による階層構造のようなランダムで管理しにくいネットワーク構造としなくても
管理しやすい入れ子のスコープおよびエクステントの階層構造としてメモリ上に構築し自然に
アクセスできるイメージ
これで伝わるかな…
俺の書ける範囲で述べると、
身近な局所変数>一層外側のブロックの内部変数>。。。>大外側の大域変数
というスコープ階層は知ってるよね?
これに加えて関数呼び出しの階層
特に相似的階層構造の再帰で自然に繰り返しの表現(最終的には末尾再帰を
最適化で単純なloopに変換したコードが生成されるのだけれども)
この論理的(≠物理的)関数呼び出し階層構造では、
各階層における引数リストと返り値リストの相似的階層構造が
型クラスとその継承や委譲による階層構造のようなランダムで管理しにくいネットワーク構造としなくても
管理しやすい入れ子のスコープおよびエクステントの階層構造としてメモリ上に構築し自然に
アクセスできるイメージ
これで伝わるかな…
481デフォルトの名無しさん
2018/10/06(土) 00:59:33.53ID:LmyRE988 >>480
lexical scope・extentと
関数呼び出し階層のネスト・木構造
で複雑なデータ構造の関連性が自然に細分化できる
同時に処理の細分化も速やかにできる
勉強している人にはこれで伝わると思う
型クラスとかアクセサでカプセルかとか継承とか全いらない
lexical scope・extentと
関数呼び出し階層のネスト・木構造
で複雑なデータ構造の関連性が自然に細分化できる
同時に処理の細分化も速やかにできる
勉強している人にはこれで伝わると思う
型クラスとかアクセサでカプセルかとか継承とか全いらない
482デフォルトの名無しさん
2018/10/06(土) 01:01:28.94ID:qfHN3zvO 関数型というかHaskellのええ所は>>260でいうパーツの切り分けが強制的になる所もあるよな
全てパターンマッチのワンライナーで関数が細かくブツ切りで出来るから後の編集しやすい
全てパターンマッチのワンライナーで関数が細かくブツ切りで出来るから後の編集しやすい
483デフォルトの名無しさん
2018/10/06(土) 01:02:29.25ID:LmyRE988 ただまぁ万能ではなく、
別の弱点(副作用のアル処理の扱い、学習コスト含む)
もあるので俺はfunctionalマンセーではないけれど
別の弱点(副作用のアル処理の扱い、学習コスト含む)
もあるので俺はfunctionalマンセーではないけれど
484デフォルトの名無しさん
2018/10/06(土) 01:31:10.16ID:LmyRE988 多態性についても文句あんだよねおれは。
あんあもの動的言語ではそもそも意識する必要も無い空気みたいなもの
それを変に応用して話をややこしくして…
まあ別途機会があれば書くかもしれないけれど。
かかないかおもしれない。
あどオブジェクト指向とその変な一時的流行で迷惑したのは
非科学的で誤ったオブジェクト指向論を信条として、それを宗教のように吹いてまわり
周りに強制し、反論すれば非難。でも自分ではたいしたソリューションのためのソフト開発できない
みたいな工程論・方法論者が跋扈して
開発者を煩わせたこと
あんあもの動的言語ではそもそも意識する必要も無い空気みたいなもの
それを変に応用して話をややこしくして…
まあ別途機会があれば書くかもしれないけれど。
かかないかおもしれない。
あどオブジェクト指向とその変な一時的流行で迷惑したのは
非科学的で誤ったオブジェクト指向論を信条として、それを宗教のように吹いてまわり
周りに強制し、反論すれば非難。でも自分ではたいしたソリューションのためのソフト開発できない
みたいな工程論・方法論者が跋扈して
開発者を煩わせたこと
485デフォルトの名無しさん
2018/10/06(土) 01:38:18.52ID:9tCZRFgp 書籍も全部一色だったし
MSが金出してただろうししゃーない
雑誌社も何の根拠もないのにオブジェクト指向マンセーだったよね
本当に技術を見定める能力があればそれが詐欺であると気づいたんだろうな
多くの人間はそうでは無かった
MSが金出してただろうししゃーない
雑誌社も何の根拠もないのにオブジェクト指向マンセーだったよね
本当に技術を見定める能力があればそれが詐欺であると気づいたんだろうな
多くの人間はそうでは無かった
486デフォルトの名無しさん
2018/10/06(土) 01:41:57.53ID:LmyRE988 本当に有効な機能だけ自律して使えば有効な面もあったかもしれないけど
人間てそんなに器用じゃないし
群衆や社会問題って
チコちゃんの言う氷河期からそんなものだったのかもしれない
人間てそんなに器用じゃないし
群衆や社会問題って
チコちゃんの言う氷河期からそんなものだったのかもしれない
487デフォルトの名無しさん
2018/10/06(土) 01:43:22.02ID:LmyRE988 今でもオブジェクト指向からDNNやAiにステージを移して
同じようなことが続いている
同じようなことが続いている
488デフォルトの名無しさん
2018/10/06(土) 02:03:28.62ID:LmyRE988 でもまnumpyやtensorflow,kerasなどのFWソースをたまに眺めると
よくまあここまで練り上げたなと感心するくらい上手にクラスベースOOPをつかって
ソフトウエアの構造を表現している。そしてすごいスピードでreviseする。
べらぼうな才能と手間と時間をかけてクラスベースOOPでソフトウエアを表現しようとしている
あれは(個人的に好きではないけど)見事だとうなってしまう。
優秀な者が活躍して、採用したパラダイムが茨の道に密だとしてある水準まで力強く構築しようとしていると思う。
翻って上のレスで揚げたような日の本のオブジェクト方法論指向論者は
なんと
プアーなことか
同じOOPでも同列にみなしてはいけないんだろうな
よくまあここまで練り上げたなと感心するくらい上手にクラスベースOOPをつかって
ソフトウエアの構造を表現している。そしてすごいスピードでreviseする。
べらぼうな才能と手間と時間をかけてクラスベースOOPでソフトウエアを表現しようとしている
あれは(個人的に好きではないけど)見事だとうなってしまう。
優秀な者が活躍して、採用したパラダイムが茨の道に密だとしてある水準まで力強く構築しようとしていると思う。
翻って上のレスで揚げたような日の本のオブジェクト方法論指向論者は
なんと
プアーなことか
同じOOPでも同列にみなしてはいけないんだろうな
489デフォルトの名無しさん
2018/10/06(土) 02:13:25.41ID:LmyRE988 ちなみにpythonの言語仕様自体は
涙なくして語れないほどのクソだと俺は思っている
なんか文句あるか?
___
/ \
/ ─ ─ \
/ (●) (●) \
| (__人__) | <かかってこいよ
,.゙-‐- 、 `⌒´ ,/ おらー
┌、. / ヽ ー‐ <.
ヽ.X、- 、 ,ノi ハ
⊂>'">┐ヽノ〃 / ヘ
入 ´// ノ } ,..,.._',.-ァ
/ `ー''"´ ,' c〈〈〈っ<
/ __,,..ノ ,ノヽー'"ノ
{ ´ / ``¨´
/´¨`'''‐、._ ,'\
∨´ `ヽ、 ノ ゙ヽ
∨ ヽ _,,..-'" `ヽ
∨ 〈-=、.__ }
ヽ、 } ``7‐-. /
ヽ リ /′ ノ
/′ , { / /
{ ! ,ノ ,/′
! / / `‐-、
! ,/ ゙ー''' ー---'
', /
{ }
゙Y `ヽ、
゙ー--‐'
涙なくして語れないほどのクソだと俺は思っている
なんか文句あるか?
___
/ \
/ ─ ─ \
/ (●) (●) \
| (__人__) | <かかってこいよ
,.゙-‐- 、 `⌒´ ,/ おらー
┌、. / ヽ ー‐ <.
ヽ.X、- 、 ,ノi ハ
⊂>'">┐ヽノ〃 / ヘ
入 ´// ノ } ,..,.._',.-ァ
/ `ー''"´ ,' c〈〈〈っ<
/ __,,..ノ ,ノヽー'"ノ
{ ´ / ``¨´
/´¨`'''‐、._ ,'\
∨´ `ヽ、 ノ ゙ヽ
∨ ヽ _,,..-'" `ヽ
∨ 〈-=、.__ }
ヽ、 } ``7‐-. /
ヽ リ /′ ノ
/′ , { / /
{ ! ,ノ ,/′
! / / `‐-、
! ,/ ゙ー''' ー---'
', /
{ }
゙Y `ヽ、
゙ー--‐'
490デフォルトの名無しさん
2018/10/06(土) 07:19:55.96ID:hM5EPMW3 pythonにprivate変数はありません。
pythonにswitch文はありません。
pythonのクラス関数はselfを第一引数に
命名規則は決められたものを守りましょう
インデントはスペース4つ
括弧の書き方でsetになったりdictになったりします
一列の文字数は79文字以内
(一部言語仕様でないのも書いてるけど)利点でもあり欠点でもあるな
pythonにswitch文はありません。
pythonのクラス関数はselfを第一引数に
命名規則は決められたものを守りましょう
インデントはスペース4つ
括弧の書き方でsetになったりdictになったりします
一列の文字数は79文字以内
(一部言語仕様でないのも書いてるけど)利点でもあり欠点でもあるな
491デフォルトの名無しさん
2018/10/06(土) 07:35:40.78ID:vpFDdLxA >>181
まとめると:
Python のオブジェクト指向はクソ
まとめると:
Python のオブジェクト指向はクソ
492デフォルトの名無しさん
2018/10/06(土) 11:22:52.91ID:LmyRE988493デフォルトの名無しさん
2018/10/06(土) 12:56:22.72ID:sXtVjY80 ID:LmyRE988
↑なんでこいつすぐポエってしまうん?
↑なんでこいつすぐポエってしまうん?
494デフォルトの名無しさん
2018/10/06(土) 13:08:17.37ID:LmyRE988 >>493
飲んで2chにポエム書くことくらい大目に見なよ
飲んで2chにポエム書くことくらい大目に見なよ
495デフォルトの名無しさん
2018/10/06(土) 13:36:23.41ID:o3SQFYgr496デフォルトの名無しさん
2018/10/06(土) 13:43:55.83ID:LmyRE988497デフォルトの名無しさん
2018/10/06(土) 13:59:20.11ID:LmyRE988498デフォルトの名無しさん
2018/10/06(土) 14:02:40.61ID:LmyRE988 さて、三連休だ、旅行に行ってくるわ。
あばよ、ノシ
あばよ、ノシ
499デフォルトの名無しさん
2018/10/06(土) 14:04:15.02ID:o3SQFYgr だから一言blockが無いで良いじゃん
lexical scopeは関係ない
それにpython 3だけで大抵の言語のシェアを上回ってるのに、
未だに2の批判するのも意味分からん
lexical scopeは関係ない
それにpython 3だけで大抵の言語のシェアを上回ってるのに、
未だに2の批判するのも意味分からん
500デフォルトの名無しさん
2018/10/06(土) 14:05:12.84ID:o3SQFYgr501デフォルトの名無しさん
2018/10/06(土) 14:06:48.29ID:c8T9aSvT >でもまnumpyやtensorflow,kerasなどのFWソースをたまに眺めると
>よくまあここまで練り上げたなと感心するくらい上手にクラスベースOOPをつかって
>ソフトウエアの構造を表現している。
numpy、tensorflowがオブジェクト志向?
そんな気は全くしないんだが、定義が全く違うのかな?
>よくまあここまで練り上げたなと感心するくらい上手にクラスベースOOPをつかって
>ソフトウエアの構造を表現している。
numpy、tensorflowがオブジェクト志向?
そんな気は全くしないんだが、定義が全く違うのかな?
502デフォルトの名無しさん
2018/10/06(土) 14:08:53.96ID:o3SQFYgr それと pythonでnonlocal や global を使いたくなるケースは
根本的に設計間違ってるから、クソコード撒き散らす前に設計見直した方が良いよ
根本的に設計間違ってるから、クソコード撒き散らす前に設計見直した方が良いよ
503デフォルトの名無しさん
2018/10/06(土) 14:18:09.40ID:o3SQFYgr504デフォルトの名無しさん
2018/10/06(土) 14:21:52.83ID:sXtVjY80505デフォルトの名無しさん
2018/10/06(土) 14:28:45.50ID:9tCZRFgp スレッド内にカプセル化されとる
506デフォルトの名無しさん
2018/10/06(土) 21:20:49.04ID:vpFDdLxA507デフォルトの名無しさん
2018/10/06(土) 21:28:26.10ID:c8T9aSvT numpyの中身は知らんがtensorflowのどこがオブジェクト指向?
ホントにコード読んでんのかよ。。
なんか胡散臭い奴しかいねーな。。
ホントにコード読んでんのかよ。。
なんか胡散臭い奴しかいねーな。。
508デフォルトの名無しさん
2018/10/06(土) 21:38:32.17ID:9xvvgu9Y >>506
数式を表現するのにオブジェクト指向なんていらん
行列演算したいだけなのにオブジェクト指向なんて強制されたらクソだわ
あ、数式使わないドカタの反論は不要なのでよろしく
ドカタには分からん世界があるんだよ
数式を表現するのにオブジェクト指向なんていらん
行列演算したいだけなのにオブジェクト指向なんて強制されたらクソだわ
あ、数式使わないドカタの反論は不要なのでよろしく
ドカタには分からん世界があるんだよ
509デフォルトの名無しさん
2018/10/06(土) 22:10:42.51ID:vpFDdLxA >>508
Python信者からも賛同意見を頂けるとは嬉しい限り
・次世代言語12 Go Rust Swift Kotlin TypeScript
http://mevius.2ch.net/test/read.cgi/tech/1530664695/963/
>> 失礼な!!Python は FORTRAN/COBOL/BASIC に代表される
>> 伝統的な手続き型言語の正当な後継スクリプト言語、
>> 次世代の純粋手続き型言語です
>>
>> 関数型?オブジェクト指向?
>> そんなのは飾りです、偉い人にはそれが分からんのですよ(必死
Python信者からも賛同意見を頂けるとは嬉しい限り
・次世代言語12 Go Rust Swift Kotlin TypeScript
http://mevius.2ch.net/test/read.cgi/tech/1530664695/963/
>> 失礼な!!Python は FORTRAN/COBOL/BASIC に代表される
>> 伝統的な手続き型言語の正当な後継スクリプト言語、
>> 次世代の純粋手続き型言語です
>>
>> 関数型?オブジェクト指向?
>> そんなのは飾りです、偉い人にはそれが分からんのですよ(必死
510デフォルトの名無しさん
2018/10/06(土) 22:21:37.35ID:84qwAd3v 節子、それ便所の…
511デフォルトの名無しさん
2018/10/06(土) 23:25:06.73ID:wNGV+/Yb >>480さんへ
479です
自分は関数型に関しては完全に素人なのでなかなかに難しいです
単純に受けたイメージだとなんか凄くモノリシックに大きくなってしまいそう見えてしまう
関数型って何時もどういう風に制御するのか解らないなぁという感じで
基本的に難しい物なので自分には理解できないという感じなんだろうと思いつつ
今回は状態を通して何か掴めるかな?
と思いましたがそんなに甘くない感じですね
何にしても回答どうもです
関数型ってオブジェクト指向プログラミングシステムより更に難しいそうなのでオブジェクト指向より使える人が増えないような予感がします・・・
479です
自分は関数型に関しては完全に素人なのでなかなかに難しいです
単純に受けたイメージだとなんか凄くモノリシックに大きくなってしまいそう見えてしまう
関数型って何時もどういう風に制御するのか解らないなぁという感じで
基本的に難しい物なので自分には理解できないという感じなんだろうと思いつつ
今回は状態を通して何か掴めるかな?
と思いましたがそんなに甘くない感じですね
何にしても回答どうもです
関数型ってオブジェクト指向プログラミングシステムより更に難しいそうなのでオブジェクト指向より使える人が増えないような予感がします・・・
512デフォルトの名無しさん
2018/10/07(日) 01:21:33.80ID:Nojuqsx1 >>502
そもそも nonlocal やら global などという
スコープ宣言に限定した予約語が存在するのは
Python が(歴史上、おそらくは)唯一の存在である、
という事実を忘れてやいませんか?
言い換えると、スコープに関して Python2 以前の
新規リリースの時点から「根本的に設計を間違えていた」のがPythonなわけ
で、根本的解決を採用せず、行き当たりばったりに
nonlocal やら golobal といった泥縄式対策を採用したのがPython3
そもそも nonlocal やら global などという
スコープ宣言に限定した予約語が存在するのは
Python が(歴史上、おそらくは)唯一の存在である、
という事実を忘れてやいませんか?
言い換えると、スコープに関して Python2 以前の
新規リリースの時点から「根本的に設計を間違えていた」のがPythonなわけ
で、根本的解決を採用せず、行き当たりばったりに
nonlocal やら golobal といった泥縄式対策を採用したのがPython3
513デフォルトの名無しさん
2018/10/07(日) 01:25:43.47ID:iX7g/tHs ゴローバルってなんかカッコええやん。
ゴローさん風味が出ててさ。
ゴローさん風味が出ててさ。
514デフォルトの名無しさん
2018/10/07(日) 02:05:51.72ID:dWI643/y nonlocalってセンスがウケるなw
いっそのことnonglobalも用意したらどうかwwww
いっそのことnonglobalも用意したらどうかwwww
515デフォルトの名無しさん
2018/10/07(日) 14:29:17.30ID:+Rd5+blg オブジェクト指向のスレでなんで延々と特定言語の言語実装の話してんの?
バカなの?
バカなの?
516デフォルトの名無しさん
2018/10/07(日) 18:24:53.01ID:FMwg69WX OOPの結果としては
クラスライブラリとかは文句なしに使いやすいと思うんだけどね
String, Map, List, Set, Threadなんかは十分使いやすいよね?
その点を否定するやつはさすがにおらんやろ?
クラスライブラリとかは文句なしに使いやすいと思うんだけどね
String, Map, List, Set, Threadなんかは十分使いやすいよね?
その点を否定するやつはさすがにおらんやろ?
517デフォルトの名無しさん
2018/10/07(日) 18:26:20.74ID:qTxqyvp+ やっぱりクラスライブラリは使いやすいよね
文字列をポインタで操作してたCの時代に戻りたくない
文字列をポインタで操作してたCの時代に戻りたくない
518デフォルトの名無しさん
2018/10/07(日) 18:37:23.80ID:FMwg69WX そうなんよね
その点で見ればOOP大成功に見える
ただ、自前でクラスやクラスライブラリを書けつったときに
とたんにゴミの山になりかねないという
その点で見ればOOP大成功に見える
ただ、自前でクラスやクラスライブラリを書けつったときに
とたんにゴミの山になりかねないという
519デフォルトの名無しさん
2018/10/07(日) 18:59:53.35ID:blwtBRQv520デフォルトの名無しさん
2018/10/07(日) 19:18:00.94ID:zvJnD+aL >>516
使いやすいが、そこまで一般的なインターフェイスにするまで
いろんなソフトウェアの歴史があってこそなわけだ。
ユーザー定義でそのレベルのものを用意しようとすると途端に何も進まないか
クソインターフェイスをひたすら強要される現場となる。
使いやすいが、そこまで一般的なインターフェイスにするまで
いろんなソフトウェアの歴史があってこそなわけだ。
ユーザー定義でそのレベルのものを用意しようとすると途端に何も進まないか
クソインターフェイスをひたすら強要される現場となる。
■ このスレッドは過去ログ倉庫に格納されています
