カプセル化の有害性、オブジェクト指向は愚かな考え

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2020/06/18(木) 23:47:36.69ID:l/2SQUll
カプセル化(英語: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)
2020/06/25(木) 21:03:32.44ID:9YSX2wtH
> 「オブジェクト指向」って結局何がありがたいのよ?

多くの人で作業分担し、協力してプログラムを作れる所
2020/06/25(木) 21:03:50.52ID:9YSX2wtH
ReactやVueはオブジェクト指向
2020/06/25(木) 21:03:50.90ID:lu0UaGfG
>>177
Javaなんてクソを
オブジェクト指向の代表として考える
かわいそうな子
2020/06/25(木) 21:04:45.08ID:9YSX2wtH
>>183
Javaはオブジェクト指向を採用した言語の一つだよ
いつから代表になったのさ
お前が代表だと思っていて、代表だと思ってる自分自身を批判してるだけじゃんw
2020/06/25(木) 21:05:53.76ID:lu0UaGfG
>>180
抽象化を理解できないかわいそうな子
2020/06/25(木) 21:09:21.00ID:9YSX2wtH
>>185
お前の文章の話をしてるんだが。
そもそも読んでないのに、抽象化が何の関係があるんだ?
2020/06/25(木) 21:17:15.89ID:lu0UaGfG
>>184
>>177
>クラスを始めとする様々なルールは
>……
>単なるJavaの変な言語仕様でしかなかったわけだ。

で、「いつから代表になったのさ」がなんだって?
数スレも遡れないようじゃ生きていくの大変だろうに……
2020/06/25(木) 21:43:56.18ID:9YSX2wtH
だから読んでないと言ってるw
2020/06/26(金) 02:54:16.76ID:uM2i3sYA
関数化したりクラス化したらプログラムが高速化したんだけどGCが発生するタイミングが細かくなったってことでええんか?
2020/06/26(金) 07:35:03.68ID:eLfJJdHb
オブジェクト指向は整理術
棚なんて要らん棚があるから余計な物も管理する羽目になると床置する人が現実に居るのと同じ
2020/06/26(金) 08:53:43.63ID:crXMwmqp
まああまりに糞な抽象化だともう全部publicでレコードとして扱えやとは思うな。
抽象化を万能なものと思い込みすぎな馬鹿が多すぎるからオブジェクト指向に対する誤解が生まれる。
2020/06/26(金) 09:44:19.22ID:8zz5Zpvs
っていうか抽象化ってどんな仕様のどの部分を一括に扱ってるのか?
ドキュメントがないと最悪
ここの仕様は特殊だからこれとは別にしないとなって話ができない
ドキュメント書かないなら抽象化するな
害悪でしかない
193デフォルトの名無しさん
垢版 |
2020/06/26(金) 09:50:43.03ID:Op8/e6Io
>>190
直置きはダメだが
ほとんどの場合「棚をしまう為の棚」
「それをしまう為の棚、それをしまうための棚…」
ってなってる

で、「ハサミ使いたいんだけどどこにあったっけ?」
って探すのに非常に苦労する。
見つけやすくするための棚だったはずなのに。

それどころか
棚「ハサミは内部で使うから自分で使わなくていいです。
『切る 』という目的だけに集中して、そう命令してください」
と、棚に言われる。
しかし切られた結果を見ると自分が欲しかった結果と微妙に
違うことがよくある。
だから「もう俺が直接切るから、いいからハサミをよこせ」
っていう話になる。


あと抽象化については
「これは抽象的な棚なので中には何も入っていません。
私を参考にした具体的な棚が何処かにあると思うのでそれを
探してください。」となる。

