X



プログラマに聞きたいんだけどオブジェクト指向ってクソじゃね?
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@涙目です。(北海道) [EU]
垢版 |
2018/11/22(木) 15:07:59.36ID:OaykOnnP0?PLT(12015)

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
0002名無しさん@涙目です。(茸) [US]
垢版 |
2018/11/22(木) 15:08:18.72ID:jfLY759y0
はい
0003名無しさん@涙目です。(茸) [US]
垢版 |
2018/11/22(木) 15:08:39.65ID:+mNps3wB0
クソだよ
0004名無しさん@涙目です。(地図に無い島) [RO]
垢版 |
2018/11/22(木) 15:08:50.64ID:fK8fmZT20
うんこだよ
0005名無しさん@涙目です。(庭) [US]
垢版 |
2018/11/22(木) 15:09:03.35ID:42wiik9n0
イエス
0006名無しさん@涙目です。(catv?) [JP]
垢版 |
2018/11/22(木) 15:10:36.27ID:dlOZGDFd0
オブジェクト指向は結局慣れなかったな
オーバーロードとオーバーライドと継承ってシステムがどう動いてるか全部分かってる人間じゃないと無理だろと思ってた
0010名無しさん@涙目です。(庭) [US]
垢版 |
2018/11/22(木) 15:12:10.40ID:lfVl5VyH0
おじさん可愛そう
0012名無しさん@涙目です。(空) [US]
垢版 |
2018/11/22(木) 15:13:05.28ID:iDEmHsjZ0
vb屋の俺にはいまだによくわからないしどうでもいい
0013名無しさん@涙目です。(チベット自治区) [US]
垢版 |
2018/11/22(木) 15:14:09.36ID:VZa8S7bc0
昔と違ってメモリは腐るほどあるんだからガベコレやメモリ解放なんてしなくていいじゃん
0015名無しさん@涙目です。(茸) [US]
垢版 |
2018/11/22(木) 15:16:29.33ID:35W5GsvP0
天才なら
そもそも構造体の段階で
要らないと気づかなきゃ
0016名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/11/22(木) 15:16:39.25ID:V5/8X65q0
どうあがいても、オブジェクト指向に構成された、ブラックボックスやライブラリの上で書くしかないんだから、愚痴っても仕方ない。
0018名無しさん@涙目です。(やわらか銀行) [ニダ]
垢版 |
2018/11/22(木) 15:16:58.76ID:VoSRpfGx0
>>11
それを派遣が伝言ゲームと
0021名無しさん@涙目です。(長屋) [US]
垢版 |
2018/11/22(木) 15:18:38.94ID:Z2GMZEjP0
>>16
むしろ中身を理解せずともライブラリやAPIが使えて
必要ならば安全に変更もできるって凄くね?
0022名無しさん@涙目です。(長屋) [US]
垢版 |
2018/11/22(木) 15:19:42.02ID:Z2GMZEjP0
ドキュメントがろくになくてどう使うのか、結局クラスの中身読み込む羽目になった
0023名無しさん@涙目です。(埼玉県) [CN]
垢版 |
2018/11/22(木) 15:20:18.45ID:a8JF0q7c0
エンジンとかハンドルとかタイヤを別々に作って
最後に合体させて車にするって誰かが言ってたけど合ってる?
0024名無しさん@涙目です。(茸) [US]
垢版 |
2018/11/22(木) 15:20:23.44ID:35W5GsvP0
>>17
オールグローバル変数一本グソ
長編プログラミングなら
俺に任せろ
0025名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/11/22(木) 15:22:10.49ID:V5/8X65q0
>>21
ほんとこれ。
上流では優秀なプログラマがオブジェクト指向を理解してライブラリを作ってる。
下流がついて行けないだけ。
0027名無しさん@涙目です。(東京都) [US]
垢版 |
2018/11/22(木) 15:22:56.09ID:EDna+eRA0
システム間でのファイルの共有関係が管理できてないとバグの温床になる
0028名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/11/22(木) 15:23:46.54ID:V5/8X65q0
>>26
全部のパターンを使わないとと思うから。
得意なワンパターンつーパターンでよい。
0029名無しさん@涙目です。(茸) [US]
垢版 |
2018/11/22(木) 15:24:44.79ID:lzvWr71i0
オブジェクト指向わかんないやつって
糞じゃん

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

