2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

プログラマに聞きたいんだけどオブジェクト指向ってクソじゃね?

1 :名無しさん@涙目です。:2018/11/22(木) 15:07:59.36 ID:OaykOnnP0.net ?PLT(12015)
http://img.5ch.net/ico/folder1_03.gif
staticおじさんとは、2010年に@ITに「実はオブジェクト指向ってしっくりこないんです!」と投稿して炎上したおじさんのことである。

staticおじさんが爆誕した2010年ごろのIT土方界隈ではJavaを中心としたオブジェクト指向が主流であり
「なんでもかんでもオブジェクト指向」という風潮があった。このためstaticおじさんは多勢に無勢で
ボロクソに叩かれる結果となり、さらにはプログラミングそのものの話を飛び出してオブジェクト指向
推進派による学歴差別などに発展したすえに、無事炎上した。

それからわずか数年後、staticおじさんの主張に「static変数は使わない」「関数ポインタを多用する」
というコーディング規約を加えた「関数型プログラミング」がJavaScript界隈を中心に爆発的に流行し、
その流れに乗るかたちで半ば強制する仕様の「関数型プログラミング言語」も多数登場するなど一大ブームになった。

ちなみにstaticおじさんの主張と非常に酷似したものが、staticおじさんの登場より遥か昔、
インターネットを支える中核技術である「IP」のRFC(仕様書)にも「階層化の有害性」として書かれていたりする。
また、海外でも同様の主張を面白おかしく書いた「Bjarne Stroustrup インタビュー」なる怪文書が出回り、こちらも大炎上した。
https://monobook.org/wiki/%E3%82%B9%E3%82%BF%E3%83%86%E3%82%A3%E3%83%83%E3%82%AF%E3%81%8A%E3%81%98%E3%81%95%E3%82%93

2 :名無しさん@涙目です。:2018/11/22(木) 15:08:18.72 ID:jfLY759y0.net
はい

3 :名無しさん@涙目です。:2018/11/22(木) 15:08:39.65 ID:+mNps3wB0.net
クソだよ

4 :名無しさん@涙目です。:2018/11/22(木) 15:08:50.64 ID:fK8fmZT20.net
うんこだよ

5 :名無しさん@涙目です。:2018/11/22(木) 15:09:03.35 ID:42wiik9n0.net
イエス

6 :名無しさん@涙目です。:2018/11/22(木) 15:10:36.27 ID:dlOZGDFd0.net
オブジェクト指向は結局慣れなかったな
オーバーロードとオーバーライドと継承ってシステムがどう動いてるか全部分かってる人間じゃないと無理だろと思ってた

7 :名無しさん@涙目です。:2018/11/22(木) 15:10:44.30 ID:1VHO3l8I0.net
日本にはその議論ができるほどのプログラマーは割合的に少ない

8 :名無しさん@涙目です。:2018/11/22(木) 15:11:39.49 ID:MAXU5S+e0.net
バグらなくてちゃんと動いてメンテが容易ならなんでもいい

9 :名無しさん@涙目です。:2018/11/22(木) 15:11:59.81 ID:QK/NBake0.net
おばちゃんシコって
に聞こえた

10 :名無しさん@涙目です。:2018/11/22(木) 15:12:10.40 ID:lfVl5VyH0.net
おじさん可愛そう

11 :名無しさん@涙目です。:2018/11/22(木) 15:12:46.97 ID:kQMROlwe0.net
誰も仕様を理解していないブラックボックス関数が受け継がれていく

12 :名無しさん@涙目です。:2018/11/22(木) 15:13:05.28 ID:iDEmHsjZ0.net
vb屋の俺にはいまだによくわからないしどうでもいい

13 :名無しさん@涙目です。:2018/11/22(木) 15:14:09.36 ID:VZa8S7bc0.net
昔と違ってメモリは腐るほどあるんだからガベコレやメモリ解放なんてしなくていいじゃん

14 :名無しさん@涙目です。:2018/11/22(木) 15:14:31.78 ID:Z10PO/lt0.net
モジュール結合度を素にしろ

15 :名無しさん@涙目です。:2018/11/22(木) 15:16:29.33 ID:35W5GsvP0.net
天才なら
そもそも構造体の段階で
要らないと気づかなきゃ

16 :名無しさん@涙目です。:2018/11/22(木) 15:16:39.25 ID:V5/8X65q0.net
どうあがいても、オブジェクト指向に構成された、ブラックボックスやライブラリの上で書くしかないんだから、愚痴っても仕方ない。