じゃあ「具体的な棚って一体どれだ?なんか長い名前の棚が
やたら沢山あるけどどの棚から探せばいいんだ??」
となる
2020/06/26(金) 09:55:00.00ID:50iMo9Ym
>>193
たとえ話はややこしいだけで何の意味もないから
具体的な事例で言えよ
2020/06/26(金) 09:55:48.09ID:50iMo9Ym
具体的に何のことを言ってるのか
考えなきゃならんようなたとえ話に価値はねーからな
説明が下手すぎる
2020/06/26(金) 10:13:27.50ID:wYfFflLL
>>193
整理が下手なやつの例をあげて、だから整理はすべきでないと言ったって意味がないだろう。
2020/06/26(金) 10:36:41.37ID:klgKDCEw
このスレにstaticおじさん、絶対沸いてるだろ。
2020/06/26(金) 10:41:42.69ID:s43csjES
>>193
だから具体的な問題>>162に答えてくれよ。
複数のプロセス・スレッドが勝手気ままにデータを処理しても問題ない、というならおめでたいわ。
2020/06/26(金) 10:42:57.59ID:8zz5Zpvs
>>198
そんときだけ使えばいいじゃん
それ以外じゃ使うなよ
2020/06/26(金) 10:54:38.35ID:crXMwmqp
>>198
アルゴリズムレイヤーでアクセスを無駄に禁止するようなクラスは有害でしかない。
適切なpublic具合というものがある。
例えばc++のstd::vectorなんかはかなりオープンアクセスなクラスだがあれが適切なんだよ。
でもって馬鹿に適切なアクセス制御なんて無理ってこと。
変に細かくするな。
馬鹿はクラスレベルで制御なんかしないでいいからモジュールレベルでアクセスするapiだけ公開してろってこった。
2020/06/26(金) 10:58:13.55ID:uqHA56uo
適切なpublic具合
2020/06/26(金) 11:23:09.67ID:TcIyIoqu
トレードオフを理解できてないうちはどっちもどっち
物事の一面しか見れてない

>>190>>193の比喩は理解の程度が知れるという意味ではすごく有意義
2020/06/26(金) 11:38:31.41ID:TyDtokvS
適切なpublic具合=ジャイアンルール
2020/06/26(金) 11:48:31.80ID:klgKDCEw
>>200
たぶん、162はクラスユーザーが呼び出した処理を実行している最中に内部処理を呼び出したら破綻するけど、いいのか?って言いたいのだと思う。
適切なアクセス修飾子をつけろは同意だが、彼に言うことではないと思う。
2020/06/26(金) 11:51:10.08ID:klgKDCEw
まぁ、スレッドがどうこうは...private関係あるのかな?って感じですが。
2020/06/26(金) 12:36:59.06ID:s43csjES
>>199
好き勝手にデータに読み書きできるのに、どうやって「その時だけ」を保証するんだよ。

結局カプセル化必須じゃねぇか。
何のアイディアも無しか。アホらしい。
2020/06/26(金) 13:04:36.71ID:8zz5Zpvs
>>206
そういう場所だけそうすればいいじゃん
全部そうなら無能過ぎてプログラム組む前にもっとやることあるんじゃないかなぁ
208デフォルトの名無しさん
垢版 |
2020/06/26(金) 13:19:36.46ID:SlEx0yXd
大昔、Javaやりだしてイキりだしたやつらが、オブジェクト指向もできない
老害とか騒いでいた歴史がある。そんな老害から見ると、gcに難しい事をまかせて、
馬鹿を吊り上げる仕組みなんだよなあ〜と皆言っていたのを思い出した。
今はPythonね。もっさ〜として、ダサすぎ。でも「俺AIの最前線だぜ」とか勘違い。
歴史は繰り返すのだ。
2020/06/26(金) 13:22:51.90ID:TcIyIoqu
atomicityを保証するのを
呼び出し側の責任とするのか呼び出された側の責任とするのかは
pros/cons考えて使い分ければいい話でカプセル化必須とかにはならないよ

使う前にopenして終わったらcloseしてください的なAPIと
open/close含めて全部やってくれるAPIの違いと同じこと
2020/06/26(金) 14:22:11.40ID:d6LVEoDZ
>>208

> イキりだしたやつらが、
> 馬鹿を吊り上げる
> ダサすぎ。