使えん奴は死ねばいい
0030名無しさん@涙目です。(東京都) [ニダ]
垢版 |
2018/11/22(木) 15:25:20.93ID:eyjQQ8BI0
きちんと管理できて引き継ぎも出来るならいいんじゃね
0031名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/11/22(木) 15:27:57.57ID:V5/8X65q0
>>30
コードより長いコメントを埋め込んで、書き足して引き継いできた頃よりはるかにまし。
Javaのヘルプみたいなもの書いとけ大体わかる。
0032名無しさん@涙目です。(空) [US]
垢版 |
2018/11/22(木) 15:27:58.30ID:iDEmHsjZ0
>>25
ここではなんか上流前提で最新技術がー英語がーとか言ってるけど大多数は下流だからな
0033名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/11/22(木) 15:29:17.28ID:V5/8X65q0
>>32
ま。そだな。
0034名無しさん@涙目です。(空) [US]
垢版 |
2018/11/22(木) 15:32:32.14ID:StiIkd1z0
クソだよ
0035名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/11/22(木) 15:33:19.71ID:DyniCEwb0
カプセル化による構造化と言ったよい
0036名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/11/22(木) 15:33:41.95ID:DyniCEwb0
あら、途中で送信してしまいますた
0037名無しさん@涙目です。(SB-iPhone) [CN]
垢版 |
2018/11/22(木) 15:34:01.87ID:CBRhVtas0
よくわからんライブラリから帰ってきた結果にIF文とか普通にありそう
0038名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/11/22(木) 15:34:17.24ID:DyniCEwb0
OOPの核心とは、カプセル化による構造化と言ってよい
どうだ
0039名無しさん@涙目です。(大阪府) [US]
垢版 |
2018/11/22(木) 15:35:51.81ID:0ApZ33Aq0
そら上流こんな所見ないか、見ても書きこまないだろうからな
忙しすぎてそんな暇ない
0040名無しさん@涙目です。(滋賀県) [US]
垢版 |
2018/11/22(木) 15:36:29.40ID:gM5nNFbA0
OOPできますって人を面接しても、大抵はデザインパターンつかえるどころか
存在すら知らないソフト技術者()が多い日本・・・
0041名無しさん@涙目です。(庭) [CN]
垢版 |
2018/11/22(木) 15:39:19.92ID:2pp65R5G0
COBOL時代からサブルーチンコールや定義参照はやってる事だし
オブジェクト指向云々なんていちいち意識した事も無いわ
0042名無しさん@涙目です。(空) [US]
垢版 |
2018/11/22(木) 15:41:13.55ID:IBEQI9u40
何で関数型プログラミングとオブジェクト指向が同列に語られてるんだよ
0045名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/11/22(木) 15:43:55.09ID:Y+EOIKCr0
>>1
ブートキャンプってどうなんすかね
0046名無しさん@涙目です。(茸) [US]
垢版 |
2018/11/22(木) 15:44:39.26ID:lzvWr71i0
>>40
javaかけるいうても
継承のメリット生かしてない奴らばっかやで

何でおんなじソースポコポコうんでんのかわかんねえ
0048名無しさん@涙目です。(茸) [US]
垢版 |
2018/11/22(木) 15:46:22.84ID:M24uQ3pa0
>>38
カプセル化が諸悪の根源
0049名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/11/22(木) 15:47:44.66ID:DyniCEwb0
>>48
変わった意見だな
なにゆえ?
0050名無しさん@涙目です。(大阪府) [SI]
垢版 |
2018/11/22(木) 15:49:00.36ID:pJRz81cb0
結局理解出来ないままおっさんになっあわ
関数型しか分からん
0051名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/11/22(木) 15:49:17.77ID:DyniCEwb0
カプセル化とは、人間が一度に把握する情報量を少なくするって事やで
0057名無しさん@涙目です。(千葉県) [US]
垢版 |
2018/11/22(木) 15:59:06.78ID:nXqVz5em0
>>13
メモリは増えたけど、使い続けると動的に生成されるオブジェクトがどんどん増えていく一方だから、
メモリ解放しないとメモリオーバーフローで止まる。
0058名無しさん@涙目です。(庭) [CA]
垢版 |
2018/11/22(木) 15:59:12.92ID:XXn709ye0
みずほ銀行どうなんの?
もうプログラマーを精子から育てるしかなくね?
0060名無しさん@涙目です。(東京都) [CN]
垢版 |
2018/11/22(木) 16:01:06.50ID:j9dlTLcs0
オブジェクト指向なんてわかる奴がやればいいのにjavaを底辺ITドカタに広めたせいで悲惨なことになった
0061名無しさん@涙目です。(茸) [US]
垢版 |
2018/11/22(木) 16:03:10.15ID:NOh2S+In0
>>57
昔のCしか俺はしらんが今どきの言語は勝手に処理終わったらメモリ解放してくれたりしないの?
0062名無しさん@涙目です。(東京都) [ニダ]
垢版 |
2018/11/22(木) 16:03:22.41ID:oJzMUjCr0
オブジェクト指向じゃなくてオブジェクト思想と言う言い方の方がしっくりくる。
作成時にどう言う子に育って欲しいかを明確にしないと、情緒不安定なオブジェクトが出来る。