17 :名無しさん@涙目です。:2018/11/22(木) 15:16:39.71 ID:rXjZ/fqy0.net
じゃ、お前だけプログラムは全部同じファイルな

18 :名無しさん@涙目です。:2018/11/22(木) 15:16:58.76 ID:VoSRpfGx0.net
>>11
それを派遣が伝言ゲームと

19 :名無しさん@涙目です。:2018/11/22(木) 15:17:11.22 ID:uo3q84x40.net
>>13
んなわけあるかw

20 :名無しさん@涙目です。:2018/11/22(木) 15:18:25.05 ID:Lotx+9bw0.net
個人的にはCが一番好きだが。。。

21 :名無しさん@涙目です。:2018/11/22(木) 15:18:38.94 ID:Z2GMZEjP0.net
>>16
むしろ中身を理解せずともライブラリやAPIが使えて
必要ならば安全に変更もできるって凄くね?

22 :名無しさん@涙目です。:2018/11/22(木) 15:19:42.02 ID:Z2GMZEjP0.net
ドキュメントがろくになくてどう使うのか、結局クラスの中身読み込む羽目になった

23 :名無しさん@涙目です。:2018/11/22(木) 15:20:18.45 ID:a8JF0q7c0.net
エンジンとかハンドルとかタイヤを別々に作って
最後に合体させて車にするって誰かが言ってたけど合ってる?

24 :名無しさん@涙目です。:2018/11/22(木) 15:20:23.44 ID:35W5GsvP0.net
>>17
オールグローバル変数一本グソ
長編プログラミングなら
俺に任せろ

25 :名無しさん@涙目です。:2018/11/22(木) 15:22:10.49 ID:V5/8X65q0.net
>>21
ほんとこれ。
上流では優秀なプログラマがオブジェクト指向を理解してライブラリを作ってる。
下流がついて行けないだけ。

26 :名無しさん@涙目です。:2018/11/22(木) 15:22:53.64 ID:9A6rTzEj0.net
デザインパターンがようわからんわ

27 :名無しさん@涙目です。:2018/11/22(木) 15:22:56.09 ID:EDna+eRA0.net
システム間でのファイルの共有関係が管理できてないとバグの温床になる

28 :名無しさん@涙目です。:2018/11/22(木) 15:23:46.54 ID:V5/8X65q0.net
>>26
全部のパターンを使わないとと思うから。
得意なワンパターンつーパターンでよい。

29 :名無しさん@涙目です。:2018/11/22(木) 15:24:44.79 ID:lzvWr71i0.net
オブジェクト指向わかんないやつって
糞じゃん

勝手にわけわかんないPG作って満足してろ

使えん奴は死ねばいい

30 :名無しさん@涙目です。:2018/11/22(木) 15:25:20.93 ID:eyjQQ8BI0.net
きちんと管理できて引き継ぎも出来るならいいんじゃね

31 :名無しさん@涙目です。:2018/11/22(木) 15:27:57.57 ID:V5/8X65q0.net
>>30
コードより長いコメントを埋め込んで、書き足して引き継いできた頃よりはるかにまし。
Javaのヘルプみたいなもの書いとけ大体わかる。

32 :名無しさん@涙目です。:2018/11/22(木) 15:27:58.30 ID:iDEmHsjZ0.net
>>25
ここではなんか上流前提で最新技術がー英語がーとか言ってるけど大多数は下流だからな

33 :名無しさん@涙目です。:2018/11/22(木) 15:29:17.28 ID:V5/8X65q0.net
>>32
ま。そだな。

34 :名無しさん@涙目です。:2018/11/22(木) 15:32:32.14 ID:StiIkd1z0.net
クソだよ

35 :名無しさん@涙目です。:2018/11/22(木) 15:33:19.71 ID:DyniCEwb0.net
カプセル化による構造化と言ったよい

36 :名無しさん@涙目です。:2018/11/22(木) 15:33:41.95 ID:DyniCEwb0.net
あら、途中で送信してしまいますた

37 :名無しさん@涙目です。:2018/11/22(木) 15:34:01.87 ID:CBRhVtas0.net
よくわからんライブラリから帰ってきた結果にIF文とか普通にありそう

38 :名無しさん@涙目です。:2018/11/22(木) 15:34:17.24 ID:DyniCEwb0.net
OOPの核心とは、カプセル化による構造化と言ってよい
どうだ

39 :名無しさん@涙目です。:2018/11/22(木) 15:35:51.81 ID:0ApZ33Aq0.net
そら上流こんな所見ないか、見ても書きこまないだろうからな
忙しすぎてそんな暇ない