うわぁ。典型的老害だな。
2020/06/26(金) 14:30:22.45ID:uqHA56uo
すげえ、スレタイも日本語になってなくて、さらにまともな議論にすらなってないのに盛り上がってるw
オブジェクト指向じゃないやつのオブジェクト指向型言語のコード見れると思ってきたが、カオスだなw
2020/06/26(金) 17:24:31.99ID:MKv++1da
staticおじさんの詭弁ばかりで議論にすらならないから、もう、staticおじさん隔離スレ作った方がいいかもね。

【隔離】オブジェクト指向アンチスレ
みたいな感じで。
2020/06/26(金) 17:45:37.11ID:pGd8NqU0
>>212
もういっそのこと、こんなんでどうだろうか?
【老害】staticおじさんと戯れるファンの集い【詭弁】
2020/06/26(金) 18:11:48.36ID:QQ2hFNnS
カプセル化はオブジェクト指向に限らずあるんだが
privateにして外からアクセス不能にすることをカプセル化だと思ってる奴は完全に勉強不足
2020/06/26(金) 18:24:19.05ID:xc/k+9g/
privateとprotectedの使い分けってみんなどうしてる?
俺は昔はpublic以外はよほど理由がない限り全てprivateにしてたんだけど、最近はよほど理由がない限り全てprotectedにするようになったわ。
2020/06/26(金) 18:33:11.88ID:50iMo9Ym
protectedはよくわからんので基本private
必要になったらprotected
必要ないならprivateでいい
変更してはいけないというルールはないんだから
2020/06/26(金) 18:33:48.93ID:eLfJJdHb
オブジェクト指向は素晴らしいだろ
金正恩という概念から好きなだけ金正恩を生み出せるんだぞ
staticじゃ1匹しか生み出せない
その1匹が糖尿で死んだら北朝鮮は成り立たない
2020/06/26(金) 18:36:58.13ID:eLfJJdHb
金与生は金正恩を継承したクラス
もしくは金日成の多態
2020/06/26(金) 18:37:59.75ID:eLfJJdHb
将軍様クラスのプロパティに性別があったとは思わなかったけど
2020/06/26(金) 18:38:24.42ID:50iMo9Ym
つまらんよ
2020/06/26(金) 18:39:33.79ID:eLfJJdHb
北朝鮮人ならえげつない死刑
2020/06/26(金) 18:42:48.62ID:QQ2hFNnS
金正恩というデータから好きなだけ金正恩産み出すのはオブジェクト思考に限らずできるんだが
オブジェクト指向と全く関係ない
勉強不足
2020/06/26(金) 18:59:47.63ID:MKv++1da
>>214
> privateにして外からアクセス不能にすることをカプセル化だと思ってる奴は完全に勉強不足

それな。
カプセル化はクラス使用者にとって必要な機能やデータを公開し、その他内部実装を秘匿することで標準ライブラリの如く使いやすいクラスを作りましょうという実にシンプルなものなのにね。

>>215
基本的にはprivate。自分が定義したメンバ変数やメソッドを継承先がどのように使うのか想像ができないのなら、privateにした方がいいと思っている。
継承先で意図しないメソッドの呼び出しや、変数の使い方をされたら困るからね。
当然、継承先での用途を考えた上でprotectedを使う場合もあるけどね。
2020/06/26(金) 19:08:51.52ID:QQ2hFNnS
いやもうお前らprivateとかprotectedとかいう言葉を使ってカプセル化を語るのやめたほうがいいよ
privateという機能がなくてもカプセル化は実現できるから
百歩譲ってデータ隠蔽だけをカプセル化と呼ぶにしても、privateのように外からのアクセスを不能にする機能がなくてもカプセル化は実現できるし
2020/06/26(金) 19:12:26.17ID:fnCF+h71
>>224
そんな方法あるんだ、どうやってやるの?
2020/06/26(金) 19:34:06.00ID:eLfJJdHb
>>222
オブジェクト指向でしか出来ないことがあるとでもw
2020/06/26(金) 19:47:03.28ID:crXMwmqp
pimpleパターンくらいは知っとけよ。。
てかカプセル化について馬鹿みたいにこだわる奴でまともなインターフェイス設計できる奴見たことねーわ。
リファクタリングもしないで一発で正解にたどり着けるとでも考えてるんだろうな。
2020/06/26(金) 19:48:24.03ID:SG/+b/+N
pimple 覚えた pimple ニキビ 覚えたpimple pimple
2020/06/26(金) 20:33:23.82ID:QQ2hFNnS
オブジェクト思考言語アレルギーの老害は論外として