>>12
VBでも理解して使うと仕事が半分になるよ。
0063名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/11/22(木) 16:05:08.55ID:DyniCEwb0
>>61
オートリファレンスカウンティングなら可能
0064名無しさん@涙目です。(千葉県) [US]
垢版 |
2018/11/22(木) 16:09:23.54ID:nXqVz5em0
>>61
JavaやRubyはガベージコレクタを実装してるから不要になったメモリは自動的に解放する。
C++は処理の最後でメモリ解放するようにコード書かないと残る。
0067名無しさん@涙目です。(catv?) [US]
垢版 |
2018/11/22(木) 16:12:01.52ID:HSqp+MZG0
半年前に書いたものとかもう宇宙語やし
再利用とか幻想じゃね
0069名無しさん@涙目です。(茸) [ニダ]
垢版 |
2018/11/22(木) 16:13:58.08ID:S046Zavf0
様はテンプレート、スケルトン、
0074名無しさん@涙目です。(新疆ウイグル自治区) [US]
垢版 |
2018/11/22(木) 16:34:34.08ID:kmMt+pq00
クソかもしれないけど、オブジェクトマンセー時代のクソコードを大事にメンテしないとならない仕事がまだまだある
0075名無しさん@涙目です。(茸) [US]
垢版 |
2018/11/22(木) 16:37:31.71ID:zFGFGfOE0
>>49
>>1の続きに書いてあるよ
0076名無しさん@涙目です。(茸) [US]
垢版 |
2018/11/22(木) 16:38:26.83ID:zFGFGfOE0
>>51
完全に見えなくなると困ることも多い。
「見えない」と「見えにくい」には絶望的な差がある。
0077名無しさん@涙目です。(茸) [US]
垢版 |
2018/11/22(木) 16:39:36.89ID:zFGFGfOE0
アラン・ケイもカプセル化には反対している。
0078名無しさん@涙目です。(庭) [CN]
垢版 |
2018/11/22(木) 16:42:39.51ID:2pp65R5G0
>>43
予想通りの煽りw
0079名無しさん@涙目です。(禿) [ニダ]
垢版 |
2018/11/22(木) 16:45:43.94ID:/DFaMBV80
しっくりくるまでに時間がかかる
しっくりきてしまえばすごくよくわかる
理解能力の差で片付けられるもんじゃないので、どう言えばうまく伝わるのかでずっと苦労してる
0080名無しさん@涙目です。(長屋) [US]
垢版 |
2018/11/22(木) 16:49:59.53ID:Z2GMZEjP0
ここでされてるような議論というか話は
30年近く前からされてて今になっても何にも変わってない気がする

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

そんなこんなしてるうちに自分はプログラマーには成れなかったのだと知った
0081名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/11/22(木) 16:50:39.32ID:DyniCEwb0
>>75
なんか結局設計がヘタクソって話が書いてあるなw
上の時間軸の問題や規模の問題は、カプセル化による疎結合で解決する話

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

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

今オブジェクト指向を採用するメインの目的はシステムの保守性向上だと思う。
それが成功しているかはなんとも言えない。
0083名無しさん@涙目です。(長屋) [US]
垢版 |
2018/11/22(木) 16:54:20.37ID:Z2GMZEjP0
こうしておけば将来役に立つとか助かるよりも
ろくな設計仕様もないままとにかく早くやれ、何時間かけて考えてんだ、とにかく手を動かせって言われるから
後の面倒なんか俺が見るわけじゃねえし知ったことか糞上司、糞職場め!
が勝る
0084名無しさん@涙目です。(空) [US]
垢版 |
2018/11/22(木) 16:55:30.33ID:StiIkd1z0
そのうちAIがプログラミングもやってくれるようになるさ
0086名無しさん@涙目です。(長屋) [US]
垢版 |
2018/11/22(木) 17:08:43.76ID:Z2GMZEjP0
>>84
AIなんて高そうなもの使わんでも
そこらの一山幾らの派遣奴隷にやらせりゃいいだろ
って根性の職場でしか働いたことがない
0089名無しさん@涙目です。(茸) [TW]
垢版 |
2018/11/22(木) 17:17:02.72ID:USYmM0Jn0
俺は1回も使ったことないけどなんの問題もないよ
0091名無しさん@涙目です。(岡山県) [US]
垢版 |
2018/11/22(木) 17:44:39.93ID:z2fF9jBP0
>>24
カッコいい!
0092名無しさん@涙目です。(庭) [ニダ]
垢版 |
2018/11/22(木) 18:17:57.88ID:OsfHtiBd0
>>13
さすがに障害起きまくるwww
0093名無しさん@涙目です。(東京都) [KR]
垢版 |
2018/11/22(木) 18:19:57.12ID:wzU0EU/50
>>90
オブジェクト指向大好きだけど激しく同意

何事も適材適所がある
0094名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/11/22(木) 18:36:46.98ID:6vT79s5X0
アマグラマーも見たいです!
0095名無しさん@涙目です。(新疆ウイグル自治区) [SE]
垢版 |
2018/11/22(木) 18:50:31.04ID:rPez+w6L0
>>16
Linuxの内部システムコールとかはLinusかアンチオブジェクト指向なんで分かりやすくて助かってるわ
0102名無しさん@涙目です。(埼玉県) [US]
垢版 |
2018/11/22(木) 20:16:09.67ID:NHiLyvZM0
いいえ?
っつーかぶっちゃけ今のUIなんて全部オブジェクト指向じゃん
まさか今更ゲームみたいにメインループで全部のUIの処理回せと?
0104名無しさん@涙目です。(兵庫県) [CR]
垢版 |
2018/11/22(木) 20:56:30.90ID:i1RTm7j00
オブジェクトが悪い訳ではない
必要のない物まで無理やりオブジェクトにしたり、必要のない物にも関わらず直接修正するならまだしもラップして機能修正するからダメなんだよ
使い回さないならstatic
スコープを広く跨ぐならstatic も検討とか使い分けろよ
0105名無しさん@涙目です。(宮城県) [DE]
垢版 |
2018/11/22(木) 21:01:03.12ID:KAo7eZ6Z0
オブジェクト指向ってなんなの?
0106名無しさん@涙目です。(やわらか銀行) [CN]
垢版 |
2018/11/22(木) 21:03:36.00ID:l0W2iYNm0
糞ではないが
オブジェクトサイズがでかくなるのが組み込みに向かない
0107名無しさん@涙目です。(庭) [US]
垢版 |
2018/11/22(木) 21:04:14.13ID:pJmk6OUc0
オブジェクト指向は誤訳、オブジェクト志向な。
0109名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/11/22(木) 21:06:07.09ID:OuJ5RwDN0
オブジェクト指向を理解してないのにオブジェクト指向の派生版みたいなのをちまちま追っかけてるやつはアホだなと思ってる
0110名無しさん@涙目です。(空) [CN]
垢版 |
2018/11/22(木) 21:19:51.22ID:XbkEyOmw0
めんどくさいからさーデータ型とかやめよーぜ
容量大きくなっても知らんがなー

