オブジェクト指向は愚かな考え

1 ::2020/06/18(木) 18:53:35.21 ID:+9+AiKkI0.net ?PLT(12015)
http://img.5ch.net/ico/folder1_03.gif
カプセル化(英語:encapsulation)とは、オブジェクト指向を構成する概念の一つで、オブジェクト内部のデータを隠蔽したり(データ隠蔽)、オブジェクトの振る舞いを隠蔽したり、オブジェクトの実際の型を隠蔽したりすることをいう。

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

一方、カリフォルニア大学バークレー校の有識者を中心とした「インターネットを作った人たち」は「階層化の有害性」として「カプセル化は絶対にやめろ」としている。

https://monobook.org/wiki/%E3%82%AB%E3%83%97%E3%82%BB%E3%83%AB%E5%8C%96(%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0)

290 ::2020/06/19(金) 04:43:30.88 ID:rgq3Ltap0.net

一長一短だよ
全てパブリックにしてしまったらとんでもないことになる

319 ::2020/06/19(金) 09:02:59.90 ID:yhCTmP6s0.net

>>73
関数型言語では?

257 :ハダル(東京都) [PG]:2020/06/18(Thu) 23:05:32 ID:L0mf+1Xg0.net

やっぱ多重継承って糞なんだね

203 ::2020/06/18(木) 21:35:52.19 ID:kDt6dvq70.net

オーベルシュタイン指向こそ至高

170 ::2020/06/18(木) 20:58:35.78 ID:om5DhezL0.net

>>147
大域変数は許さない😠😠😠

32 ::2020/06/18(木) 19:08:52.12 ID:j9SDv8Ue0.net

これこそ
考えるな、感じろ
の分野だと思ってるわ

205 ::2020/06/18(木) 21:38:18.29 ID:pJZmkO0T0.net

いざカプセルの中を改修しようとしてもソースコードが無くて出来ないってだけの話じゃん

55 ::2020/06/18(木) 19:18:05.78 ID:y1/JJ8jh0.net

排便メソッド

26 :はくちょう座X-1(SB-Android) [CN]:2020/06/18(Thu) 19:05:13 ID:5nU2ZEG40.net

カプセル化というと噛みつかれるけど
独立性を高めるというと黙る不思議

197 :冥王星(東京都) [US]:2020/06/18(Thu) 21:19:54 ID:aaML/33j0.net

結局複雑になって、PG参加者の敷居上げただけ。

再利用性云々いうが、別にオブジェクト指向でなくてもそんなのは昔からやってる。

で、Javaにのめり込んだ日本は他の言語全然カバー出来てないしまつ。今頃PythonだのNode.jsだの言ってる。

SIerとかいうクズの吹き溜まりを活かすためだけの利権でしかないよ。もはや

208 ::2020/06/18(木) 21:41:21.28 ID:I/+LJrx20.net

>>175
そうそう。Cでまともにコーディングできないバカが粋がってるだけ。
PythonだRubyだと言ってる奴らは、再帰処理とかメモリ管理とかちんぷんかんぷんだからな。

179 ::2020/06/18(木) 21:04:19.23 ID:PXwB+ceW0.net

オブジェクトがクソなだけの話でしたとさ。

155 ::2020/06/18(木) 20:40:40.51 ID:om5DhezL0.net

>>115
うむ

49 ::2020/06/18(木) 19:16:31.21 ID:mKNgS41W0.net

privateとfinalは要らんと思うがprotectedは必要
継承すれば制約外れるようにしとけば問題ないしカプセル化の問題じゃないよね

228 :黒体放射(福岡県) [CH]:2020/06/18(Thu) 21:51:17 ID:YScpl8sV0.net

>>1

269 ::2020/06/18(木) 23:53:02.38 ID:osqzdczJ0.net

>バイナリのライブラリしかない場合などは絶望的である。
もうオブジェクト指向どうこうの問題じゃねーな

295 ::2020/06/19(金) 06:39:01.00 ID:ntNVHPrP0.net

>40
ターンAやレコンキスタで、使い方は分かるけど、修理改良出来なくなるようなモノ?

123 ::2020/06/18(木) 20:12:59.48 ID:8Riu2k3Z0.net

× 現実の開発現場の事情
○ 自分の開発現場の事情