特定のオブジェクト指向言語を習得している人は無数にいても、
オブジェクト指向そのものを理解してる人は殆どいなそう
230デフォルトの名無しさん
垢版 |
2020/06/26(金) 20:37:52.02ID:Op8/e6Io
>>229
それってオブジェクト指向という概念そのもの
がおかしいものだからですよね?
っていう議論をずっとしてるんですが
誰にでも理解出来て納得出来ることが正しい
ことだと思うんですが
2020/06/26(金) 20:43:25.43ID:ODDHilOW
> オブジェクト指向そのものを理解

どういうこと?
アランケイがどう考えたとか
OOPがどういう成り立ちだとかそういういこと?
2020/06/26(金) 20:54:59.05ID:0CWC8I0Q
アランケイが考えたオブジェクト指向は洗練され完成されたオブジェクト指向なのです。
初号機が最強であるのはどこの世界でも同じことです。
初期版が完成です。改良などありえません。
2020/06/26(金) 21:47:56.68ID:ks+n8Bmz
第一、privateサポートしてない言語なんて普通にあるしな。Javascriptなんてそうだし。
234223
垢版 |
2020/06/26(金) 21:51:49.87ID:ks+n8Bmz
あ、ID変わっちゃった。223です。
2020/06/26(金) 22:03:26.05ID:TcIyIoqu
>>223
>カプセル化はクラス使用者にとって必要な機能やデータを公開し、その他内部実装を秘匿することで標準ライブラリの如く使いやすいクラスを作りましょうという実にシンプルなものなのにね。

カプセル化といった時に一般的な定義は2種類あってそれはそのうちの1つで情報隠蔽(Infomation Hiding)とほぼ同じ意味

もう一つはデータとそれを操作する関数/メソッドを一つの単位に束ねることを言う(隠蔽されてるかどうかは気にしない)

人によっては2つを合成した定義でカプセル化という言葉と使ってるので
まともな議論をしたければどういう定義でカプセル化と言ってるのか確認する必要がある
236223
垢版 |
2020/06/26(金) 22:20:46.34ID:ks+n8Bmz
自分が議論したいというよりは...
このスレ主と>>138みたいな謎方向の議論をする人の思うカプセル化について、そりゃ違うだろって言いたいだけ。

215への回答は聞かれたから答えただけで深い意味はない。
2020/06/26(金) 22:21:20.66ID:0CWC8I0Q
>>235
違う違う。情報隠蔽のことをカプセル化と間違っていってる人がいるだけ

カプセル化の定義は必要なものだけをインターフェースとして提供する
必要ないものは隠蔽するってことなんだが

全部必要だから公開しているのに、カプセル化されてない!って言うやつがいるだけ
238デフォルトの名無しさん
垢版 |
2020/06/26(金) 22:33:13.54ID:Pmgb6tek
>>237
それが正しいという一次ソースあるん?
239デフォルトの名無しさん
垢版 |
2020/06/26(金) 22:33:39.59ID:Pmgb6tek
ないんだったらそれあなたの感想ですよね
2020/06/26(金) 22:34:17.18ID:TcIyIoqu
>>237
>カプセル化の定義は必要なものだけをインターフェースとして提供する
>必要ないものは隠蔽するってことなんだが

情報隠蔽と何が違うの?
2020/06/26(金) 22:35:17.42ID:0CWC8I0Q
>>240
情報隠蔽は、情報隠蔽しなければカプセル化じゃないって騒ぐが
必要なものだけを公開するなら、情報隠蔽しなくてもカプセル化
242223
垢版 |
2020/06/26(金) 22:40:01.42ID:ks+n8Bmz
俺は...カプセル化の本質さえ抑えておけば、言葉としての違いは気にしないけどな。