ここ呼び出してグルグル回せって声かけたらその通りに作ってくれよーAI
0113名無しさん@涙目です。(静岡県) [US]
垢版 |
2018/11/22(木) 22:21:14.63ID:4ovXw5Ii0
オブジェクト指向が糞なんじゃなくて分からない頭が糞
そんな頭をどんだけ集めても肥だめしかできないに決まってる

じゃあ今度は関数指向だとか言ってとびついた奴らの死体が
ノマド壁の前でいっぱい転がってるんだろw
0114名無しさん@涙目です。(静岡県) [US]
垢版 |
2018/11/22(木) 22:22:44.11ID:4ovXw5Ii0
ノマドじゃねえ、モナドだったwww
0115名無しさん@涙目です。(埼玉県) [MY]
垢版 |
2018/11/22(木) 22:26:10.42ID:xjF8ZDGf0
>>46
継承ばかり言っているのも危険だけどな。
実装の継承は結合が密になるのでよくない。
0117名無しさん@涙目です。(catv?) [US]
垢版 |
2018/11/22(木) 22:28:36.52ID:VnpuBWjd0
>>95
OOPで書いたOSってあるの?w
0118名無しさん@涙目です。(埼玉県) [MY]
垢版 |
2018/11/22(木) 22:31:32.30ID:xjF8ZDGf0
>>28
そやな、で少しづつ使うのを増やしていけばいい。
上手く使えると凄くスッキリする。
でも、これ使いたいで無理に当て嵌めるとかえってグダグダになる。
0119名無しさん@涙目です。(香港) [US]
垢版 |
2018/11/22(木) 22:31:32.68ID:lwNNE+5u0
何がなんでも二次元で表記しようとするから
プログラマー間で形状を共有できないので
デザインがぐっちゃぐちゃになるんだよ
0120名無しさん@涙目です。(catv?) [US]
垢版 |
2018/11/22(木) 22:36:11.11ID:9AmjsCUw0
こういうのが話題になるということは、
プログラミングが新しい技術であり、
まだまだ作り上げる技法が確立されていない、
手探りの段階ということなんですか?
0121名無しさん@涙目です。(チベット自治区) [SE]
垢版 |
2018/11/22(木) 22:36:53.52ID:JKX6mbZL0
生産性を落として強固さを得るので
短期的には損する
資産流用できてないなら更に損する
0123名無しさん@涙目です。(埼玉県) [MY]
垢版 |
2018/11/22(木) 23:07:51.16ID:xjF8ZDGf0
>>112
その現場、オブジェクト指向もどきを導入してもしなくても多分同じだから大丈夫。
0127名無しさん@涙目です。(大阪府) [US]
垢版 |
2018/11/22(木) 23:29:43.41ID:LnC6Tslp0
>>6
クッソ頭悪そう
0128名無しさん@涙目です。(茸) [DE]
垢版 |
2018/11/22(木) 23:33:24.38ID:Zi/DAvRI0
>>120
話の内容があまりにもアホすぎるから気にしなくていい
0129名無しさん@涙目です。(catv?) [EU]
垢版 |
2018/11/22(木) 23:33:39.70ID:VM9jxMEa0
>>126
敵がワサワサ湧いてくるゲーム
0131名無しさん@涙目です。(兵庫県) [US]
垢版 |
2018/11/22(木) 23:36:29.31ID:wbvsjct70
そのうちAIが全部コーディングしてくれるようになるからプログラミング手法なんて気にしなくてもいいよ
AIをデザインする人を目指してんだったら別だけど
0133名無しさん@涙目です。(大阪府) [US]
垢版 |
2018/11/22(木) 23:58:45.01ID:LnC6Tslp0
>>132
そら組み込み系とかの発想だな
0135名無しさん@涙目です。(大阪府) [US]
垢版 |
2018/11/23(金) 00:26:55.42ID:oF2xcW9n0
>>134
なんも理解できないアホは
無理して話に入ってこなくて良いからw
0136名無しさん@涙目です。(広島県) [ニダ]
垢版 |
2018/11/23(金) 01:05:38.80ID:ss2EcCgr0
ただでさえ納期に間に合わすのが、やっとなのに
再利用とか継承とかやってたらコストが掛かり過ぎる
暇な連中がやってくれ
0137名無しさん@涙目です。(福岡県) [US]
垢版 |
2018/11/23(金) 01:08:08.48ID:EBXNAIcs0
糞ではあるが一番マシ
0139名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/11/23(金) 02:36:06.34ID:ZI/DbmjN0
汎用フレームワーク作るとオブジェクト指向が理解できるぞ
0142名無しさん@涙目です。(dion軍) [NL]
垢版 |
2018/11/23(金) 02:52:52.70ID:ovGHVb3/0
ごめん、オブジェクト指向以外ってあるの?
0144名無しさん@涙目です。(家) [KR]
垢版 |
2018/11/23(金) 03:37:41.85ID:EkVxnEEM0
ケースバイケースで使い所の違いだけだから
両方有用だわw
何でお前らはゼロイチで考えたがるキモオタなん?
ヲタのくせに流行に弱いの?w
0145名無しさん@涙目です。(やわらか銀行) [KR]
垢版 |
2018/11/23(金) 03:40:01.39ID:zeK6cBbt0
メモリ上ではどうなってんだかな
Cの時は理解できたんだが               嘘だが
0147名無しさん@涙目です。(長屋) [DE]
垢版 |
2018/11/23(金) 06:42:36.08ID:QwnNhaFf0
階層化して役割分担して会社組織みたいな全体像が見えてきたのはいいけど、
具体的な処理内容が変数の値によって可変になるようなのばかりで、
結局自分がWeb画面の電文になって旅をしないと目当ての処理が見つからないクソコード
0148名無しさん@涙目です。(埼玉県) [MY]
垢版 |
2018/11/23(金) 07:23:33.95ID:FYYgVmiy0
>>141
それはオブジェクト指向に限らず大抵の考え方とは相性が悪いような気が、、