結局さ、できるやつは上に行ってオブジェクト指向も使う
できないやつは、ひたすら当たれられた同じような手続きを
何度も繰り返し書くだけなんだよ

241 ::2020/06/18(木) 22:02:27.40 ID:HdJ23rVM0.net

何事も原理主義に走り始めるとおかしくなるもんだ
存在を知っている程度でいい
たまに利用できる程度がスマートだ
その方が代替手段も作りやすい
ってか設計センスの問題だと思う

384 :パラス(神奈川県) [GB]:2020/06/20(土) 21:47:48 ID:rt5NLJx50.net

俺がVBで書いたプロジェクトを見て
「VBとかだっせwC#勉強して使えるようになれw」
ってバカにしてたオッサン「クラス」も「構造体」も知らなかった。

347 ::2020/06/19(金) 21:10:41.00 ID:30vRxVN40.net

>>339
情報をどのレベルで隠蔽するかって話
結論は、必要なアクセサが無いならそのライブラリ使うなって事だw

291 :テチス(ジパング) [US]:2020/06/19(金) 05:57:51 ID:f/vvCCOg0.net

>>241
いわゆる「構造化プログラミング」だって
厳密に守った言語はほぼ皆無でしょう
Brainfuckくらいか?(笑)

219 ::2020/06/18(木) 21:46:19.19 ID:dT/bvtUv0.net

この辺の議論て30年くらい進歩ないよね。
技術的な伸び代がもうないんだろうな

175 ::2020/06/18(木) 21:02:54.74 ID:HKzcbNBy0.net

オブジェクト指向は偉大なんだよ
ただ最近オブジェクト指向に異を唱える者達が増えてきた

何故かというと、なかった時代を忘れてる、もしくは知らないから
プロジェクトの半数が失敗してた時代もあるのにな

アホが設計してアホが実装してアホが使っても、ちゃんと動くからJavaとオブジェクト指向は偉大なんだよ

105 ::2020/06/18(木) 20:01:27.94 ID:hyANSIX90.net

こっちでやれ

[転載禁止] オブジェクト指向を今すぐやってください(c)2ch.net
https://mevius.5ch.net/test/read.cgi/tech/1414409620/

オブジェクト指向の活用方法を教えて下さい
https://mevius.5ch.net/test/read.cgi/tech/1395751447/

オブジェクト指向はクソじゃなかったよ Part3
https://mevius.5ch.net/test/read.cgi/tech/1542885246/

オブジェクト指向以外のメリットを書くスレ
https://mevius.5ch.net/test/read.cgi/tech/1542808008/

C++はクソだがオブジェクト指向がクソなのではない
https://mevius.5ch.net/test/read.cgi/tech/1544632246/

36 :アンドロメダ銀河(茸) [IT]:2020/06/18(Thu) 19:10:59 ID:ty/pXuON0.net

せめてprotectedにしておいてほしいよな

142 ::2020/06/18(木) 20:32:55.59 ID:K6AyMp4M0.net

>>136
全部public staticで構わん

318 ::2020/06/19(金) 08:55:55.11 ID:7A8LOc9l0.net

1999 シークレットオブジェクト

312 ::2020/06/19(金) 08:26:43.05 ID:OXaLBAYP0.net

結局よくわからなかったよ私には
アセンブラでごりごり書いてるのが好きだった

124 ::2020/06/18(木) 20:14:11.40 ID:I/+LJrx20.net

>>115
そんなあなたはCでいいじゃん

180 ::2020/06/18(木) 21:05:37.37 ID:VryEzT8J0.net

自動車のECU開発してるとオブジェクト指向とはほぼ無縁だけど、
いつまでもこんな仕事してるからテスラとか新規勢に追い抜かれんだよって思う
奴らは組み込みの世界でがんがんオブジェクト指向入れてるっしょ

311 ::2020/06/19(金) 08:26:36.45 ID:Q3C1g3EZ0.net

インターフェースって使っちゃダメ?

143 :シリウス(栃木県) [US]:2020/06/18(Thu) 20:33:25 ID:KO4gBOkA0.net

>>136
関数名が被ってコンパイルエラー

390 :環状星雲(東京都) [US]:2020/06/21(日) 17:24:26 ID:sxmUMXZc0.net