privateにすること=カプセル化だと勘違いしていても、そいつがカプセル化の有り難みを理解できているのなら、深入りしないだけだよ。

言葉の定義にどこまで拘るかは議論の相手次第。

だが、staticおじさん、貴方は駄目だ。
俺のような細かいことを気にしないレベルの人間ですら駄目だわ。
昔からオブジェクト指向を批判し続けて初心者に誤解を与える老害だから見つけ次第、徹底的に叩く。
243デフォルトの名無しさん
垢版 |
2020/06/26(金) 22:42:23.17ID:Pmgb6tek
オブジェクト指向を勉強してる意識高い系のアホが
引数も戻り値も使わず、全部インスタンス変数使ってる例を見て
僕はstaticおじさんになっちゃいそう
2020/06/26(金) 22:49:00.20ID:TcIyIoqu
>>241
必要なものだけを公開するってことは
必要じゃないものは公開しない、つまり隠蔽しているんだから同じじゃない?

“隠蔽”の捉え方が違うのかな
245デフォルトの名無しさん
垢版 |
2020/06/26(金) 22:50:30.87ID:Pmgb6tek
構造化プログラミングをできるようになって
データと関数をオブジェクトとしてまとめるともっと良いかもと
オブジェクト指向を身につけるならいんだけど

オブジェクト指向では名詞を抜き出すんだ
そうやってオブジェクトを分ければ良いプログラムができあがるんだと
オブジェクト指向に幻想抱いてるアホが作ったプログラムは手に負えん
2020/06/26(金) 22:50:54.79ID:0CWC8I0Q
>>244
隠蔽を必須としてる、隠蔽のことだけをカプセル化と言ってるやつがいる
それが間違いということ
2020/06/26(金) 22:51:29.48ID:0CWC8I0Q
>>245
オブジェクト指向に幻想抱いてる天才が作ったプログラムなら手に負えるだろ?
248デフォルトの名無しさん
垢版 |
2020/06/26(金) 22:52:06.30ID:Pmgb6tek
>>247
天才は幻想を抱かない
249デフォルトの名無しさん
垢版 |
2020/06/26(金) 22:52:57.33ID:Pmgb6tek
僕は天才だからわかる
僕のどこが天才なのかは説明できないけどわかって
2020/06/26(金) 22:53:19.24ID:0CWC8I0Q
>>248
どうでもいいよw
プログラムが手に負えるかどうかは、アホかどうかが焦点だろって話
お前が長々と書いてることに意味がない
251デフォルトの名無しさん
垢版 |
2020/06/26(金) 22:54:34.05ID:Pmgb6tek
>>250
焦点はそこじゃない、どこみてんのよ!
構造化プログラミングの実装技術の先にオブジェクト指向があることを
理解してない人間をアホと言ってるんだよ、焦点はそっち
2020/06/26(金) 23:08:18.29ID:0CWC8I0Q
>>251
だからオブジェクト指向自体には問題がないって言ってるんでしょ?
2020/06/26(金) 23:08:49.57ID:0CWC8I0Q
人の話と技術の話の区別ぐらいつけよう。
人をいくらアホだ馬鹿だと叩いても
技術を否定したことにはならない
254デフォルトの名無しさん
垢版 |
2020/06/26(金) 23:09:53.77ID:Pmgb6tek
ListやStack、HTTP Clientといったものはオブジェクト指向と見事に調和するんだけど
それは変えられることがないから、これはこういう機能のものだってのが決まっていて
システムの仕様が変わっても変更されることがない

いっぽうでビジネスドメインにオブジェクト指向を適用しようとすると
仕様がころころ変わるから最初の設計ではうまくいかなくなることが多い
仕様が変わったらオブジェクトの設計もやり直せるならいんだけど
一度システムが動き出したら数万〜数億の人が影響受けるから
なかなか変えられないのが実際のところ
カプセル化されると困るというのはそういう状況の話じゃないかと僕は思いました