まあ、大体がオブジェクト指向とか以前の問題だな。
0149名無しさん@涙目です。(埼玉県) [MY]
垢版 |
2018/11/23(金) 07:24:13.60ID:FYYgVmiy0
てか、一番のポイントは抽象化だろ。
0152名無しさん@涙目です。(埼玉県) [MY]
垢版 |
2018/11/23(金) 07:54:34.97ID:FYYgVmiy0
>>151
んー、それも大事だと思うけど、疎結合を実現するための方法の一つとして、抽象化もあるとも言える。

まあ、「一番」と言ったのは言い過ぎだったとは思ってる。他にも重要なポイントはあるし。
0153名無しさん@涙目です。(東京都) [ID]
垢版 |
2018/11/23(金) 07:57:08.45ID:35Fr/OU60
>>151
疎結合は別にオブジェクト指向じゃなくても普通に重要なんだよなあ
何も分かってないね
0156名無しさん@涙目です。(catv?) [ニダ]
垢版 |
2018/11/23(金) 08:04:37.54ID:NY1j/ZDd0
プログラムなんか一発もんだし
0157名無しさん@涙目です。(SB-iPhone) [DE]
垢版 |
2018/11/23(金) 08:27:06.44ID:H7M3BEEP0
>>150
正解は無いけど、どっちかと言えばinterfaceを第一候補に考えて、ただ共通で継承すべき具体的な処理があるならabstract classという順序と思ってる。
逆に全てのクラスがそのabstract classを必然的に継承するなら、無駄にinterfaceは入れる必要は無いけど。