>>216
全く同感。普遍的なのは構造化でもOOPでもすっきりとした設計、明確なエラー処理につきるわ 腕自慢する年頃なのは判るけどw 言語は合わせるからプロジェクトは粛々と終わらせようぜ 定年まであと5年だわw

351 ::2020/06/19(金) 21:27:32.88 ID:weGzyzXx0.net

中途入社のやつに、お試しでプロジェクト任せたら、すべての変数をグローバル変数にして、不穏な動作するコード書いてるやついたな。関数の戻り値まで共通のグローバル変数にして、こいつ大丈夫かと思ったは。

146 ::2020/06/18(木) 20:36:02.17 ID:b7A8Qy6A0.net

>>2
>バイナリのライブラリしかない場合などは絶望的である。
あるある

86 ::2020/06/18(木) 19:42:42.51 ID:Y5TtkX/i0.net

人間クラスの排便メソッドがprivateになってんのがおかしいって結論出てただろ

339 ::2020/06/19(金) 20:01:17.89 ID:lQW86TXk0.net

Cで言うと「弄れなくなるからconstは使うな」って主張するようなもん?

370 ::2020/06/19(金) 22:47:46.88 ID:I6Dwf4KG0.net

素人に使えるに超したことはないだろ
現実問題クソコード量産してんだから

369 ::2020/06/19(金) 22:42:46.95 ID:1NsMaR9k0.net

中身は何でもいいから、バグのないやつ作ってくれ

302 :カリスト(東京都) [ニダ]:2020/06/19(金) 08:06:43 ID:9WN2ionv0.net

>>1
そもそも社会生活がオブジェクト指向なんだから
それを表現するにはオブジェクト指向が最適

306 ::2020/06/19(金) 08:15:51.40 ID:aCWlCYAK0.net

日本のプログラマって、自分は何も生み出さないくせに
他人に対するマウンティング大好きなおっさんばかりなんだよな。
こういうおっさんに限って「海外では技術的にどうこう」みたいな話が大好きだが
GITでかんたんに海外のオープンソースが見れるようになってわかったことは
「GAFA経験があるようなやつでも結構ろくでもないプログラム書いてんなー」って
ことなのよ。ただ、向こうは口も動かすけど手も動かす。
日本のプログラマは口ばっかりで手が動かない。ツイッターのPGクラスタで威張ってるアルファとか見てみ
なんも生み出してないやつばっか。

153 :亜鈴状星雲(福岡県) [ID]:2020/06/18(Thu) 20:38:47 ID:8Riu2k3Z0.net

>>147
スッキリ軽いプログラムを作るという仕事はない

266 ::2020/06/18(木) 23:38:00.30 ID:z7s/dgsT0.net

GUIのプログラムばっかり書いてるから、オブジェクト指向はありがたい。

254 :トラペジウム(ジパング) [JP]:2020/06/18(Thu) 22:37:34 ID:wvX+1FKG0.net

>>84
c++は海、全てを受け入れる

9 ::2020/06/18(木) 18:56:43.68 ID:nxOzoX3w0.net

堀井社長↓

382 ::2020/06/20(土) 09:21:49.16 ID:awE63n4K0.net

>>377
ふりむかないことさ

316 ::2020/06/19(金) 08:39:57.05 ID:B5dChisI0.net

>>315
フレームワーク使わないと深い階層の関数をコールするのが大変そう

278 :3K宇宙背景放射(東京都) [US]:2020/06/19(金) 01:52:23 ID:FsDiIeFB0.net

このスレでもオブジェクト指向の真髄であるポリモーフィズムを理解してる奴が殆ど居ないというところを見ると、オブジェクト指向不要論を語る以前の話に見える
ポリモーフィズムがわからなければデザインパターンも使えないし、オブジェクト指向は足枷にしかならん

192 :プロキオン(ジパング) [BR]:2020/06/18(Thu) 21:15:56 ID:WxDEHp890.net

>>185
手が生えたと思ったら頭に首に胸まで出来て、あれ?オブジェクト指向とは何ぞや
までがセット

64 ::2020/06/18(木) 19:21:47.36 ID:dvk/EClb0.net

>>62
すげーわかった気がするサンキュ

8 ::2020/06/18(木) 18:56:37.63 ID:/PEJkeeM0.net

これオブジェクト指向が悪んじゃないだろ
オブジェクト指向が誤解されて広まったせいだろ