40 :名無しさん@涙目です。:2018/11/22(木) 15:36:29.40 ID:gM5nNFbA0.net
OOPできますって人を面接しても、大抵はデザインパターンつかえるどころか
存在すら知らないソフト技術者()が多い日本・・・

41 :名無しさん@涙目です。:2018/11/22(木) 15:39:19.92 ID:2pp65R5G0.net
COBOL時代からサブルーチンコールや定義参照はやってる事だし
オブジェクト指向云々なんていちいち意識した事も無いわ

42 :名無しさん@涙目です。:2018/11/22(木) 15:41:13.55 ID:IBEQI9u40.net
何で関数型プログラミングとオブジェクト指向が同列に語られてるんだよ

43 :名無しさん@涙目です。:2018/11/22(木) 15:43:45.34 ID:Ahfe0DIe0.net
>>41
解ってないことはわかったよ

44 :名無しさん@涙目です。:2018/11/22(木) 15:43:52.54 ID:buqC96fl0.net
>>32
日本ではどれだけ優秀なプログラマーでも下流扱いされる矛盾。

45 :名無しさん@涙目です。:2018/11/22(木) 15:43:55.09 ID:Y+EOIKCr0.net
>>1
ブートキャンプってどうなんすかね

46 :名無しさん@涙目です。:2018/11/22(木) 15:44:39.26 ID:lzvWr71i0.net
>>40
javaかけるいうても
継承のメリット生かしてない奴らばっかやで

何でおんなじソースポコポコうんでんのかわかんねえ

47 :名無しさん@涙目です。:2018/11/22(木) 15:45:23.00 ID:B9Mwixq70.net
DIってのが未だにピンとこない。
依存性の注入って、日本語になってねーよ

48 :名無しさん@涙目です。:2018/11/22(木) 15:46:22.84 ID:M24uQ3pa0.net
>>38
カプセル化が諸悪の根源

49 :名無しさん@涙目です。:2018/11/22(木) 15:47:44.66 ID:DyniCEwb0.net
>>48
変わった意見だな
なにゆえ?

50 :名無しさん@涙目です。:2018/11/22(木) 15:49:00.36 ID:pJRz81cb0.net
結局理解出来ないままおっさんになっあわ
関数型しか分からん

51 :名無しさん@涙目です。:2018/11/22(木) 15:49:17.77 ID:DyniCEwb0.net
カプセル化とは、人間が一度に把握する情報量を少なくするって事やで

52 :名無しさん@涙目です。:2018/11/22(木) 15:50:58.32 ID:s+or87Z20.net
大規模開発にはいいんだろうけどな

53 :名無しさん@涙目です。:2018/11/22(木) 15:52:00.22 ID:nqWIBF+w0.net
Javascriptが難しすぎて営業SEになったわ

54 :名無しさん@涙目です。:2018/11/22(木) 15:53:16.35 ID:pDcIuPtR0.net
>>28
覚えたてだったのか、無駄にシングルトンだらけのソースを見たことある。

55 :名無しさん@涙目です。:2018/11/22(木) 15:53:38.60 ID:32ezucHg0.net
流行でクライアントの方針に係わるから仕方ない
趣味でプログラムしてるなら好きにすればいい

56 :名無しさん@涙目です。:2018/11/22(木) 15:55:16.68 ID:EPNzJhYV0.net
>>50
関数型が分かるほどならオブジェクト指向も理解できそうだが

57 :名無しさん@涙目です。:2018/11/22(木) 15:59:06.78 ID:nXqVz5em0.net
>>13
メモリは増えたけど、使い続けると動的に生成されるオブジェクトがどんどん増えていく一方だから、
メモリ解放しないとメモリオーバーフローで止まる。

58 :名無しさん@涙目です。:2018/11/22(木) 15:59:12.92 ID:XXn709ye0.net
みずほ銀行どうなんの?
もうプログラマーを精子から育てるしかなくね?

59 :名無しさん@涙目です。:2018/11/22(木) 16:00:45.90 ID:nXqVz5em0.net
>>25
そもそも付いていく必要があるのか?とは考えないのか
もっと簡単だったらほっといても皆使うだろうし

60 :名無しさん@涙目です。:2018/11/22(木) 16:01:06.50 ID:j9dlTLcs0.net
オブジェクト指向なんてわかる奴がやればいいのにjavaを底辺ITドカタに広めたせいで悲惨なことになった

61 :名無しさん@涙目です。:2018/11/22(木) 16:03:10.15 ID:NOh2S+In0.net
>>57
昔のCしか俺はしらんが今どきの言語は勝手に処理終わったらメモリ解放してくれたりしないの?