ただ、実装の再利用が目的なら無理に継承を使わない方がいいかと。実装の再利用なら、staticメソッドでもコンポジットでも出来るから。
0158名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/11/23(金) 08:29:52.83ID:ZTWkM4/x0
プログラマ自身の適応しなければならない棲息環境からして種々様々だからね職場の上司の云う事を聞き容れて楽になりなさいm9(´・∀・`)
0159名無しさん@涙目です。(SB-iPhone) [GB]
垢版 |
2018/11/23(金) 08:33:08.08ID:jwaCMckX0
>>13
その分機能も大きく複雑になってる
0160名無しさん@涙目です。(庭) [US]
垢版 |
2018/11/23(金) 08:34:11.12ID:L18nPCY80
オブジェクト指向とはどんな物なのか分かりやすく教えて
0161名無しさん@涙目です。(香港) [US]
垢版 |
2018/11/23(金) 08:42:41.25ID:INL9EKro0
マ同士の意思疎通ですらボヤっとした漢字単語で
続いて出る言葉が「お前は理解していない」

端から見てりゃ明らかな情報量不足なのに
提供側も受取側も情報を得た気になってるだけの業界なんだよな
0162名無しさん@涙目です。(大阪府) [GB]
垢版 |
2018/11/23(金) 09:58:57.14ID:RWAIHWwj0
>>160
それが難しい。関数プログラムより何が凄いの?と迫られたら困る。
オブジェクト同士で自律的に連携しあってとか云々言っても、究極的には関数同士で呼び合うプログラムやからな。
オブジェクト指向の方が高度ではあるには違いないが、関数プログラム以上のパフォーマンスを発揮する
「決定的な何か」は何なのか説明できん。
0163名無しさん@涙目です。(チベット自治区) [US]
垢版 |
2018/11/23(金) 10:01:12.43ID:0UZwhlO90
COBOL からJAVAのリプレースとかやるとコボラーが設計書起こして「この通り作れ」とか言ってくるからオブジェクト指向もなんもないやたら長いソースコードが出来上がる。
0164名無しさん@涙目です。(やわらか銀行) [ニダ]
垢版 |
2018/11/23(金) 10:07:04.71ID:VxWLGyOr0
>>160
従来の構造化言語はデータを操作するために関数を呼び出すけど、オブジェクト指向はオブジェクトを操作するためにメソッドを呼び出す。
細かいことはたくさん違いがあるけど、実はあまり変わらない。
0165名無しさん@涙目です。(広島県) [BR]
垢版 |
2018/11/23(金) 10:23:45.64ID:KiOK74R50
>>160
仕様以外の目的に仕事を増やす
客に必要の無いドキュメントを増やす

客に対して、余計な仕事をしたので工数分のお金ください。資料代ください。と言うことです
0167名無しさん@涙目です。(東京都) [ニダ]
垢版 |
2018/11/23(金) 13:39:32.89ID:59AHzQU90
>>165
事実生産性上がってねえしな
0168名無しさん@涙目です。(東京都) [KR]
垢版 |
2018/11/23(金) 13:48:35.92ID:IS9rviQJ0
オブジェクト指向好きだから推したいけど、冷静に考えて生産性が上がってるとは
言い難いんだよな

オブジェクト指向の為に新たな知識がかなり必要になり、やれクラス設計だ
デザインパターンだ、多態性だ、継承がどうのこうのだの、インターフェイスでーとか
余計な手間が増えたとも言えるだろうな

若手の育成もより面倒になったと言えるかもね
なんでもオブジェクト指向でーとか必要ないものにも押し付けるべきじゃないと思う
0170名無しさん@涙目です。(茸) [CN]
垢版 |
2018/11/23(金) 14:22:22.76ID:geArUd5o0
だがしかしC言語とアセンブラで
全部出来ちゃうじゃん?

机上の空論だよ
0171名無しさん@涙目です。(catv?) [ニダ]
垢版 |
2018/11/23(金) 14:34:02.27ID:TYdQg0WG0
冗長なだけやった
0172名無しさん@涙目です。(SB-iPhone) [US]
垢版 |
2018/11/23(金) 14:59:54.32ID:/u7VvqIe0
>>13
数時間使って終了のソフトなら、リソースは腐る程あるんで勝手にしてくれ。
問題はシステムなんかでは、24時間365日ノンストップで動かし続けなければならないことなんだ。
0173名無しさん@涙目です。(千葉県) [JP]
垢版 |
2018/11/23(金) 15:07:23.81ID:15ovyaTG0
実際過去に作ったクラスをよそで流用できたことなんてないよね
0174名無しさん@涙目です。(東京都) [TR]
垢版 |
2018/11/23(金) 15:18:27.49ID:h/QX1ULQ0
マルチプルインヘリタンスは使わない
そもそもインヘリタンスも使わない
普通に作ればオブジェクトコンポジションになる
0176名無しさん@涙目です。(dion軍) [US]
垢版 |
2018/11/23(金) 16:18:47.07ID:xuDMii5L0
くそだよ
ダメな人をよりダメにする
0177名無しさん@涙目です。(dion軍) [GB]
垢版 |
2018/11/23(金) 16:21:13.34ID:9QbynLD30
構造体を理解できない人たち
0178名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/11/23(金) 16:55:13.03ID:ZI/DbmjN0
>>173
そりゃちゃんと書けてないだけだろうな。
よく見るよ。汎用性のないクソライブラリ
0179名無しさん@涙目です。(空) [US]
垢版 |
2018/11/23(金) 16:58:54.50ID:hWVkWRjc0
>>160
メモリ管理等ができない下手くそをなんとか無理矢理レールに乗っけようという試み
のこと
0180名無しさん@涙目です。(庭) [EU]
垢版 |
2018/11/23(金) 18:10:53.44ID:iaF1E8Jd0
言語仕様を熟知してて設計経験の豊富なベテランだけでコード書くならgolangやnode.jsは凄い効率いいけど、
そうじゃない人達が設計思想を台無しにする破壊的なコードが書けないように、作業範囲もカプセル化できるのがクラスベースの言語の良いところだと思う。
0182名無しさん@涙目です。(東京都) [KR]
垢版 |
2018/11/23(金) 19:06:17.01ID:IS9rviQJ0
>>176
ダメな人に、さらに難しい仕事をさせたら
さらにダメな仕事をするだけだしな
0183名無しさん@涙目です。(catv?) [TR]
垢版 |
2018/11/23(金) 19:14:01.61ID:ZEvsgpM10
なんでもかんでもクラスにするとか継承を多用するとかデザインパターンとかはクソ
データ構造に限定して使うのが良さげ
0184名無しさん@涙目です。(神奈川県) [FR]
垢版 |
2018/11/23(金) 19:31:58.48ID:/dJ6yHIL0
可読性向上にはなってると思うけどね。
新規に参加したプロジェクトがオブジェクト指向で設計されてれば全体的な構造の把握も局所的な機能の把握もしやすいんじゃないかな。
0186名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/11/23(金) 21:25:39.11ID:ZvY4He2L0
読めなかったら改修できなくね?
0188名無しさん@涙目です。(富山県) [EG]
垢版 |
2018/11/23(金) 21:58:11.18ID:MLI2tvq40
上手に使えば外国にオフショアしたとしても上流工程で作ったフローから逸れることなく
作らせることできそうだけど、難し過ぎておれにはできなかった
0192名無しさん@涙目です。(catv?) [JP]
垢版 |
2018/11/23(金) 22:54:09.07ID:Erx7hVxc0
バカでもザコでも開発現場で働けるようにするためのものだよ。
ビジネスロジックだけコーディング規約に従って書かせる。
ライブラリとフレームワークはできるヤツしか書く必要がない。
0193名無しさん@涙目です。(catv?) [US]
垢版 |
2018/11/23(金) 23:08:15.78ID:hLoPH1pr0
>>25
上流と下流って工程であって
どちらが優秀かって話しじゃないんだが
0195名無しさん@涙目です。(空) [ニダ]
垢版 |
2018/11/24(土) 06:45:22.30ID:P6x8XUKQ0
といっても
派遣プログラマのやってることって

部品のつなぎ合わせ

やん。
0199名無しさん@涙目です。(東京都) [KR]
垢版 |
2018/11/24(土) 14:20:04.31ID:gGgaVngk0
>>198
専門職扱いされるのは極一部の優秀の人くらいだからかもね

優秀なプログラマーとして扱われるまで行かなかった(行く見込みもない)夢破れた
人たちが愚痴を言ってるというのがほとんどなんじゃないかな

オブジェクト指向もどうしても理解できなくて苦しんでる人も
それなりに居るようだし
0202名無しさん@涙目です。(やわらか銀行) [KR]
垢版 |
2018/11/24(土) 19:11:14.14ID:XHlrZlsb0
「最初の入り口がオブジェクト指向なんだよね最近の子って
0203名無しさん@涙目です。(catv?) [ニダ]
垢版 |
2018/11/24(土) 19:21:04.55ID:OLiVJ01v0
>>13
無限かよ
0204名無しさん@涙目です。(catv?) [ニダ]
垢版 |
2018/11/24(土) 19:23:27.32ID:OLiVJ01v0
ほとんどのPGがオブジェクト指向で作られたライブラリ使うだけじゃねーの?
0205名無しさん@涙目です。(SB-iPhone) [CA]
垢版 |
2018/11/24(土) 19:29:21.96ID:DMaJj7CM0
>>197
建築に例えると、建築の勉強をして、世界の名だたるビルディングに負けないようなものを作ろうと意気込んで飛び込んだが、上級企業が全てを仕切ってて、やってることは欧米の後追いオンリー、下手すれば後追いのレベルですらない。

そして、自身は土運びとコンクリート流しの土方作業、または辻褄合わせのドキュメント作成を朝から晩までやらされ、できあがるものは世界的には数世代前の時代遅れの建築物か、公共事業的な必要のないもの。
0206名無しさん@涙目です。(新疆ウイグル自治区) [ニダ]
垢版 |
2018/11/24(土) 20:07:46.59ID:hGWvbDfs0
オブジェクト指向言語で書かれたコードってエラーチェック省きすぎじゃね?
0208名無しさん@涙目です。(東京都) [JP]
垢版 |
2018/11/24(土) 20:22:08.93ID:0xq8rjpW0
オブジェクト指向ってことはまだオブジェクトそのものじゃなくて、そこへ向かう途上ってこと?
0209名無しさん@涙目です。(東京都) [MX]
垢版 |
2018/11/24(土) 20:28:27.73ID:K4339zHI0
>>207
俺はクラス、カプセル化、オーバーライド、継承、その程度なら普通にわかるんだがなぁ。
多重継承はバグる原因だから知らないw
.netプログラマならオブジェクト指向については皆知ってる気はするんだがなぁ…
0210名無しさん@涙目です。(東京都) [RU]
垢版 |
2018/11/24(土) 20:34:39.42ID:/Inuz0Ks0
関数とメソッドは違うということまでは分かった。
0212名無しさん@涙目です。(東京都) [ニダ]
垢版 |
2018/11/24(土) 20:41:40.94ID:JpgN+Vfr0
.netプログラマはオブジェクト指向で自分がプログラムをしていることに気づいてないのがいる
フォームの継承も「そのような機能」で終わらせちゃっていたり
0217名無しさん@涙目です。(家) [NL]
垢版 |
2018/11/24(土) 21:08:55.78ID:YNlj2kln0
業務アプリケーションの開発には向かない
初期構築に時間がかかる上に、機能追加等で基底クラスに手を入れると継承している全ての機能をテストする事になり金がかかるので、結局似て非なるクラスが作られオブジェクト指向が崩壊してゆく
0218名無しさん@涙目です。(catv?) [ニダ]
垢版 |
2018/11/24(土) 21:09:50.60ID:mij3UV1/0
>>120
プログラム言語の歴史は60年くらいあるが、オブジェクト以前はきちんとコーディング規約を決めてみんながそれを守って
作れば良かった。オブジェクトの概念が入ってくると、既存の言語とは概念が違うので混在させるのが難しい。
で、どちらを使うかから検討しないといけなくなり、オブジェクトでいくと決めた場合は既存の開発手法が使えなくなるので
手探りで開発していかないといけなくなった。オブジェクト以前と違って抽象的な概念が多いので、書いたコードが動いても
それを正確に理解し、保守したり拡張するのが難しくなった。開発者が辞めるとそれを引き継いだ人もオブジェクトの開発経験が
ないと引き継げないのでいろいろ大変。年寄りには無理。
0222名無しさん@涙目です。(香川県) [ニダ]
垢版 |
2018/11/24(土) 21:19:42.49ID:nC8trjIx0
COBOLerがよく口にする「コピー句」って何のことかサッパリ分からんけどなんか格好いい!
0223名無しさん@涙目です。(catv?) [ニダ]
垢版 |
2018/11/24(土) 21:19:57.47ID:mij3UV1/0
>>145
インスタンスを生成したら、そのメソッドを指すポインタ表を作り、処理するときはそこに飛んで処理して、終わったら戻る。
Cでもこうなるようにコードを書けば同じことができる。
0224名無しさん@涙目です。(catv?) [ニダ]
垢版 |
2018/11/24(土) 21:28:12.95ID:mij3UV1/0
>>160
昔の言語は、必要なコード(サブルーチン)を呼び出して動かすのが当たり前だったが、動作に必要なデータは好き勝手に扱っていた。
そのため、あるデータをどのコードが読み書きしているかわからなくなったりしてバグの原因になっていた。そこで、何か処理をするときは、
それを処理するコードとデータを1つにまとめて扱うことにしたのがオブジェクト。こうしておけば、そのデータをいじるのは同じクラス内の
メソッドしかないのでバグがあってもその辺を調べれば原因がわかるようになるし、他のクラスが何をしても別のクラスのデータには影響が
ないから扱いやすい。
0225名無しさん@涙目です。(catv?) [ニダ]
垢版 |
2018/11/24(土) 21:32:52.34ID:mij3UV1/0
>>170
理屈の上ではそうだけど、UIなんかはオブジェクトでやった方がずっと簡単に書ける。
仮にオブジェクトで書いた簡単なコードを全部アセンブラで書いたら何十倍もの時間とコストがかかる。
仕事では開発コストと時間が決まっているから事実上無理。無理にやってそれを超えてしまうと赤字になり給料が出なくなる。
0226名無しさん@涙目です。(東京都) [ニダ]
垢版 |
2018/11/24(土) 21:49:36.18ID:/mbfmgWD0
1人で開発する時や何年も同じチームでやっている場合は、オブジェクト指向の恩恵を受ける。
それ以外だと、恩恵が無いだけでなく、トラブルシューティングの工数が増大する。

オブジェクト指向は作った人の考え方が影響するので、オブジェクト「思考」だと思う。
その思考を次のプロジェクトリーダーに継承出来ればうまくゆく。

ちょっと、うまいこと言ってみました。
0227名無しさん@涙目です。(埼玉県) [MY]
垢版 |
2018/11/24(土) 21:54:52.67ID:h5xa3yLA0
>>132
ほとんどの場合、オブジェクト指向を使っているかとパフォーマンスは直接関係無い。それ以外の要因だったり、あるいは単に設計やアルゴリズムが悪いだけだったりする。
0228名無しさん@涙目です。(大阪府) [US]
垢版 |
2018/11/24(土) 21:57:29.75ID:uclPj8WO0
>>212
どんな現場だよ
煽り抜きに底辺にも程があるぞ…
0229名無しさん@涙目です。(新疆ウイグル自治区) [JP]
垢版 |
2018/11/24(土) 22:02:25.76ID:lAoaCHPB0
>>217
そんなのまともなテストコード作っとけば基底クラスの変更くらい余裕だろ
0230名無しさん@涙目です。(埼玉県) [MY]
垢版 |
2018/11/24(土) 22:06:04.58ID:h5xa3yLA0
>>217
むやみに継承を使うのが良くない。
0231名無しさん@涙目です。(dion軍) [US]
垢版 |
2018/11/24(土) 22:14:34.54ID:wBGiEYNC0
俺初めてまだ半年も立ってないけどオブジェクトクラスがどういう子をさしてるかとかよくわからない。
strutsはしね
0235名無しさん@涙目です。(埼玉県) [ニダ]
垢版 |
2018/11/25(日) 07:52:44.42ID:Puirza050
 
staticおじさんが原因で関数化なんっすねー。

へぇww初めてしったっすwwww

つーか記事書いた奴バカだろwwwぶっちゃけ

static変数を使わないじゃなくて、クラス変数を使わないのが関数型だし

関数がクラスの状態によって返す値が変わってくるのを防ぎたいがために

クラスに状態を持つ変数をもたせたくないよねーつうのが関数型の出発点の一つ

staticおじさんが関数型の出発点とかwww

こんなトンデモ史観はじめてっすwwwwwww

 
0237名無しさん@涙目です。(東日本) [DE]
垢版 |
2018/11/25(日) 09:04:51.33ID:MzRFAHl50
なつかしいなstaticおじさん・・・

でもオブジェクト指向ももう昔の話になってきたと思うな
0239名無しさん@涙目です。(山形県) [FR]
垢版 |
2018/11/25(日) 09:37:13.45ID:1BupQX3l0
クソではないでしょ
ゲームの話だが、ポップンミュージックってあるじゃん。あれの「おじゃまポップン」って、まさにオブジェクト指向のポリモーフィズムの仕組みを使ってると思うんだ
0240名無しさん@涙目です。(大阪府) [US]
垢版 |
2018/11/25(日) 09:45:53.34ID:BkJ15YtR0
オブジェクト指向には議論の余地がある
→まあわかる

オブジェクト指向理解できない、だからクソ
→ガイジかな?
0241名無しさん@涙目です。(東日本) [DE]
垢版 |
2018/11/25(日) 09:49:59.86ID:MzRFAHl50
APIとかマイクロコードとかっていうの?なんか昔もそういうのあったと思うけど・・・
あれはどうなんだろうか。
しかしハードの進歩は素晴らしい。それを実装してもそれなりの速度出るんだしなあ。

業務プログラムってことだと上に出てる通り結局似たようなものを作る羽目になる気がする。
もちろん下の層のフレームワークは再利用ばりばりでつくられるんだろうけどさ。
■ このスレッドは過去ログ倉庫に格納されています