無理やりオブジェクト指向にしたから出てきた問題を解決して凄い凄い言ってるだけ。
単なるマッチポンプ。
カプセル化(英語: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/
前前前スレ
オブジェクト指向ってクソじゃねぇよ? Part2
https://mevius.5ch.net/test/read.cgi/tech/1539872441/
前前スレ
オブジェクト指向ってクソじゃねぇかよPart3
https://mevius.5ch.net/test/read.cgi/tech/1542884872/
前スレ
オブジェクト指向ってクソじゃねぇかよPart4
https://mevius.5ch.net/test/read.cgi/tech/1556462315/
オブジェクト指向ってクソかよPart5
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2019/10/08(火) 15:46:57.38ID:YglSDU9b496デフォルトの名無しさん
2019/10/13(日) 22:24:07.52ID:BXD6hdDp >>494
https://www.yegor256.com/2016/08/15/what-is-wrong-object-oriented-programming.html
※俺もこのサイトを見るまで、まさかここまで沢山の著名人がOOPを批判しているとはしりませんでした
https://www.yegor256.com/2016/08/15/what-is-wrong-object-oriented-programming.html
※俺もこのサイトを見るまで、まさかここまで沢山の著名人がOOPを批判しているとはしりませんでした
497デフォルトの名無しさん
2019/10/13(日) 22:26:34.71ID:BXD6hdDp 上のURL一式
テンプレにでも入れときやがれってんだ
ハゲどもが
テンプレにでも入れときやがれってんだ
ハゲどもが
498デフォルトの名無しさん
2019/10/13(日) 22:30:46.07ID:QsD0TvFj オブジェクト指向とオブジェクト指向プログラミングは全く違うよ?
>>496
>※俺もこのサイトを見るまで、まさかここまで沢山の著名人がOOPを批判しているとはしりませんでした
オブジェクト指向は俺の股間に付いているが、オブジェクト指向言語はプログラミングの形式に過ぎない!
>>496
>※俺もこのサイトを見るまで、まさかここまで沢山の著名人がOOPを批判しているとはしりませんでした
オブジェクト指向は俺の股間に付いているが、オブジェクト指向言語はプログラミングの形式に過ぎない!
499デフォルトの名無しさん
2019/10/13(日) 22:36:55.52ID:BXD6hdDp 自分の考えに近いなと感じたのが
Paul Graham (2003)
Richard Mansfield (2005)
Eric Raymond (2005)
Eric Allman (2011)
など
Paul Graham (2003)
Richard Mansfield (2005)
Eric Raymond (2005)
Eric Allman (2011)
など
500デフォルトの名無しさん
2019/10/13(日) 22:38:35.34ID:QsD0TvFj >>486
>でも主張を見る限り
>オブジェクト指向自体を嫌ってるよね
いわゆる『オブジェクト指向プログラミング言語』とやらは、オブジェクト指向を表現していないからな。
例えば『チンポがしこしこする』ってのは、オブジェクト指向言語プログラミングでどう表現する?
>でも主張を見る限り
>オブジェクト指向自体を嫌ってるよね
いわゆる『オブジェクト指向プログラミング言語』とやらは、オブジェクト指向を表現していないからな。
例えば『チンポがしこしこする』ってのは、オブジェクト指向言語プログラミングでどう表現する?
501デフォルトの名無しさん
2019/10/13(日) 22:40:49.09ID:QsD0TvFj オブジェクト指向は俺の股間に付いているのだから、オブジェクト指向プログラミング言語は必要無い!
>>496
>※俺もこのサイトを見るまで、まさかここまで沢山の著名人がOOPを批判しているとはしりませんでした
それでもオブジェクト指向は俺の股間に付いている、違うか?
>>496
>※俺もこのサイトを見るまで、まさかここまで沢山の著名人がOOPを批判しているとはしりませんでした
それでもオブジェクト指向は俺の股間に付いている、違うか?
502デフォルトの名無しさん
2019/10/13(日) 23:08:42.60ID:wbni+XXK >>496
コメント欄でOOPいやPOO信者が火消しに必死www
コメント欄でOOPいやPOO信者が火消しに必死www
503デフォルトの名無しさん
2019/10/13(日) 23:16:24.01ID:BXD6hdDp >>502 この人?
ttps://c.disquscdn.com/uploads/forums/294/4852/avatar92.jpg
ttps://c.disquscdn.com/uploads/forums/294/4852/avatar92.jpg
504デフォルトの名無しさん
2019/10/13(日) 23:20:58.27ID:BXD6hdDp Dunets Nickolay a year ago
One more for the list.
https://medium.com/@cscalfani/goodbye-object-oriented-programming-a59cda4c0e53
OO sure promised a lot in the early days. And these promises are still being made to naive programmers
sitting in classrooms, reading blogs and taking online courses. It’s taken me years to realize how OO lied to me.
I too was wide-eyed and inexperienced and trusting.
強烈な意見!
One more for the list.
https://medium.com/@cscalfani/goodbye-object-oriented-programming-a59cda4c0e53
OO sure promised a lot in the early days. And these promises are still being made to naive programmers
sitting in classrooms, reading blogs and taking online courses. It’s taken me years to realize how OO lied to me.
I too was wide-eyed and inexperienced and trusting.
強烈な意見!
505デフォルトの名無しさん
2019/10/13(日) 23:54:33.20ID:bBavR94N 虎の威を借る狐
506デフォルトの名無しさん
2019/10/13(日) 23:57:08.03ID:BXD6hdDp >>505
くるしいのうw
くるしいのうw
507デフォルトの名無しさん
2019/10/14(月) 00:01:58.08ID:SgqiekNw >>505
https://medium.com/@cscalfani/goodbye-object-oriented-programming-a59cda4c0e53
このサイト読むと
何十年もの間、Smalltalk、最後に.NETとJavaと、オブジェクト指向言語でプログラミングを行って
継承、カプセル化、および多態性の利点を活用するために熱心っだったけど、だまされていたって
懇々と唱えてきて、ホント気の毒
俺から言わせてもらえば、そんなに年月をかける前に
これは変だと気がつけばよかったのにね
https://medium.com/@cscalfani/goodbye-object-oriented-programming-a59cda4c0e53
このサイト読むと
何十年もの間、Smalltalk、最後に.NETとJavaと、オブジェクト指向言語でプログラミングを行って
継承、カプセル化、および多態性の利点を活用するために熱心っだったけど、だまされていたって
懇々と唱えてきて、ホント気の毒
俺から言わせてもらえば、そんなに年月をかける前に
これは変だと気がつけばよかったのにね
508デフォルトの名無しさん
2019/10/14(月) 00:07:39.42ID:SgqiekNw The problem with object-oriented languages is they’ve got all this implicit environment
that they carry around with them. You wanted a banana but what you got was a gorilla
holding the banana and the entire jungle.
もう爆笑w
that they carry around with them. You wanted a banana but what you got was a gorilla
holding the banana and the entire jungle.
もう爆笑w
509デフォルトの名無しさん
2019/10/14(月) 00:09:10.18ID:SgqiekNw >>508
ちな、これ、Erlangの作成者Joe Armstrongの発言ね。
ちな、これ、Erlangの作成者Joe Armstrongの発言ね。
510デフォルトの名無しさん
2019/10/14(月) 00:12:26.09ID:SgqiekNw まぁ、bBavR94N のような奴はOOPが廃れたら、
また別の流行見つけてそのカルト信者になるんだろうね
それはあんたの人生の選択だし、どんなに頓珍漢な迷信であっても
回りに迷惑かけない範囲で好きにしてくれ
また別の流行見つけてそのカルト信者になるんだろうね
それはあんたの人生の選択だし、どんなに頓珍漢な迷信であっても
回りに迷惑かけない範囲で好きにしてくれ
511デフォルトの名無しさん
2019/10/14(月) 00:35:26.10ID:SgqiekNw どんな迷信染まっても
周りや他人に迷惑は絶対かけるなよ
いいな。
周りや他人に迷惑は絶対かけるなよ
いいな。
512デフォルトの名無しさん
2019/10/14(月) 00:47:44.24ID:yAy44Gfv で、結局オブジェクト指向は素晴らしいの?
そうじゃないの?
代替案は何?
そうじゃないの?
代替案は何?
513デフォルトの名無しさん
2019/10/14(月) 00:52:04.13ID:SgqiekNw それは、ヒ・ミ・ツ
ハート
ハート
514デフォルトの名無しさん
2019/10/14(月) 02:48:38.03ID:R6XBDC2Y >>507
誰も理由書いてないのなw
誰も理由書いてないのなw
515デフォルトの名無しさん
2019/10/14(月) 08:07:29.36ID:kizbcx2j516デフォルトの名無しさん
2019/10/14(月) 09:17:14.83ID:DJigOeDn >>512
普通に組むんだ
機能一覧
→各機能の処理一覧
→それに対応する関数一覧
と作成して関数一覧ができたら設計は終了なのさ
それ以上はプログラマ側では何もすることがない
これでプロジェクトがうまく行かないならそれは仕様の決定段階ですでにおかしいのであって
もし、自分が改善したいと思うならば積極的に仕様の決定まで口を出さなければならない
普通に組むんだ
機能一覧
→各機能の処理一覧
→それに対応する関数一覧
と作成して関数一覧ができたら設計は終了なのさ
それ以上はプログラマ側では何もすることがない
これでプロジェクトがうまく行かないならそれは仕様の決定段階ですでにおかしいのであって
もし、自分が改善したいと思うならば積極的に仕様の決定まで口を出さなければならない
517デフォルトの名無しさん
2019/10/14(月) 10:11:53.94ID:HLISTn9N518デフォルトの名無しさん
2019/10/14(月) 10:45:33.29ID:vstzJxvv 処理をまとめる→関数
関数の第一引数でまとめる→クラス
関数の第一引数でまとめる→クラス
519デフォルトの名無しさん
2019/10/14(月) 11:03:45.34ID:CmkGXuzV >>516
複数の機能から使う共通のデータや状態、それらの制約や整合性をどう維持するか
という部分が単純な機能分解ではカバーしにくいところ
その問題を考慮したのがDOAやOOAD
A形式のファイルをB形式に変換するとか
Aというシグナルが来たらBの状態をB'に変更するとか
そういう段階まで分解してくれた仕様だけ考慮すればいいなら
単純な機能分解が適してる
複数の機能から使う共通のデータや状態、それらの制約や整合性をどう維持するか
という部分が単純な機能分解ではカバーしにくいところ
その問題を考慮したのがDOAやOOAD
A形式のファイルをB形式に変換するとか
Aというシグナルが来たらBの状態をB'に変更するとか
そういう段階まで分解してくれた仕様だけ考慮すればいいなら
単純な機能分解が適してる
520デフォルトの名無しさん
2019/10/14(月) 12:57:08.92ID:UD02Ubfx >>514
発言の一部抜粋だよ
発言の一部抜粋だよ
521デフォルトの名無しさん
2019/10/14(月) 15:31:56.02ID:kveEli82 >>518
よくわかってらっしゃる
よくわかってらっしゃる
522デフォルトの名無しさん
2019/10/14(月) 15:32:13.69ID:DJigOeDn523デフォルトの名無しさん
2019/10/14(月) 15:34:52.40ID:DJigOeDn524デフォルトの名無しさん
2019/10/14(月) 16:55:29.97ID:dBbTykTT オブジェクト指向学ぶ為の書籍一覧がほしい
525デフォルトの名無しさん
2019/10/14(月) 17:08:32.29ID:DJigOeDn >>524
書いてるやつもここのとどっこいだぞ
なぜなら万人が認めるオブジェクト指向はこれですって言える資料がこの世にないので
しかしこの業界なんでこんなんになっちゃったかなぁと
プログラミングとは目標を実現するための1つの手段という位置付けに留めて置いたほうが
結果的に実力は付くよ
プログラマはこのクソ宗教のせいで多くのやつが視野狭窄過ぎて参考にならない
書いてるやつもここのとどっこいだぞ
なぜなら万人が認めるオブジェクト指向はこれですって言える資料がこの世にないので
しかしこの業界なんでこんなんになっちゃったかなぁと
プログラミングとは目標を実現するための1つの手段という位置付けに留めて置いたほうが
結果的に実力は付くよ
プログラマはこのクソ宗教のせいで多くのやつが視野狭窄過ぎて参考にならない
526デフォルトの名無しさん
2019/10/14(月) 17:44:53.07ID:/SENrUVD 別に、機能別にライブラリにして行けばいいのさ。
かしこまってOOPだなんだとギスギスする必要は無い。
かしこまってOOPだなんだとギスギスする必要は無い。
527デフォルトの名無しさん
2019/10/14(月) 18:24:41.16ID:g1sRqVTr528デフォルトの名無しさん
2019/10/14(月) 18:32:42.20ID:aFj9yxTE ワイもそれ思った
業界を語るわりに経験が感じられない
業界を語るわりに経験が感じられない
529デフォルトの名無しさん
2019/10/14(月) 20:07:01.22ID:YKkFW8bb530デフォルトの名無しさん
2019/10/14(月) 20:09:08.49ID:YKkFW8bb 俺に反論するなら
じゃあ、デカイプログラム特有の仕組みは具体的に何があるの?
って聞くぞ
調べてから書き込めよ
じゃあ、デカイプログラム特有の仕組みは具体的に何があるの?
って聞くぞ
調べてから書き込めよ
531デフォルトの名無しさん
2019/10/14(月) 20:24:13.94ID:ZHVtioYP532デフォルトの名無しさん
2019/10/14(月) 20:25:26.99ID:ZHVtioYP533デフォルトの名無しさん
2019/10/14(月) 20:27:29.74ID:ZHVtioYP WindowsとかLinuxとかのOSはでかいプログラムの代表例だが、
コアの部分は小さくして、ドライバにより多くのハードウェアに対応してる。
こういうところにオブジェクト指向による設計が使われてる。
C++を批判してるLinusでも
https://cpplover.blogspot.com/2013/05/linus-torvalsc.html
> Cでオブジェクト指向コード(ファイルシステムとかだと有用)を書くのは可能だし、
Cでオブジェクト指向はファイルシステムなどで有用と言っている。
コアの部分は小さくして、ドライバにより多くのハードウェアに対応してる。
こういうところにオブジェクト指向による設計が使われてる。
C++を批判してるLinusでも
https://cpplover.blogspot.com/2013/05/linus-torvalsc.html
> Cでオブジェクト指向コード(ファイルシステムとかだと有用)を書くのは可能だし、
Cでオブジェクト指向はファイルシステムなどで有用と言っている。
534デフォルトの名無しさん
2019/10/14(月) 20:29:36.37ID:YKkFW8bb535デフォルトの名無しさん
2019/10/14(月) 20:30:22.97ID:YKkFW8bb536デフォルトの名無しさん
2019/10/14(月) 20:32:07.12ID:YKkFW8bb >>533
c言語の機能を使ったときだけうまくいくってリーナス言ってんじゃんw
c言語の機能を使ったときだけうまくいくってリーナス言ってんじゃんw
537デフォルトの名無しさん
2019/10/14(月) 20:32:37.60ID:YKkFW8bb 敗北を知りたい
538デフォルトの名無しさん
2019/10/14(月) 20:33:05.57ID:ZHVtioYP >>534-536
レスするなら反論しろよw
レスするなら反論しろよw
539デフォルトの名無しさん
2019/10/14(月) 20:33:32.98ID:ZHVtioYP >>537
敗北だと自覚してるから、そういう書き込みしたくなるんやでw
敗北だと自覚してるから、そういう書き込みしたくなるんやでw
540デフォルトの名無しさん
2019/10/14(月) 20:38:23.47ID:nTxvlnlQ C以外糞って言うならならPythonもゴミじゃん。
Pythonしか書けない奴はどうなるの?
Pythonしか書けない奴はどうなるの?
541デフォルトの名無しさん
2019/10/14(月) 20:47:03.67ID:1VJg7cxR 糞に集る蠅
542デフォルトの名無しさん
2019/10/14(月) 20:47:48.13ID:sA+F1c9p オブジェクト指向は
組み込みとすこぶる相性が悪い
組み込みとすこぶる相性が悪い
543デフォルトの名無しさん
2019/10/14(月) 20:50:13.94ID:ZHVtioYP × オブジェクト指向は組み込みとすこぶる相性が悪い
○ オブジェクト指向言語は組み込みとすこぶる相性が悪い
オブジェクト指向であれば組み込みでも使われてる。
○ オブジェクト指向言語は組み込みとすこぶる相性が悪い
オブジェクト指向であれば組み込みでも使われてる。
544デフォルトの名無しさん
2019/10/15(火) 00:07:06.97ID:ntxaWRsX オブジェクト指向とΣ計画はセット
資本主義社会じゃ無理
言語製作者陣の理念と現状にズレがあるので、オブジェクト指向が使いにくくなっているだけ
カネと労道の壁を突破してありとあらゆるオブジェクトを集積するセンターがあれば完璧になる
資本主義社会じゃ無理
言語製作者陣の理念と現状にズレがあるので、オブジェクト指向が使いにくくなっているだけ
カネと労道の壁を突破してありとあらゆるオブジェクトを集積するセンターがあれば完璧になる
545デフォルトの名無しさん
2019/10/15(火) 00:15:06.48ID:t7KPnDkH まさにカルト
546デフォルトの名無しさん
2019/10/15(火) 01:10:43.04ID:t7KPnDkH547デフォルトの名無しさん
2019/10/15(火) 01:14:09.75ID:t7KPnDkH548デフォルトの名無しさん
2019/10/15(火) 05:23:15.21ID:f1lycctY Linuxのファイルシステムのコードを見れば
(C言語によるオブジェクト指向コード)がわかるのでは?
(C言語によるオブジェクト指向コード)がわかるのでは?
549デフォルトの名無しさん
2019/10/15(火) 07:38:19.65ID:qEfw8gKj550デフォルトの名無しさん
2019/10/15(火) 10:59:27.07ID:HKs4cE0e 何かを作り上げるのは向いてないな
作ったものを綺麗にディスプレイするのには使える
まあ 数学の公式みたいに絶対に変更しないって
条件では使える ただそうなることは無いw
作ったものを綺麗にディスプレイするのには使える
まあ 数学の公式みたいに絶対に変更しないって
条件では使える ただそうなることは無いw
551デフォルトの名無しさん
2019/10/15(火) 11:07:07.56ID:m0jqn6iG >>531
プログラムには重力掛からないから、どんなに大きなプログラムでも大きい事で特別何か対策しなきゃならないって事は無いよ。
まあ、大規模なプロジェクトでは人間同士のコミュニケーション不足やトラブルはあるけどなw
プログラムには重力掛からないから、どんなに大きなプログラムでも大きい事で特別何か対策しなきゃならないって事は無いよ。
まあ、大規模なプロジェクトでは人間同士のコミュニケーション不足やトラブルはあるけどなw
552デフォルトの名無しさん
2019/10/15(火) 11:12:45.75ID:m0jqn6iG まあよくある話、
AはBの理由や懸念があるからDの方法は不適切なのでCの作りとする
なんてルールがいつのまにかAはCの作り方にするってだけ伝わって、
なんでAがCみたいな面倒くさい作りにするんだよ、Dの方が簡潔で分かりやすいだろ。なんて勝手に解釈変えられて
結果的に機能を満たさないものになるなんて事はよくある。
AはBの理由や懸念があるからDの方法は不適切なのでCの作りとする
なんてルールがいつのまにかAはCの作り方にするってだけ伝わって、
なんでAがCみたいな面倒くさい作りにするんだよ、Dの方が簡潔で分かりやすいだろ。なんて勝手に解釈変えられて
結果的に機能を満たさないものになるなんて事はよくある。
553デフォルトの名無しさん
2019/10/15(火) 13:08:44.71ID:ZJNGtpBE >>551
具体的には?
具体的には?
554デフォルトの名無しさん
2019/10/15(火) 13:21:00.59ID:f1lycctY >>551
> どんなに大きなプログラムでも大きい事で特別何か対策しなきゃならないって事は無いよ。
大きいプログラムは、小さく分けるという対策をしなきゃならんよ。
小さく分けるということは、組み合わさなければ動かなくなる。
つまり組み合わせるコードが必要になるんだよ
> どんなに大きなプログラムでも大きい事で特別何か対策しなきゃならないって事は無いよ。
大きいプログラムは、小さく分けるという対策をしなきゃならんよ。
小さく分けるということは、組み合わさなければ動かなくなる。
つまり組み合わせるコードが必要になるんだよ
555デフォルトの名無しさん
2019/10/15(火) 13:24:45.65ID:v+D129jp556デフォルトの名無しさん
2019/10/15(火) 14:42:57.70ID:8vI99k17 UNIXが、あれはあれで一つの大規模なシステムと考えても差し支え無いものだったよな。
ひとつもオブジェクト指向になってないんだけど、簡潔なルールのもとに各自必要な処理を追加していた。
ひとつもオブジェクト指向になってないんだけど、簡潔なルールのもとに各自必要な処理を追加していた。
557デフォルトの名無しさん
2019/10/15(火) 15:04:03.47ID:f1lycctY UNIXがオブジェクト指向でないと考えるのは、
C言語がオブジェクト指向言語じゃないからというだけ?
C言語がオブジェクト指向言語じゃないからというだけ?
558デフォルトの名無しさん
2019/10/15(火) 20:43:44.62ID:8zb4FDAz 人が作ったものを使うだけならすごく便利
ただ作り直そうとするときつい
pythonのライブラリとかよくわからんまま
使う分には便利
ただ作り直そうとするときつい
pythonのライブラリとかよくわからんまま
使う分には便利
559デフォルトの名無しさん
2019/10/16(水) 14:31:18.50ID:R4S9h347 オブジェクト指向なんて考えが生まれる前からあるからさ。
560デフォルトの名無しさん
2019/10/16(水) 14:59:34.80ID:br88Hn4r オブジェクト指向なんてホントは主目的じゃないけどね
クラスを幾段も連結できるオブジェクト演算子ができてから
それの使い方の総称になっただけ
クラスを幾段も連結できるオブジェクト演算子ができてから
それの使い方の総称になっただけ
561デフォルトの名無しさん
2019/10/16(水) 15:47:24.74ID:0fRYOcFI 小説で言う「起承転結」のようなもの
大まかにそういう考えにしましょう。という設計で
それに従わなくても良いものが作れないことはないが、
だいたいは従ったほうが良いというものだよ
大まかにそういう考えにしましょう。という設計で
それに従わなくても良いものが作れないことはないが、
だいたいは従ったほうが良いというものだよ
562デフォルトの名無しさん
2019/10/16(水) 16:08:44.07ID:kaZJZnxg ピンとけえへんわー
563デフォルトの名無しさん
2019/10/16(水) 16:11:23.80ID:R4S9h347 おまえら頭悪いんだから、いっぺんにまとめて考えないで
なるべく小さな単位にして分けて考えろやって話だからな
その分け方の方法のひとつがオブジェクト指向ってだけ。
なるべく小さな単位にして分けて考えろやって話だからな
その分け方の方法のひとつがオブジェクト指向ってだけ。
564デフォルトの名無しさん
2019/10/16(水) 16:47:56.58ID:K40FZLRW オブジェクトのメリットは単純に
補完が効くとこだな 設計思想云々は
どうでもいいがこれは便利
補完が効くとこだな 設計思想云々は
どうでもいいがこれは便利
565デフォルトの名無しさん
2019/10/16(水) 19:40:52.15ID:WNhbUC2h 受け身でコーティングできるのがいいんだろ?thisポインタ受け取ってさ
それ以上の意味はないよ
イベント駆動とGUIと人間の汎化の理解がマッチすると気持ちいいくらい
マイクロソフトでさえ糞クラス設計するのに、専門卒Fラン大卒が何を言っても無駄
それ以上の意味はないよ
イベント駆動とGUIと人間の汎化の理解がマッチすると気持ちいいくらい
マイクロソフトでさえ糞クラス設計するのに、専門卒Fラン大卒が何を言っても無駄
566デフォルトの名無しさん
2019/10/16(水) 21:47:12.81ID:DLS4a0j4 Unixはコマンドをパイプでつなげて処理をするところがオブジェクト指向っぽい
コマンドとコマンドは標準入出力によってつながるわけだけれども
そのことは重大な事実を示唆していてオブジェクトとオブジェクトを
つなげるインターフェースはシンプルな程よいってこと
コマンドとコマンドは標準入出力によってつながるわけだけれども
そのことは重大な事実を示唆していてオブジェクトとオブジェクトを
つなげるインターフェースはシンプルな程よいってこと
567デフォルトの名無しさん
2019/10/16(水) 22:05:44.03ID:DLS4a0j4 C言語で書かれたプログラムでオブジェクト指向っぽいと思ったのはqmail
ファイルが細かく別れていてファイル内でしか参照できない変数や関数が全体の半分を占める
ファイルごとにテストできそうだなーって思った
qmailはバグが少なくて信頼性が高いことに定評がある
オブジェクト指向をうまく使うとそういうことも可能ではあるけれども
業務システムではなかなか難しいところがあって
業務要件はころころ変わるけれども既存のプログラムはできるだけ変えないって
圧力がかかって継ぎ接ぎだらけのハウルの動く城みたいなうごめくオブジェクトの塊ができあがる
既存のプログラムを変えない圧力から逃れるためにテスト駆動開発などで
テストを整備して継続的インテグレーションで自動化するみたいなことが流行ったんだろうね
テスト容易性でオブジェクト指向の良し悪しを判断するのはありだと思うなど
ファイルが細かく別れていてファイル内でしか参照できない変数や関数が全体の半分を占める
ファイルごとにテストできそうだなーって思った
qmailはバグが少なくて信頼性が高いことに定評がある
オブジェクト指向をうまく使うとそういうことも可能ではあるけれども
業務システムではなかなか難しいところがあって
業務要件はころころ変わるけれども既存のプログラムはできるだけ変えないって
圧力がかかって継ぎ接ぎだらけのハウルの動く城みたいなうごめくオブジェクトの塊ができあがる
既存のプログラムを変えない圧力から逃れるためにテスト駆動開発などで
テストを整備して継続的インテグレーションで自動化するみたいなことが流行ったんだろうね
テスト容易性でオブジェクト指向の良し悪しを判断するのはありだと思うなど
568デフォルトの名無しさん
2019/10/16(水) 23:06:35.43ID:L32RXjAf >>566
そうでもないよ。
パイプでつなげるとデータの区切りをどうするか?って問題が出てくる。
たいていは1行1データでいいんだけど、データの中に改行が入る場合
どうするか?って問題が出てくる
改行コード以外の文字を使うという方法もあるが、じゃあその文字が
データの中に含まれていたら?という話に変わるだけ
そうでもないよ。
パイプでつなげるとデータの区切りをどうするか?って問題が出てくる。
たいていは1行1データでいいんだけど、データの中に改行が入る場合
どうするか?って問題が出てくる
改行コード以外の文字を使うという方法もあるが、じゃあその文字が
データの中に含まれていたら?という話に変わるだけ
569デフォルトの名無しさん
2019/10/16(水) 23:10:30.46ID:PIk7Byrk >>566
パイプは関数型を想起させる代表例だと思うんだが
テキストという共通のデータフォーマットを入出力に使って
処理のパイプラインにデータを流していってる
シェルスクリプトの場合は
汎用的なテキストフォーマットで型がないから
各処理の内部で毎回パースが必要になったりもするし
コマンド間の依存性を下げて疎結合にするのはかなり難しい
パイプは関数型を想起させる代表例だと思うんだが
テキストという共通のデータフォーマットを入出力に使って
処理のパイプラインにデータを流していってる
シェルスクリプトの場合は
汎用的なテキストフォーマットで型がないから
各処理の内部で毎回パースが必要になったりもするし
コマンド間の依存性を下げて疎結合にするのはかなり難しい
570デフォルトの名無しさん
2019/10/16(水) 23:14:25.14ID:pPSq4FoR >>568
改行よりも EOF の方が問題だと思う
改行よりも EOF の方が問題だと思う
571デフォルトの名無しさん
2019/10/17(木) 14:19:37.41ID:Yq4xgtdT Unixはパイプを多用するからオブジェクト指向とは真逆っていうのは俺もそう思う
だからjqみたいなむりくりなツールが必要になる
だからjqみたいなむりくりなツールが必要になる
572デフォルトの名無しさん
2019/10/17(木) 14:43:14.13ID:huR1Dm0j パイプを多用すること自体は関係ないよ。
オブジェクト指向でもパイプを使うことは出来る。
オブジェクト指向でもパイプを使うことは出来る。
573デフォルトの名無しさん
2019/10/17(木) 18:58:47.19ID:yPX5iNuE 使うことが目的ですか。
まるで分かってないね。
まるで分かってないね。
574デフォルトの名無しさん
2019/10/17(木) 20:20:25.32ID:EBsizoXn Unixのパイプはテキストとして行ベースで処理するから階層構造を扱えない
575デフォルトの名無しさん
2019/10/17(木) 22:10:58.47ID:PM4g13f5 XMLは階層構造を扱えないと?
576デフォルトの名無しさん
2019/10/17(木) 23:08:33.94ID:ZLbPJS7B Windowsの場合、システム管理にWMIオブジェクト使うのでPowerShellのパイプがオブジェクトを通すのは理にかなってる
577デフォルトの名無しさん
2019/11/02(土) 13:55:20.18ID:2/JwqrQB オブジェクソ指向でいいよ
578デフォルトの名無しさん
2019/11/04(月) 06:20:43.65ID:7p81GTJD じゃあおまえはそれで
579デフォルトの名無しさん
2019/11/04(月) 11:52:51.77ID:PrFaR+H+ Class A a, Class B b, Class C c があって
c = a + b #共通コード
と書いた場合、C言語の
c = 1.0 + 2
みたいな暗黙の型変換をしてくれる場合はコードの共通化がスムースに行けると思う
実際は...
Class A a,b,c #or Class B a,b,c
c = a + b
こんな感じで '+' の定義があれば行ける
たぶんClass の階層構造とタイプしたコードの振舞いここら辺の認識に錯乱が起きて
秩序なき構造を待つClass が記述できる結果オブジェクト指向の概念の考え方に混乱が起きている
CもC++も副作用に対する制限が弱めなので
挙動もプログラムの構造も発狂混乱混沌を含んだものが容易に出来上がる
解決策は、〜〜ツクールで定義したものをC++等のコードで吐き出して
必要に応じ手を入れるじゃないかな
アセンブラで複雑なプログラム何て書かないよね、同じちゃう?
c = a + b #共通コード
と書いた場合、C言語の
c = 1.0 + 2
みたいな暗黙の型変換をしてくれる場合はコードの共通化がスムースに行けると思う
実際は...
Class A a,b,c #or Class B a,b,c
c = a + b
こんな感じで '+' の定義があれば行ける
たぶんClass の階層構造とタイプしたコードの振舞いここら辺の認識に錯乱が起きて
秩序なき構造を待つClass が記述できる結果オブジェクト指向の概念の考え方に混乱が起きている
CもC++も副作用に対する制限が弱めなので
挙動もプログラムの構造も発狂混乱混沌を含んだものが容易に出来上がる
解決策は、〜〜ツクールで定義したものをC++等のコードで吐き出して
必要に応じ手を入れるじゃないかな
アセンブラで複雑なプログラム何て書かないよね、同じちゃう?
>>579
java みたいに演算子のオーバーロードを許さない!というポリシーはいかがでしょうか?
java みたいに演算子のオーバーロードを許さない!というポリシーはいかがでしょうか?
581デフォルトの名無しさん
2019/11/04(月) 20:22:08.57ID:PrFaR+H+ >>580
java の演算子 + - * / 等算術演算子
ググって調べました(汗
C++ は演算子の再定義が可能で + - * / も出来る様だね
演算子の再定義は計算式の意図や意味の直観的認識を保障している
a = b + c で
int a, b, c であっても
Class XY a, b, c #2次元座標
であっても+ - * / が座標の移動や拡大縮小(スケーリング)な事を直観的に理解させることになる
ぶっちゃけ演算子のオーバーロードは習慣的な慣れ親しんだ記述でコードを読み書き抽象化したいそれだけの事
java の許さない!なポリシーは、アルゴリズム=コード を抽象化共通化したい場合
記号で書くな正式なメソッド名を決めてタイプしろって事
偉そうに書きこしてるけどjavaもJavaScriptもTypeScriptも厳密には確認してないからな
で、C,C++のバグの原因はアセンブラに近い危険なコーディングが出来ること以外に変数スコープの関係で
もしかすると単純なタイプミスでグローバル変数が壊せたり
自己責任な処理系なので当たり前に検出困難なバグが入る
java の演算子 + - * / 等算術演算子
ググって調べました(汗
C++ は演算子の再定義が可能で + - * / も出来る様だね
演算子の再定義は計算式の意図や意味の直観的認識を保障している
a = b + c で
int a, b, c であっても
Class XY a, b, c #2次元座標
であっても+ - * / が座標の移動や拡大縮小(スケーリング)な事を直観的に理解させることになる
ぶっちゃけ演算子のオーバーロードは習慣的な慣れ親しんだ記述でコードを読み書き抽象化したいそれだけの事
java の許さない!なポリシーは、アルゴリズム=コード を抽象化共通化したい場合
記号で書くな正式なメソッド名を決めてタイプしろって事
偉そうに書きこしてるけどjavaもJavaScriptもTypeScriptも厳密には確認してないからな
で、C,C++のバグの原因はアセンブラに近い危険なコーディングが出来ること以外に変数スコープの関係で
もしかすると単純なタイプミスでグローバル変数が壊せたり
自己責任な処理系なので当たり前に検出困難なバグが入る
582デフォルトの名無しさん
2019/11/11(月) 12:38:43.87ID:BcaQQgi4 偉い人は言いました、本物のプログラマはfortranとコアダンプだけで書くと
583デフォルトの名無しさん
2019/11/11(月) 22:05:44.85ID:VuQjDq/C コアダンプは吐くもので書くものでは無いよな?
584デフォルトの名無しさん
2019/11/11(月) 22:13:39.05ID:BGy7lUfx だな
コアダンプを書くとは言ってないしそのとおりだな
さすがだな
コアダンプを書くとは言ってないしそのとおりだな
さすがだな
585デフォルトの名無しさん
2019/11/11(月) 23:35:07.89ID:MquajfZd コアダンプは吐くものでも無くて吐かれるものだからな
喰わせたモノが余程ヒドい時の嘔吐物だから
喰わせたモノが余程ヒドい時の嘔吐物だから
586デフォルトの名無しさん
2019/11/12(火) 01:03:45.48ID:FaYMVIJ4 OSが吐くものだろ…
587デフォルトの名無しさん
2019/11/12(火) 04:24:25.01ID:dtyPEbD0 吐くっていうのは人間がやることに対して使うんですよ!
人間じゃないのに、人間がやるような言葉を使ってはいけません!
人間じゃないのに、人間がやるような言葉を使ってはいけません!
588デフォルトの名無しさん
2019/11/12(火) 14:38:25.46ID:y6vE6u1H ここで書き込みされてる方って人間じゃなくて人工知能?
589デフォルトの名無しさん
2019/11/12(火) 16:50:28.20ID:cUrTgE5W よくわかったな
590デフォルトの名無しさん
2019/11/12(火) 17:35:17.05ID:6X9QzlAs 人工無能
591デフォルトの名無しさん
2019/11/12(火) 18:29:30.35ID:m7v6pKzu つまりオブジェクト指向とは、俺の股間に付いているモノなのである!
. , ャ ィE5!..
.. ,,.e;〆 .、 w===|====!. π .e、x&
.. ^~ ! ``= π ,, カ. _ _ ̄オ⌒|! `ヘ
. fラ⌒ ̄l「~~~^. ,.タ. .ル .ll ~\_ 〃 〃. ^..
. .オ.. ,...__,xf~. ^ f! 、
. '^´  ̄ ̄..
.. l|.. r=キ'⌒..
. `!、 ~~~~~~⌒... l}
⌒heィ~. .+s_、_e. .^+--w=f `ヲse、._ _、... ′
チンポは独立した生き物であり、本人の意思とは無関係に、自らの意思で勃起してシコシコする!
. , ャ ィE5!..
.. ,,.e;〆 .、 w===|====!. π .e、x&
.. ^~ ! ``= π ,, カ. _ _ ̄オ⌒|! `ヘ
. fラ⌒ ̄l「~~~^. ,.タ. .ル .ll ~\_ 〃 〃. ^..
. .オ.. ,...__,xf~. ^ f! 、
. '^´  ̄ ̄..
.. l|.. r=キ'⌒..
. `!、 ~~~~~~⌒... l}
⌒heィ~. .+s_、_e. .^+--w=f `ヲse、._ _、... ′
チンポは独立した生き物であり、本人の意思とは無関係に、自らの意思で勃起してシコシコする!
592デフォルトの名無しさん
2019/11/13(水) 00:56:45.07ID:CvcI+Aq3593デフォルトの名無しさん
2019/11/13(水) 07:07:35.52ID:zN3QXkcQ 自分で考えないからねえ
594デフォルトの名無しさん
2019/11/13(水) 08:00:01.45ID:71NryVAR チューリングテストは合格だよ。ここまでおかしくならないとわからない
595デフォルトの名無しさん
2019/11/13(水) 15:26:30.70ID:H06se09Y 何冊か本読んだけど、結局、「オブジェクト指向には明確な定義が無い」
ってことが分かっただけ。
当然だよな。
プログラミング構造としては、アセンブラでもマクロ組めば同じことができる。
結局は、単なるコードの可読性やメンテナンス性の向上が、
新しい「質の変化」として宣伝されただけのシロモノ。
ってことが分かっただけ。
当然だよな。
プログラミング構造としては、アセンブラでもマクロ組めば同じことができる。
結局は、単なるコードの可読性やメンテナンス性の向上が、
新しい「質の変化」として宣伝されただけのシロモノ。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- アメリカ議会 「中国が台湾武力侵攻する準備を急速進展中」 ★3 [お断り★]
- アメリカ議会 「中国が台湾武力侵攻する準備を急速進展中」 ★4 [お断り★]
- 外国人の犯罪率は日本人の1.72倍 警察庁が短期滞在者除いた数字を参院内閣委で答弁 [七波羅探題★]
- 【高市自民】中国軍SNS 高市首相に怖すぎる地獄絵で警告、火の海の靖国神社「自ら墓穴を掘り、戻れない道へ進む」 [夜のけいちゃん★]
- ネット殺到「高市総理の責任」「完全に高市リスク」「負けるな」中国が水産物輸入停止→流石に総理批判の声も「どう責任取る?」 ★9 [樽悶★]
- 止まらぬ「日本売り」 高市財政への懸念で進む金利上昇と円安 [蚤の市★]
- 【悲報】大手経済誌が年収が低い会社ランキングを発表、Vtuberのにじさんじがランクインしてしまう…
- 【憲法改正】起草委員会、設置へ [476729448]
- 3K新聞「高市首相「馬車馬」の1カ月…宿舎で猛勉強、外交乗り切る 会食なく睡眠不足、心配の声も」 [834922174]
- 【35🌸専】なんG さくらみこ桃鉄配信実況スレ🏡【ホロライブ▶】
- 即席ラーメンとウィンナーがあるんだけどラーメンの中にウィンナー入れる?別々に食う?
- 明日でポテトサイズアップ無料終わりだからマック行きな