62 :名無しさん@涙目です。:2018/11/22(木) 16:03:22.41 ID:oJzMUjCr0.net
オブジェクト指向じゃなくてオブジェクト思想と言う言い方の方がしっくりくる。
作成時にどう言う子に育って欲しいかを明確にしないと、情緒不安定なオブジェクトが出来る。

>>12
VBでも理解して使うと仕事が半分になるよ。

63 :名無しさん@涙目です。:2018/11/22(木) 16:05:08.55 ID:DyniCEwb0.net
>>61
オートリファレンスカウンティングなら可能

64 :名無しさん@涙目です。:2018/11/22(木) 16:09:23.54 ID:nXqVz5em0.net
>>61
JavaやRubyはガベージコレクタを実装してるから不要になったメモリは自動的に解放する。
C++は処理の最後でメモリ解放するようにコード書かないと残る。

65 :名無しさん@涙目です。:2018/11/22(木) 16:09:57.24 ID:F/D/aowg0.net
static使う頭が有るなら
後はフィールド変数化してDIでインジェクションするまで後1歩では

66 :名無しさん@涙目です。:2018/11/22(木) 16:11:33.84 ID:EPNzJhYV0.net
こういう風潮が少しでもあるのは初期のとんでもオブジェクト指向本のせいだと思う
憂鬱本とか

67 :名無しさん@涙目です。:2018/11/22(木) 16:12:01.52 ID:HSqp+MZG0.net
半年前に書いたものとかもう宇宙語やし
再利用とか幻想じゃね

68 :名無しさん@涙目です。:2018/11/22(木) 16:12:34.58 ID:sqCNftF90.net
オブイェークト嗜好

69 :名無しさん@涙目です。:2018/11/22(木) 16:13:58.08 ID:S046Zavf0.net
様はテンプレート、スケルトン、

70 :名無しさん@涙目です。:2018/11/22(木) 16:25:01.33 ID:JdZ8XK0xO.net
一切手を入れずにそのまま使い続けるならいいんじゃね?

71 :名無しさん@涙目です。:2018/11/22(木) 16:27:48.77 ID:oJzMUjCr0.net
>>67
本来は、宇宙語を理解しなくても、何が出来るのかが解れば使えるのがウリじゃないのか?

72 :名無しさん@涙目です。:2018/11/22(木) 16:32:16.68 ID:U99IdM3A0.net
オブジェクト指向やってれば他人に自慢できる

73 :名無しさん@涙目です。:2018/11/22(木) 16:34:06.50 ID:q78gHUtT0.net
>>12
オメーみたいなのがクソコード量産してんだよ。引退しろよ

74 :名無しさん@涙目です。:2018/11/22(木) 16:34:34.08 ID:kmMt+pq00.net
クソかもしれないけど、オブジェクトマンセー時代のクソコードを大事にメンテしないとならない仕事がまだまだある

75 :名無しさん@涙目です。:2018/11/22(木) 16:37:31.71 ID:zFGFGfOE0.net
>>49
>>1の続きに書いてあるよ

76 :名無しさん@涙目です。:2018/11/22(木) 16:38:26.83 ID:zFGFGfOE0.net
>>51
完全に見えなくなると困ることも多い。
「見えない」と「見えにくい」には絶望的な差がある。

77 :名無しさん@涙目です。:2018/11/22(木) 16:39:36.89 ID:zFGFGfOE0.net
アラン・ケイもカプセル化には反対している。

78 :名無しさん@涙目です。:2018/11/22(木) 16:42:39.51 ID:2pp65R5G0.net
>>43
予想通りの煽りw

79 :名無しさん@涙目です。:2018/11/22(木) 16:45:43.94 ID:/DFaMBV80.net
しっくりくるまでに時間がかかる
しっくりきてしまえばすごくよくわかる
理解能力の差で片付けられるもんじゃないので、どう言えばうまく伝わるのかでずっと苦労してる

80 :名無しさん@涙目です。:2018/11/22(木) 16:49:59.53 ID:Z2GMZEjP0.net
ここでされてるような議論というか話は
30年近く前からされてて今になっても何にも変わってない気がする

オブジェクト嗜好が糞なのか、プログラマーが糞なのか、実際の使われる現場が糞なのか
分からないが

そんなこんなしてるうちに自分はプログラマーには成れなかったのだと知った

81 :名無しさん@涙目です。:2018/11/22(木) 16:50:39.32 ID:DyniCEwb0.net
>>75
なんか結局設計がヘタクソって話が書いてあるなw
上の時間軸の問題や規模の問題は、カプセル化による疎結合で解決する話