ドメインの安定性によってオブジェクト指向の適否は左右されると天才の僕は提言します
255デフォルトの名無しさん
垢版 |
2020/06/26(金) 23:12:02.84ID:Pmgb6tek
>>252
オブジェクト指向に幻想を抱くアホを作り出すオブジェクト指向の功罪は大きい
実装と離れて語られるオブジェクト指向は宗教と言っても良い
2020/06/26(金) 23:18:57.04ID:0CWC8I0Q
>>255
お前がそうであってほしいと願ってるのはなぜ?w
257デフォルトの名無しさん
垢版 |
2020/06/26(金) 23:20:58.30ID:Pmgb6tek
>>256
何いってんだお前
258デフォルトの名無しさん
垢版 |
2020/06/26(金) 23:21:20.47ID:Pmgb6tek
僕が願ってるのは世界平和だけ
259デフォルトの名無しさん
垢版 |
2020/06/26(金) 23:35:54.37ID:n1YsnRgt
カプセル化するなら
一切ソースコードレビューしなくていいんだな
変数やメソッドの命名もインデントも全部
適当にやるからな
文句つけるならテストの結果だけで文句を言って
くれよ、ソースコードには文句言うなよな。
例外をキャッチする必要もないな。
俺が利用するクラスで発生した問題はそのクラス内部の
責任だ。内部事情は意識しなくてもいいんだからな。
おっとロギングも内部事情だからやる必要ないな。
そんな事情は利用側は知りたくもないし結果だけが
欲しいんだもんな。

逆にこれらを押し付けるなら全部publicで問題ないよな。
クラスの内部を知りたいってことだからな。

「↑こいつはカプセル化が何なのかを理解してない。」


カプセル化おじさんがどうせこう言うだろうから先に
言っておいたわ。
2020/06/26(金) 23:45:57.60ID:0CWC8I0Q
>>259
「↑こいつはカプセル化が何なのかを理解してない。」

いや、先に言っておくと言っても、俺も同じこと言うんだが、
それで言われることを予測していたんだろ?
反論までは用意してないの?
2020/06/26(金) 23:50:21.75ID:ks+n8Bmz
珍しくこの手のスレでは比較的、リアルな批判がでたかも。

汎用性の無いビジネスドメインをオブジェクト指向を意識しながらクラス化したところで、メリット薄いよね?って話はまぁ、理解できる。
でも、ビジネスドメインを構成するクラスを汎用性の高いクラスだけで構成させることができれば、大分スッキリする。
いや、ほんと、そこがオブジェクト指向信者の腕の見せ所なんだがな。

たぶん、ビジネスドメインの責務分割の仕方を誤って神クラスを作ってしまうパターンにはまってるのかも。
2020/06/26(金) 23:56:26.67ID:ks+n8Bmz
でも、まぁ...開発者の立場次第にもよるのかも。
俺みたいに自社開発しているエンジニアだったら、利益を上げるレベルの品質を根拠にいくらでも納期を伸ばしてもらえるので、ド丁寧なオブジェクト指向プログラムを書く余裕があるけど、受託開発になると納期がギリギリに設定されがちだし(偏見?)、そんな最中、丁寧なコードなんて記述できるかって言われると...まぁ、どうなんだろうね。
2020/06/26(金) 23:58:23.12ID:34AfLaws
「状態によって挙動が変わる」ものが何十個も何百個も集まったら凡人には把握しきれない。

ましてや内部の状態が読み取りすらできないとなれば絶望的なことになるのバカでもわかる。