147 ::2020/06/18(木) 20:36:28.98 ID:qx3sEnZd0.net

全変数はグローバル変数。
変数と関数のみで作る。
可変変数禁止。最初に各変数の大きさを決める。

これの方がすっきり軽いプログラムができる。

267 ::2020/06/18(木) 23:41:57.41 ID:55k6rfrN0.net

そのくらいの仕様変更はザラにある。
それは雲の上で決まったことなので底辺社畜のITドカタにはどうすることもできない。
意見を言おうにも雲の上にいる奴らの顔すら知らない。
それこそが階層化で起きることだ。

オブジェクト指向云々ではない。

77 ::2020/06/18(木) 19:30:30.47 ID:TY6jecqS0.net

カプセル化しっかりしてなかったらその前にデスマーチなのでは

195 :プロキオン(千葉県) [US]:2020/06/18(Thu) 21:18:30 ID:+d8PBu8q0.net

アスペクト指向との違いが説明できるレベルなら話聞いてやるよ

47 ::2020/06/18(木) 19:15:46.94 ID:hFdxhUZd0.net

>>37
コードより前に設計がアホなんだろう

207 ::2020/06/18(木) 21:40:59.47 ID:m4fW0y6D0.net

>>196
const kyufukin = nakanukiObj.input(money);
console.log(kyufukin);

完璧!

178 ::2020/06/18(木) 21:03:51.35 ID:K6AyMp4M0.net

>>168
WEBの世界でMVCやろうとするのは愚の骨頂

139 ::2020/06/18(木) 20:30:56.55 ID:8Riu2k3Z0.net

>>137
オブジェクト指向+多数の人間で破綻するなら
非オブジェクト指向+多数の人間でも破綻する

技術力の問題だから

185 ::2020/06/18(木) 21:09:46.59 ID:4luHt0nM0.net

手が使えなくて足で頑張ったら、いつの間にか手が使えるようになって、今までの俺の苦労は何だったの?もう知らんわボケ
ってのがオブジェクト指向

103 :褐色矮星(茸) [CH]:2020/06/18(Thu) 20:00:21 ID:K6AyMp4M0.net

C++は悲惨な言語だ。
しかも、少なからぬ数のプログラマーが使っていて、
完全無欠のどうしようもないクソを生成するのがめちゃめちゃ簡単になっているという点で、よけいに悲惨だ。
マジで、Cを選択する理由が「何もなかった」としてもだ、
C++プログラマー避けになるというだけで、Cを使う大義名分になる。

俺の出した結論では、プロジェクトにCよりC++を使いたがるプログラマーは、むしろいやがらせして追い返したほうがいい。
そうすれば、そんなヤツは俺のプロジェクトにやってきて、ひっかきまわしたりしないからな。

46 ::2020/06/18(木) 19:15:31.69 ID:s1FweWan0.net

結局COBOLが言語として一番素晴らしいつてことか

325 ::2020/06/19(金) 10:51:02.82 ID:racapSEY0.net

変化する設計に対して柔軟に対応出来れば何でもOK。オブジェクト指向ありきで考えても失敗することはある。

28 ::2020/06/18(木) 19:06:15.26 ID:PjOv2bl70.net

OOPはゴミプログラマーが混ざると破綻する

394 ::2020/06/21(日) 18:15:26.78 ID:JSY7YWW60.net

>>392
1レスで仕事出来る奴と分かる

335 :バン・アレン帯(SB-Android) [CN]:2020/06/19(金) 18:50:12 ID:EtaAFNjV0.net

>>316
フレームワークを操作するフレームワークが重なって
私のフレームワークは53万層ですよ

283 ::2020/06/19(金) 02:44:00.90 ID:FsDiIeFB0.net

>>280
typescriptがよく使われてるのを見ると実際のところはね

109 ::2020/06/18(木) 20:03:33.71 ID:wWBLWkLm0.net

おまえらオブジェクト指向わかるんだすげーな
俺やってみたけど全然わかんなかったわ…

148 ::2020/06/18(木) 20:36:32.39 ID:H8biVr4b0.net

記事を読むに、jarだけと仕様書だけを使い回してソースとかはいつまでも保持しないのかな?
日本はそういったケースは少ないから記事のデメリットを感じることはなさそう

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください




RSS


%d