>>76
見えなくするというより、アクセスの禁止だよ

82 :名無しさん@涙目です。:2018/11/22(木) 16:51:55.15 ID:MdBrPYIY0.net
>>67
便利なオブジェクトを作ってみんなで再利用するという夢は破れた。
一見使えそうに見えても
機能の範囲、パフォーマンス、使用リソース、制限、信頼度
はてはエラー処理ルールなどの違いで
似たようなものをもう一度作るハメになる。
特に限界がよくわからないライブラリは使えない。

結局再利用したかったらパッケージレベルまで仕上げる必要がある。

今オブジェクト指向を採用するメインの目的はシステムの保守性向上だと思う。
それが成功しているかはなんとも言えない。

83 :名無しさん@涙目です。:2018/11/22(木) 16:54:20.37 ID:Z2GMZEjP0.net
こうしておけば将来役に立つとか助かるよりも
ろくな設計仕様もないままとにかく早くやれ、何時間かけて考えてんだ、とにかく手を動かせって言われるから
後の面倒なんか俺が見るわけじゃねえし知ったことか糞上司、糞職場め!
が勝る

84 :名無しさん@涙目です。:2018/11/22(木) 16:55:30.33 ID:StiIkd1z0.net
そのうちAIがプログラミングもやってくれるようになるさ

85 :名無しさん@涙目です。:2018/11/22(木) 17:00:17.39 ID:ePXFh1Z50.net
>>84
AI「仕様をオブジェクト指向で書いてくれ」

86 :名無しさん@涙目です。:2018/11/22(木) 17:08:43.76 ID:Z2GMZEjP0.net
>>84
AIなんて高そうなもの使わんでも
そこらの一山幾らの派遣奴隷にやらせりゃいいだろ
って根性の職場でしか働いたことがない

87 :名無しさん@涙目です。:2018/11/22(木) 17:09:02.79 ID:wGvG1Cgo0.net
とにかく動いてくれれば何でもいいよ

88 :名無しさん@涙目です。:2018/11/22(木) 17:12:11.98 ID:1SWGjSob0.net
pascalいじってて初めてdelphi使った時は感動したがなぁ
0から作る努力をどんどんしなくなったけど

89 :名無しさん@涙目です。:2018/11/22(木) 17:17:02.72 ID:USYmM0Jn0.net
俺は1回も使ったことないけどなんの問題もないよ

90 :名無しさん@涙目です。:2018/11/22(木) 17:32:03.20 ID:/DFaMBV80.net
オブジェクト指向よくわかんないけどとにかくオブジェクト指向でやれって奴は間違いなくクソ

91 :名無しさん@涙目です。:2018/11/22(木) 17:44:39.93 ID:z2fF9jBP0.net
>>24
カッコいい!

92 :名無しさん@涙目です。:2018/11/22(木) 18:17:57.88 ID:OsfHtiBd0.net
>>13
さすがに障害起きまくるwww

93 :名無しさん@涙目です。:2018/11/22(木) 18:19:57.12 ID:wzU0EU/50.net
>>90
オブジェクト指向大好きだけど激しく同意

何事も適材適所がある

94 :名無しさん@涙目です。:2018/11/22(木) 18:36:46.98 ID:6vT79s5X0.net
アマグラマーも見たいです!

95 :名無しさん@涙目です。:2018/11/22(木) 18:50:31.04 ID:rPez+w6L0.net
>>16
Linuxの内部システムコールとかはLinusかアンチオブジェクト指向なんで分かりやすくて助かってるわ

96 :名無しさん@涙目です。:2018/11/22(木) 19:20:03.62 ID:8G+N9pIX0.net
>>65
DIについてわかりやすく教えてくれ

97 :名無しさん@涙目です。:2018/11/22(木) 19:23:03.17 ID:JeWW8au50.net
ヨシ!

https://i.imgur.com/X9nj7xy.jpg
https://i.imgur.com/fhIOAb9.jpg

98 :名無しさん@涙目です。:2018/11/22(木) 19:25:45.56 ID:piZkg6av0.net
出来て当然
逆に拘る奴は厨二病

99 :名無しさん@涙目です。:2018/11/22(木) 19:35:16.19 ID:XhzMyeea0.net
Perlで無理やりオブジェクト指向とかいう苦行

100 :名無しさん@涙目です。:2018/11/22(木) 19:56:19.22 ID:xAZ+wCY60.net
>>85
AI 「仕様をオブジェクト指向で書いてくれ」
人間「それをするのがおまえの仕事だろ」

総レス数 241
55 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★