ウェブシステムや業務システムみたいにデータベースという巨大グローバル変数群を構造体にコピーしては書き戻すというのを繰り返すだけだと深い階層化が発生しないから問題は起きないんだろうね。
264デフォルトの名無しさん
垢版 |
2020/06/26(金) 23:59:12.73ID:5Zl1C0wL
>>260
お前が俺の書いたことに反論してみろ
お前が言う真のカプセル化とやらを説明しろ。
2020/06/26(金) 23:59:54.02ID:TcIyIoqu
>>259
前半はコードの品質をどういう観点から担保するかという話
例外やロギングはどういう責務/役割をどこに持たせるかという話
どちらもオブジェクト指向特有のものではない
2020/06/27(土) 00:00:02.19ID:ihk0yOtr
問題が起きやすいのはハードウェアに近い低層と、ライブラリ層と、ビジネスロジック層なんかに分業している分野だろうね。
2020/06/27(土) 00:05:48.57ID:n2G2JMaM
>>261
お前の主張の最大のメリットであるスッキリがお前の主観でしかない
そもそも設計書とソースの構造を一致させるための設計技術ではないのかな?
2020/06/27(土) 00:09:26.27ID:ihk0yOtr
データベースを使っているようなシステムはまず深い階層化は起きない。
RDBと階層化は相性が悪いからね。
それなのに深い階層化を使っている気分になっている人が多い。

ハードウェア制御絡みの本当に深い階層化を経験している人とは住んでいる世界が違う。

だから話が噛み合わない。
2020/06/27(土) 00:31:59.28ID:npRplKHX
みんな難しく考えすぎw
オブジェクト指向はインテリセンスが効くんで便利
それで納得しろよ これがないとダルいだろ
2020/06/27(土) 00:33:18.96ID:0UrSdNRf
>>267

> お前の主張の最大のメリットであるスッキリがお前の主観でしかない

事実を主観でしかないと批判されましても困るね。
実際、汎用性の高いクラス...それこそ、listやstack、http cliant並みに汎用性の高いクラスだけでプログラムが書かれてたらスッキリするだろ。
代替案があるなら、どうぞ。

> そもそも設計書とソースの構造を一致させるための設計技術ではないのかな?

何の話?
2020/06/27(土) 00:47:38.59ID:eG65KKvD
スッキリって何?コードが短くなるの?
頭悪いから50行以上は読めないんだけど
2020/06/27(土) 00:51:39.98ID:n2G2JMaM
>>270
いや、スッキリの定義は?
俺が見たらねっとりしてることない?
2020/06/27(土) 00:53:32.69ID:kHv6hhb8
>>263
その深い階層を扱うのはC言語でしょう?
C言語はオブジェクト指向です!
2020/06/27(土) 01:02:58.36ID:kHv6hhb8
>>261
ドメインが安定してるところはオブジェクトを作って
ゆるふわなところは骨組みメソッド作る感じ?
それなら僕と同じです
2020/06/27(土) 01:03:48.38ID:0UrSdNRf
いや、普通にOOPのコードだけど...。
逆に、list,stack並みに...で、なぜ伝わらない。
当たり前すぎて伝わらなかったのか、初めて聞いた単語だから伝わらなかったのか。
このスレの連中だと高低差激しすぎてコミュニケーションが難しいな。
2020/06/27(土) 01:04:44.30ID:0UrSdNRf
>>274
あっ、はい。そうです。
2020/06/27(土) 01:08:16.33ID:0UrSdNRf
>>274
強いて言うのなら、ドメインが安定しているところに見える範囲がオブジェクト指向信者とオブジェクト指向使いとstaticおじさんで、どれくらい違うのかなって感じですが。
2020/06/27(土) 01:11:06.46ID:kHv6hhb8
こうなるんだったらもっとこういうオブジェクトにすれば
良かったと思うことがザラにある
今最高にきれいでも未来の仕様変更でど汚くなることもある
いま汚くても未来の仕様変更がきれいにできることもある
その見極め方が僕には未だにわからない
2020/06/27(土) 01:11:51.83ID:F7GoDPAy
>>269
いや動的になる分、効きづらくなるだろばか。
それでもモジュール切り離しの視点で良いこともあるってのがオブジェクト指向の旨みなわけだが。
依存逆転のモジュール構造が作りやすいってだけの話なのにバカが変な哲学持ち出すから
カスみたいな輩がお前はわかってない、俺が真の意味を理解してるとか言い出すわけだよ。
2020/06/27(土) 01:20:22.14ID:kHv6hhb8
依存性を逆転させて良いことがあるっていうんですか!?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況