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

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

オブジェクト指向って不自然な文法だよな [無断転載禁止]©2ch.net

1 :デフォルトの名無しさん:2017/03/08(水) 08:06:52.93 ID:4wFxBa4i
忌み嫌ってるGotoとそう変わらない
やはり関数型が人間の思考ルーチンに合ってる

2 :デフォルトの名無しさん:2017/03/08(水) 08:10:26.82 ID:4wFxBa4i
コンパイラからしたって、オブジェクト指向のプログラムはあっちいけこっちいけタライ回しにされてさぞ忙しいだろう

プログラムは上から下への原則を今一度振り返るべき。

3 :デフォルトの名無しさん:2017/03/08(水) 13:49:07.20 ID:2a+4dzfV
作り方による。
オブジェクト指向も分類に優れているので保守性の向上という点では利点がある。
ただ一時期の無理にデザインに当てはめようとしたり、
過度な抽象化プログラミングがむしろ開発効率を悪くした。

4 :デフォルトの名無しさん:2017/03/08(水) 14:47:47.21 ID:yAhmQwaL
document.write("hello")
日本人なら
document.ni."hello".to.kake()
だよな___

5 :デフォルトの名無しさん:2017/03/08(水) 16:54:25.13 ID:I1QnDk4Z
document はそのままかよw

6 :デフォルトの名無しさん:2017/03/08(水) 17:51:28.80 ID:4q4g4kgy
オブジェクト指向とか
英語圏の人間からしたら
滅茶苦茶わかりやすい概念だよな

言葉と文化の障壁が高い

7 :デフォルトの名無しさん:2017/03/08(水) 19:26:37.11 ID:NYC1f0AU
おかしな言い方だけど
オブジェクト志向をオブジェクト志向と言うことで
わかりにくくなっているのかも

本質的には、一枚の紙に書くんじゃなくて
幾つかの紙に分けて書いた方がいいんじゃね?ってだけだし

8 :デフォルトの名無しさん:2017/03/08(水) 19:45:37.59 ID:NYC1f0AU
後はクラスの初心者向けへの説明で
インスタンスにAとかBって名前つけるアホな
tarouでいいじゃん、何抽象的な記号を割り振ってんだか

9 :デフォルトの名無しさん:2017/03/08(水) 19:57:38.53 ID:LWSyzbzs
oopとfpは対立概念ではない。やろうと思えばfpでもoopを実現できる

10 :デフォルトの名無しさん:2017/03/08(水) 21:34:28.70 ID:Uljnsbub
半分くらいしかできません

11 :デフォルトの名無しさん:2017/03/08(水) 23:20:04.08 ID:1qLkd/gc
悪いとこ取りになるだけじゃね

12 :デフォルトの名無しさん:2017/03/09(木) 08:59:16.53 ID:Nr7urPV/
goto と同じようにしか見えない視点が良くないんじゃないか。
もうちょっと「引き」で見てみたら。

13 :デフォルトの名無しさん:2017/03/09(木) 11:20:39.75 ID:a8jDq3O3
分割できる事は便利かもしれないけど、分割されてるモジュールなり関数なりがどこから呼ばれてるかわかりにくい
gotoと変わらないというのはこの事に寄る部分が大きい
呼ばれてから中で参照するデータが外で定義されて設定されたものであると、それへのトレースも必要になるし、
自身が単なる橋渡しで、さらに別のファイルの関数を呼んでるだけとか

オブジェクト指向が悪いとは言わないし良い所もあるとは思うが
出来上がったものがブラックボックスになる可能性を孕んでいるのは欠陥を抱えていると思わざるを得ない

14 :デフォルトの名無しさん:2017/03/09(木) 12:58:21.00 ID:tVtLUJ/C
オブジェクト指向じゃなくて手続き的か否かでわけてんじゃないの?

15 :デフォルトの名無しさん:2017/03/09(木) 12:59:53.62 ID:QPtS1+LX
>>13
どうカプセル化するか、情報隠蔽するかじゃないの?

というか現代のプログラミングでクラスを使わないって
選択肢がないと思うんですけど

1人のプログラマが
全てを把握しなくても済むためのオブジェクト志向じゃないのかな?

16 :デフォルトの名無しさん:2017/03/09(木) 13:48:33.33 ID:x6aOWZGA
>>13
気分はstaticだね

17 :デフォルトの名無しさん:2017/03/09(木) 14:50:03.33 ID:GbP4DNpX
構造化プログラミングはステートマシンが生えやすくて容易にスパゲッティになる
オブジェクト指向ならVoidポインタや関数ポインタやswitchでの分岐と違って呼び出し元やオーバーライドを見る程度で大まかな処理が把握できるから楽
言語自体がコーディング規約みたいなもんだからインデント幅とアクセス装飾子だけ気をつければ大した規約無しでもチームで動けるし

18 :デフォルトの名無しさん:2017/03/09(木) 16:38:20.25 ID:a8jDq3O3
>>15
全体を把握しなくてもいいけど、大雑把には把握する必要はある
その時に足枷になるのがたらい回しにされるコード
>>17
それは良い面だけで、悪い面を書いたのが>>13

やらない方がよい事と積極的に利用すべき事が整理されてない事に寄る混乱だとは思う
デザインパターンとかの累積か、新言語への良い部分の継承って事なのかなと思ってる

19 :デフォルトの名無しさん:2017/03/09(木) 17:31:03.49 ID:F9CUJ5lt
プログラムは上から下へ実行されるわけではない、外から内へ実行されるのだ。
例をもって示そう。
記号a,bを使って
a
b
と上から下に実行しているように見える、しかしaをaを開く記号と考えて
a'を閉じる記号と考えると
a
b
b'
a'
と書き換えられる、よく見てほしい上からでも下からでもどちらからでも
プログラムを実行できるようになったではないか。
すなわちプログラムは外から内に実行されているということなのだ。

20 :デフォルトの名無しさん:2017/03/09(木) 18:10:32.69 ID:XS2krXN3
Javaがはじまったころ、日本語に似ているといわれた
ファイルを閉じる
file.close()

21 :デフォルトの名無しさん:2017/03/09(木) 18:18:10.83 ID:F9CUJ5lt
smalltalkなら日本語になるよ
田中はファイルを閉じることを
tanaka ha: file wo: tojiru.
と書ける。
これはメッセージをtanakaオブジェクトにha:wo:selectorにfileと
tojiruオブジェクトの引数に渡すという意味。

22 :デフォルトの名無しさん:2017/03/09(木) 19:12:55.33 ID:QLYbGx4f
document.write("hello") ←中途半端なオブジェクト指向

document."hello".write() ←真のオブジェクト指向

23 :デフォルトの名無しさん:2017/03/09(木) 19:26:35.15 ID:NWFSmelL
>>22
ぱーか

24 :デフォルトの名無しさん:2017/03/09(木) 20:21:04.28 ID:HQPo78pm
数学の関数と逆だから違和感がある。

25 :デフォルトの名無しさん:2017/03/09(木) 21:49:04.33 ID:x6aOWZGA
>>22
“hello”.write()ならまだわかるが
document."hello".write() はない

document.write("hello") はSVOになってるから英語的にも自然だし
documentさんに”hello”をwriteしてねって伝えてるからOO的にも自然

26 :デフォルトの名無しさん:2017/03/09(木) 22:15:54.41 ID:ZZ1gzprq
>>22
クソワロタ

27 :デフォルトの名無しさん:2017/03/09(木) 23:34:27.37 ID:5jtV+VDK
英語的に自然とか言ってる奴英語センスねえな

I.write."hello".in(document)だろ

これがオブジェクト指向がイケてない理由、平然と能動態と受動態を混ぜる
言語センスがないからオブジェクト指向特有のレトリックにはまっちまう

これが文芸的言語になると
write("Hello" document)
とかける
これは自明の主語Iを省略している
document引数省略すれば、自明の引数stdoutとすればいいし、そのデフォルト実装がいやならデフォルト引数を与えればいい

オブジェクト指向でこういった動作は実現しえない、documentクラスにwriteがぶら下がっている限りは
もちろんimportしてもいいがことなるwrite targetに対してwriteするには、結局明示的なメソッド呼びだしが必要になる

オブジェクト指向っつーのはつまりそういうことだよ、Googleのフレームワーク使うとinクラスとかbyクラスとか出てくるだろ
あれって相当不自然なわけだが、つまり前置詞に名詞の代名詞たるクラスを割り当てている

もしGoogle以外がやってたらバッドパターンと言われることをなぜ公開ライブラリでやってるのかってことをもう少し考えたほうがいい

28 :デフォルトの名無しさん:2017/03/09(木) 23:38:15.19 ID:ZZ1gzprq
>>27
キチガイのフリしようとがんばってるね、あーすごいすごい

29 :sage:2017/03/09(木) 23:38:35.98 ID:tGF/AJwJ
ソビエトロシアでは、documentが私をwriteする!

30 :デフォルトの名無しさん:2017/03/09(木) 23:39:57.34 ID:5jtV+VDK
helloはwriteの引数か

I.write("hello").in(document)

SVOMだね、なぜ文法的にoptionalなMが、requiredな主語、第一引数たりえるのか、これがおかしいことは小学生でもわかることですよ

31 :デフォルトの名無しさん:2017/03/09(木) 23:44:04.30 ID:lQejystE
>>27
iクラスにwriteメソッドつけるように実装すればええやん?

32 :デフォルトの名無しさん:2017/03/09(木) 23:44:41.13 ID:5jtV+VDK
言語センスがないからオブジェクト指向にはまるんすよ


言語センスすらない文系wwww
はこんな欠陥パラダイムかかえてなにつくるんすかね

ですマーチでもつくるんすかねwwww

33 :デフォルトの名無しさん:2017/03/09(木) 23:48:57.18 ID:lQejystE
設計が不適切だと不自然な文法になってしまうように作られてるのがオブジェクト指向だよ

34 :デフォルトの名無しさん:2017/03/09(木) 23:50:15.35 ID:nbbNQqG6
英文に必ず主語があるとでも思ってんのかなこいつ

35 :デフォルトの名無しさん:2017/03/09(木) 23:53:56.71 ID:a8jDq3O3
oppai=3.14
も文法がーとか言い出すんだろうか

36 :デフォルトの名無しさん:2017/03/09(木) 23:54:21.99 ID:rmHNAbfy
documentは実体データをラップしたクラスなのだろうけれど
ラッパークラスの名前をdocumentにして
そこにwriteって直接付けちゃうのはOOPとして
あんまり綺麗じゃないよなぁ…と思ってたら
スレ基地が「それがOOPなんだよ!」って喚き初めて笑った。

37 :デフォルトの名無しさん:2017/03/10(金) 00:01:21.84 ID:48ExjG0B
システムのすべての振る舞いを定義している神様クラスIを作れと?

38 :デフォルトの名無しさん:2017/03/10(金) 00:12:27.48 ID:GfJ8VRfB
できらぁ!!

39 :デフォルトの名無しさん:2017/03/10(金) 00:25:26.00 ID:imOpXixD
ソースコードはもともと命令形だろ
write(“hello”)

主語が省略されてるという解釈はOOPだよ
class.write(“hello”)

40 :デフォルトの名無しさん:2017/03/10(金) 00:27:16.95 ID:PorFrx4J
あーあ

41 :デフォルトの名無しさん:2017/03/10(金) 00:27:40.25 ID:cBCq3F3F
キチガイはどこへ行ったのか

42 :デフォルトの名無しさん:2017/03/10(金) 00:31:57.97 ID:PorFrx4J
おーい

43 :デフォルトの名無しさん:2017/03/10(金) 00:34:20.17 ID:y8xCqliG
>>27
プログラムではdocumentがwriteするんだから
documentを主語として捉えてるよ
そういうメンタルモデル

44 :デフォルトの名無しさん:2017/03/10(金) 00:39:31.92 ID:imOpXixD
プログラムは、もともとは人間がコンピュータに命令する命令形
クラス、インスタンスを主語にしてドット構文で読み下すようになったのは割と最近だろ?
その辺を踏まえて考えないとだめじゃろう

45 :デフォルトの名無しさん:2017/03/10(金) 00:42:37.14 ID:imOpXixD
今Simulaのコード見てるけど、この時はまだ命令形なんだよな
これがSmalltalk, Objective-Cになるとメッセージ式になる
C++, Javaでドット構文になる
あってる?

46 :デフォルトの名無しさん:2017/03/10(金) 00:45:37.75 ID:Cysk3AQ/
若造ですまんかった

47 :デフォルトの名無しさん:2017/03/10(金) 02:01:17.29 ID:XsMooLHr
時代をおうごとに退化してるな
3.equalsto(4)

キモすぎだろ

Long.equal(3,4)
は?

object.equal(3,4)

object.要る?

48 :デフォルトの名無しさん:2017/03/10(金) 02:05:29.69 ID:y8xCqliG
3.equal? 4

49 :デフォルトの名無しさん:2017/03/10(金) 03:21:19.22 ID:jlKNf/SQ
もともとモジュール間で処理分離して、モジュール間では
「こうせよ」とコマンドメッセージで働かせることで動作に「緩さ」を持たせて
変更に柔軟に対応するように提唱されたのに
なーんか、旧来のプログラミングから抜けられないというか
プログラマの性としてOOPなのに必死で「緩さ」を無くそうとか
モジュール内までプログラマそれぞれが定義した"暗号"並べて隙なく動かそうとか
全力で本人たちはOOPの概念を進めてるつもりで
もともとOOPが意図していない泥沼に飛び込んで行くのはなにかねアレ。

50 :デフォルトの名無しさん:2017/03/10(金) 03:54:53.63 ID:GfJ8VRfB
プログラミング言語にしろ、オブジェクト志向にしろ
元々は人間がわかりやすくするための道具に過ぎないのに
小難しい方に行きたがるのはエンジニアのサガなんだろう

プログラミングを勉強して初めてジョブズの本当の偉大さがわかる気がしたし、
ウォズがジョブズのセンスを認めていたのもスゴイことだと思う

51 :デフォルトの名無しさん:2017/03/10(金) 04:32:33.60 ID:aQFxnrD/
>>49-50って、どうせ分かった風なこと言ってんだろうなと思って読んでみたけど、
「OOPとはこういうものだ」的な狂ったJavaラーの流儀を見よう見まねでインチキ模倣して
コードを判読困難にするクソコーダー共が脳裏に蘇ってきて「あーそうだよねー、本当にそうだよねー」
って思った。まだ眠くない。

52 :デフォルトの名無しさん:2017/03/10(金) 05:53:18.97 ID:cBCq3F3F
>>47
3==4

53 :デフォルトの名無しさん:2017/03/10(金) 06:36:58.89 ID:AQFgXGIk
やはり論理型が人間の思考ルーチンに合ってる

54 :デフォルトの名無しさん:2017/03/10(金) 08:21:07.48 ID:ubUDEmbR
オブジェクト指向の文法ってなんだ?
オブジェクト指向って設計の概念であって、プログラミング言語とは無関係だろ

55 :デフォルトの名無しさん:2017/03/10(金) 08:34:17.79 ID:aQFxnrD/
みんな、んなことはわかりきった上で論点はそこじゃないから含んだ上で話してるのに
まさか鬼の首とったようにそれだけ指摘してくる馬鹿が現れました。

56 :デフォルトの名無しさん:2017/03/10(金) 08:56:04.87 ID:mOHud+7U
わかりきってんなら、議論する意味ないだろ
OOD、OOPについていけなかった馬鹿かな?

57 :デフォルトの名無しさん:2017/03/10(金) 08:59:53.97 ID:aQFxnrD/
文盲の方まで登場。議論しているのは別の事だという意味がわからないようです。

58 :デフォルトの名無しさん:2017/03/10(金) 10:58:42.60 ID:GfJ8VRfB
C++は手続き型もオブジェクト指向もどっちもできるから
最強ってばっちゃが言ってた

59 :デフォルトの名無しさん:2017/03/10(金) 11:04:45.23 ID:aQFxnrD/
>>58
その理論だとPHPも最強ってこと? まさかw

60 :デフォルトの名無しさん:2017/03/10(金) 17:19:22.04 ID:pfLjfjar
コンピューターおばあちゃん。

61 :デフォルトの名無しさん:2017/03/10(金) 18:30:21.22 ID:RFnmbLup
C++はマクロやTMP出来るから(難易度が)最強

62 :デフォルトの名無しさん:2017/03/10(金) 22:15:50.34 ID:8q2Idz6n
とりあえずアブストラクトファクトリーをアブストラクトファクトリーしてアブストラクトファクトリーする奴とか
「ここにinterfaceを実装したクラスが28コありますのでどれか使ってください、ダメなら実装してください」
なんてのでなかったら、もう何でもいい気がしている

63 :デフォルトの名無しさん:2017/03/11(土) 00:27:16.11 ID:1KBQqXnt
>>62
それじゃフレームワークなんも使えんやん!

インターフェースだいすき

64 :デフォルトの名無しさん:2017/03/11(土) 00:47:21.97 ID:qyY4K/ii
>>63
「自称」ヘキサゴナルアーキテクチャかつサンプルコード無しでソース見ろ
だと、初見ではイミフすぎて困る、くらいの感じかなあ
doxygenとかglobalに定義ゲロらせて眺めていくようなアレ

マニュアルなりサンプルコードなり、多少のテストコードがあるんなら(まだ)いいんだが

65 :デフォルトの名無しさん:2017/03/11(土) 05:44:59.40 ID:yu5TA/rB
コードがぐちゃぐちゃなやつは日本語もぐちゃぐちゃだなおい

ヘキサゴナルアーキテクチャでぐぐったら胡散臭すぎてわろた
自分を賢く見せようとして背伸びしてる連中がひっかかってさらにダメになっていく典型のような

66 :デフォルトの名無しさん:2017/03/11(土) 10:05:31.53 ID:vmHK14yN
>>3
COMなんかは顕著だな
インスタンス隠蔽とインターフェースqueryはワケワカメになっている。

最近みたのがDXGIfactoryで、こいつfactoryとかいいながら、シングルトンじゃなかったりする。
部品化には向いているが、フレームワークには仮想関数と継承だけ使うのが好ましい。

67 :デフォルトの名無しさん:2017/03/11(土) 10:15:32.79 ID:vmHK14yN
>>54
p->abend();
throw CWindows10();
catch (Cxp)

68 :デフォルトの名無しさん:2017/03/11(土) 12:41:57.21 ID:2uHXXIxl
文法とか言ってる時点でオブジェクト指向わかってないだけだってのが丸わかり。

69 :デフォルトの名無しさん:2017/03/11(土) 13:18:43.85 ID:UDoD1LjB
1は、OOPLの文法が不自然だってことを言いたいのだろうが、言葉が足りない
関数型というのも、いわゆる関数型言語のことではなくて、手続き型言語のことっぽいし

70 :デフォルトの名無しさん:2017/03/11(土) 14:14:10.74 ID:TEZcYToy
構造化プログラ厶が至高

71 :デフォルトの名無しさん:2017/03/11(土) 17:47:08.82 ID:awln0KGk
オブジェクト志向自体はわかりやすいと思うけど
腑に落ちる解説はネット上で見たことないな

もっと分かりやすい説明できると思うんだけど

72 :デフォルトの名無しさん:2017/03/11(土) 18:22:38.73 ID:sUFiWX+J
オブジェクト指向をオブジェクト志向と書くやつの多さよ

73 :デフォルトの名無しさん:2017/03/11(土) 18:48:31.27 ID:OUHk1Upk
orientだから間違ってないんじゃないの?
普通は使わないけど。

74 :デフォルトの名無しさん:2017/03/11(土) 19:24:36.60 ID:wnmGqnx7
オブジェクト指向が正しいけど、ホントは、オブジェクト志向のほうがいいとおもいます

75 :デフォルトの名無しさん:2017/03/11(土) 19:27:41.39 ID:wnmGqnx7
上昇志向、権力志向、ブランド志向
指向性マイク、指向性アンテナ

76 :デフォルトの名無しさん:2017/03/11(土) 19:30:45.40 ID:wnmGqnx7
無理数(むりすう、 英: irrational number)とは、
有理数ではない実数、つまり分子・分母ともに整数である分数(比 = 英: ratio)として表すこと
のできない実数を指す(中略)
無理数という語は、「何かが無理である数」という意味に誤解されやすいため、
語義的に「無比数」と訳すべきだったという意見もある
-Wikipedia

77 :デフォルトの名無しさん:2017/03/11(土) 20:01:31.21 ID:5tQDG2DR
>>71
C++を「これが次世代に来るオブジェクト指向って奴だ!」って吹き込まれて大火傷したおじいちゃんたちが
もうちょいマシにオブジェクト指向を取り入れたJAVAあたりに「オブジェクト指向ってこういう奴だろ?」って
C++の知識で噛み付いたり、また「俺はOOPわかってるぜ! 構造体に関数がついたやつだろ!?」って言い出して
まわりがぐんにゃりするまでがオブジェクト指向談義のデフォ

78 :デフォルトの名無しさん:2017/03/11(土) 20:23:47.79 ID:n0RAiOjQ
>>77
大木こだま師匠がアップをはじめました。

79 :デフォルトの名無しさん:2017/03/11(土) 20:24:32.89 ID:JX7nqQSL
オブジェクト指向はメリットないからな
処理をソースコードのどこに記述するとカコイイかってクソみたいどころか
クソそのものの技術

80 :デフォルトの名無しさん:2017/03/11(土) 20:26:00.69 ID:JX7nqQSL
こんなもんに時間を費やしたアホはさっさと自害しろ

81 :デフォルトの名無しさん:2017/03/11(土) 20:31:09.71 ID:sUFiWX+J
どういう分け方にするのがいいのかを考えることは
対象の本質を深く考えることにつながる
まあオブジェクト指向が技術だと思ってる人には難しいかもね

82 :デフォルトの名無しさん:2017/03/11(土) 20:35:10.08 ID:JX7nqQSL
>>81
繋がんねーよ
いいからさっさと設計書まとめて不明確な仕様を纏めろよ
1円にもならねーカス技術に時間使ってんじゃねーよ

83 :デフォルトの名無しさん:2017/03/11(土) 20:40:16.90 ID:JX7nqQSL
オブジェクト指向とそうでないやり方と金額にいくら差が出るからこれを採用していると
数字で説明できてこそプロ
アマチュアは数字で説明できないからこんなカス技術に騙される

84 :デフォルトの名無しさん:2017/03/11(土) 21:00:37.78 ID:BnYOCMV6
CとC++で作ったWindows
CとJavaで作ったAndroid
CとObjective-Cで作ったiOS(macOS)…
どうしてここまでアップデートトラブルの数に差がついたのか
…慢心、環境の違い、正しいオブジェクト指向…

85 :デフォルトの名無しさん:2017/03/11(土) 21:40:59.37 ID:OIH4xtCQ
>>84
それを数で比較してクレメンス

86 :デフォルトの名無しさん:2017/03/11(土) 22:24:24.85 ID:7U1HyGmG
>>83
なるほど、だからあなたはアマチュアなのですね

87 :デフォルトの名無しさん:2017/03/11(土) 23:09:13.17 ID:999c5r5I
C++が沈没してObjCが勝つと考えられていた時代もあったんやで…

88 :デフォルトの名無しさん:2017/03/12(日) 01:48:31.27 ID:bReP5RFT
>>86
数字で言うとどのくらい?
ハイ、論破

89 :デフォルトの名無しさん:2017/03/12(日) 08:31:29.76 ID:I5/v94M1
>オブジェクト指向はメリットないからな

みたいな人はとても可愛そう。
何が可哀想かというと、メリットのない形での狂ったオブジェクト指向を押し付けられてオブジェクト指向自体を勘違いしてしまったこと

90 :デフォルトの名無しさん:2017/03/12(日) 08:54:32.72 ID:bReP5RFT
>>89
ではオブジェクト指向のメリットをどうぞ

91 :デフォルトの名無しさん:2017/03/12(日) 09:34:20.15 ID:QBXPrqjR
勉強していて
クラス図と論理ER図が
ほぼ同じになっちゃうんだけど
良いのかな?

エンティティとかまんま一緒

92 :デフォルトの名無しさん:2017/03/12(日) 09:42:26.07 ID:KA0LzYa1
多態が簡単にできるからIF文の嵐になりにくい
責任を分離できるから問題のスコープを小さく区切れる

なにより型にメソッドがくっついてるせいで、メソッドをグローバルスコープから探してこないで済む

VisualC++やVBのハンドラ地獄を知っている世代はありがたみが身に染みてるはず

93 :デフォルトの名無しさん:2017/03/12(日) 09:51:11.84 ID:bReP5RFT
>>92
嘘乙

94 :デフォルトの名無しさん:2017/03/12(日) 09:53:55.48 ID:RdGtMQ3H
cobolerって可哀想…

95 :デフォルトの名無しさん:2017/03/12(日) 10:10:43.24 ID:KA0LzYa1
金のことしか理解できんのだったら、
オブジェクト指向と非オブジェクト指向でプロジェクトの見積もりたててみりゃいいだけじゃん

プログラマの単価、かかる工数の差、使える既存資産の差、考えただけで恐ろしい
Cでまともにスレッド管理や画面描画できるプログラマがどれだけいることやら

96 :デフォルトの名無しさん:2017/03/12(日) 10:31:46.44 ID:RdGtMQ3H
それ以前にクラスライブラリじゃないライブラリ探すの大変

97 :デフォルトの名無しさん:2017/03/12(日) 11:02:04.65 ID:cZ1eIQIk
OOPは自分のためと言うよりそれを使う協業相手を慮ればこそじゃね
一人で仕事して再利用されることも無いならそれこそmain()に全部ぶち込もうが構わん

98 :デフォルトの名無しさん:2017/03/12(日) 11:55:03.48 ID:Tf1oCUYk
文法とか議論されてるとか思って覗いてみたけど、なんだかなぁ。
Smalltalk, javascript, pealとかの極端路線で盛り上がってもらえると楽しめるけど。

99 :デフォルトの名無しさん:2017/03/12(日) 12:01:02.49 ID:I2BlFVSe
>>97
Unit Testできないだろ

100 :デフォルトの名無しさん:2017/03/12(日) 12:19:25.49 ID:bReP5RFT
>>95
オブジェクト指向開発をするなら採算度外視で取り組まないと駄目とかクズは言うことが違うな

101 :デフォルトの名無しさん:2017/03/12(日) 12:25:40.76 ID:T4N3k6YJ
>>91
正解があるわけじゃなく自分がどうモデリングしたいかや
そのモデルをプログラムからどう使いたいかによる

ただ一般的には違う場合のほうが多いと思う
注文・注文明細みたいな例を考えるとデータモデルでは注文明細はほぼ確実にエンティティだけど
オブジェクトモデルではOrder.ItemsでItemsはProductのコレクションでクラスではないケースのほうが多い
こういう違いがあるからORMで差を埋めようとする

102 :デフォルトの名無しさん:2017/03/12(日) 15:00:22.37 ID:I5/v94M1
>>93
全部嘘だと言うのなら、言い切る理由を言いましょう。(心のともしび)

103 :デフォルトの名無しさん:2017/03/12(日) 15:25:28.33 ID:kCsnIZg1
>>102
そもそも元のお前の発言にも根拠がねーじゃん

104 :デフォルトの名無しさん:2017/03/12(日) 16:04:19.98 ID:m/tWOWqp
君が知ろうとしてないだけ

自分でクラス作れなくても、使ってるライブラリはクラス化されてるものだろうに
ライブラリの変数が全部Publicだったり、全部Staticメソッドで同じ名前空間にぶちこまれてたらどうなるか
ちょっと考えてみりゃわかりそうなもんだが

105 :デフォルトの名無しさん:2017/03/12(日) 17:08:13.14 ID:bReP5RFT
>>104
だからどうしたん?
設計書に機能に対する処理の記述箇所書くだろ?
それ以上に何が必要だって?

106 :デフォルトの名無しさん:2017/03/12(日) 18:39:28.44 ID:RdGtMQ3H
>>105
えらく牧歌的な現場で幸せそうやな

107 :デフォルトの名無しさん:2017/03/12(日) 18:59:48.48 ID:SaocRfRR
文法の話じゃなくなったのか?

108 :デフォルトの名無しさん:2017/03/12(日) 20:16:46.98 ID:m/tWOWqp
>オブジェクト指向はメリットないからな
>処理をソースコードのどこに記述するとカコイイかってクソみたいどころか
>クソそのものの技術

>>79大元がこれだから
普通の手続き型で整理整頓ができてるかというひとに
オブジェクト指向の利点をだな

109 :デフォルトの名無しさん:2017/03/12(日) 20:59:23.12 ID:bReP5RFT
な?
いらねぇだろ?

110 :デフォルトの名無しさん:2017/03/12(日) 21:12:07.98 ID:RdGtMQ3H
>>109の現場ではいらない、それが結論ってことで

111 :デフォルトの名無しさん:2017/03/12(日) 21:40:01.62 ID:SaocRfRR
OOPとは、処理をカプセル化して再利用単位と問題のスコープを小さくすること
その理想的なカプセルの単位とは関数でありオブジェクトではない

メンバーが隠蔽された構造体に対して専用の関数で処理を行い
名前空間が貧弱な言語では短いプレフィックスを付ける
C言語でOOPを行うとこんな方法になる

112 :デフォルトの名無しさん:2017/03/12(日) 22:01:56.73 ID:bReP5RFT
>>111
いいけど設計書に書けよ

113 :デフォルトの名無しさん:2017/03/12(日) 22:04:34.02 ID:SaocRfRR
>>112
具体的な実践方法を書いたんだよw
反論無いだろ?

114 :デフォルトの名無しさん:2017/03/12(日) 22:18:59.03 ID:RdGtMQ3H
実装経験の浅いSEか

115 :デフォルトの名無しさん:2017/03/12(日) 22:58:36.12 ID:npGuJNcR
NGされてて>>79がすでに見えないが
もしオブジェクト指向について>>108みたいなこと言ってくるバカいたら
「へぇ?w」って片眉上げながら聞いて、あとでSNSで知り合いに
2ちゃんにこんなボケ老人がいてさーwって笑い話のネタにしておしまいかな。

116 :デフォルトの名無しさん:2017/03/12(日) 23:15:34.22 ID:bReP5RFT
>>115
反論できないとすぐ人格批判に走るんだよな

117 :デフォルトの名無しさん:2017/03/12(日) 23:22:01.53 ID:npGuJNcR
反論もなにも、理解がなに1つ合ってないんだものw

118 :デフォルトの名無しさん:2017/03/12(日) 23:27:22.76 ID:T4N3k6YJ
>>105
> 設計書に機能に対する処理の記述箇所書くだろ?

せっかくなのでこの文の意味を説明してよ
機能に対する「処理の記述箇所」って何?

119 :デフォルトの名無しさん:2017/03/12(日) 23:51:39.16 ID:I5/v94M1
>>105
石器時代の人、石器時代の人じゃないですか!

120 :デフォルトの名無しさん:2017/03/12(日) 23:55:26.31 ID:I5/v94M1
絶対話しがネジ曲がっていきそうだから確認しておくけど、

この流れからのー

>>104 : デフォルトの名無しさん2017/03/12(日) 16:04:19.98 ID:m/tWOWqp
> 君が知ろうとしてないだけ
> 自分でクラス作れなくても、使ってるライブラリはクラス化されてるものだろうに
> ライブラリの変数が全部Publicだったり、全部Staticメソッドで同じ名前空間にぶちこまれてたらどうなるか
> ちょっと考えてみりゃわかりそうなもんだが

これだからね。

>>105 : デフォルトの名無しさん2017/03/12(日) 17:08:13.14 ID:bReP5RFT
> >>104
> だからどうしたん?
> 設計書に機能に対する処理の記述箇所書くだろ?
> それ以上に何が必要だって?

忘れないで議論しようね、みんな!

121 :デフォルトの名無しさん:2017/03/13(月) 00:13:52.54 ID:WHuP7MmV
>>120
何か間違ってるのかね?

122 :デフォルトの名無しさん:2017/03/13(月) 00:35:44.83 ID:rgen9sgM
>>121
変な質問だな。「どこがおかしいのかね?」ならまだわかるが。

で、

A: ライブラリの変数が全部Publicだったり、全部Staticメソッドで同じ名前空間にぶちこまれてたらどうなるか ちょっと考えてみりゃわかりそうなもんだが
B: 設計書に機能に対する処理の記述箇所書くから問題ないだろ?

を、君はマトモだと思うのだね? それに対するオレの感想は >>119 だ。

123 :デフォルトの名無しさん:2017/03/13(月) 00:43:09.97 ID:WHuP7MmV
>>122
だからかんけーねーじゃん
設計書にクラスやメソッドの仕様書くんだろ?
publicでもstaticでも好きにしろよ
ソースしかねーのかテメーんとこは

124 :デフォルトの名無しさん:2017/03/13(月) 00:44:14.43 ID:WHuP7MmV
まあできるなら全部staticでやってくれると処理を把握するのはとびっきり楽だね

125 :デフォルトの名無しさん:2017/03/13(月) 01:30:39.43 ID:rgen9sgM
>>123
お怒りの石器人の方に申し訳ありません。
現代人は、設計書に記述すべき事は設計書に記述しますが、
なんでもかんでも設計書に記述子なくて良いよう、
記述する必要の無くなるようにプログラムを書きます。
石で料理を作っている方には、誠に申し訳ございませんが、
それを我々は“技術”と呼んでいます。

126 :デフォルトの名無しさん:2017/03/13(月) 01:34:20.99 ID:h57/U2+3
>>120
あーーそういうことだったのか
>>104>>105のレスに何のつながりがあるのか全くわからんかったわ
同じ名前空間にぶち込んでたって設計書見れば分かるでしょっていう反論だったのね

リプレースした汎用機系システムの仕様書がそんな感じだったわ
そういう世界もまだあるっていうことでいいんじゃないかな
オブジェクト指向とか全く関係ないし

127 :デフォルトの名無しさん:2017/03/13(月) 01:36:32.03 ID:rgen9sgM
>>126
そのようですね。ですから“石器人”と申し上げているのでございます。

128 :デフォルトの名無しさん:2017/03/13(月) 08:41:03.97 ID:03szIGH1
例えば、言葉の定義を文章の中に長々書くよりも
リンクを貼っておいて、各自飛んで
確認してもらった方がわかりやすいじゃん?

OOPって逆にその程度のもので、そんな必死に否定するのも
ちょっと気持ち悪いんだが

129 :デフォルトの名無しさん:2017/03/13(月) 10:04:08.85 ID:LElGUxf2
>>128
は?意味不明

130 :デフォルトの名無しさん:2017/03/13(月) 11:11:18.60 ID:W+gruSmy
>>128
関数で出来るし

131 :デフォルトの名無しさん:2017/03/13(月) 12:39:57.38 ID:1nW2SDLA
話は逆だろうね
簡潔に仕様を書けない奴は論理的思考ができないわけだから
そもそもコーディングすべきじゃないな

132 :デフォルトの名無しさん:2017/03/13(月) 12:42:14.09 ID:W+gruSmy
逆だろ、論理的思考の出来ない奴が滅茶苦茶にすることを
クラスに限定させて被害を最小限に抑えるのだろう。

133 :デフォルトの名無しさん:2017/03/13(月) 12:48:20.20 ID:Dvluc0la
やっぱりアセンブリがナンバーワン!

134 :デフォルトの名無しさん:2017/03/13(月) 13:05:17.18 ID:rgen9sgM
>>131
誰に言ってるの?

135 :デフォルトの名無しさん:2017/03/13(月) 13:10:58.01 ID:W+gruSmy
>>134
オブジェクト指向ではそういうときは自分に言っていることになっている

136 :デフォルトの名無しさん:2017/03/13(月) 14:21:07.80 ID:ba0kSSAR
うまいなw

137 :デフォルトの名無しさん:2017/03/13(月) 14:30:12.46 ID:ba0kSSAR
確かにあの程度の論旨を他人に正確に伝えられない奴が、簡潔で意図の伝わる仕様を書ける訳がない。
自己紹介という解釈が妥当か。

138 :デフォルトの名無しさん:2017/03/13(月) 18:11:51.25 ID:tYEoMH0G
C++限定ならfactoryが基底クラスを返却して、実体は派生クラスで出来ており、キャストして使えってデザインのフレームワークがなかなかわかりずらい。
referenceがdoxygen生成した奴とか最悪

139 :デフォルトの名無しさん:2017/03/13(月) 20:28:35.84 ID:03szIGH1
>>130
文章に例えるなら、後ろの方に解説を書くってことになるね
その文章のテーマとの関わりが深い用語に対してはそうすべきだろうよ

じゃあその文章のテーマの分野外から持ち込まれた
用語や概念について、その文章で解説すべきだろうか?
もし、それらがたくさんあったらどうする?

わかりやすい文章を書くためには、テーマであるとか
分野は絞って書くべきだよね
もし違う概念を持ち込むなら、参考文献を示す程度にすべきだと思う

140 :デフォルトの名無しさん:2017/03/13(月) 21:42:07.72 ID:eDG5d03Q
プロジェクトを疎結合なカプセルに分割できるということは、
時間と労働力を分割できるということ

141 :デフォルトの名無しさん:2017/03/14(火) 07:11:04.39 ID:3iOx7E8O
ゲッターセッターとか
もういらなくね?

142 :デフォルトの名無しさん:2017/03/14(火) 07:18:39.67 ID:3iOx7E8O
VB6をVB.NETリプレースする案件に
遭遇したことあるけど、
そこの社内SEがメソッドが
全部publicだから外部から呼んでなのは
privateにしてと派遣の俺に言ってきた

なんで奴が社員で俺が派遣なんだろうと思った

143 :デフォルトの名無しさん:2017/03/14(火) 07:19:38.94 ID:QkuzfpGt
>>141
せっかくメンバ変数へのアクセスをメッセージに封じ込めたのに
ゲッターセッターを作る奴はカプセル化をどう考えているのかと?
設計しないのかと

144 :デフォルトの名無しさん:2017/03/14(火) 07:25:15.67 ID:rwUcqsi8
ゲッターは悪くない、セッターがオブジェクトのデータを直接上書きするのが
悪いんだよ。

145 :デフォルトの名無しさん:2017/03/14(火) 07:25:33.15 ID:eK6p+eN2
全部かたっぱしからゲッターセッター作ってる馬鹿がいるけど、そういうのは要らない。
ただ、必要なゲッターセッターはもちろんあるし、元々そういう用途で使うものだった。

もっというと、いちいちゲッターセッター書かなきゃいけないみたいなのはいい加減要らない。
PHPの__get()、__set()マジックメソッドみたいなお手軽さがいい。

146 :デフォルトの名無しさん:2017/03/14(火) 07:28:48.06 ID:eK6p+eN2
前に誰かが言っていたし、オレもそう思うんだけど、
DTOに関しては、ゲッターとかセッターとか、絶対要らない。

147 :デフォルトの名無しさん:2017/03/14(火) 07:31:55.74 ID:Zq0qXnQu
プロパティでいいよ

148 :デフォルトの名無しさん:2017/03/14(火) 07:47:55.22 ID:eK6p+eN2
DTOに関してはそうなのよ
どうせクラス間たらい回しにされて、どこからでもセッターにアクセスできるんだからね
作る意味がない

149 :デフォルトの名無しさん:2017/03/14(火) 08:09:29.88 ID:XJAU0chF
セッターは
要素の上書きをフックして処理仕込むために作るんやで…

150 :デフォルトの名無しさん:2017/03/14(火) 08:21:28.00 ID:eK6p+eN2
>>144に言ってんだとおもうんだけど、
オレに言ってんなら、そんな処理はDTOには必要ないでしょ。
データをどう使うか決めるのは受け取った側だから処理をするのはそのデータを引っ張り出した側
運搬役のDTOのデータはプレーンなほどいい。

151 :デフォルトの名無しさん:2017/03/14(火) 08:36:11.74 ID:Rw/oIE+8
そもそもDTOの値をあちらこちらで書き換え可能な設計がおかしい

152 :デフォルトの名無しさん:2017/03/14(火) 09:19:16.53 ID:rwUcqsi8
オブジェクト指向ではデータ自体がオブジェクトだから
整数から値を入れだり出したりしていることも無意識にセッターとゲッターを
使っていることになってる。

153 :デフォルトの名無しさん:2017/03/14(火) 10:09:44.56 ID:Rw/oIE+8
データがクラスかどうかが問題ではなく
データの書き換えは一元的に制御しないとダメだよ
その一元的なチェック機能がセッターの役割だ
あちこちで自由に書き換え可能ならグローバル変数と変わらんからな

154 :デフォルトの名無しさん:2017/03/14(火) 10:50:48.21 ID:eK6p+eN2
>>151
DTOって、何するためのオブジェクトか知ってて言ってるの?

155 :デフォルトの名無しさん:2017/03/14(火) 10:56:12.46 ID:Rw/oIE+8
>>154
セッターは書き換えに対する一元的なチェックを受け持つ
言ってること間違ってるか?

156 :デフォルトの名無しさん:2017/03/14(火) 12:21:52.84 ID:2reN9Kzg
セッターこそカプセル化の代表格だと思うんだけどな

157 :デフォルトの名無しさん:2017/03/14(火) 14:11:40.62 ID:jZmuOqUS
>>155
言ってる事云々の前に、頭おかしい。
DTOについて聞かれてるのに、なんで主語をセッターに変えちゃうの?

158 :デフォルトの名無しさん:2017/03/14(火) 14:43:37.41 ID:rwUcqsi8
アクセッサー=セッター+ゲッターはデザインパターンでいうところの
ブリッジパターンであるよ。
インターフェイスをそのままに実装だけ変えられるというやつだ。
言語のパワーが高いとブリッジパターンを使わなくても後から実装だけ
変えることも出来るようになるからアクセッサーは必要ある言語と無い言語がある。

159 :デフォルトの名無しさん:2017/03/14(火) 15:14:53.76 ID:Rw/oIE+8
>>157
書き換えはセッターを経由すべきだからセッターの話なんだよ
クラス間たらい回しにされるデータをチェックなしで書き換えられる方がおかしくないか?
DTOが専用のアクセサを持つなりすべきだろう
めちゃくちゃなデータ突っ込んでサーバーに渡すのか?

160 :デフォルトの名無しさん:2017/03/14(火) 15:46:24.19 ID:Rw/oIE+8
あるフィールドに値を代入するときは専用のセッターを経由する
こうしないと値チェックが一元化できないし、スレッドセーフにもできない
一般論としては間違ってないよな?

161 :デフォルトの名無しさん:2017/03/14(火) 15:53:51.75 ID:Rw/oIE+8
>>158
それ自動的にアクセサが生成される言語の事言ってない?
アクセサが必要無いじゃなくて実際は有るでしょ

162 :デフォルトの名無しさん:2017/03/14(火) 16:47:34.63 ID:vIMzEjCF
>>159
DTOじゃなくてDTOを書き換える専用のクラスにチェックロジックを持たせるべきってことでしょ
DTOはjsonみたいなもん

163 :デフォルトの名無しさん:2017/03/14(火) 18:46:39.63 ID:rwUcqsi8
インスタンス変数の参照を返して問題があるからアクセッサーを使う必要がでてくるんだろ。
例えばインスタンス変数がint型だったら後から
intをオブジェクトに包んで返そうにも型が違ってできないだろ。

164 :デフォルトの名無しさん:2017/03/14(火) 19:13:31.07 ID:QkuzfpGt
>>144
ゲッターだって駄目だよ
「そのタイミングで見ちゃ駄目!」
を制御できないじゃん
例えば更新途中のデータとかな

そういうのをメッセージで縛れるのがカプセル化のメリットだろ?
ゲッターなんて作ったらトランザクションが必要になっちゃう

165 :デフォルトの名無しさん:2017/03/14(火) 21:02:34.36 ID:wufErvjH
>>160
スレッドセーフかは生成と排他次第。

166 :デフォルトの名無しさん:2017/03/14(火) 21:08:30.93 ID:wufErvjH
>>141
原則論で思考停止し、そこを極論で逃避することは、やってることが同じ
自分達に都合がよく、合理的なのを選ぶべし。

人数が10人越えていたら、迷わず原則に従うべき
議論するより作った方が早く、メンテナンスが楽になりやすい

167 :デフォルトの名無しさん:2017/03/14(火) 21:14:46.78 ID:QkuzfpGt
>>166
本来は設計で出たメッセージだけでやり取りするのがカプセル化でしょう
セッターゲッターなんて作ったら駄々漏れじゃないスか

168 :デフォルトの名無しさん:2017/03/14(火) 21:17:04.12 ID:wufErvjH
>>164
見ちゃいけないタイミングを作らない方法もあるかな

参照して更新するから排他するが、予め答えの置き場所を一元管理せずに複数用意する。
で、最後にマージするアルゴリズムだと、並列化してコアとスレッドを活用しやすくなる。
メモリとストレージを余分に使うが速度を早める可能性がある。

大抵の場合、デバイス制御には適用できない。

169 :デフォルトの名無しさん:2017/03/14(火) 21:29:20.82 ID:fkuxS8fr
経験則だけど、オブジェクト志向は、良質なソフトウェアを約束しない。
型に嵌まれば嵌まるほど非合理な実行ファイルになりやすい。
コードも関係構造を追いにくくなる。

生産性の向上を拡張性に求め、使い方をフレームワークに納める設計に固執すると、
「このオブジェクトのインスタンスは、どのクラスだ?」
「このインターフェースの裏にあるインスタンスはシングルトンか?マルチか?」
みたいな挙動を追いづらくなる。動かして試してみるのが早いとなるが、動かしても判断つかないから、デバッガのウォッチをみるはめになったりする。
そうなっていない場合、そのクラス設計は生産性や再利用性が低い。

170 :デフォルトの名無しさん:2017/03/14(火) 21:31:02.64 ID:Rw/oIE+8
>>164,168
そういうのはコールバックかクロージャで更新が終わってから返すしかないだろ

171 :デフォルトの名無しさん:2017/03/14(火) 21:31:02.71 ID:fkuxS8fr
分かりやすい例は、FBX SDKのクラス設計

172 :デフォルトの名無しさん:2017/03/14(火) 21:45:19.24 ID:DGwmYEVU
とにもかくにも仮想関数が拡張性と再利用性の要になるが、それが元凶だから、固執せず便利に使うべき。
仮想関数のないクラスは、たんなるモジュール分割をクラスで強制しているだけ。

シーケンスを強制するフレームワークは、シーケンス専用のクラスがシーケンスを規定して派生クラスをその基底クラスで操作したがる。
シーケンスの再利用とクラスの使い方をハードコードしてバグを予防するために。

ゲッタ、雪駄は必要なときだけ作ればよい。
そこがわからないから作りたがるが、

そんなん命名規則を統一しとけば、グローバル検索でリストアップして、手を入れればいい。

173 :デフォルトの名無しさん:2017/03/14(火) 22:41:03.29 ID:rdGcafzj
どーせsetter, getter定義しなきゃいけないんだから
public class Person {
public String name {get; set;}
}

Person p;
p.set.name = "Tony";
String c = p.get.name;

みたいに名詞+動詞+目的語みたいにしてくれないかなあ
いちいち定義めんどくせ

174 :デフォルトの名無しさん:2017/03/14(火) 22:50:11.36 ID:RBmfhHqQ
>>173
プロパティ

175 :デフォルトの名無しさん:2017/03/14(火) 23:45:04.06 ID:gTsTzBY0
Lombok

176 :デフォルトの名無しさん:2017/03/15(水) 00:26:30.59 ID:28pdxpj/
マーティンファウラーとかいうどうしようもない批評家をあてにしてはいけない

あいつがまともなプログラムを書いてるとこなんて想像つかないだろ

OOPの失敗パターンに言及してるけど、実際はoopが失敗しているパラダイムだと言及しているわけだ

そのことに気付かない限り、OOPの理想を諦めない限りoopを使いこなすことはない

177 :デフォルトの名無しさん:2017/03/15(水) 00:27:39.46 ID:28pdxpj/
あのくそやろうには相当無駄時間使わされたからな

178 :デフォルトの名無しさん:2017/03/15(水) 00:41:18.97 ID:ljHZsRch
わかる
若いのが開発に背を向けてリファクタばかりするようになる

世界中のソフトウェア開発の生産性を下げた男

179 :デフォルトの名無しさん:2017/03/15(水) 01:33:40.72 ID:28pdxpj/
結局開発ってのはどこまでいっても泥臭い
いくらパターンを提示したところで、その適用範囲、パフォーマンス、安全性についてなんら定量的に洞察しえない

お偉い人間がこういったからというのは設計の根拠足り得ないんだってことがわからない

オブジェクト指向が悪いんじゃない、オブジェクト指向しかしらないのが悪いんだ

いったいオブジェクト指向の本のどこに、オブジェクトの空間使用量、計算オーダー、ライフサイクル、スコープについてまともに取り合っている本があるのだ

設計におけるprosとconsを提示してもいずれも設計根拠足りえない単なる所感の羅列

挙げ句の果てには、パタンAとは真逆のパタンBが有効なパタンとして含まれている

例えば、仲介者パタンを利用せよの次の次のページには仲介者パタンを使いすぎてはいけないなど

使うべきとこ、使わないべきところが全くもって不明瞭だ

これは単なる間接参照(indirection)の話にすぎない
データベースでいうところの正規化をどこまでやるのか理想的には完全に正規化すべきだが、パフォーマンスがそれを許さないことがあるんだという問題と全く同じ構造をしている

つまりこのことはパフォーマンスというコストを指標として語るべきであるにもかかわらず彼らはコストを議論しない
オブジェクト設計においてはパフォーマンスは議論するのは恥であるかのようだ

indirecrionはもっとも重要な問題であり、オブジェクト指向の文脈でなくても出てくる、そしてindirecrionをするかしないかはパフォーマンスでしか決定しえない

彼らはパフォーマンスの計測をしない、よってまともなプログラムもかいていないんだろう

拡張性を第一に考えるのであれば、静的言語など選ばない
第一選択から誤っている人間の設計理論など役に立たない
他の分野の設計者ならファーストチョイスを誤らない

180 :デフォルトの名無しさん:2017/03/15(水) 01:49:04.06 ID:28pdxpj/
彼らは自分が型システムについてかたっているのか、ドメインモデリングについてかたっているのか、何がオブジェクトとして実装されるべきで何がサービスとして実装されるべきかすらわかっていない

極端なことをいえば、彼らはデータ構造は配列しか知らない
ネストされた連想配列など知るよしもない

彼らは継承よりコンポジションを選ぶべきだとgofに聞いて入るが、いざ実際に継承をコンポジションに置き換えると今度はDRY原則が破綻することにいつも頭を抱えている、彼らはいつもこの選択にたちどまり答が出せない

彼らはカプセル化がプログラムのモジュール化を促進したと考えているが、彼らはおそらくレキシカルスコープという概念を知らなかったのだろう

ポリモーフィズムが単に第一引数に対する関数ディスパッチにすぎないということを知らなかったのだろう

断言できるが、彼らの教えを理解したとしても設計判断を下せるようにはならない、思考回路が常に明快ではなくいつもくだらないことに悩まされるからだ

181 :デフォルトの名無しさん:2017/03/15(水) 01:55:13.83 ID:v8VJWf95
長文はキチガイ

182 :デフォルトの名無しさん:2017/03/15(水) 02:09:59.82 ID:FiGu7lnE
わかりにくい文章を書く人は設計もコードも例外なくクソなので
安心してNGできます

183 :デフォルトの名無しさん:2017/03/15(水) 02:18:08.27 ID:28pdxpj/
彼らは例えばストラテジーパタンを使えば複数のオブジェクトタイプをスイッチできるというが、そのために公開されるべきインタフェースに結局設計が縛られることがわかっていない
そうして縛られたインタフェースを(再利用するために)、クラス変数を増やし、セッタゲッタを増やし、コンストラクタをバカにするか、繁雑で不要なメソッドが立ち並ぶべきインタフェースを実装するかを迫るわけだ

確かに同一インタフェースで再利用するという目標は実現できるかもしれない
だがインタフェース設計としてゴミだということは明らかだ

スクリプト言語のライブラリのインタフェースの簡素さを見たらなんでこんなにくそなのかとしか思えなくなる

IDEが助けてくれる、長いライブラリ名も自動入力してくれる?
それは読む人の都合を無視しているよね
シンタックスハイライトはしてくれても、情報の圧縮はしてくれないわけだ

俺は本当に素晴らしいものができるんだろうと思ってたからこそオブジェクト指向のことをよく知ってるし、二度と立ち上がれないようにぶったたくことも、素直にラッパーオブジェクトを作って既存ライブラリを利用することもできるわけだ

なんでこんな不要なindirectionが必要なのか昔はわからなかったが、今はよくわかる、出来損ないのパラダイムの副産物だってことがよーくわかる

184 :デフォルトの名無しさん:2017/03/15(水) 02:29:59.88 ID:Kz3kbyRR
ラッパー噛ませまくるのが前提の設計は
元の設計は維持されるだろうが
可読性がマッハでヤバくなる

くらいでいいんじゃないだろうか?

185 :デフォルトの名無しさん:2017/03/15(水) 07:30:13.80 ID:UUTvLbR9
作成したクラスに説明を求められない現場だとクラスが酷いことになる
仕様書にない汎用性とか他の人間から「そんなことやるって書いてないよね?」って指摘されて初めて自分が無意味なものを作ってることに気づく
設計書を書かないから無価値なクラスを作成することに無頓着になる
やたら産廃を作ることに食傷気味な客に当たらないとこの辺の能力が低いままになってしまう

186 :デフォルトの名無しさん:2017/03/15(水) 11:36:52.41 ID:9YK1Il+U
知ってるうまい人は単なるライブラリとして使ってる、ってだけは言うてたな

187 :デフォルトの名無しさん:2017/03/15(水) 15:15:31.53 ID:Vrp0NxQ2
で、オブジェクト指向はやった方がいいの?
やるならどれがいい?
CとHaskellを習得してる。ちょうど間があいてる感じ。

188 :デフォルトの名無しさん:2017/03/15(水) 15:36:58.80 ID:hyGfqw02
>>187
Javaを習得すればいいと思う
JVM系言語はどれか覚えていて損はないし、JVM系だと最終的にはクラスファイル(バイトコード)レベルでデバッグできる知識が必要なので結果的にJavaとJVMの仕様は知らないと詰む

189 :デフォルトの名無しさん:2017/03/15(水) 16:11:56.19 ID:FaNpUuPt
>>183
読ませる文章だ。そしてかなり正しい

190 :デフォルトの名無しさん:2017/03/15(水) 16:24:44.05 ID:rJTRechn
C学んだらC++行くだろ

191 :デフォルトの名無しさん:2017/03/15(水) 16:49:11.82 ID:LExN6Gy2
オブジェクト指向はsmalltalkがシンプルでいいよ。
C++は複雑すぎるから止めたほうがいい。

192 :デフォルトの名無しさん:2017/03/15(水) 18:12:40.42 ID:9V99gGHa
>>191
あほか

193 :デフォルトの名無しさん:2017/03/15(水) 18:57:51.14 ID:LExN6Gy2
JavaとC++は前発だけに不具合が多すぎて使い物にならない。
互換性の問題で手直ししようもない手遅れ系な状態。

194 :デフォルトの名無しさん:2017/03/15(水) 19:04:46.01 ID:F/QFGIuk
smalltalkってなんか役に立つの?

195 :デフォルトの名無しさん:2017/03/15(水) 19:11:20.30 ID:3gs75GR6
本当にC++大火傷さんはバカ同士でオブジェクト指向に向かないちっさい部分で「オブジェクト指向はー!」っていまもやってのたうちまわってんだなぁw
あれは「おい、これでパン買ってこい!焼きそばパンな!」って仕事を任せられる単位をオブジェクトとして任せることで責任や問題をそこに集約するスタイルであって
「パンの種類を網羅しなきゃ!」とか「もし通貨がドルになった時は!」とかどうでもいいことなんだけどそこからわかってないバカ同士でオブジェクト指向〜ってやってんのねw

オブジェクト指向本来の"ゆるい"考え方なら「これ保存しとけ、GIFでな!」を「これ保存しとけPNGでな!」にするのは簡単なのに
なんか普段からバカみてぇにガチガチのキツキツでプログラムするのが常態化してるせいで
「GIFで決め打ちしたのをPNGにも対応しなきゃいけない!」だの「JPG2000とか無駄なものにも対応するハメになる!」みたいな
バカが間違ったオブジェクト指向やってるのを自分で告白するような長文になってて大草原不可避www
もひとつwww

196 :デフォルトの名無しさん:2017/03/15(水) 19:18:02.26 ID:icJo0wIe
>>193
Javaは凝り固まりすぎで、スクリプトにみえる。

197 :デフォルトの名無しさん:2017/03/15(水) 19:32:53.96 ID:6uwYc/Z/
大抵C++erの言うOOPの真髄って継承とかポリモーフィズムだから参考にならない

198 :デフォルトの名無しさん:2017/03/15(水) 19:39:20.72 ID:6uwYc/Z/
継承もポリモーフィズムもhas-aのレイヤーでラップすればできるだろ

199 :デフォルトの名無しさん:2017/03/15(水) 19:42:27.34 ID:ku719VJ5
ページ参照なら計算しなくてもいいと思ったら武田鉄矢が5050の話をしていた
スパコンもコードを最適化してそれに最適化した演算機作ってるし

200 :デフォルトの名無しさん:2017/03/15(水) 19:43:52.51 ID:hjLLE/iz
真髄とは何かね
他に抜きん出て追随を許さない至高の特徴、利点?

クラス、派生、継承、vt?

いや、それはoopの基礎要素で言語の違いなんかないじゃん
生産性に寄与する言語の特徴は、目的に最適化した機能のありなし。
COMクラスを変数宣言したら、暗黙にCreateinstanceにいんライン展開されたり。くえりインターフェースがよばれたり

201 :デフォルトの名無しさん:2017/03/15(水) 20:04:54.16 ID:HiQDR7mt
Javaが凝り固まってるんじゃなくて、Javaラーが凝り固まってるだけだと思うの

202 :デフォルトの名無しさん:2017/03/15(水) 20:09:31.38 ID:OEf0Oo8i
jpeg2kはいらんけど、俺らはいつまでjpegを使わされるのだろう

203 :デフォルトの名無しさん:2017/03/15(水) 20:34:46.91 ID:PPHlbHvE
>>197
継承は「jpg扱うクラスを継承してjpg2k扱うクラス作って
png扱うクラスはえーと継承どうなってたっけ?」になるので
最近は継承という概念自体が嫌がられがちで廃れてるし
(代わりに単純にライブラリのようにただクラスにコンポジットして使う)
ポリモーフィズムは基礎概念になりすぎて
むしろ同じ命令に異なる相手が異なる反応するのあたりまえだろ
むかしはどうしてたの?状態だわでC++で教育された人が
金科玉条としてた部分がむかしのプログラミングの前提が崩れて
「オブジェクト指向ってこういう奴だろ!」と言われても
「そういう部分もあるけどいまはそこじゃないなぁ…C++で勉強した?」みたいに

204 :デフォルトの名無しさん:2017/03/15(水) 20:36:49.36 ID:bnECF0AM
C#でいいでしょ

開発開始時点で
全体を見渡せる人がいて、その人が作る骨子に基づいて
クラス設計出来るなら、オブジェクト指向最強なんでしょうけど
現実にはそうはいかないから問題が起きるんでしょうね

でもそれはオブジェクト指向のせいなのか?っていう

205 :デフォルトの名無しさん:2017/03/15(水) 20:39:02.19 ID:LExN6Gy2
オブジェクト指向の神髄は継承ではなく増殖だからな。
イメージとしてはオブジェクトの設計図を持ったオブジェクトが
オブジェクトを作って増殖する系の出来事だね。

206 :デフォルトの名無しさん:2017/03/15(水) 20:50:59.10 ID:lB9RRSvw
C++とかのクラスを書くタイプのオブジェクト指向言語に染まってると
クラスとインスタンスが真髄に見えるかもしれないけど
オブジェクトが中心にあれば(クラスが無くても)オブジェクト指向でしょ

207 :デフォルトの名無しさん:2017/03/15(水) 22:30:57.68 ID:UUTvLbR9
何もかもメリットに見えないな
ボタンクリックした時の処理はコードをどうこねくり回したところで書かなきゃならないし

208 :デフォルトの名無しさん:2017/03/15(水) 22:34:17.35 ID:WjEGzhMP
オブジェクト指向ができるできないの違いじゃなくて
オブジェクト指向をしやすい言語仕様を
オブジェクト指向言語って言ってるだけだしな。

例えばJavaScriptなんてクラスがなくてもプロトタイプベースによって
比較的簡単にオブジェクト指向ができていた。
そして比較的最近言語仕様にクラスが追加されて、もっとオブジェクト指向が
しやすくなった。できるようになったのではなく、しやすくなった。

209 :デフォルトの名無しさん:2017/03/15(水) 22:35:16.40 ID:WjEGzhMP
>>207
> ボタンクリックした時の処理はコードをどうこねくり回したところで書かなきゃならないし

「ボタンクリックした時の処理は」という風に条件をつけて言うってことは、
その条件に当てはまらないものは違うって、ちゃんと理解してるのかな?

210 :デフォルトの名無しさん:2017/03/15(水) 22:46:48.28 ID:HiQDR7mt
抽象概念の話を具象で語ろうとする人、なんでなん?

211 :デフォルトの名無しさん:2017/03/15(水) 23:06:35.44 ID:e0daCQaw
オブジェクトの絡まないボタンの実装ってどんなんだろ
逆に興味ある

212 :デフォルトの名無しさん:2017/03/16(木) 01:49:28.09 ID:KNckw5Bn
昔のファミコンなんかではキー状態を持ったレジスタがあって
必要に応じてプログラム中から現在のボタンの状態をポールしに行ってたな。

というか、そもそも「オブジェクト指向とボタン実装」がどう関係してるのか
さっぱりわからないので、相手にしようがないけれど。

213 :デフォルトの名無しさん:2017/03/16(木) 10:26:16.88 ID:DTZ8WI+N
>>211
推奨:疑問点の説明を詳しく

俺も興味ある。フレームワークをオプジェクト至高の前提と捉えているように推察した。
フレームワークをスケルトンと名前を変えたらオブジェクト指向はなんらボタン実装とは関係しないが、何か新しい着想を持っているように見えた。

214 :デフォルトの名無しさん:2017/03/16(木) 16:20:24.02 ID:wScV8c4I
javascripのオブジェクト指向は慣れると苦でもないよ
あれはあれで合理的に出来ている

フロントエンドやると何でこういう仕様なのかよく分かる
サーバーサイドだけだとイミフだろうけど

215 :デフォルトの名無しさん:2017/03/16(木) 18:57:14.30 ID:Fq8WU0f8
>>194
> smalltalkってなんか役に立つの?

徹底した動的結合(メッセージングのオブジェクト指向)を実践したときのメリットを実感できるほぼ唯一の環境だろうね

216 :デフォルトの名無しさん:2017/03/16(木) 19:53:08.73 ID:XMUiZjZh
smalltalkでわかるのはデータの隠蔽はオブジェクト指向じゃないということだな。
メソッドがオブジェクトの参照を返すからそこらじゅうのインスタンス変数が
同じオブジェクトを参照するからね。
もしそうならコピーして渡すことしか出来ないはずだよ。

217 :デフォルトの名無しさん:2017/03/16(木) 20:55:54.23 ID:KNckw5Bn
使いっぱオブジェクト:「すんません、焼きそばパン買うには金足りなかったので、
先輩の財布から足りないぶんもらいました!☆」は別に正しい動作だからなぁ。

オブジェクトは正しく自分の責任で自律的に動いてるからむしろオーケーで
使いっぱに「それはやるな」か、サイフにアクセス属性を設定で個別に回避しとけなのに
なぜか、最近の関数型みたいなのは「ほっら!だからこの世の総ては盗まれないよう定義とロックする世界が正解なのよ!」と
斜め45度の方向で"最初から世界を隙なくガチガチにしとけばいい"論行くのがね…絶対不便だって、その世界…

218 :デフォルトの名無しさん:2017/03/16(木) 21:07:21.85 ID:jTveE5hg
>>216
オブジェクトがアクセサ持ってるんじゃないの?
Objective-Cだと必ずそうなるけど?

219 :デフォルトの名無しさん:2017/03/16(木) 21:25:46.39 ID:XMUiZjZh
ゲッターはコピーではなく参照が返ってくる。
セッターはインスタンス変数を別のオブジェクトの参照に上書きする。

220 :デフォルトの名無しさん:2017/03/16(木) 21:30:43.40 ID:XxXcpV9q
ゲッターだとゲッターロボが浮かんじゃうから
getterって書いて

221 :デフォルトの名無しさん:2017/03/16(木) 22:48:38.28 ID:sHtqjJu8
>>220
本当にそう書く間抜けも居たけどな。

public function getterHogeHage(){}
public function setterHogeHage(){}

だとさ。脳みそ腐ってんだろうな。

222 :デフォルトの名無しさん:2017/03/17(金) 08:49:15.85 ID:qulsSpqd
>>219 
obj.data = another_data 
objもdataもインスタンスだが、another_dataを代入するときにobj.setDataを経由している
これまでのアクセサによるカプセル化論と同じ

223 :デフォルトの名無しさん:2017/03/17(金) 08:54:17.58 ID:qulsSpqd
セッター経由で破壊的代入をされるフィールドが、
スカラーかポインタ値(参照)かの違いでしかない

224 :デフォルトの名無しさん:2017/03/18(土) 04:33:24.33 ID:XJoec04W
>>210
抽象的思考能力がない、ってことだろ。普通に

225 :デフォルトの名無しさん:2017/03/18(土) 14:38:48.24 ID:uIlWgAok
smalltalkをやると、クサレOSモドキの箱庭の中に閉じこもるのは簡単だが
それじゃ何の役にも立たないことが分かるよ

226 :デフォルトの名無しさん:2017/03/18(土) 18:21:35.67 ID:sRg8Z/zS
Smalltalkに挫折したヘタレはだいたいそういう結論にたどり着くよね

227 :デフォルトの名無しさん:2017/03/18(土) 18:56:37.72 ID:QqNckjgU
Objecitve-Cをやりたまえよ

228 :デフォルトの名無しさん:2017/03/18(土) 19:15:26.06 ID:yK4g9b1z
美しいなコードとか言ってマウンティングしようとするのはOOP系の人が多い気がする。
パラダイムが変われば、そんな基準なんて変わるのに。

229 :デフォルトの名無しさん:2017/03/18(土) 19:31:44.78 ID:+lFcCe0u
変わらんものもあって、批判されてるのはその部分の汚さ

230 :デフォルトの名無しさん:2017/03/18(土) 20:42:34.84 ID:ybox44GA
逆に自然な文法ってなんだろう?
2進数か?

231 :デフォルトの名無しさん:2017/03/18(土) 21:29:59.61 ID:+lFcCe0u
>>230
こういうやつ

if(hoge){
_if(moge){
__1+1;
__2*3;
__try{
___doHoge();
__} catch(Exception e){
___ok_flg = false;
__}
_} else if(a=b && c=d || (e=f && d=g)){
__5/6;
__ok_flg = true;
_}
} else if (checkHogehage() && x=y*3/2*5+1){
_if(hoge_flg = 5){
__try{
___doHoge2();
__} catch(Exception e){
___// nankab;
__}
} else if(…
___:


if(ok_flg){
_syori1();
} else {
_syori2();
}

232 :デフォルトの名無しさん:2017/03/18(土) 21:30:40.08 ID:+lFcCe0u
おっと、比較演算子に = 使ってしまったよ。ミス

233 :デフォルトの名無しさん:2017/03/18(土) 21:32:28.62 ID:+lFcCe0u
しかも、文章読み間違えてた…

>逆に自然な文法ってなんだろう?

自然な方だったのか…

234 :デフォルトの名無しさん:2017/03/19(日) 15:25:04.40 ID:N+O/v//a
こいつの場合は天然だな

235 :デフォルトの名無しさん:2017/03/19(日) 15:36:36.03 ID:raX1f6fl
>>231
芸術的に汚いソースだな

236 :デフォルトの名無しさん:2017/03/19(日) 15:41:17.57 ID:raX1f6fl
処理のシーケンスとプロシージャ分けが未完
例外クラスがおなじなのに、外に分岐とかキャッチの後にフラグ変数メンバーを参照して分岐を容れるコードになるのが想像できる。

237 :デフォルトの名無しさん:2017/03/19(日) 15:50:29.65 ID:raX1f6fl
>>224
美術の実存と抽象画や、近代数学と現代数学と似た話じゃないかな
どちらがより価値があるか?という話。
前者は好みにより、後者は学術の目的と遂行合理性に価値がある、という考え方に落ち着く。

具象で語った方がわかりやすい。
抽象で語ると応用(具象化)しやすい。
そういう観点で、今の議論を語るときに、どちらがより合理的か?という思考が漏れているだけじゃないかな

238 :デフォルトの名無しさん:2017/03/19(日) 17:25:11.95 ID:cBsMWJ0a
全ての言語はマシン語の為のシンタックスシュガー

239 :デフォルトの名無しさん:2017/03/19(日) 17:29:05.99 ID:cZv/h/BX
可搬性とか型とかスコープの制限とか処理や変数の名前とかオブジェクトとか
断じてシンタックスシュガーではない
機能だ

240 :デフォルトの名無しさん:2017/03/19(日) 17:31:17.62 ID:cBsMWJ0a
でも最後にはマシン語におちるんだよね

241 :デフォルトの名無しさん:2017/03/19(日) 18:25:06.46 ID:cZv/h/BX
同じ記述が何通りかのマシン語に対応してたり、マシン語でエラーにならないところをエラーにしてくれるのは
シンタックスシュガーとはいわないだろおおお?!?

242 :デフォルトの名無しさん:2017/03/19(日) 21:50:27.27 ID:cBsMWJ0a
人間が判りやすいようにしてるだけだね

つまりわかりにくい言語は意味がない
パズルとしての目的以外

243 :デフォルトの名無しさん:2017/03/19(日) 23:01:25.25 ID:CwtOi7dG
オブジェクト指向は愚かな考え。
なぜなのか?

244 :デフォルトの名無しさん:2017/03/19(日) 23:53:17.26 ID:T+JU6hX2
>>243
ソースコードをソースファイルのどこに記述するか?ということを決める技術なのでなんの生産性もない
別にどこだって動くし、大失敗してもかけた工数が無駄になるだけで
動かないわけじゃないというある意味優秀な初心者ホイホイ

245 :デフォルトの名無しさん:2017/03/20(月) 03:34:58.33 ID:5McFn4oo
「分かりやすい」と言うのが話をデタラメにするんだけど、プログラミング言語に求められるのは、抽象的なプログラマーの思考についてこれる言語。
人間の一時記憶は平均で7個とか言われるけど、これで複雑な処理を把握するために、どれだけ複雑な概念を名前を付けて扱えるかだ。
オブジェクト志向はまあまあだと思うけど、「デザインパターンはバッドノウハウ」と言われた時は衝撃的だった。
やりたい事がズバリできず、なんか色々クラスを作らされるのは確かにイライラする。

246 :デフォルトの名無しさん:2017/03/20(月) 04:02:56.96 ID:UB8UMXbl
わかりやすいかどうかではなく、不可能かどうかだよ
ある程度複雑なプロジェクトは構造化しなければ完成することが不可能
その構造化の一方法論がOOP

247 :デフォルトの名無しさん:2017/03/20(月) 04:55:33.25 ID:Kbki2X9l
オブジェクト指向ってのは構造化の方法論だろうけど最初に発明した奴らからすれば自然でピッタリくる書き方だったろうと思うのさ。
何かうまいやり方は無いかなって苦労して行き着いた“事案“はまさにオブジェクト指向にピッタリだったんだろう。
ところが、その後それに飛び付いた奴らは何でもオブジェクト指向になってしまった。
結果、無理して不自然なものとなってる気がする。

248 :デフォルトの名無しさん:2017/03/20(月) 08:50:06.85 ID:+yYy+wGo
オブジェクト指向とは何だったのか?
https://ubiteku.oinker.me/2016/05/09/what-is-oo-all-about/

オブジェクト指向はその出自から考えても分かるように、
より上流の考えを重視する目的指向のパラダイム

249 :デフォルトの名無しさん:2017/03/20(月) 09:10:40.65 ID:GWfrNwZR
>>246
オブジェクト指向じゃなきゃ作れないものなんて
この世にひとつもない

250 :デフォルトの名無しさん:2017/03/20(月) 09:35:31.43 ID:UB8UMXbl
>>249
だから構造化すなわち分割の一方法論だっつの

251 :デフォルトの名無しさん:2017/03/20(月) 09:40:15.43 ID:ub4me4bd
OOPたって構造化の延長線上に過ぎないよね
言語機能の支援を受けられるかどうかは全く別問題

252 :デフォルトの名無しさん:2017/03/20(月) 09:49:55.73 ID:LXO+ChBL
アプリケーションに依るんだろうね。
ちょっとしたデータ加工なら、関数型の方が小回りが利くし直観的で分かりやすい気がするけど、どうでしょう?関数でデータを加工していくって分かりやすい。
簡単な自然言語処理をスクラッチでHaskellでやったらやりやすかった。
でも、Winとかにある巨大アプリケーションは関数型じゃ無理だと、本格的なOOPはよく知らないが漠然と分かる。

253 :デフォルトの名無しさん:2017/03/20(月) 09:52:16.44 ID:LXO+ChBL
エンジニアが自分の仕事においてちゃちゃっとプログラミングの恩恵を受けるには、関数型をできた方がいい気がする。

254 :デフォルトの名無しさん:2017/03/20(月) 10:15:06.98 ID:hQstaLGU
基本的に「作る俺にとって」より楽な方法として各自プログラムをぶち上げていくのだから、結局マシン語に戻って何がどうしてこうなってるのかを知ってたほうがいい
つまりは歴史なのだけど、そこらへんのところ解説してる本を知らない

255 :デフォルトの名無しさん:2017/03/20(月) 15:43:06.47 ID:Dwi+wvJ0
>>248
Erlangこそメッセージングを体現していて、Smalltalkはニセモノのウンコってことか

256 :デフォルトの名無しさん:2017/03/20(月) 16:04:38.37 ID:EOJWC60m
この流れってなんかネットでデジャブあるなーと思ったら
総合格闘技とかいうスポーツの観るだけファンが
伝統格闘技に相手のスタイルも知らずに絡んでるアレだw

そもそもオブジェクト指向はもともとわりと巨大なスケールを想定していて
ぶっちゃけネットワークで接続されたコンピューターに処理を投げて動作するぐらいを考えて提唱されてるから
相手の処理終了も不明だし、いちいち処理待ちなんてしてたらネットワークが止まるから
『命令を投げたら単位が自律的に処理を行う"オブジェクト"を区切りにしよう』というものなのに
C++おじさんは思考がぜんぶ「シングルCPUで俺がすべてわかってるからいちいち命令とかいらねぇよ」って
自分の世界の話しかしない(できない)…w

257 :デフォルトの名無しさん:2017/03/20(月) 16:21:55.31 ID:trp03LGJ
でも実際現場でもっとも頼りになるオブジェクト指向の性質は隠蔽だし
メッセージ指向とかいってたらこんなに流行ってないよね

258 :デフォルトの名無しさん:2017/03/20(月) 17:12:26.23 ID:GbEM94zj
隠蔽なんてネームスペースやパッケージで実現できるよね

そのうえにクラスという概念をもってきたから、くそなんだよね

クラスっていうのはミニグローバル変数みたいなもんなんだよ
つまり普通のモジュールよりも正確にドキュメントを残す必要がある

結局内部状態を隠蔽するのはいいけど、正確にそれをドキュメントに記述する義務がないからオブジェクト指向はくそなんだよ

ドキュメントを書かないくせに、内部状態を隠蔽されたらそのライブラリをどうやってテストするんだよ

259 :デフォルトの名無しさん:2017/03/20(月) 17:20:00.82 ID:G9+XvfW+
>>258
>隠蔽なんてネームスペースやパッケージで実現できるよね

データと処理の結びつきの程度の違いなんだよ
オブジェクト指向で作るかどうかは用途に合わせた道具の選択の問題
Photoshopみたいなグラフィック系アプリのGUIを関数型で作ったりしないだろ?

260 :デフォルトの名無しさん:2017/03/20(月) 17:30:51.74 ID:GbEM94zj
オブジェクト指向の発明は、
昔write(console,"A")
とかいていたものを
console.write("A")と倒置して書くことにした
それ以上の理由はないし、これはむしろ退化なわけで

例えばwriteのシンタックスなら、第一引数にlistを指定してブロードキャストに拡張することは容易だろう
write([console,file,webstream],"a")

consoleを絶対的な主語としたことによってこれは自然な手続きではなくなった

まずlistをローカル変数として定義し、foreachでそれをまわすということになるだろう

つまりオブジェクト指向によってコレクションタイプに対する関数の拡張性が制限されるためにforeachが必要になるわけだ

261 :デフォルトの名無しさん:2017/03/20(月) 17:38:42.83 ID:GbEM94zj
>>259
それは正確じゃないよね
ハイパフォーマンスを要するGUIをJavaやC#みたいな言語で作らないよね
もちろんsun.misc.unsafeみたいなのを使うなら作れるだろうけど

関数型の前提と、directXのようなライブラリの前提を理解した方がいい、メモリに対する考え方が違うだけで、mutabilityとポインタアクセスを許す書き方をしていいな
ら関数型言語を使ってもかける

一般的なオブジェクト指向ってのは行数においても、パフォーマンスにおいてもメリットがないよ

262 :デフォルトの名無しさん:2017/03/20(月) 18:07:38.45 ID:G9+XvfW+
>>261
おまい文脈理解しろよ
データと処理の結びつきの程度の違いって言ってんだろ

263 :デフォルトの名無しさん:2017/03/20(月) 18:32:40.96 ID:GbEM94zj
型に対してメソッドが従属するのがいいのか、関数が型に対して分岐するのかの違いだろ

オブジェクト指向の本でこの極めて単純で自明なことをかいてある本なんてどこにもなかったよ

いまや沢山のオブジェクト指向の本があるけど、それが示していることは、オブジェクト指向は単純でもなければ、誤った公理から始まった仮構にすぎないということだ
スタートが誤っているからこそ議論がたえない

君はデータ型とメソッドの結び付きがどうだといっているが、君は当然SOLID原則が意味するところをしっているよね

それで例えるならクラスというのは、データであると同時にメソッドまでをパッケージングしている
つまりSRPにもSoCにも反するものだってことなんだよ

クラスの数だけ世界があり、クラスの数だけメソッドを実装しないといけない、それがどれだけ利用性に役に立つのか
javadocをみて山のように立ち並ぶクラス群をみて、うんざりしたことはないのか

windowsAPIが関数で構成されているということの意味をもう少し理解したらどうだ

オブジェクト指向に神秘性を感じている奴は、どのようにオブジェクト指向が実装されているのか理解したほうがいい、でないと議論する時間の無駄だから

264 :デフォルトの名無しさん:2017/03/20(月) 18:33:19.29 ID:GbEM94zj
コンテクストを理解させる前にオブジェクト指向の実装を理解しろ

265 :デフォルトの名無しさん:2017/03/20(月) 19:59:52.99 ID:KXLYvEOG
>>258
ライブラリをテストする人に対しては隠蔽しない
ライブラリを使う人には内部仕様は隠蔽する
これはオブジェクト指向とは関係ない話

266 :デフォルトの名無しさん:2017/03/20(月) 20:29:21.80 ID:W87CYmkA
>>254
プログラミング、および言語の歴史をちゃんと調べると
いろいろ腑に落ちるんだよな
いきなりOOPだけやっても狂信者とアンチを
生み出すだけなんだろう

267 :デフォルトの名無しさん:2017/03/20(月) 20:31:50.45 ID:G9+XvfW+
>>263
長文ご苦労さん
君がオブジェクト指向も関数型もどちらも理解してないことは良くわかったよ

268 :デフォルトの名無しさん:2017/03/20(月) 23:16:21.60 ID:EOJWC60m
釣りネタかと思いつつも皆でテキトー議論になればいいかなーと相手するけど
「SFってUFOが出てくる奴だろ!?」ぐらいのレベルを長文連投してくると
さすがに何も理解できない素であたまわるいひとなのだな…と認定せざるおえないw

269 :デフォルトの名無しさん:2017/03/20(月) 23:22:53.30 ID:UB8UMXbl
>>260
>オブジェクト指向の発明は、
>昔write(console,"A")
>とかいていたものを
>console.write("A")と倒置して書くことにした

>>44,45

270 :デフォルトの名無しさん:2017/03/20(月) 23:51:03.70 ID:GWfrNwZR
>それで例えるならクラスというのは、データであると同時にメソッドまでをパッケージングしている
>つまりSRPにもSoCにも反するものだってことなんだよ

>windowsAPIが関数で構成されているということの意味をもう少し理解したらどうだ


自分であんまりわかってないから、結論を自分の口ではっきり言わない人いるよね

つまり何が問題なのか、WindowsAPIが関数であることでどんなメリットがあるのか
おせーて

271 :デフォルトの名無しさん:2017/03/20(月) 23:54:24.79 ID:ub4me4bd
win32もGUI周りとかがっつりオブジェクトじゃね

272 :デフォルトの名無しさん:2017/03/21(火) 00:10:03.52 ID:RJ2XVIqX
それは構造体とクラスの区別がついてない人が言うことだよ

273 :デフォルトの名無しさん:2017/03/21(火) 01:30:07.94 ID:jV0Y+t/Y
構造体に対してオブジェクトという言葉を使わない言語もあるけど使う言語もあるんだよ

274 :デフォルトの名無しさん:2017/03/21(火) 01:48:03.35 ID:UqOt5XZ1
>>265
オブジェクト指向言語にそんな仕組みはないよね?

275 :デフォルトの名無しさん:2017/03/21(火) 02:32:28.81 ID:u6uP4x23
OOP論とOOPL論がごっちゃになるのは>>1のせいだな

276 :デフォルトの名無しさん:2017/03/21(火) 03:40:12.12 ID:kYeHwX6T
窓APIはC++が主流とは言えん時代に書かれたものを引き継いでるわけで、互換性の問題で
Windows3.1とかさ

一時期のVC++ 6.0なんぞ、C++の仕様に従ってない例外の投げ方してたし(VC++の構造化例外が足を引っ張った)

COMなんぞ、Callerの指定に応じてカーネルが介入して適切なバージョンのDLL読んでインスタンス作って投げるという
エクストリームでDll Hellにもなり得るなんかだったが
バイナリ互換性って意味ではなんとかなったものだし(ユーザーにDLLインストしてもらえばなんとかなる)

なんて歴史もイロイロあろうが、割と泥臭い話ばっかりッスわね

277 :デフォルトの名無しさん:2017/03/21(火) 03:42:53.33 ID:kYeHwX6T
>>263
今だったらmix-in/trait/AOPだぁね
特定のクラスにメソッドだけ植え込む奴

278 :デフォルトの名無しさん:2017/03/21(火) 03:47:06.63 ID:kYeHwX6T
>>270
たぶん「複数のクラスに同じメソッドを二重に書くとかありえんわ」の話でそ

mix-in系の機能があるならやるだけ
ないならヘルパークラスをメンバフィールドに持たす程度

279 :デフォルトの名無しさん:2017/03/21(火) 07:10:22.43 ID:bH1u/9cj
>WindowsAPIが関数であることでどんなメリットがあるのか
>おせーて
Cでも書ける
あとからでもC++でクラスに出来る

280 :デフォルトの名無しさん:2017/03/21(火) 21:30:13.50 ID:rKUIj2Ew
>>274
オブジェクト指向とは関係ないって言ってるだろ

281 :デフォルトの名無しさん:2017/03/21(火) 21:31:25.48 ID:6SfdpXKy
>>274
あほか

282 :デフォルトの名無しさん:2017/03/21(火) 22:22:55.65 ID:RJ2XVIqX
え?
君達は本来privateであるべきクラスフィールドや、メソッド群をどうやってテストしてるの

オブジェクト指向やってる以上カプセル化は重要なわけでね

君達も本来privateであるべきものをpublicにしたりして、デバッグした経験あるんじゃないの?

実際にはdev段階においては、リフレクションを使って、privateな対象をpublicにする黒魔術的なテストライブラリはあるけどね

君達はこの問題にどう対処してるか非常に興味があるんだけど、教えてくれないかな

283 :デフォルトの名無しさん:2017/03/21(火) 22:55:23.66 ID:KGQ11aI9
privateなものをテストしたいと思ったら
設計が間違っている。

役割ごとにクラスに分けるなどきちんと設計すれば
privateなものをテストしたいってことにはならない

284 :デフォルトの名無しさん:2017/03/21(火) 23:02:59.62 ID:UqOt5XZ1
>>280
でもできないじゃん

285 :デフォルトの名無しさん:2017/03/21(火) 23:26:33.63 ID:RJ2XVIqX
>>283
何言ってるのかわかんないね

オブジェクトデバッグにおいてもっとも重要なのは、内部状態でしょ

内部状態をもつからこそ、staticクラスじゃなくてインスタンスクラスとして定義してるんじゃないの

もしオブジェクトデバッグするとなったら、ダイレクトにアクセスできたほうがいいよね

例えば君が単純なカウンタを実装したとき、long型の限界付近でこのカウンタはどのような挙動を示すか興味があったとする

public methodはincrementとresetしかない、極めて初歩的かつ一般的なカウンタの実装だ

このとき君はどうするの?
本来の設計意図を無視して勝手にコンストラクタを増やす?セッタを勝手に増やす?それともカウンターを再設計するの

286 :デフォルトの名無しさん:2017/03/21(火) 23:29:43.92 ID:rKUIj2Ew
>>284
ライブラリの内部仕様はユーザーに隠蔽するのだから、どんな言語でも知る事は出来ない
こっそりソースを覗き見たところで非公開なのだから次の日には変わってても仕方ない
オブジェクト指向かどうかは関係ない
privateもpublicも関係ない

287 :デフォルトの名無しさん:2017/03/21(火) 23:57:02.87 ID:RJ2XVIqX
君はライブラリを作ったことがないんだね
正確にいえばライブラリを使ったこともないよね

オープンソースのライブラリみてソース読んで、ライブラリの挙動を調べるときに内部状態見るのが理解にとって一番手っ取り早いのは当たり前だよね

このときゲッタすら実装されてなかったら(それは極めて実直なオブジェクト指向にありがちだが)そのライブラリをテストすることに辟易とする

ただ単にライブラリをテストするにもリフレクション使えってこと?

断言するけど、アクセス修飾子はテスタビリティをそこねているし君達が黒魔術に手を出さないといけない理由も思想的な誤りによるものだ

288 :デフォルトの名無しさん:2017/03/22(水) 00:05:05.30 ID:ZXxN+M5f
>>285
もし君がlong型の限界値付近の挙動を気にするべきカウンタを作ったとしたら、それは初歩的でも単純でもないカウンタだったという事だ。
巨大な値を扱う可能性があり、その品質を保証するためには、単純なpublicメソッドでは不足だったという事。
つまりカウンタの再設計が必要だ。

289 :デフォルトの名無しさん:2017/03/22(水) 00:11:44.46 ID:+9rAaXcc
privateなメンバを外部からテストする意味が不明
privateなメンバはpublicなメンバを通してテストし問題なければそれ以上でもそれ以下でもないと思うんだが

290 :デフォルトの名無しさん:2017/03/22(水) 00:16:27.40 ID:ZXxN+M5f
>>287
ライブラリが君の興味に対してアクセスを許してなかったら、それは君に見て欲しくないし、知って欲しくないし、触って欲しくないってことを表明してるんだよ
それを自分の都合で無理やり、見て、触って、知りたいというなら自己責任でお好きにどうぞ。
そこまでする必要を感じないというならそのライブラリを使わなければならない決まりはない。
もっと君の好みにあった都合が良い子を探すか自分で作れば良い。

291 :デフォルトの名無しさん:2017/03/22(水) 00:17:33.79 ID:MyrW3Mfd
>>287
あほか

292 :デフォルトの名無しさん:2017/03/22(水) 00:18:40.07 ID:+9rAaXcc
>>285
内部状態というのをどういう意味で言ってるのか知らないけど
staticメンバもクラスオブジェクトの内部状態なんだけどね...

293 :デフォルトの名無しさん:2017/03/22(水) 00:21:31.43 ID:Ac91TQ9I
Java作った人たちはきっと
普通をprivateじゃなくてアクセス修飾子つけずにinternalにしてほしかったんだ
そしたら別のフォルダ切って同じパッケージから内部状態のテストできる

でもクラスの外から「絶対に」アクセスできないprivateのほうがはるかに安心感があり使い勝手がよかった
誤りなどではない
メリットがデメリットを上回ったんだ

294 :デフォルトの名無しさん:2017/03/22(水) 00:33:22.43 ID:0HwU5Emk
>>285
> オブジェクトデバッグにおいてもっとも重要なのは、内部状態でしょ
何を言ってるのかわからないのはこっちだ
今はテストの話をしている

内部状態はテストとは無関係だ。
内部の実装がどうなっているかは
テストとは無関係

295 :デフォルトの名無しさん:2017/03/22(水) 00:39:08.92 ID:+9rAaXcc
どーでもいいけどstaticクラスとかインスタンスクラスって何ですかね>>285

296 :デフォルトの名無しさん:2017/03/22(水) 00:44:09.42 ID:hKnvzbpj
謎の定義が生まれまくっていてカンブリアンエグスプロージョン

297 :デフォルトの名無しさん:2017/03/22(水) 01:00:09.04 ID:+9rAaXcc
privateなメンバの検証を行うのは、そのprivateメンバをもつクラスを設計した人である
そして、そのクラスの設計者はprivateメンバを内部的に利用するpublicメンバに対して
外部から発生し得るアクセス方法や値を使って網羅的に検証を行い問題のないことを
確認すればよい
privateメンバに対してそれ単体として取りうるすべての値や処理についてまで網羅的に
検証する必要性はない
なぜならprivateメンバは外部から直接アクセスされることはないからである

298 :デフォルトの名無しさん:2017/03/22(水) 01:21:57.10 ID:gvAZwZV8
>>293リフレクション使えばアクセスできるけど、安全?

299 :デフォルトの名無しさん:2017/03/22(水) 01:29:40.10 ID:hKnvzbpj
>>298
言うと思った

300 :デフォルトの名無しさん:2017/03/22(水) 01:29:53.18 ID:+9rAaXcc
privateメソッド名を知っていることが前提となるけど、自分としては
そもそも>>297の認識なので、リフレクションつかってsetAccessible(true)
してまでprivateメソッド単体のテストをする理由が思いつかない...

301 :デフォルトの名無しさん:2017/03/22(水) 01:30:33.09 ID:VqeOZxmB
>>293
Javaは修飾子を付けないデフォルトはPackage-Privateだろ
これは同一パッケージ内ではPublicと同じ

302 :デフォルトの名無しさん:2017/03/22(水) 01:31:10.22 ID:axBWr/Dz
隠蔽とか誰から何を隠蔽するのか全くわからない
隠蔽してあるならテストしなくていいの?
ってわけにもいかないし
そもそもクラスの使用側作成側っていう明確な切り分けがプロジェクトでなされていない
誰かのこさえたクラスが自分にとって都合の悪い作りになってたら
簡単に変更できちゃう環境なわけで
インターフェースクラスなんか見つけたら邪魔なので問答無用で削除

303 :デフォルトの名無しさん:2017/03/22(水) 01:31:40.10 ID:gvAZwZV8
例えば先ほどのカウンターの例のように、ライブラリのテストを行うときに、君はカウンターをmaxlong回まわすのかというわけなんだよ
気の利いたカウンターだとセッタが公開されてたりするけど、カウントの途中でセッタ使って変更したらカプセル化の観点からするとアウトだよな

これはプリミティブなlong型だから、まだ挙動は予測できるけど、実際のライブラリはオブジェクトを引数にオブジェクトが呼び出され別オブジェクトがってなってるわけで、内部状態を把握するのは当たり前だよな

たぶんeffectiveJavaにもこうかいてあったでしょ
toStringをオーバーライドしろと
そしてJ2SEは内部状態を示すようにオーバーライドされていることが多い

問題なのはこれが言語標準じゃないってことだ、良識がないライブラリだとこれすらされてないわけでね
さらにいえば、セッタは以前として公開されていないわけで

304 :デフォルトの名無しさん:2017/03/22(水) 01:32:22.90 ID:MyrW3Mfd
>>302
インターフェイス使えないやつwww

305 :デフォルトの名無しさん:2017/03/22(水) 01:34:03.18 ID:+9rAaXcc
インターフェースクラスとは一体...

306 :デフォルトの名無しさん:2017/03/22(水) 01:35:22.01 ID:MyrW3Mfd
>>303
たとえばどのライブラリ?オープンソースのライブラリなんて腐るほどあるから、具体例で示して

307 :デフォルトの名無しさん:2017/03/22(水) 01:35:46.32 ID:+9rAaXcc
>>302
決してprivateメンバのテストをしなくていいというわけではなく、
privateメンバに対して直接単体テストをする必要性はないと思う
ってことなんだけどね
そもそも隠蔽の目的ってそういうことだし

308 :デフォルトの名無しさん:2017/03/22(水) 01:43:11.26 ID:gvAZwZV8
>>306
オープンソースじゃないし、.netだけどfiddlercoreね
メッセージキューがどうなってるか

定期的にキューが削除されているのか、キューはoutofmemoryをはくまで肥大化しつづけるのか

もしそうだとしたら、キューを初期化できないのか

内部状態にアクセスできれば一発でコントロールできたことなのにね、アクセス修飾しってのは再利用性も阻害するってこった

309 :デフォルトの名無しさん:2017/03/22(水) 01:47:05.68 ID:vhfzvoEm
staticおじさん来てるの?

310 :デフォルトの名無しさん:2017/03/22(水) 01:48:08.38 ID:+9rAaXcc
人様が作ったクラスを使わせていただく以上、そのクラスを作った人の
ポリシーに従う他ない
それがいやなら自前でクラスをこしらえるのみ

311 :デフォルトの名無しさん:2017/03/22(水) 01:49:04.66 ID:gvAZwZV8
要はね、ライブラリがprivateフィールドをテストしてるのはわかってるんだよ

でもprivateフィールドがどのように実装されているかって結局パフォーマンス特性そのものを示すものなんだよね

それ隠蔽されたら、正直使い物にならないよね
容量が決まっているバッファなのか、全てのログにアクセスできるlistなのか、それすらも隠蔽されたらね

どちらの選択も合理性があるんだよ、これはテストの問題ではなく設計思想の問題なんだよ

これにアクセスできれば、自分好みのパフォーマンス特性がえられるのにって経験がないならそれまでなんだよね

それは再利用性がないってことを言ってるのとほぼ同じなんだけどね

312 :デフォルトの名無しさん:2017/03/22(水) 01:49:52.24 ID:gvAZwZV8
オブジェクト指向ライブラリは再利用性がない

313 :デフォルトの名無しさん:2017/03/22(水) 01:51:16.25 ID:axBWr/Dz
>>310
プロジェクトにとって邪魔なんだから削除するだろ
なんでこんな仕様にしたのか軍法会議にかけるところだ
汎用性を重視した割に次の改修でかすりもしねーカスは銃殺

314 :デフォルトの名無しさん:2017/03/22(水) 01:54:59.18 ID:+9rAaXcc
>>313
社内で作られたクラスの問題なら大いに議論して変えていけばいい
社外で作られたクラスの問題なら諦めて自前で用意するしかないだろう

315 :デフォルトの名無しさん:2017/03/22(水) 01:56:02.90 ID:+9rAaXcc
当然、社外で作られたクラスでも交渉の余地があるならやればいい
それはあなた次第

316 :デフォルトの名無しさん:2017/03/22(水) 01:57:32.65 ID:gvAZwZV8
ライブラリが期待通りに動いてくれるって何のファンタジーなんだよ
君達マジでテストコード書かないでサードパーティライブラリをプロダクションコードにぶちこむんか?

お前が設計したわけでもなく、お前の期待通りに動いてくれるかなんてわからんのに?

たかがlongmaxに+1しただけでも
1.longminになる
2.exceptionをはく
3.bigintegerに切り替わる

ライブラリによっては
この3つの挙動が考えられるのに?
ライブラリによってはJNIつかってネイティブ叩いてたりするわけでその制約をライブラリつかってりゃ受けないとでも思ってんだろうか

317 :デフォルトの名無しさん:2017/03/22(水) 02:00:24.54 ID:axBWr/Dz
仕様書にそんな仕様ねーのに何枚でもタブを増やせる仕組みを入れてくれたA君

でもお客さんはタブなんかいらないからスクロールできるようにして上から順番に表示して欲しいってさ

オブジェクト指向オブジェクト指向叫ぶアホの仕事ってプログラミング
云々以前にこんなことやってるアホばっか

318 :デフォルトの名無しさん:2017/03/22(水) 02:03:38.09 ID:+9rAaXcc
>>316
根本的な考え方が私とは違うようだ
例えば使いたいライブラリを開発してもらう段階から話に入れていたのなら
自分が期待する動作になるようにライブラリを作ってもらうことはできるだろうし
あなたのコードのためのライブラリを作ってもらっているなら大いに要望を
出していいだろう

でもあなたの場合は違うんでしょ?
すでに完成しているありもののライブラリを使って何とか自分の期待通りの
動作をするコードを書き上げたい
でも上手くいかない
で、このライブラリはクソだと大声で叫ぶ

それって話の論理としてどうなのかなと思うわ

319 :デフォルトの名無しさん:2017/03/22(水) 02:13:06.37 ID:gvAZwZV8
>>318
それはライブラリの再利用性が低いってことに同意してくれたってことだよね

要はライブラリ実装にユーザーが左右されるから、ライブラリ使うならライブラリ実装段階からコントロールしないといけないと

その認識だとモジュールプログラミングの基礎であるレイヤー分離もできていないってことなんだけど大丈夫なんですかね

320 :デフォルトの名無しさん:2017/03/22(水) 02:27:49.38 ID:+9rAaXcc
>>319
ライブラリの再利用性が低いのは、そのライブラリの設計の善し悪しの問題かと
レイヤー分離がされた汎用性の高いライブラリを設計するにはそれ相応の考慮とスキルが必要

一般に、再利用性を高めるために汎用的な仕様にするわけだが、これは裏を返せば
ある特定の用途では全く使い物にならない可能性も高めることになり、そういった用途で
使おうとしたあなたのような人の視点で見れば再利用性が低いと評価されることもあるだろう

その場合、プロジェクトを始める前にそう言ったリスクを想定し、ライブラリの開発や再設計も
視野に入れてスタートするべきだろう

現実はライブラリの実装段階からのコントロールとか新規開発とか、そんなことやってる
時間も金もないんだよというのが正直な所なんだろうが、どうにもならないことは
どうにもならないわけで、そこは仕事を断る判断含め大人の対応が必要なんでしょう社会人として

321 :デフォルトの名無しさん:2017/03/22(水) 02:42:57.73 ID:gvAZwZV8
>>30で文法的におかしいことはすでに述べた、英語的にも不自然だ
そして汎化の仕方としてもやはり不自然なんだよなあ

>>320
つまりオブジェクト指向ライブラリは、部分的な切りだしもできなうということも認めるわけだ
それは改めて再利用性がないと指摘しているにすぎない

データと関数が分離されていれば、データをすり替え、使えない関数を書き換えるだけで済む話なのに、データと振るまいが結び付いていると両方一緒にぽしゃるってことなんだよね

30みればわかるとおり、関数主体ならばデータ型が気に食わなければすり替えられるわけだ

でもオブジェクト指向はそうじゃない、データが主部である以上それを省略することもできないし、入れ替えるってことはクラスそのものを書き換えることになる

関数が気に食わないときは結構手を加えなければならないが、シグニチャが同じであればそれは容易に内部構造をすり替えられる

君の意見だとオープンソースライブラリは一つも採用できないよね
設計の問題ではなく言語的欠陥なんだよ

まずsunやmicrosoftが20年ぐらい前に出していた、オブジェクト指向は再利用に有効であるってのが営業上のセールストークに過ぎないってことまず認めような

322 :デフォルトの名無しさん:2017/03/22(水) 02:50:56.36 ID:gvAZwZV8
確かに、汎用性のあるライブラリ設計は大変だ
しかし、オブジェクト指向はその設計の手助けをするどころか、設計者の背中をぶった切り、返す刀でユーザーの肩もぶったぎってるよな

君達もライブラリを使おうとする時、また勉強すんの、まーたjavadoc巡りかよって思ってるだろ

設計者もどうやって設計しようかっていっつも悩んでいる
でもっていっつも失敗して>>317みたいな奴に叱られると

プログラムを設計するのに新規クラスを作る必要は実際のところないってことがわかんないんだろうな

323 :デフォルトの名無しさん:2017/03/22(水) 02:52:07.81 ID:zM0bMLWs
長文はキチガイ

324 :デフォルトの名無しさん:2017/03/22(水) 03:12:25.11 ID:0HwU5Emk
>>316
> ライブラリが期待通りに動いてくれるって何のファンタジーなんだよ
> 君達マジでテストコード書かないでサードパーティライブラリをプロダクションコードにぶちこむんか?

俺はライブラリだけじゃなくて、OSがちゃんと動くか、
CPUがちゃんと動くか、半導体がちゃんと動くかまでちゃんとテストしてる。
この間は電圧が100Vかどうかのテストを書いたよ
今度はニュートン力学が正しいかどうかのテストが必要

325 :デフォルトの名無しさん:2017/03/22(水) 05:52:21.48 ID:gTzPAvUY
俺は自分の正気が信じられないから脳に電極刺してテストしてる
これぐらいやらないといけないから俺の脳の構造は間違ってる。

とか言ってる基地外とかレスのしようがないわな。

326 :デフォルトの名無しさん:2017/03/22(水) 06:15:25.21 ID:qEl3ed9E
クラス作る必要がないと感じるなら、関数だけで一からアプリ作ってみりゃいいんだよ



普段の仕事でオブジェクト指向がそぐわないと感じるのは、
フレームワーク作る人たちががんばって
もうパンピーがクラスの構成考える必要がないぐらい、枠組みをきっちりクラス化しちゃってるせいだ。

インターフェースがあり、画面オブジェクトがあり、コントローラーがあり、DAOがあり
ほかに何がいるってんだ

327 :デフォルトの名無しさん:2017/03/22(水) 06:45:15.48 ID:qEl3ed9E
>データと関数が分離されていれば、データをすり替え、使えない関数を書き換えるだけで済む話なのに、

結局両方変えてんじゃねーか
気づけよ

328 :デフォルトの名無しさん:2017/03/22(水) 07:05:50.09 ID:2wDJFxh2
組込ならともかく協業全員がコードの全てを把握するなんて不可能じゃないの
色んな意味で責任範囲を明確にするのが構造化の役割だと思うけれど

329 :デフォルトの名無しさん:2017/03/22(水) 07:14:19.84 ID:ZXxN+M5f
自分の気に入らない子にオブジェクト指向のレッテルを貼ってるだけ
そもそもオブジェクト指向かどうかと関係ない話

330 :デフォルトの名無しさん:2017/03/22(水) 08:03:23.54 ID:gvAZwZV8
オブジェクト指向って不自然な文法だよな

331 :デフォルトの名無しさん:2017/03/22(水) 08:12:45.22 ID:KD82SvgF
>>329
実はおれもそれ思ってたんだが
オブジェクト指向と関係ないんだよね

332 :デフォルトの名無しさん:2017/03/22(水) 08:46:38.85 ID:IQHE94uk
>>326
長文で空行を空けるとカッコいいと思ってるの?

それカッコ悪いよ?

333 :デフォルトの名無しさん:2017/03/22(水) 08:50:28.26 ID:SJ0uehvL
要約すればアクセス修飾子をつけ間違うだけで、神ライブラリがくそライブラリになるという話のどこがオブジェクト指向に関係ないんだろうね

君らこそオブジェクト指向の気に入らないダメな部分を身勝手に切り出してるんだよな

334 :デフォルトの名無しさん:2017/03/22(水) 08:51:09.13 ID:tZY6T4Dk
結局は責任を明確にして潤滑に修正圧力かけるためのビジネス用だよ
プログラミングや思考そのものに最適化されてるわけじゃない。あくまで社会的な存在

335 :デフォルトの名無しさん:2017/03/22(水) 09:01:27.11 ID:BgFwftkC
当然おまえら自分の製品が使われてるCPUの内部構造全部完璧に理解してるんだよな
そうじゃないとエンジニア(笑)として失格だからなw

336 :デフォルトの名無しさん:2017/03/22(水) 09:13:59.32 ID:sIngn7vO
オブジェクト指向なんて金にならないよ

337 :デフォルトの名無しさん:2017/03/22(水) 09:17:57.15 ID:IQHE94uk
俺はデキる一流ビジネスマンとでも言いたいのかな

338 :デフォルトの名無しさん:2017/03/22(水) 09:20:43.93 ID:KD82SvgF
>>321
オープンソースならオブジェクト指向とか関係なく中身はわかるし、変更もできるだろ
ちょっと何言ってっかわかんないっすね

>>322
オブジェクト指向を使って楽をしようとしてる一方でオブジェクト指向のせいでライブラリの見えない部分が出てきてると言ってるわがままさん

339 :デフォルトの名無しさん:2017/03/22(水) 09:23:23.61 ID:KD82SvgF
>>316
データやメソッドが気に入らなければサブクラスでも作ってオーバーライドするなりフィールド追加するなりすればいいじゃない

340 :デフォルトの名無しさん:2017/03/22(水) 09:25:17.66 ID:0HwU5Emk
>>333
> 要約すればアクセス修飾子をつけ間違うだけで、神ライブラリがくそライブラリになるという話のどこがオブジェクト指向に関係ないんだろうね

アクセス修飾子はオブジェクト指向特有のものじゃないんだから
オブジェクト指向関係ないじゃないかw

ローカル変数の中身をテストしたいと言ってるのと同じことなんだから
(もちろんそんなものをテストしたいと思ったら設計が間違ってる証拠)

341 :デフォルトの名無しさん:2017/03/22(水) 09:40:46.31 ID:NwGDCto4
>>316
最近は例外を関数の外に投げるバカ設計が少なくなった。
少なくともC++では。ジャバはしらん。

342 :デフォルトの名無しさん:2017/03/22(水) 12:18:27.42 ID:80t99VTH
>>333
君にとってはくそライブラリなのかもしれないが、ライブラリ設計者にとっては精一杯の最適解だと考えよう。
そこがprivateになっているのは何か意味があるんだよ。
それを読み取ろうともせずに、俺が見たいものが見れないのはクソだ、って主張したところで何にもならないよ。
一方的に想いを寄せて粘着することをストーキングって呼ぶんです。

343 :デフォルトの名無しさん:2017/03/22(水) 13:00:45.31 ID:sIngn7vO
現実としてクソなのに、努力を評価しろとかないわ

344 :デフォルトの名無しさん:2017/03/22(水) 13:05:04.22 ID:7ZDZimGe
オブジェクト指向って不自然だよなあ

345 :デフォルトの名無しさん:2017/03/22(水) 13:35:14.90 ID:Uj/VLma9
MSも最初は否定派だったんだよなあ
ついでにオプソに対しても否定的だったのに今じゃすっかり熱心な信者だわ

346 :デフォルトの名無しさん:2017/03/22(水) 14:42:37.60 ID:T50yqk9Q
>>345
ハンガリアン記法を勧めてくるような企業はNG

347 :デフォルトの名無しさん:2017/03/22(水) 15:02:02.31 ID:sj71GTBZ
>>346
今は勧めてないじゃん

348 :デフォルトの名無しさん:2017/03/22(水) 15:02:54.10 ID:OQp+/lgM
>最近は例外を関数の外に投げるバカ設計

んー、本気で言ってるのかな?
あんま、高度な設計経験無さそうだな。

349 :デフォルトの名無しさん:2017/03/22(水) 15:27:39.38 ID:CS3xBlnx
やっぱhaskellって偉大だわ

350 :デフォルトの名無しさん:2017/03/22(水) 15:51:49.52 ID:IQHE94uk
手続き+オブジェクト指向=Java C#
関数+オブジェクト指向=haskell
は誰もが認める事なんだからオブジェクト指向が優れているのは明らか

351 :デフォルトの名無しさん:2017/03/22(水) 18:25:59.49 ID:oceP6qOv
Ocamlではないのか

352 :デフォルトの名無しさん:2017/03/22(水) 18:38:21.14 ID:LIjct5Kq
>>348
例外構文とは、大域条件分岐goto文だよ
巻き戻しできる構文ならば、まだ高度な設計も可能かもね

てか、例外に食いつくとか、例外が肝とでも?

353 :デフォルトの名無しさん:2017/03/22(水) 18:44:06.70 ID:Uj/VLma9
F#が適用できる場面はないのか?

354 :デフォルトの名無しさん:2017/03/22(水) 18:54:44.58 ID:ODseOUsj
>>353
FAKE

355 :デフォルトの名無しさん:2017/03/22(水) 20:36:56.68 ID:+9rAaXcc
>>321
オブジェクト指向が原因ではないと思うけど
不満な部分があるならその部分をサブクラスでメソッドオーバーライドなりフィールド追加なり
すればいいと思うの

356 :デフォルトの名無しさん:2017/03/22(水) 21:38:38.70 ID:hKnvzbpj
>>352
いいよ、一生そうやってなよ
オレはお前には絡まないから困らないし

>例外構文とは、大域条件分岐goto文だよ

一生そういうわけわからん事言ってなよ

>例外に食いつくとか、例外が肝とでも?

例外のまともな使い方が分からん奴が何言ってんだって話をしてんのに、肝とか筋とかしらねーよ

357 :デフォルトの名無しさん:2017/03/22(水) 22:05:58.78 ID:0HwU5Emk
>>341
> 少なくともC++では。ジャバはしらん。

具体的にはどのライブラリ?
いや一個もないっていうのなら
それでもいいけどさw

358 :デフォルトの名無しさん:2017/03/22(水) 23:55:15.16 ID:BSHK66m+
結論
バカにはオブジェクト指向設計・オブジェクト指向プログラミングはできない

359 :デフォルトの名無しさん:2017/03/23(木) 00:14:59.60 ID:HuteCzcG
>>358
そうやって雑誌の提灯記事なんか鵜呑みにしてると馬鹿になっちゃうぞ
雑誌の記事なんか書いてる奴が開発の経験なんか俺等に教えられるほどあると思ってるの?

360 :デフォルトの名無しさん:2017/03/23(木) 00:18:57.58 ID:4dz6QBHm
神ですらオブジェクト指向プログラミングはしない

マーチレベルの賢さアピールしたい層にはバカウケ
東大レベルは使えないパラダイムにはのっからない、ただおいしいところ、ライブラリだけを切り取る
マーチレベルはオリジナルクラスの設計で満足、kafkaやstormのようなフレームワークがなぜあるのかわからない

せっかく作ったクラスをあてはめようとしても、フレームワークはクラスをただの構造体としかみていないようだ、せっかく作ったオリジナルメソッドは意味をなさず、クラスをただの数値の塊として扱うかのようだ
これではオブジェクト指向とは言えない

シュトラウストラップインタビューが皮肉るように、オブジェクト指向は仮構、現代にはびこるリフレ派経済学とおなじ、仮構は少し賢い馬鹿のための肴であり、語りぐさであり、精神的な逃げ所である
理想的なオブジェクト指向とは、肥大化したC++やJavaのメンテナンスを行う人が絶望せず生きていくために不可欠な幻想である

そして今日もまたjavaのメンテナンスのおかげでなけなしの給料を得られるのであった
汝オブジェクト指向の慈雨に感謝せよ

361 :デフォルトの名無しさん:2017/03/23(木) 00:28:30.60 ID:/81kHKqc
皆javaなぞ大嫌いなのになんで使ってるんだろな

362 :デフォルトの名無しさん:2017/03/23(木) 00:46:33.44 ID:iwKD8Hm6
>>361
よりマシなVisualBasicだった、というところが大きい
クラサバからWeb系への移行期に降臨したjava、ってタイミングもあろうか

デリゲートとかlambdaとか、ああいう「ファーストクラスメソッド」の扱いがいい加減だったので
いろいろとめんどいデザパタをやる羽目になるわけで

もともとのjavaの言語仕様が「組み込み言語」だったのが災いしたんだろうが
数メガバイトのメモリに詰め込むのを想定した設計だと仕様がねぇわな

363 :デフォルトの名無しさん:2017/03/23(木) 01:15:54.92 ID:K0r5mLIw
Rubyによるデザインパターン
https://www.amazon.co.jp/dp/4894712857A: [0.092515 sec.]B: [0.468284 sec.]

364 :デフォルトの名無しさん:2017/03/23(木) 01:17:44.75 ID:K0r5mLIw
Design Patterns Smalltalk Companion
https://www.amazon.co.jp/dp/0201184621A: [0.091543 sec.]B: [1.170700 sec.]

365 :デフォルトの名無しさん:2017/03/23(木) 01:19:01.28 ID:K0r5mLIw
>>362
> デリゲートとかlambdaとか、ああいう「ファーストクラスメソッド」の扱いがいい加減だったので
> いろいろとめんどいデザパタをやる羽目になるわけで

どういうこと?A: [0.094936 sec.]B: [1.172236 sec.]

366 :デフォルトの名無しさん:2017/03/23(木) 01:31:41.23 ID:iwKD8Hm6
>>365
デザパタのうち、ある程度は、「lambda」をサポートしてくれてたら
必要なかったろーな、ってくらい

技術的な制限があって、回りくどいことをせにゃならんかったって印象が結構あるわけ

367 :デフォルトの名無しさん:2017/03/23(木) 01:49:08.28 ID:iwKD8Hm6
正直今でもjava8のlambdaには不満アリアリだが……まあやめとく

368 :デフォルトの名無しさん:2017/03/23(木) 02:55:56.41 ID:CXlfEqjt
デリゲートってただのプロトコル付きコールバックだからな
大半はクロージャで済む

369 :デフォルトの名無しさん:2017/03/23(木) 19:31:20.89 ID:1zGX1Z71
インタフェースの有り難みが
今一つ解らない

クラス設計書でメソッド規定したら
ポロモーフィズムとか保障出来るし

370 :デフォルトの名無しさん:2017/03/23(木) 19:55:05.82 ID:wPivPPTz
ありがたみなどない

コンパイラにこのクラスはこのメソッドを実装してますよって伝える程度の意味でしかない
実際ダックタイプを許容する言語ではインターフェースを宣言する必要がない

ところがオブジェクト指向礼賛主義者はオブジェクト指向の全てのシンタックスに崇高な意義を見出だそうとするから、こんな単純な教え方をしてはくれない

オブジェクトが、何かコンパイラや演算の枠組みを超える何かを生み出してくれると思っているのだろうが、そういう人間がくそみたいなプロダクトを現在進行形で生み出している

オブジェクト指向を使いこなしたいならまずこう唱えなさい

オブジェクト指向って不自然な文法だよな

371 :デフォルトの名無しさん:2017/03/23(木) 20:21:57.72 ID:1JS1LHzY
>>370
最後の行以外は概ね同意


オブジェクト指向言語の教本はどれも
オブジェクト指向をさも一種の思想かのごとく扱って、
オブジェクト指向を使わなければプログラミングは出来ない、かのような
思考を植え付けてくるわけで
オブジェクト指向を正しく理解していないプログラマは
強迫観念的にクラスを作ることになる
そのように書かれたコードは不自然だろうが
だからといってオブジェクト指向が不自然な文法というのは
論理の飛躍が過ぎるだろ

372 :デフォルトの名無しさん:2017/03/23(木) 20:23:41.25 ID:wPivPPTz
論理の飛躍も何もこのスレのメインテーゼじゃん

またメインテーゼが正しい証拠を見つけてしまったわけで

373 :デフォルトの名無しさん:2017/03/23(木) 20:30:26.88 ID:1JS1LHzY
>>372
間違ったオブジェクト指向によるコードは不自然になる。

正しいオブジェクト指向によるコードは
より簡潔に、保守性に優れたものになる。

論理のすり替えと言うべきだったかな?

374 :デフォルトの名無しさん:2017/03/23(木) 20:34:58.25 ID:wPivPPTz
誰が正しいオブジェクト指向を定義してるのかね

375 :デフォルトの名無しさん:2017/03/23(木) 20:53:14.61 ID:1JS1LHzY
>>374
機能ごとに分割し、オブジェクトで連携させる。
これだけのことだろ

ただし正しく分割するのは難しいから
手に余るってならわかるけど

数理国社英のテストを一枚の紙に全部書いてたらどうよ?

376 :デフォルトの名無しさん:2017/03/23(木) 20:54:00.08 ID:mxf1LURC
>>369
ポロモーフィズムはToLOVEるのもと

377 :デフォルトの名無しさん:2017/03/23(木) 21:08:50.04 ID:2vTEAQn7
>>370
> ダックタイプを許容する言語ではインターフェースを宣言する必要がない

逆だろ。静的型言語でダックタイピング様のことを型安全に実現するために考案されたエンティティがインターフェイス
http://dl.acm.org/citation.cfm?id=74878.74924

378 :デフォルトの名無しさん:2017/03/23(木) 21:14:24.68 ID:SzpAfZmQ
あんまり明るいわけではないが、再利用性を捨てればなかなかいいじゃないか?オブジェクト指向

379 :デフォルトの名無しさん:2017/03/23(木) 21:19:04.20 ID:cbUpLCW6
オブジェクト指向のインターフェイスとは
javaではインターフェイス
smalltalkではメソッドプロトコル
haskellではタイプクラス

380 :デフォルトの名無しさん:2017/03/23(木) 21:21:07.51 ID:HuteCzcG
>>378
何がいいの?

381 :デフォルトの名無しさん:2017/03/23(木) 21:37:21.61 ID:SzpAfZmQ
>>380
アプリケーションの部品、って感じで扱う方が自然じゃん

382 :デフォルトの名無しさん:2017/03/23(木) 22:02:30.72 ID:X7DkuaCz
Strategyパターンは好きやで

383 :デフォルトの名無しさん:2017/03/23(木) 22:07:57.67 ID:DMbSvcf+
>>1は関数型と手続き型を取り違えているな

384 :デフォルトの名無しさん:2017/03/23(木) 22:54:58.34 ID:stRo9XXA
>>378
再利用性(使い回し)の方を重視したのが長文おじさんが火傷したC++
「オブジェクト指向って継承と再利用って奴だろ!ナーンセンス!」が
いまだにオブジェクト指向を理解していない初老グラマーの繰り言w

パーツ単位で分離してあって、コマンドで間接的に抽象レイヤ挟んで命令してるから
「命令への対応変えれば簡単に修正できるし、パーツとして他で使ったりできるよね」というのがオブジェクト指向なのに理解の主従が逆転してるから、彼らの脳内w

385 :デフォルトの名無しさん:2017/03/23(木) 23:10:34.05 ID:wPivPPTz
関数の方が使い勝手いいよね

君達のオリジナルクラスが何の役に立つん

ん?

386 :デフォルトの名無しさん:2017/03/23(木) 23:21:56.49 ID:K0r5mLIw
>>369
> インタフェースの有り難みが
> 今一つ解らない

ダックタイプなんて言ってるやつがいる通り、別々のクラスで同じ名前の関数を定義して
どちらのクラスを変数に入れているかで処理を変えるってことはあるわけだよ。

ダックタイプ=インターフェース な

あとは、コードでその仕様を明確に記述するか
コメントで書くかの違い。

インターフェースっていうのはどちらにしろ便利に使われるわけで
コメントで書くよりもコンパイルチェックが行われる方がいいでしょう?

387 :デフォルトの名無しさん:2017/03/24(金) 00:15:59.58 ID:jbm4ygUm
>>384
いやほんと、修正が用意ってのはあると思うよ
設計ありきだけど、それを意識できるというか

388 :デフォルトの名無しさん:2017/03/24(金) 00:44:27.45 ID:N3+t7Pyw
UIやデータを扱うのであればオブジェクト思考が不自然だと考える方が極めて不自然だろ
オブジェクト指向をベースに関数型ロジックを取り入れるのがベストプラクティス

389 :デフォルトの名無しさん:2017/03/24(金) 00:52:07.25 ID:Xu2YN0Qp
>>381
構造体を関数の引数に入れる形と何が違うの?

390 :デフォルトの名無しさん:2017/03/24(金) 01:28:49.41 ID:/8+eN8z3
>>389
「理解」

そして、それに伴う扱う側の取り回しの違い。

ぶっちゃけ君はずっと「自動車って馬なし馬車だろ?」とほざき続けている状態。

391 :デフォルトの名無しさん:2017/03/24(金) 01:38:59.12 ID:mhvKnnIM
クラスはデータ抽象には向いていないよ
例えばビッグデータとか、ストリーミングはほっとな話題だが、クラス、特にJavaのクラスはいくつか問題を抱えている

一つ、クラスはメモリ効率が悪い
オンメモリ処理か、outofmemoryかは運命の分岐点
メモリを気にしなくていいしょっぱいアプリの話はしていない
一つ、ジェネリクスコンテナクラスにプリミティブを使えないことだ
これは言い換えれば、大量の値の変更や書き換えにたいして、参照がさししめす値オブジェクトを破棄し、値オブジェクトを生成し、参照されなくなった値オブジェクトはGCにかけられるってこった
これは、直接メモリアドレスを書き換えるよりもはるかに効率が悪い

はっきりいえば構造体をサポートしないJavaはUIのレンダリングに適していない

君達はオブジェクト指向はUIにてきしているというが、実際はこうだ
C C++はUIに適していると

君達がlinqがいい、Streamがいいといったところで、それがGUIのコンポーネントとして使用された時、どのようなパフォーマンス低下が起こるかなんて議論できるんだろうか

392 :デフォルトの名無しさん:2017/03/24(金) 02:30:00.31 ID:q2VVYKKn
何度も言うがオブジェクト指向に騙されている奴は、構造体とクラスと連想配列の区別と使い所がわかっていない

パフォーマンスでは構造体にまけ
柔軟性では連想配列にまける
全てが中途半端なデータ構造をありがたがるのは、CSを真面目に勉強していないという証明だから

クラスは確かに便利だけどね
なにもかもが中途半端だ

393 :デフォルトの名無しさん:2017/03/24(金) 02:38:26.79 ID:q2VVYKKn
なにもかもが中途半端なデータ構造を基底としてもなにもかもが中途半端になる

ないものねだりをした結果、パフォーマンスで議論することはあきらめ教義である再利用性を達成すべく柔軟性を主軸に頑張っているが、結局のところ柔軟にキーを追加できる連想配列になにもかもが負けている

彼らは柔軟性を求めてイケてるUMLを求めつづけているが、

究極的にはインターフェース設計が誤ったら夢の大部分が崩壊することに気づいていない

引数として、ある名前が付いたクラスより、名前を持たない連想配列を使った方が汎化としても柔軟性としても高等だと言うことに気付かない

394 :デフォルトの名無しさん:2017/03/24(金) 02:55:32.45 ID:suDsBIm1
>>390
ほんとコレ

395 :デフォルトの名無しさん:2017/03/24(金) 02:58:26.78 ID:suDsBIm1
>>391
「ビッグデータやストリーミングはほっとな話題だがクラスは効率が悪い」
頭イカれてないとこんな文章書けないわ

396 :デフォルトの名無しさん:2017/03/24(金) 03:01:01.28 ID:suDsBIm1
>>390
>「自動車って馬なし馬車だろ?」

これ名言だな
今度使わせてもらうわ

397 :デフォルトの名無しさん:2017/03/24(金) 05:18:26.11 ID:GmPbzKJ/
>>384
それが再利用性だよ>パーツ単位で分離
抽象度を高めるとライブラリとなる

398 :デフォルトの名無しさん:2017/03/24(金) 06:21:40.85 ID:yX4WlQKK
>>391
それGCやLinqの問題でオブジェクト指向とぜんぜん関係ないような

399 :デフォルトの名無しさん:2017/03/24(金) 07:10:59.63 ID:oGf6+GqV
>>386
コードで仕様を縛る仕組み
ということなんだ

多態性を実現する上で便利とか
見たから、仕様書に同名メソッドで
書いてれば同じじゃんと思ってた

400 :デフォルトの名無しさん:2017/03/24(金) 07:11:17.38 ID:ZL1TPElf
どこまで行くにせよ、アラン・ケイの素朴な発想がオブジェクト指向の原点なのは頭に入れとくといいよ
「ある物に対し何ができるか、何をすべきかはその対象自身が知っているはず」
「だからメッセージという形でに対して何をすべきか伝えれば、適切な処理をしてくれるようにしよう」
「対象の状態に応じて振舞いは変化するのが自然だし、どう変化するかは自由なのだから、コンパイルの時点で振舞いが固定されないようにしよう」
こういう発想を透徹したら結構面白いし表現力もある言語になったのがsmalltalkで、それをつまみ食いしているのが他のOOPL

型理論みたいな数学的にしっかりした足場じゃないんで、
これがオブジェクト指向の本質!お前は分かってない!みたいな煽りはオブジェクト指向を知れば知るほど言いづらくなる
もっとゆるーい話だよ

401 :デフォルトの名無しさん:2017/03/24(金) 07:16:36.62 ID:oGf6+GqV
オブジェクト指向は
例えば帳票を改造するとき
帳票クラスを見れば良いから
便利な分類方法だなと思うけど

一世代前の構造化プログラムでも
帳票の関数を見れば良いんだろうけど
色んな関数にまみれて
追いにくいイメージ

402 :デフォルトの名無しさん:2017/03/24(金) 07:26:47.55 ID:Xu2YN0Qp
>>401
>例えば帳票を改造するとき
帳票クラスを見れば良いから

そんなプログラム見たことないなw

403 :デフォルトの名無しさん:2017/03/24(金) 07:51:22.47 ID:q2VVYKKn
中途半端さはそのクラス設計の自由度(笑)にも表れている

結局のところクラスというものをどう構成したらいいからわからないから中二ノートのように肥大化した願望がかかれているのだ

構造体や連想配列の使い方がわからない人間はおそらくいないだろう、明確なパフォーマンス特性があり、明確な採用意図、設計意図がある、コードには明確かつ鮮明に表明される

だがクラスは違う
オブジェクトは時として、構造体として振るまい関数テーブルとしてふるまい、順序機械として振る舞う、時にはサーバーとして振るまい、時にはシーケンスとして振る舞う

オブジェクトという名の概念の総称体で満足する人間はオブジェクト指向を使いこなせない
javadocから、オブジェクトの正体を類推することができなければならない

オブジェクト指向は設計やライブラリのドキュメント解読に必要な知識さえ、オブジェクトという名の総称体でプログラマから隠蔽する、
そうしてプログラマはブラックボックスをてざわりだけで解読することになる

オブジェクトはチューリング完全である、従ってオブジェクトは万能である
であるが故にしょうもないクラスライブラリでもjavadocを見るはめになる
そしてその唯一の例外はstaticメソッドライブラリである

オブジェクト指向って不自然な文法だよな

404 :デフォルトの名無しさん:2017/03/24(金) 07:58:44.27 ID:yX4WlQKK
つまり何が気に入らないのかまったくわからん

405 :デフォルトの名無しさん:2017/03/24(金) 08:11:26.68 ID:hP6bxnNh
真面目にレスしてたけど、ただの構ってちゃんで暖簾に腕押しならもう書くのやめるわ

406 :デフォルトの名無しさん:2017/03/24(金) 08:11:39.92 ID:lxkR7uxC
関数型言語さわったことがないからようわからんけど相反するものじゃないんだろ?
いいとこ取りすりゃいいじゃん
オブジェクト指向はなんやらごちゃごちゃうるさいがざっくり見れば直感的なところがいいんじゃねえの

407 :デフォルトの名無しさん:2017/03/24(金) 08:13:26.26 ID:tURnHGT3
>>403
素晴らしい

408 :デフォルトの名無しさん:2017/03/24(金) 08:32:15.17 ID:DlmXd06I
staticおじさんか

409 :デフォルトの名無しさん:2017/03/24(金) 08:36:11.50 ID:V5EOCPOQ
まともに相手するだけ無駄

410 :デフォルトの名無しさん:2017/03/24(金) 08:39:27.38 ID:q2VVYKKn
反論するなら何が間違っているか明確に指摘していいんだよ

411 :デフォルトの名無しさん:2017/03/24(金) 08:45:02.55 ID:DlmXd06I
そんな時間の無駄なことしないわな
元祖staticおじさんとのやり取り見てたら無意味だと学ぶよ

412 :デフォルトの名無しさん:2017/03/24(金) 08:45:08.93 ID:yX4WlQKK
そもそも言ってる意味が不明確というか抽象的すぎてどうしょうもない

どこで困ったのか具体例かけコード

413 :デフォルトの名無しさん:2017/03/24(金) 08:46:31.14 ID:nTl1EThi
>>399
同じだよ
実行時エラーとコンパイル時エラーのどちらを好むかの違い

414 :デフォルトの名無しさん:2017/03/24(金) 08:51:48.94 ID:nTl1EThi
>>405
構ってちゃんクラスかどうかが判定できれば良いのにな

415 :デフォルトの名無しさん:2017/03/24(金) 08:52:19.42 ID:5/+y7FnD
オブジェクト指向ってそもそも文法じゃないけどな
>>1

416 :デフォルトの名無しさん:2017/03/24(金) 08:55:03.02 ID:nTl1EThi
>>411
試しにNG IDに入れて見て、楽しくスレを進められるかやってみよう
もし、楽しくなくなったとしたら、このスレはアレをつついて遊ぶスレだったってことだ
真面目に議論してる風に見えるのは全部釣りだ

417 :デフォルトの名無しさん:2017/03/24(金) 09:05:40.31 ID:LoToasEt
参考まで、『「ソフトウェア工学」は矛盾語法か?』 http://metatoys.org/oxymoron/oxymoron.html
でアラン・ケイは次のように述べている(この文書はもともとSqueakというSmalltalk処理系の宣伝用に書かれたものだが
彼が考案したメッセージングのオブジェクト指向(による遅延結合の徹底)という実験の成果の総括にもなっている)。


▼新しいアイデアを学ぶとはどういう事か?

このような柔軟な機能はどれだけ複雑である必要があるだろうか? 文法上は決して複雑で無くてもよい。
なじみ深い英語の語順である主語、動詞、目的語(よく前置詞や、たまに暗黙の主語を伴う)があれば全く十分だ。
オブジェクト指向の言い方で言うと、主語はメッセージのレシーバであり、文の残りはメッセージだ
(ここでは「動詞」(up, +, *, forward by, collect, Repeat do, to by) を強調して書く)。これで次のような読みやすい形式になる。

====================
3
‘this is some text’
pen up
3 + 4
3 * ( 4 + 5 )
car forward by 5
{1 2 3 4 5 6 7} collect [ n | n odd ]
Repeat (1 to 100 by 2) do [ ******* ]
====================

そして大切なのは、この単純な決まりに従って必要なだけ新しく読みやすい記法を作る事が出来る事だ。
これは、ユーザが文法と意味の関係を一つだけ念頭に置いておけば良い事を意味する。

====================
レシーバ メッセージ (レシーバが意味を把握している事を意味する)
====================

という事で、オブジェクトはただネットワーク上のピア・ピア・サーバのように考えられ、使われると考える。
(これは偶然ではなく、六十年代後期におけるARPAnet から Internet にかけての開発にさかのぼるアイデアを起源とする)。

418 :デフォルトの名無しさん:2017/03/24(金) 09:37:55.93 ID:poXmNItA
>>410
どこからつっこんでいいのか
ようするにオブジェクトは自由度が高いからボクちんはいい設計が出来ないと言ってるようだが、それはパラダイムの問題ではなくおまえの理解度の問題
オブジェクト指向の真髄はオブジェクトはデータとそれに副作用をもたらすメソッドの集合であるということ
これはリアルでいうとドアというオブジェクトはドアノブというオブジェクを持ち、ノブを回すというメソッドによりドアが開くというドアオブジェクトへの副作用をもたらすというように説明できる
現実の構造をそのままプログラミングに適用できるというパラダイムがオブジェクト指向でありUIというパーツの複合物を組み上げるうえでオブジェクト指向ほど自然に設計できるものは他にない
関数型プログラミングはそれらの設計指針へ何も寄与しないよ

419 :デフォルトの名無しさん:2017/03/24(金) 09:40:50.81 ID:LoToasEt
>>374
> 正しいオブジェクト指向

数理科学的な定式化が知りたいならルカ・カルデリ(Luka Cardelli)のオブジェクト算法
http://lucacardelli.name/Papers/PrimObjImpSIPL.A4.pdf
等をひもとけばよいと思うけど、そうではなく「オブジェクト指向」の実際的な定義が欲しいのなら

まず、ビヨーン・ストラウストラップ(Bjarne Stroustrup)らが同時期に提唱し現在主流となっている
「抽象データ型のオブジェクト指向」(端的には、SIMULAのクラスというエンティティを使った抽象データ型の実践。
古典的には「「カプセル化、継承、ポリモーフィズム」に象徴される)
http://www.stroustrup.com/whatis.pdf

それと、この考え方とは趣を異にするけれどしょっちゅう引き合いにだされる「メッセージ」といった表現に象徴される
アラン・ケイの「メッセージングのオブジェクト指向」(端的には設計・実装・運用のあらゆる面で遅延結合を徹底する)
>>417 で既に引用したhttp://metatoys.org/oxymoron/oxymoron.html

この二つの「オブジェクト指向」の特徴と違いは最低限押さえておくべきだろうね

これらのどちらに軸足を置くかで進むべき方向が変わるし、混同すると訳のわからないことになるから
両者のバックグラウンドやその主張は目を通すくらいはして、自分なりに整理して区別できるようにしておくとよいと思うよ

420 :デフォルトの名無しさん:2017/03/24(金) 09:53:11.90 ID:lxkR7uxC
オブジェクト指向だと餅は餅屋的な設計ができる
使えるネジがあったら使おうぜ的な
カレーもスパイスから作ってたら大変だが大抵ルーを使うしなんならレトルトでもいいわけで

421 :デフォルトの名無しさん:2017/03/24(金) 10:50:43.93 ID:LoToasEt
>>419
あともひとつ念のため、ストラウストラップらの「抽象データ型のオブジェクト指向」の方について
これはクラスを用いること自体が主なアイデアあるけれどあくまで肝心なのはその先の「抽象データ型の実践」なので
当然のことながら「抽象データ型」については最低限知っておく必要はあると思う

(そうでないと「(抽象データ型による)カプセル化、(クラスの機能である)継承、(両者を使った)ポリモーフィズム」
といった件の古典的三点セットの各々が意図するところの解釈すら怪しくなるので…)

ストラウストラップが書いているようにこれを端的に「ユーザー定義の型」というふうにみなしてしまうのも手だけれども
Such a type is often called an abstract data type. I prefer the term "user-defined type."
できれば提唱者のバーバラ・リスコフ(Barbara Liskov)が書いたものを参考にしたほうがよりよいと思います

抽象データ型(データ抽象ともいう)の成立過程やその意義、ついでにそれをクラスでやる場合のメリット・デメリット(彼女はあえて
SIMULAのクラスは使わず、クラスターという新しいエンティティを使ったCLUという言語を設計している)について
端的によくまとまっているこの文献が個人的にはお薦めです
http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.46.9499
2. Data Abstraction、3.4. Implementing Abstract Types あたり

なかでも、クラスを使った場合の抽象データ型のメリット・デメリットについては
ウィリアム・クック(William R. Cook)の「OOP vs ADT」の例が具体的に整理されていてわかりやすいです
(くしくも>>321が指摘するのとちょっと似てる「クラスを使うとインターフェイス拡張時に面倒」も書いてあって興味深い)
https://www.cs.utexas.edu/users/wcook/papers/OOPvsADT/CookOOPvsADT90.pdf

422 :デフォルトの名無しさん:2017/03/24(金) 13:02:26.33 ID:3PUwYYlD
現実の構造を表現するなら、連想配列のほうが表現力は上だよね

君がいったドアの例の延長で行くぞ
現実世界で使えるレベルのモデリングを提起する

ドアにはドアストッパーやドアクローザーがついていることもあるドアはガラスが使用されていて、外部から内部を目視できるかもしれないし
のぞき穴がついていて内部から外部の一方通行のみ目視可能かもしれない

1.ここまでの話をきいてドアを設計せよ

顧客の関心事はいっそう深化した
ドアは建築基準法によって耐火性が議論になることも有るし、材質やサイズによって重量や開閉性がことなる

このドアは当然ながら鍵がついており、サムターンであることもあれば電子錠であることもある
ドアの遮音性も顧客は関心があるようだ
ドアは右開き左開き、そして内開き外開きの組み合わせだけでなく、そもそもスライディングで開閉するタイプかもしれない
君が提示したドアノブはついていないこともありうる

2. 1.で行ったクラス設計を破壊せずにドア機能を拡張せよ


1.2.を行ったうえで現実世界のモデリングにオブジェクト指向は役に立ちましたか

423 :デフォルトの名無しさん:2017/03/24(金) 13:08:28.55 ID:3PUwYYlD
追加
ここまでだとドアは他のオブジェクトとメッセージパッシングをしない

さていぬ猫にはドアノブを開店させることはできないが、プッシュで動くドアなら、ある一定の重量以下で押すことができるだろう

3.この事実を2.のクラス設計を破壊せずにに実装せよ

ここまでで何個の抽象クラスができるんでしょうね
こんな単純なことをモデリングするのに

424 :デフォルトの名無しさん:2017/03/24(金) 13:17:25.71 ID:lxkR7uxC
>>423
中の設計はドア屋さんが頑張るけど、クライアントはopen,close,lock,unlockだけ理解してればいい
ってのがオブジェクト指向じゃねえの
そこまで要件が多岐にわたるなら明らかに新規設計の案件だろ

425 :デフォルトの名無しさん:2017/03/24(金) 13:37:02.73 ID:poXmNItA
>>422
そのドアストッパーやドアクローザーを外注し簡単に自作のドア取り付けられるのがオブジェクト指向
抽象部=規格が合えば取り替えは自由自在
さらに外注したドアストッパーへ容易に自作のオプションが付けられる
素晴らしきかなオブジェクト指向

大好きな連想配列にするとこれがどう改善されるのか言ってみ?

426 :デフォルトの名無しさん:2017/03/24(金) 15:11:21.95 ID:yX4WlQKK
1.Beansにして属性を適当にDoorクラスにぶちこむdoor.lockType, door.isSeethrow, door.isAntiFire
2.Doorクラスにさらに属性を追加する。
3.猫がドアを開けられるかどうかは、ドア属性から猫に判断させるcat.canOpen(door)

なにを悩む

427 :デフォルトの名無しさん:2017/03/24(金) 16:18:53.60 ID:LoToasEt
>>422
> 現実の構造を表現するなら、連想配列のほうが表現力は上だよね

そう思うならまずID:3PUwYYlDが>>422,423の要求仕様を連想配列+関数でエレガントに実装してみせてよ
それをうけてオブジェクトで等価のことがよりスマートにできればID:3PUwYYlDの認識不足
できなければオブジェクト勢ぐぬぬ…ID:3PUwYYlD大勝利!って流れの方がわかりやすいかと

428 :デフォルトの名無しさん:2017/03/24(金) 17:21:15.05 ID:suDsBIm1
>>426
状況にもよるけど
door.canbe_opened_by(cat) 的なほうがいい気がする

429 :デフォルトの名無しさん:2017/03/24(金) 17:45:03.47 ID:bOcyBkqZ
オブジェクト指向全盛の世代なんで
非構造プログラムも構造化プログラムも
今さら覚える気ないなぁ

つか関数型プログラミングって
設計はモデリングとかエンティティ抽出とかoopと同じことするんですか?

430 :デフォルトの名無しさん:2017/03/24(金) 17:59:56.55 ID:bOcyBkqZ
VB6のリプレースで
別のクラスから呼んでない
メソッドはprivateにしておいて
と言われた

もちろんクラス設計書はない

不自然でも良いから
オブジェクト指向にして欲しかった

431 :デフォルトの名無しさん:2017/03/24(金) 18:42:15.61 ID:yX4WlQKK
>>428
なんでそっちにつけるし…

432 :デフォルトの名無しさん:2017/03/24(金) 18:56:43.52 ID:SmL+2Elk
Javaの話がしたいのかオブジェクト指向の話がしたいのかブレてる人が多いね
長文のJava叩きは別スレでやればいいのでは

433 :デフォルトの名無しさん:2017/03/24(金) 18:59:25.76 ID:xjxxxvcA
プログラミング言語にオレオレ流の自然さとか求めるって頭腐ってる
関数型厨ってそういうのばっかだし永遠に主流になることはないだろう
実際実務では関数型言語なんて選択肢にも入ることはないしこれからも永遠にそうだろう

434 :デフォルトの名無しさん:2017/03/24(金) 19:07:23.82 ID:f+Qzn7ei
>>433
JAVAをスカラにした所も
スカラでOOPしてそうだよね

コレクション操作にラムダ使うくらいで

想像だけど

435 :デフォルトの名無しさん:2017/03/24(金) 19:51:37.37 ID:f+Qzn7ei
>>402
え?俺は帳票クラスとか伝票クラスとか
作るけど世間は違うの?

俺はオブジェクト指向してないのかも
知れない不安がよぎった

436 :デフォルトの名無しさん:2017/03/24(金) 20:10:48.99 ID:q2VVYKKn
openメソッドをcatにつけるべきか、doorにopenedメソッドをつけるべきか、どっちなの?

437 :デフォルトの名無しさん:2017/03/24(金) 20:18:06.28 ID:Xu2YN0Qp
>>435
現実にはできないだろうなってこと
帳票クラス、まあそれもいいだろうね

でも、帳票出すときって
○○表示画面があって横に○○帳票出力ボタンがあって
次の画面は○○帳票プレビュー画面があって
横に○○帳票印刷ボタンがあるだろうね

んで?
帳票直すときってどこ触れば直るって?(笑)

438 :デフォルトの名無しさん:2017/03/24(金) 20:24:41.67 ID:DOPHTZLz
ここは落ち着いて >>437 の話をもっとよく聞くべき
焦るなよお前ら

439 :デフォルトの名無しさん:2017/03/24(金) 20:27:08.03 ID:Xu2YN0Qp
先手を打って言っておくと直らないんじゃないかなぁ?
ってこと
帳票のレイアウトがちょっと気に食わない程度なら行けるかもしれんけど
そもそも表示項目にデータとして持っていない項目を帳票クラスをいじって出力することはできんでしょ?
つまり帳票が気に入らなくても帳票クラスをいじって解決はしないんだよ
んで俺、帳票クラスってあんま見ねーわ
表示機能→プレビュー→印刷設定→印刷
って一連の流れで帳票が形を成すことがない
言ってる意味わかるかにゃ?
クリレポだよクリレポ

440 :デフォルトの名無しさん:2017/03/24(金) 20:31:02.24 ID:AiSXPZSJ
>>428
>>436
ネタなんだろ?

動物が1万種類いたらDoorクラスで1万件の開く条件分岐しやがるのか、てめーは

Catクラスでやることは、押してみて開いたら中に入る、開かなかったらあきらめる、これだけだ

441 :デフォルトの名無しさん:2017/03/24(金) 20:37:59.37 ID:Xu2YN0Qp
もちろんキャットドア実装済みだ

442 :デフォルトの名無しさん:2017/03/24(金) 20:46:48.38 ID:/8+eN8z3
>>438
ネタが高度すぎて3回ぐらい読んでもなに言ってるのかがわからないw
なにか概念の置き換えとか単語の置換でわけのわからない文章創作したのかな?と
元のネタを推測してみたけど、それが効かないぐらい支離滅裂でワロタ

443 :デフォルトの名無しさん:2017/03/24(金) 20:49:20.98 ID:AiSXPZSJ
>>441
ノータリンなのか? その場合は、

class CatDoor extends Door {}

で、別のクラスだ

444 :デフォルトの名無しさん:2017/03/24(金) 20:53:02.90 ID:AiSXPZSJ
>>437 は確かに3周くらい回って笑えてくるな。
確かにここは焦るべきじゃない。もっと盛大に泳がすべきだ。

445 :デフォルトの名無しさん:2017/03/24(金) 20:58:46.44 ID:AiSXPZSJ
そうだよなぁ、クリレポだよな
ク リ レ ポ ♪

446 :デフォルトの名無しさん:2017/03/24(金) 21:00:32.42 ID:yX4WlQKK
世の中にはMVCモデルというものがあってな

447 :デフォルトの名無しさん:2017/03/24(金) 21:05:39.67 ID:AiSXPZSJ
この、早漏が! てか、それ以前のクラスの役割範囲の問題なんだけどな。

448 :デフォルトの名無しさん:2017/03/24(金) 21:47:01.05 ID:AiSXPZSJ
つーか、Doorが開ける奴認識して開くか開かないか決めるって、どこのゲイツ宅だよ

449 :デフォルトの名無しさん:2017/03/24(金) 22:17:31.73 ID:suDsBIm1
>>440
ユースケース次第でどっちのほうが適切か選ぶんだけどさ
1万種類いたら1万件の条件分岐をが必要とか本気で言ってるならまじでやべーぞ

450 :デフォルトの名無しさん:2017/03/24(金) 22:28:12.89 ID:yX4WlQKK
ドアをなんかのサブシステム、猫をユーザーと捉えたらそうなるな

451 :デフォルトの名無しさん:2017/03/24(金) 22:55:54.11 ID:6RKef8DS
ドアの型とドアを開ける側の型でドアを開けるメソッドの結果が変わるので、オブジェクト指向だと、ここでダブルディスパッチが生じるわけだけど、これがバッドノウハウと言われるとぐうの音も出ない。

452 :デフォルトの名無しさん:2017/03/24(金) 23:48:51.04 ID:AiSXPZSJ
>>449
なんでやべーと思うの? 説明してくれる?
言うことわかってるからぶっ叩くこと前提だけど

453 :デフォルトの名無しさん:2017/03/24(金) 23:49:00.51 ID:yX4WlQKK
たいていの初心者が、考えもなく現実世界をオブジェクトに割り振る例題を与えられて
みんなそのへんで躓いてる気がしてきた

現実世界じゃあらゆるものが相互に依存してるけど
相互に関係するオブジェクトのふるまい記述とか相当難易度高いよな…

普通のプログラムじゃ主語はユーザーというかメインスレッドだし

454 :デフォルトの名無しさん:2017/03/24(金) 23:50:19.73 ID:AiSXPZSJ
>>450
そうなるなってどうなるんだよ? それを説明しろよ
お前、議論できね―だろ?

455 :デフォルトの名無しさん:2017/03/24(金) 23:51:43.29 ID:AiSXPZSJ
>>451
ぐうの音がでないのは、お前個人の脳みその欠陥だから、
そんなことを理由に話されてもしらねーよ

456 :デフォルトの名無しさん:2017/03/24(金) 23:53:04.72 ID:AiSXPZSJ
いまのうちに言っとくな

449 : デフォルトの名無しさん2017/03/24(金) 22:17:31.73 ID:suDsBIm1
>>440
ユースケース次第でどっちのほうが適切か選ぶんだけどさ
1万種類いたら1万件の条件分岐をが必要とか本気で言ってるならまじでやべーぞ

            ∩_ 
           〈〈〈 ヽ
          〈⊃  }
   ∩___∩  |   |
   | ノ      ヽ !   !
  /  ●   ● |  /
  |    ( _●_)  ミ/ こいつ、底なしのアホ!
 彡、   |∪|  /
/ __  ヽノ /
(___)   /

457 :デフォルトの名無しさん:2017/03/24(金) 23:55:06.79 ID:poXmNItA
>>440
それをオブジェクト指向の抽象化という至高の世界にブレイクダウンするとドアが持つopenというメソッドが取る引数はcatではなくcatのスーパークラスである生物になり生物がもつ生物としてのパラメータ、能力値によりドアがacceptかrejectかを判定することで可能だな
ドアを開けるのは生物だけだという条件下ではcatにdoorを認識させてopendoorさせるよりも遥かに合理的だろう
素晴らしきかなオブジェクト指向

458 :デフォルトの名無しさん:2017/03/24(金) 23:58:59.22 ID:AiSXPZSJ
>>457

うん、何言ってるのか読むのめんどくさい

お前、よくキモいって言われるだろ?

459 :デフォルトの名無しさん:2017/03/25(土) 00:01:00.51 ID:Bl9nCmA6
どっちかにしてくんねーかな?

現実世界をOOPで表現するのは無理があるとかいう論調だったり、

ドアがacceptかrejectかを判定することで可能

とか言い出したり。おまえらアホは一貫性ねーよ

460 :デフォルトの名無しさん:2017/03/25(土) 00:02:49.19 ID:Bl9nCmA6
話の流れとか全然無視して言うとさ
>>457 みると、「あー、グラマって本当にバカなんだな」って思う

461 :デフォルトの名無しさん:2017/03/25(土) 00:06:43.71 ID:WyZVpsBF
>>452
まずお前がどういう実装するのか説明しろよボケ

462 :デフォルトの名無しさん:2017/03/25(土) 00:09:13.43 ID:z4z14A9t
>>457
自分としては、以下の点から猫につけたい

1.基本的に、ドアが開くかどうかは相手に一切依存しない。特定の操作がなされたら開く。
2.猫がドアを開けるかどうかは、人間には伺い知れないお猫様の内部状態によっている。

とくに内部状態による分岐はどうしょうもない

463 :デフォルトの名無しさん:2017/03/25(土) 00:12:33.58 ID:Bl9nCmA6
>>461
文句つけた方が先にいうと決まってるのわかんねーの? ボケナス

464 :デフォルトの名無しさん:2017/03/25(土) 00:13:07.19 ID:Bl9nCmA6
あーあ、>>461のちんこ、今晩もげねーかな

465 :デフォルトの名無しさん:2017/03/25(土) 00:14:36.00 ID:Bl9nCmA6
>>462
“たい”ってなんだよ?

おまえんちのドア、お前を認識して開くのかよ?

本当に糞マヌケばっかだな。当たっててもたまたま正解だったレベルのマヌケばっかじゃねぇか

466 :デフォルトの名無しさん:2017/03/25(土) 00:15:00.37 ID:Bl9nCmA6
今、>>461のちんこもげる呪いかけといた

467 :デフォルトの名無しさん:2017/03/25(土) 00:15:35.00 ID:z4z14A9t
ささいなことで発狂しすぎだろ…
なんか病気なのか

468 :デフォルトの名無しさん:2017/03/25(土) 00:16:14.45 ID:Bl9nCmA6
そりゃ、こんなマヌケばっかりならいつまでたっても議論おわらねーよ

469 :デフォルトの名無しさん:2017/03/25(土) 00:16:51.59 ID:Bl9nCmA6
>>467
ささいなことすら満足に理解できないお前が言うなよ…
本当に頭の病気だろ

470 :デフォルトの名無しさん:2017/03/25(土) 00:18:26.58 ID:Bl9nCmA6
んで、どうでもいいから>>461
おまえ、同実装するか書けよ?
もう、お前もわかってるだろうけどな、どうぶっ叩かれるかってこと

471 :デフォルトの名無しさん:2017/03/25(土) 00:19:12.91 ID:57uljf+v
なんだバカこんなとこに居たのかwwww

472 :デフォルトの名無しさん:2017/03/25(土) 00:21:18.65 ID:Bl9nCmA6
>>471
毎度毎度、自己紹介うまいっすねー、先輩

473 :デフォルトの名無しさん:2017/03/25(土) 00:27:59.27 ID:WyZVpsBF
>>463
じゃおまえが先じゃねーかw

474 :デフォルトの名無しさん:2017/03/25(土) 00:31:21.08 ID:57uljf+v
やっぱり自覚だけはあるバカw可愛いよぅwwww

475 :デフォルトの名無しさん:2017/03/25(土) 00:32:04.40 ID:aZYLECYg
>>462
自然界の原理に従えばそうなるのはわかるがここで俺が言いたかったのはドアを開けるという行為に対して対象を抽象化することでどちらのアプローチも可能ということで
そこに違和感を感じるのは無生物主語を日本人が使えないような感覚と同じではないかと

476 :デフォルトの名無しさん:2017/03/25(土) 00:34:10.58 ID:Bl9nCmA6
>>473
それ、どういう理論? ちょっと説明してくれる? ばーーーか

477 :デフォルトの名無しさん:2017/03/25(土) 00:35:32.79 ID:WyZVpsBF
>>470
なんだよかまってちゃんかよ
お前はドアが1万種類あったらCatクラスで1万件の条件分岐すんだろw
キレた猫にちんこ噛み切られるよ

478 :デフォルトの名無しさん:2017/03/25(土) 00:36:47.91 ID:Bl9nCmA6
>>457
>どちらのアプローチも可能ということで そこに違和感を感じるのは無生物主語を日本人が使えないような感覚と同じではないかと

本物のアホなのかな?

別のアプローチしたらメリットある場合はするよ? あんの?

このバカ >>473 ID:WyZVpsBF が一生懸命食らいついてきてるけどさ、
ドアにアプローチさせたらどうなるか、わかんじゃん? お前なら

479 :デフォルトの名無しさん:2017/03/25(土) 00:37:00.34 ID:WyZVpsBF
>>476
>>440 おまえがばーーーか

480 :デフォルトの名無しさん:2017/03/25(土) 00:37:50.16 ID:Bl9nCmA6
>お前はドアが1万種類あったらCatクラスで1万件の条件分岐すんだろw

はい、文盲♪


440 : デフォルトの名無しさん2017/03/24(金) 20:31:02.24 ID:AiSXPZSJ
>>428
>>436
ネタなんだろ?

動物が1万種類いたらDoorクラスで1万件の開く条件分岐しやがるのか、てめーは

Catクラスでやることは、押してみて開いたら中に入る、開かなかったらあきらめる、これだけだ

481 :デフォルトの名無しさん:2017/03/25(土) 00:38:32.61 ID:Bl9nCmA6
やっべ、マジ、マヌケ >>477 やべぇwwwwwwwwwww

本当に脳みそねーwwwwwwwwwwwwwwwwwww

482 :デフォルトの名無しさん:2017/03/25(土) 00:40:04.43 ID:Bl9nCmA6
>>428 : デフォルトの名無しさん2017/03/24(金) 17:21:15.05 ID:suDsBIm1
> >426
> 状況にもよるけど
> door.canbe_opened_by(cat) 的なほうがいい気がする

こっからはじまってること、まだわかってないバカがなんか一生懸命すぎwwwwwwwwwwwwwwww

483 :デフォルトの名無しさん:2017/03/25(土) 00:41:42.68 ID:Bl9nCmA6
オレに反論してるバカって

>>477 : デフォルトの名無しさん2017/03/25(土) 00:35:32.79 ID:WyZVpsBF
> >470
>なんだよかまってちゃんかよ
> お前はドアが1万種類あったらCatクラスで1万件の条件分岐すんだろw
> キレた猫にちんこ噛み切られるよ


これと同類って自覚、 あ ん の ? ? ? www

やべーよ、マジで脳味噌、やべーよwwww

484 :デフォルトの名無しさん:2017/03/25(土) 00:42:46.60 ID:WyZVpsBF
>>480
ミジンコ脳だと猫が引き戸を開ける想像ができないのな

485 :デフォルトの名無しさん:2017/03/25(土) 00:43:59.94 ID:Bl9nCmA6
でさ、いい加減書けよ

>>461 : デフォルトの名無しさん2017/03/25(土) 00:06:43.71 ID:WyZVpsBF
> >452
> まずお前がどういう実装するのか説明しろよボケ

ドアがユーザー認識して自分で開くシステムのコードがどうなるか

そろそろお前がどんなにアホでも、お前のほうがヤバイって気づき始めてんだろ?

486 :デフォルトの名無しさん:2017/03/25(土) 00:46:16.08 ID:h4sfGwdy
>>478
このドアが開くかを誰が判断するのかという命題にたいして判断なんかしねーよ!猫は押すだけで開いたら入るし開かなかったら諦めるだけだ!という主張が通用する世界で生きているならそれはそれでいいと思う

487 :デフォルトの名無しさん:2017/03/25(土) 00:46:26.89 ID:Bl9nCmA6
>>484
おまえの猫が引き戸を開けられるかどうかは別とするけどさw

>>423 : デフォルトの名無しさん2017/03/24(金) 13:08:28.55 ID:3PUwYYlD
> 追加
> ここまでだとドアは他のオブジェクトとメッセージパッシングをしない
> さていぬ猫にはドアノブを開店させることはできないが、プッシュで動くドアなら、ある一定の重量以下で押すことができるだろう

本当におまえ、日本語読めないのなw
前提条件、全くわかってないのなww
本当に人間なの? ロボじゃないの?www

488 :デフォルトの名無しさん:2017/03/25(土) 00:47:15.78 ID:Bl9nCmA6
>>486

そういう世界の話ししてんだけど、わかんなかったの? >>423

489 :デフォルトの名無しさん:2017/03/25(土) 00:47:37.59 ID:Bl9nCmA6
やべぇ、マジ、クソグラマ共の脳味噌、やべぇwwwwwww

490 :デフォルトの名無しさん:2017/03/25(土) 00:48:49.00 ID:Bl9nCmA6
そりゃ、巷のプロジェクトがことごとく炎上するわけだ

だって、クソグラマ共は仕様も要件も理解できねーんだもんwwww

491 :デフォルトの名無しさん:2017/03/25(土) 00:49:01.46 ID:WyZVpsBF
>>485
猫とドアをコード化しなきゃいけないプログラムって何よ?
そこを考えてないから一つの視点でしか見れないんだろゴミカス

492 :デフォルトの名無しさん:2017/03/25(土) 00:50:42.14 ID:Bl9nCmA6
んで、おもしれーから聞くな?

>>486 : デフォルトの名無しさん2017/03/25(土) 00:46:16.08 ID:h4sfGwdy
>このドアが開くかを誰が判断するのかという命題にたいして判断なんかしねーよ!猫は押すだけで開いたら入るし開かなかったら諦めるだけだ!という主張が通用する世界で生きているならそれはそれでいいと思う

猫がドア押して開かなかったら諦められねーで問題が発生する世界ってどんな世界?

あらかじめいっとくけど、猫がドアひっかくとかいうなよ? それをするのはCatクラスの仕事だからな?

493 :デフォルトの名無しさん:2017/03/25(土) 00:51:52.55 ID:Bl9nCmA6
>>491
おまえ、その文句をオレに言うことがまっとうだと、本気で思ってる?

やべぇ、まじくそグラマの脳、やべえぇwwww

そりゃ、巷のプロジェクトがことごとく炎上するわけだ

だって、クソグラマ共は仕様も要件も発注元も理解できねーんだもんwwww

494 :デフォルトの名無しさん:2017/03/25(土) 00:53:07.91 ID:Bl9nCmA6
ID:WyZVpsBF

↑こいつ、マジこれまで生きてきたのが嘘みたいなレベルの大間抜けwwwwwwwwwwwww

495 :デフォルトの名無しさん:2017/03/25(土) 00:54:05.64 ID:Bl9nCmA6
ミジンコ脳って、誰のことだったのかな?wwwwwwww

496 :デフォルトの名無しさん:2017/03/25(土) 00:54:46.25 ID:WyZVpsBF
>>487
あー423はNGだったからそれは読んでない
そいつの設定はドアノブは回せないってことだが回転ドアだって自動ドアだってある
動物が1万種類に増えるのとドアの種類が1万種類に増えるのと何の違いがあるんだよアホ

497 :デフォルトの名無しさん:2017/03/25(土) 00:56:46.78 ID:uvbjAxXd
ドアにどんどん複雑なことさせる予定なら
最初から守衛を実装した方がいいねー
あとネコは単純データじゃなくてオブジェクトなら
自分で働きかけと反応ができないとねー
ドアの前で寝て待つでもいいけど、エラーでプロセス死ぬようじゃダメだねー

498 :デフォルトの名無しさん:2017/03/25(土) 00:56:57.59 ID:Bl9nCmA6
>>496
>動物が1万種類に増えるのとドアの種類が1万種類に増えるのと何の違いがあるんだよ

誰かそんなこと言ったの? どこのどのレス?wwwwww

やっべ、マジクソグラマやべぇw
日本語、マジ読めないwwwww

499 :デフォルトの名無しさん:2017/03/25(土) 00:57:07.30 ID:WyZVpsBF
>>493

>>492
>猫がドア押して開かなかったら諦められねーで問題が発生する世界ってどんな世界?

493 名前:デフォルトの名無しさん Mail:sage 投稿日:2017/03/25(土) 00:51:52.55 ID:Bl9nCmA6
>>491
おまえ、その文句をオレに言うことがまっとうだと、本気で思ってる?


アホやろ

500 :デフォルトの名無しさん:2017/03/25(土) 00:57:54.76 ID:Bl9nCmA6
こんなバカ ID:WyZVpsBF にNGされる >>423 が哀れ過ぎる…

501 :デフォルトの名無しさん:2017/03/25(土) 00:58:46.60 ID:WyZVpsBF
>>498
ここまで来て逃げ恥モードかよおい

502 :デフォルトの名無しさん:2017/03/25(土) 00:58:56.34 ID:Bl9nCmA6
おやおや、とうとう全く意味の分からない引用をはじめましたよ >>499

本物のバカのようです。
引用する時は引用する意図をわかるようにしましょうね♪

503 :デフォルトの名無しさん:2017/03/25(土) 00:59:31.06 ID:Bl9nCmA6
>>501
おまえがな

てか、本当にお前、自分の言ってること狂ってるってまだわかんないの?

504 :デフォルトの名無しさん:2017/03/25(土) 01:00:36.99 ID:Bl9nCmA6
>>501 : デフォルトの名無しさん2017/03/25(土) 00:58:46.60 ID:WyZVpsBF

おまえさ、>>497 の言ってることの意味、わかる?

505 :デフォルトの名無しさん:2017/03/25(土) 01:01:47.41 ID:Bl9nCmA6
ID:WyZVpsBF

            ∩_ 
           〈〈〈 ヽ
          〈⊃  }
   ∩___∩  |   |
   | ノ      ヽ !   !
  /  ●   ● |  /
  |    ( _●_)  ミ/ こいつ、マジ知的障害!
/ __  ヽノ /
(___)   /

506 :デフォルトの名無しさん:2017/03/25(土) 01:02:06.33 ID:SyeigmGm
「現実の構造をそのままに」
「ある物に対し何ができるか、何をすべきかはその対象自身が知っているはず」
というが、持っている構造や知っていることを増やすの?捨てるの?

自分はクラスは「捨てる」方向性で設計するものだと思っていた。

507 :デフォルトの名無しさん:2017/03/25(土) 01:04:46.95 ID:Bl9nCmA6
>>506
それを判断するのが俺たちの仕事なんじゃん

バカは、「本にこう書いてあった」って盲目白痴にクソコードを書きまくるみたいだけどさ。

508 :デフォルトの名無しさん:2017/03/25(土) 01:05:12.02 ID:Bl9nCmA6
ID:WyZVpsBF

            ∩_ 
           〈〈〈 ヽ
          〈⊃  }
   ∩___∩  |   |
   | ノ      ヽ !   !
  /  ●   ● |  /
  |    ( _●_)  ミ/ こいつ、マジ知的障害!
/ __  ヽノ /
(___)   /

509 :デフォルトの名無しさん:2017/03/25(土) 01:10:09.35 ID:WyZVpsBF
>>502
お前の読解力を考慮してなかったわ

猫とドアをコード化しなきゃいけないプログラムって何よ?ってのは文句じゃなく
お前がどういうシステムを想定したのか説明しろよって言ってる

もう一つ動物が1万種類に増える可能性もあればドアの種類が1万種類に増える可能性もある
どういう変化の方向に対して柔軟性を確保するのかは状況による

ミジンコ脳では想像できんか?

510 :デフォルトの名無しさん:2017/03/25(土) 01:11:44.30 ID:WyZVpsBF
中身で反論できないんならオレもう寝るよ

511 :デフォルトの名無しさん:2017/03/25(土) 01:14:07.43 ID:SyeigmGm
>>507
「それ」とは?

512 :デフォルトの名無しさん:2017/03/25(土) 01:15:46.82 ID:mLMz1o9w
>>457
めっちゃ早口

513 :デフォルトの名無しさん:2017/03/25(土) 01:16:27.65 ID:Bl9nCmA6
>>509
うっひゃっひゃっひゃwwwww

>もう一つ動物が1万種類に増える可能性もあればドアの種類が1万種類に増える可能性もある

な ん で ??????


こいつ、やばすぎるwwwwwwwwwwwwwwww

514 :デフォルトの名無しさん:2017/03/25(土) 01:16:32.20 ID:UB3e1JZS
どっちも増えることにしよう

515 :デフォルトの名無しさん:2017/03/25(土) 01:17:57.78 ID:Bl9nCmA6
>>511
え?

>持っている構造や知っていることを増やすの?捨てるの?

にきまってんじゃん。お前もマヌケなの?
マヌケなら、「僕、マヌケですが」って接頭詞置いてくれる?

516 :デフォルトの名無しさん:2017/03/25(土) 01:18:57.61 ID:Bl9nCmA6
>>510
寝たほうがいいよ? あちらさん、本当のアホみたいだから

517 :デフォルトの名無しさん:2017/03/25(土) 01:19:43.37 ID:Bl9nCmA6
おや、あちらさんっていうか、本人が本物のアホだったのか

寝なよ、お前に議論は無理だから

518 :デフォルトの名無しさん:2017/03/25(土) 01:21:07.35 ID:Bl9nCmA6
>>510 : デフォルトの名無しさん2017/03/25(土) 01:11:44.30 ID:WyZVpsBF
> 中身で反論できないんならオレもう寝るよ

このバカ、自分が中身で議論できてると、本当に思っていたのか…

恐ろしいな、クソグラマ…

519 :デフォルトの名無しさん:2017/03/25(土) 01:22:27.03 ID:SyeigmGm
>>515
「増やすのか捨てるのかを判断する」というのが「おれたちの仕事」だということか?

>>506に書いたように自分はクラスは「捨てる」方向性で設計するものと考えているので
そこはすでに判断するポイントじゃない。

520 :デフォルトの名無しさん:2017/03/25(土) 01:22:35.11 ID:Bl9nCmA6
アホは ID:WyZVpsBF だけだと思ってけど、

>>511 : デフォルトの名無しさん2017/03/25(土) 01:14:07.43 ID:SyeigmGm
> >507
> 「それ」とは?

マジでアホしかいないの? この業界って

521 :デフォルトの名無しさん:2017/03/25(土) 01:23:28.67 ID:kaPA30KF
専門版でしょーもない言い争いでスレを伸ばすガイジ

522 :デフォルトの名無しさん:2017/03/25(土) 01:23:44.42 ID:Bl9nCmA6
>>519
>そこはすでに判断するポイントじゃない。

へー。自分が「勝手に」決めたポイントが絶対ですか

こりゃ、プロジェクト炎上するわー おつかれさま♪

523 :デフォルトの名無しさん:2017/03/25(土) 01:23:51.10 ID:BvzmuLQE
NGでスッキリ

524 :デフォルトの名無しさん:2017/03/25(土) 01:24:29.96 ID:Bl9nCmA6
>>521
と、いう、どうでもいい単発レスをしてスレを伸ばすガイジ

死ねばいいのにねw

525 :デフォルトの名無しさん:2017/03/25(土) 01:25:33.57 ID:kaPA30KF
一人で41レス伸ばしてる奴に1レスの罪でガイジ呼ばわりされた上に死ねばいいと言われた……

526 :デフォルトの名無しさん:2017/03/25(土) 01:25:45.05 ID:Bl9nCmA6
>>523みたいなことを言わないと自分の気持が収まらない幼稚な人は、まぁ、そういう人生を送ればいいんだろうね

527 :デフォルトの名無しさん:2017/03/25(土) 01:26:23.67 ID:Bl9nCmA6
>>523
オレが独り言言ってると思ってる時点で、お前は死んだほうがいいからまちがってなくね?

528 :デフォルトの名無しさん:2017/03/25(土) 01:26:40.21 ID:SyeigmGm
>>522
>へー。自分が「勝手に」決めたポイントが絶対ですか

>>506 を読んでそういう感想を抱くのだとしたら確かにどうかしている

529 :デフォルトの名無しさん:2017/03/25(土) 01:26:49.06 ID:Bl9nCmA6
>>525
オレが独り言言ってると思ってる時点で、お前は死んだほうがいいからまちがってなくね?

530 :デフォルトの名無しさん:2017/03/25(土) 01:27:24.63 ID:Bl9nCmA6
>>528
論拠を述べろって、何度言わせんの? 脳味噌無いの?

531 :デフォルトの名無しさん:2017/03/25(土) 01:28:08.86 ID:Bl9nCmA6
こいつも結構、脳味噌やばいな ID:SyeigmGm

脊椎で反射してくるバカ多すぎ

532 :デフォルトの名無しさん:2017/03/25(土) 01:28:32.70 ID:Bl9nCmA6
もう、脊髄じゃなく、骨で反射すんの。本物のバカ

533 :デフォルトの名無しさん:2017/03/25(土) 01:30:24.22 ID:92weDEMC
>>529
「一人で41レス」の意味履き違えてない?
俺は独り言なんて言ってないぞ。頭冷やして寝ろ

534 :デフォルトの名無しさん:2017/03/25(土) 01:31:08.06 ID:SyeigmGm
>>530
>論拠を述べろって、何度言わせんの? 

自分はもともとお前に語りかけたわけでも何でもないし、初めてこのスレで発言したわけだが
俺が>>506で呟いたことに唐突に>>507で反応されて何とも論拠の出しようがない。

535 :デフォルトの名無しさん:2017/03/25(土) 01:31:58.80 ID:Bl9nCmA6
>“自分は”クラスは「捨てる」方向性で設計するものだと“思っていた”。

てめーで、てめーの勝手な理解ですよって宣言してるのに何言ってんだよ >>528

脳味噌あんのか?

536 :デフォルトの名無しさん:2017/03/25(土) 01:32:12.81 ID:h4sfGwdy
>>492
現実の世界では物理的な法則によりcatが押せばドアは開くかもしれないがプログラミング=コンピュータの世界でそれを実現する場合catがドアが開くかを判断しないのであれば、catの能力でドアが開くかを決めるのはドア側ということになる
そこでおまえは1万種類いたら1万の分岐をさせるのか!と言ったわけだがこれはオブジェクト指向抽象化を理解していないことを自ら証明したということ

537 :デフォルトの名無しさん:2017/03/25(土) 01:33:13.17 ID:Bl9nCmA6
>>533

>俺は独り言なんて言ってないぞ。

だれがそんなこといったの?

おまえはほんとうににほんごがりかいできないの???

>頭冷やして寝ろ

おまえは本当に永眠した方がいい。おまえに人生は無理だ

538 :デフォルトの名無しさん:2017/03/25(土) 01:33:27.29 ID:SyeigmGm
>>535
知らん。

そもそも>>507に根拠を示したのか?お前が勝手に絡んできたんだぞ。

539 :デフォルトの名無しさん:2017/03/25(土) 01:34:00.99 ID:SyeigmGm
ストーカーかよ

540 :デフォルトの名無しさん:2017/03/25(土) 01:34:46.37 ID:92weDEMC
>>537
俺は「おまえが独り言言ってるなんて」言ってないぞ
なら通じる?

541 :デフォルトの名無しさん:2017/03/25(土) 01:35:28.74 ID:Bl9nCmA6
>>536 : デフォルトの名無しさん2017/03/25(土) 01:32:12.81 ID:h4sfGwdy
> 492
> 現実の世界では物理的な法則によりcatが押せばドアは開くかもしれないがプログラミング=コンピュータの世界でそれを実現する場合catがドアが開くかを判断しないのであれば、catの能力でドアが開くかを決めるのはドア側ということになる
> そこでおまえは1万種類いたら1万の分岐をさせるのか!と言ったわけだがこれはオブジェクト指向抽象化を理解していないことを自ら証明したということ

うん、ごめん、アホらしくてまともに読んでないけど

>これはオブジェクト指向抽象化を理解していない

まさか、本当におまえ、まだOOP理解してるとおもってる? 

やべぇ、糞馬鹿グラマ、マジ、やべえwwwwww

542 :デフォルトの名無しさん:2017/03/25(土) 01:35:36.00 ID:uvbjAxXd
>>506
増やすとか捨てるじゃなくて「どちらの責任にするか」だねぇ。
オブジェクト指向の重要なポイントは隠蔽がどーとか下衆なプログラム用語側に落ち込みがちだけど
要するに資料室に資料取って来させるのに
上司が「三階までエレベーターで上がってこの鍵で資料室のドアを開けて〜」って
いちいち指示が上に伝播していくと"エレベーター壊れてましたエラー"処理まで上司に記述しなきゃいけなくなってきりがないから
「資料室で資料取ってきてくれ アイテム:鍵」で以下の責任は部下に移譲。
オブジェクト各レベル間で責任範囲とやりとりを限定して、
これについて責任を持つのは「ここ」と決めることで作る側が楽をするための手法だから。

そうやって、外に影響が伝播せず、また特定のとこに処理が偏らずとシステム設計するのが重要なのだけど
いちゃモンさんは無理やり曲解して外に影響が出るような例を作ってみたり
特定のとこに処理が集中する例を作ってみたりして批判(笑)するから…w
こちらはそのために提唱されてるから問題を抑え込めるのに
野放し野人プログラムが首まで泥に浸かって「お前らも問題が出ることがあるから〜」じゃねぇっつの。

543 :デフォルトの名無しさん:2017/03/25(土) 01:43:40.49 ID:Bl9nCmA6
なんか、アホだらけでややこしくなってきたな
何なの?これ

------------------------------------------------------------------
>自分はクラスは「捨てる」方向性で設計するものだと思っていた。

>それを判断するのが俺たちの仕事なんじゃん

> 「それ」とは?

>持っている構造や知っていることを増やすの?捨てるの? にきまってんじゃん。お前もマヌケなの?

>自分はクラスは「捨てる」方向性で設計するものと考えているので そこはすでに判断するポイントじゃない。

>てめーで、てめーの勝手な理解ですよって宣言してるのに何言ってんだよ

>知らん。 ←
------------------------------------------------------------------

544 :デフォルトの名無しさん:2017/03/25(土) 01:45:11.21 ID:h4sfGwdy
>>541
俺ではなくお前自身がその本質を理解するかどうかということこそが重要

545 :デフォルトの名無しさん:2017/03/25(土) 01:45:31.43 ID:Bl9nCmA6
>>539 : デフォルトの名無しさん2017/03/25(土) 01:34:00.99 ID:SyeigmGm
> ストーカーかよ

いや、お前がアスペなだけだ

546 :デフォルトの名無しさん:2017/03/25(土) 01:46:15.90 ID:Bl9nCmA6
>>544 : デフォルトの名無しさん2017/03/25(土) 01:45:11.21 ID:h4sfGwdy
> >541
> 俺ではなくお前自身がその本質を理解するかどうかということこそが重要


お前みたいなアホが何言っても無駄

547 :デフォルトの名無しさん:2017/03/25(土) 01:47:26.77 ID:Bl9nCmA6
>>540 : デフォルトの名無しさん2017/03/25(土) 01:34:46.37 ID:92weDEMC
> 537
> 俺は「おまえが独り言言ってるなんて」言ってないぞ
> なら通じる?

全く通じないからとりあえず、小学校の国語からやる直せ。な?

548 :デフォルトの名無しさん:2017/03/25(土) 01:48:23.25 ID:Bl9nCmA6
40レスも伸びるってことは、必ず相手がいるだろって話をしてるのに、
そんなことも理解できないマヌケは本当に死ぬべきだろうな

549 :デフォルトの名無しさん:2017/03/25(土) 01:49:23.38 ID:Bl9nCmA6
こりゃ、プロジェクト炎上するわー

クソグラマは、仕様も要件も発注者もわからないどころか、
日本語も道理もわかんねーんだもんな

550 :デフォルトの名無しさん:2017/03/25(土) 01:51:24.06 ID:92weDEMC
誰も独り言言ってるなんて言ってないんだよなあ

551 :デフォルトの名無しさん:2017/03/25(土) 01:52:41.00 ID:Bl9nCmA6
まじで、

door.canbe_opened_by(cat)

こんなの考えるバカは救いようねぇなーwww

552 :デフォルトの名無しさん:2017/03/25(土) 01:53:53.28 ID:Bl9nCmA6
550 : デフォルトの名無しさん2017/03/25(土) 01:51:24.06 ID:92weDEMC
誰も独り言言ってるなんて言ってないんだよなあ

またアホ宣言

つまり、わかってるのに「一人で41レス伸ばしてる奴」とか印象操作するマヌケだと自白するわけですねwwww

553 :デフォルトの名無しさん:2017/03/25(土) 01:54:14.50 ID:Bl9nCmA6
ゴミクズはホント、根性から腐ってるよなwwwwww

554 :デフォルトの名無しさん:2017/03/25(土) 01:55:07.32 ID:Bl9nCmA6
そりゃ、そんな論理がまかりとおると思ってるマヌケだもん。

door.canbe_opened_by(cat)

とか、するよねぇwwww

555 :デフォルトの名無しさん:2017/03/25(土) 01:55:49.67 ID:92weDEMC
一人で41レスと言った時に独り言って意味で捉えるのはおまえくらいなもんだ

556 :デフォルトの名無しさん:2017/03/25(土) 01:56:42.02 ID:Bl9nCmA6
もう一度、この噛み合わない会話を見てみましょう

>動物が1万種類いたらDoorクラスで1万件の開く条件分岐しやがるのか、てめーは

>お前はドアが1万種類あったらCatクラスで1万件の条件分岐すんだろw

アホの極みwwwww

557 :デフォルトの名無しさん:2017/03/25(土) 01:57:23.76 ID:Bl9nCmA6
一生懸命ID変えても無駄だからね? モロバレだからwwww

558 :デフォルトの名無しさん:2017/03/25(土) 01:58:11.60 ID:h4sfGwdy
>>555
door.canbe_opened_by(cat)
を見て1万種類いたら1万の分岐をするのか!と思ってしまう思考レベルの持ち主だから仕方のないことだ
許してやれ

559 :デフォルトの名無しさん:2017/03/25(土) 01:58:19.22 ID:Bl9nCmA6
>>555
んで、まだそこが論点だと思ってるの?wwwww

おまえ、本物のあほだろwwwwwwwww

死んだほうが良いよw

560 :デフォルトの名無しさん:2017/03/25(土) 01:58:48.33 ID:uvbjAxXd
とりあえず赤いNGが覗くたびに増えて(60/60)ってなってるな

561 :デフォルトの名無しさん:2017/03/25(土) 01:59:27.49 ID:Bl9nCmA6
>>558

自分に自分で説得わろた

で、そんなことはどうでもいいけど、おまえ、そろそろ

door.canbe_opened_by(cat)

の実装かけよwwww

562 :デフォルトの名無しさん:2017/03/25(土) 01:59:43.44 ID:92weDEMC
>>559
俺は最初からその話しかしてない

563 :デフォルトの名無しさん:2017/03/25(土) 01:59:51.48 ID:Bl9nCmA6
必死にNG自慢してくるバカがいますwwwww

564 :デフォルトの名無しさん:2017/03/25(土) 02:00:26.56 ID:Bl9nCmA6
>>562
あっそ、ならお前はこのスレタイ読めないマヌケだから寝ていいよwwww

565 :デフォルトの名無しさん:2017/03/25(土) 02:01:47.75 ID:92weDEMC
>>564
俺の論点は「一晩で66もスレ伸ばすなうざい」だ
俺も寝るからおまえも寝ろ
おやすみ

566 :デフォルトの名無しさん:2017/03/25(土) 02:03:06.76 ID:Bl9nCmA6
さて、そろそろ本題に戻るけどさ

>>542 : デフォルトの名無しさん2017/03/25(土) 01:35:36.00 ID:uvbjAxXd
> いちゃモンさんは無理やり曲解して外に影響が出るような例を作ってみたり
> 特定のとこに処理が集中する例を作ってみたりして批判(笑)するから…

この「いちゃモンさん」ってだれのこと?

567 :デフォルトの名無しさん:2017/03/25(土) 02:04:28.91 ID:Bl9nCmA6
>>565 : デフォルトの名無しさん2017/03/25(土) 02:01:47.75 ID:92weDEMC
> 俺の論点は「一晩で66もスレ伸ばすなうざい」だ

は? おまえ、誰よ?

お前の意見がどうしてなんらかの意味があると思ったの? ゴミクズ

せめて意味をもたせたいならスレタイにそったこと言えよ

死ねよゴミカス そのまま永眠しろ

568 :デフォルトの名無しさん:2017/03/25(土) 02:07:42.35 ID:Bl9nCmA6
>>536 : デフォルトの名無しさん2017/03/25(土) 01:32:12.81 ID:h4sfGwdy
> 現実の世界では物理的な法則によりcatが押せばドアは開くかもしれないが
> プログラミング=コンピュータの世界でそれを実現する場合

>“catがドアが開くかを判断しないのであれば”、

> catの能力でドアが開くかを決めるのはドア側ということになる
> そこでおまえは1万種類いたら1万の分岐をさせるのか!と言ったわけだがこれはオブジェクト指向抽象化を理解していないことを自ら証明したということ

なんでcatが出来ないって決めちゃったのwwwwwww
そんなルールなかったよねwwwwwwwww

やべぇ、クソグラマ、やべぇwwwwww

勝手に仕様捻じ曲げやがるwwwwwww

569 :デフォルトの名無しさん:2017/03/25(土) 02:08:39.91 ID:Bl9nCmA6
そろそろ分かってきたでしょ? OOP否定してる奴らの頭のヤバさ

570 :デフォルトの名無しさん:2017/03/25(土) 02:11:51.93 ID:NcogM1MV
キチガイがわいとるwww

571 :デフォルトの名無しさん:2017/03/25(土) 02:22:11.83 ID:Hepb4FxQ
で、キャットドア問題はcatとdoorの相互作用に関する初等的問題なわけだけど、
cat.opendoor()か、door.is openedby()のどっちがいいか結論はでましたか

572 :デフォルトの名無しさん:2017/03/25(土) 02:27:23.12 ID:Hepb4FxQ
ここで良く考えるべきなのは、doorによってはwindによっても開くことがあるということなんだなあ

573 :デフォルトの名無しさん:2017/03/25(土) 02:29:32.72 ID:Bl9nCmA6
>>571
おまえ、馬鹿なのか?
そんなレベルで話進んでなかったってことくらいわかんだろ
やっとマトモな話しよーって時にしゃしゃり出てくんな、マヌケ

574 :デフォルトの名無しさん:2017/03/25(土) 02:31:05.68 ID:Bl9nCmA6
>>572
あったからなんだってんだ!
本物のノータリンか?
論旨をかけ、ゴミクズ

575 :デフォルトの名無しさん:2017/03/25(土) 02:34:11.52 ID:Bl9nCmA6
ID:Hepb4FxQ

こいつ、別の意味で今日採れたてのアホだろ

576 :デフォルトの名無しさん:2017/03/25(土) 02:42:26.75 ID:Bl9nCmA6
ほんと、プログラマって、馬鹿しかいないのな。一生クソコード生み出して自滅してろって感じ

577 :デフォルトの名無しさん:2017/03/25(土) 02:49:03.40 ID:Hepb4FxQ
良く考えてみ
単体の猫では、開かないドアだったとしても3人のドアなら開くかもしれない

catにopendoorメソッドを追加する奴はちんかすじゃないの

578 :デフォルトの名無しさん:2017/03/25(土) 02:52:28.20 ID:Hepb4FxQ
3人のドアってなんやねん
3匹の猫で同時にプッシュしたらドアが開くシチュは再現できない
このときcatにopendoorクラスを定義するとこうしたモデリングの拡張は自然に行えないよね

ここでもう一度スレタイを読み直してみよう

579 :デフォルトの名無しさん:2017/03/25(土) 07:55:17.41 ID:92weDEMC
猫がドアを開くとかしょーもなさ過ぎて草

580 :デフォルトの名無しさん:2017/03/25(土) 08:37:02.21 ID:OsPiTP2t
キャットドアの実装でオブジェクト指向破綻かw
お前らのオブジェクト指向では猫も幸せにはできない

581 :デフォルトの名無しさん:2017/03/25(土) 08:37:14.06 ID:yvUY9DOL
わかってるふうだったBl9nCmA6がいきなり黙ってわろたw

582 :デフォルトの名無しさん:2017/03/25(土) 08:38:38.68 ID:OsPiTP2t
役に立たないPGばっかりだな
全員自害しろ

583 :デフォルトの名無しさん:2017/03/25(土) 10:43:54.79 ID:VqgCatE5
自分の無能さをオブジェクト指向に転嫁して済ませたくて仕方がない人が荒らしているスレですか?

584 :デフォルトの名無しさん:2017/03/25(土) 11:32:15.81 ID:Hepb4FxQ
有能なオブジェクト指向設計者様の到来だ

彼のキャットドア実装に耳を傾けてみよう

585 :デフォルトの名無しさん:2017/03/25(土) 11:45:36.31 ID:RRHIuX+r
そんなにオブジェクト指向が嫌なら頑張って関数型はやらせてよ

586 :デフォルトの名無しさん:2017/03/25(土) 11:48:14.06 ID:P+Eymz64
取り敢えず俺は春の休み中の学生にはレスしたくないから学生じゃない人は
学生じゃないと名乗ってからレスしろよ
何も書かない人は以下学生ということで処理するから

587 :デフォルトの名無しさん:2017/03/25(土) 11:51:21.85 ID:nonH57ah
おまえら暇人かつ馬鹿だよな

588 :デフォルトの名無しさん:2017/03/25(土) 11:56:15.09 ID:Bl9nCmA6
581 : デフォルトの名無しさん2017/03/25(土) 08:37:14.06 ID:yvUY9DOL
わかってるふうだったBl9nCmA6がいきなり黙ってわろたw


            ∩_ 
           〈〈〈 ヽ
          〈⊃  }
   ∩___∩  |   |
   | ノ      ヽ !   !
  /  ●   ● |  /
  |    ( _●_)  ミ/ 睡眠という概念をしらない腐れニートが有頂天になってバカをさらしておりますw
 彡、   |∪|  /
/ __  ヽノ /
(___)   /

589 :デフォルトの名無しさん:2017/03/25(土) 11:59:09.82 ID:Bl9nCmA6
>>577 : デフォルトの名無しさん2017/03/25(土) 02:49:03.40 ID:Hepb4FxQ
> 良く考えてみ
> 単体の猫では、開かないドアだったとしても3人のドアなら開くかもしれない
> catにopendoorメソッドを追加する奴はちんかすじゃないの
> 3人のドアってなんやねん
> 3匹の猫で同時にプッシュしたらドアが開くシチュは再現できない
> このときcatにopendoorクラスを定義するとこうしたモデリングの拡張は自然に行えないよね

おまえ、ほんとバカだよなw

つまりこういうこと?

door.canbe_opened_by(cat, cat, cat);

または

door.canbe_opened_by([cat, cat, cat]);

みたいな????wwwwwwww

それ、現実世界に照らし合わせると致命的な欠陥があることくらい、わかるよな?wwww


>>428 : デフォルトの名無しさん2017/03/24(金) 17:21:15.05 ID:suDsBIm1
> >426
> 状況にもよるけど
> door.canbe_opened_by(cat) 的なほうがいい気がする

590 :デフォルトの名無しさん:2017/03/25(土) 12:00:44.51 ID:Bl9nCmA6
オレ、これから出かけるから、夜までに“一体どこに欠陥があるか”答えだしとけよ、クソマヌケども

591 :デフォルトの名無しさん:2017/03/25(土) 12:03:04.33 ID:Bl9nCmA6
>>586
おまえが勝手にお前の中で誰をどのように処理しようとしらねーよ
なんでお前というオブジェクトの中の事について、オレが関知しなきゃなんねーんだ
このスレ、何のスレか100回考えて死ね

592 :デフォルトの名無しさん:2017/03/25(土) 12:08:43.80 ID:Hepb4FxQ
cat.opendoor()実装の先には、
オブジェクト同士が協調して一つのものに立ち向かう
まさしく現実世界そのものが表現できないんだけど
現実世界って君達のようにぼっちの世界じゃないんだよ?

door.openedby(cats)
これは容易に実装可能
cat1.opendoor()
cat2.opendoor()
cat3.opendoor()
これは3体が協調したことにはならないよね
これで開くような単純なopendoorだったら
cat1.opendoor()
cat1.opendoor()
cat1.opendoor()でも開いちゃうからね
opendoorしてるオブジェクト数をdoor側が数えてようやく協調動作が実現できる、でもこれってdoorがopenしようとしているオブジェクトクラスに依存している

よってdoor.openedby実装が正解にちかいわけだ

cat.opendoor実装した奴はレイオフされたほうが社会のためだぞ

593 :デフォルトの名無しさん:2017/03/25(土) 12:09:02.97 ID:Bl9nCmA6
>>579 : デフォルトの名無しさん2017/03/25(土) 07:55:17.41 ID:92weDEMC
> 猫がドアを開くとかしょーもなさ過ぎて草

言い出した奴に言ったら? そのしょーもない話題ですらdoor.canbe_opened_by(cat) とか言い出すバカは死んだほうがいいよな、確かに


>>580 : デフォルトの名無しさん2017/03/25(土) 08:37:02.21 ID:OsPiTP2t
> キャットドアの実装でオブジェクト指向破綻かw
> お前らのオブジェクト指向では猫も幸せにはできない

破綻してるのはdoor.canbe_opened_by(cat) の脳味噌だけだよ

>>582 : デフォルトの名無しさん2017/03/25(土) 08:38:38.68 ID:OsPiTP2t
> 役に立たないPGばっかりだな
> 全員自害しろ

俺様以外、お前も含めて全員な。本当にそうだ。

594 :デフォルトの名無しさん:2017/03/25(土) 12:09:29.06 ID:Bl9nCmA6
>>583 : デフォルトの名無しさん2017/03/25(土) 10:43:54.79 ID:VqgCatE5
>自分の無能さをオブジェクト指向に転嫁して済ませたくて仕方がない人が荒らしているスレですか?

ID:WyZVpsBF
ID:h4sfGwdy

こいつらの事なw

>>584 : デフォルトの名無しさん2017/03/25(土) 11:32:15.81 ID:Hepb4FxQ
> 有能なオブジェクト指向設計者様の到来だ
> 彼のキャットドア実装に耳を傾けてみよう

そうだな、俺様の話をよく聞いておくのがお前らゴミクズのためだぞ。

>>585 : デフォルトの名無しさん2017/03/25(土) 11:45:36.31 ID:RRHIuX+r
> そんなにオブジェクト指向が嫌なら頑張って関数型はやらせてよ

だれか、嫌だといってるやついるか? オブジェクト指向を理解していないdoor.canbe_opened_by(cat)なバカはいるが。

>>587 : デフォルトの名無しさん2017/03/25(土) 11:51:21.85 ID:nonH57ah
> おまえら暇人かつ馬鹿だよな

俺様以外、お前も含めて全員な。本当にそうだ。

595 :デフォルトの名無しさん:2017/03/25(土) 12:10:40.37 ID:Hepb4FxQ
ただオブジェクト数を数えるのではダメで、異なるオブジェクトであることを確約することが重要

この実装めんどくさすぎね

596 :デフォルトの名無しさん:2017/03/25(土) 12:12:11.27 ID:Bl9nCmA6
>>592 : デフォルトの名無しさん2017/03/25(土) 12:08:43.80 ID:Hepb4FxQ

バカだからだとおもうんだけどさ、
何ですぐ答えかくの? だからトンチンカンで間違ってんじゃん
本当に脊椎で反射して書いてるだろw
(脊髄ではない、もはや、骨)

おまえが現実世界を語るのは無理だよ。脳味噌の中のお花畑ですごしてるんだもん

597 :デフォルトの名無しさん:2017/03/25(土) 12:12:57.77 ID:Bl9nCmA6
>>595
うん、それ以前の問題。おまえ、アホ過ぎ

598 :デフォルトの名無しさん:2017/03/25(土) 12:13:38.34 ID:Hepb4FxQ
UMLお絵かきを楽しんでる自称SE様、自称アーキテクト様は、日本のITを根本からオワコンにしたよね

どうせ才能ないんだから、使えるライブラリだけパクってクラスは構造体としてつかうのが正解だよ

599 :デフォルトの名無しさん:2017/03/25(土) 12:14:47.10 ID:Bl9nCmA6
>>592 : デフォルトの名無しさん2017/03/25(土) 12:08:43.80 ID:Hepb4FxQ

おまえさ、現実世界ってどうなってるか、
ちょっとノートに書き出してみ?

それ、本当にこんな世界か?

door.canbe_opened_by(cat, cat, cat);
door.canbe_opened_by([cat, cat, cat]);

600 :デフォルトの名無しさん:2017/03/25(土) 12:15:32.22 ID:Bl9nCmA6
>>598
> どうせ才能ないんだから

自己紹介を始めましたw

601 :デフォルトの名無しさん:2017/03/25(土) 12:17:50.30 ID:Bl9nCmA6
> >>585 : デフォルトの名無しさん2017/03/25(土) 11:45:36.31 ID:RRHIuX+r
> > そんなにオブジェクト指向が嫌なら頑張って関数型はやらせてよ

>だれか、嫌だといってるやついるか? オブジェクト指向を理解していないdoor.canbe_opened_by(cat)なバカはいるが。

ごめん、居た。とびっきりの本物バカが

>>598 : デフォルトの名無しさん2017/03/25(土) 12:13:38.34 ID:Hepb4FxQ
> 使えるライブラリだけパクってクラスは構造体としてつかうのが正解だよ

602 :デフォルトの名無しさん:2017/03/25(土) 12:18:41.27 ID:Hepb4FxQ
>>599
そうだよ
君はcat.opendoorクラスを軸としてcatを協調させるやり方を示さないとね

603 :デフォルトの名無しさん:2017/03/25(土) 12:20:53.94 ID:P+Eymz64
>>602
>>601
学生かい?返事してよ。

604 :デフォルトの名無しさん:2017/03/25(土) 12:21:18.49 ID:Bl9nCmA6
598 : デフォルトの名無しさん2017/03/25(土) 12:13:38.34 ID:Hepb4FxQ
UMLお絵かきを楽しんでる自称SE様、自称アーキテクト様は、日本のITを根本からオワコンにしたよね

どうせ才能ないんだから、使えるライブラリだけパクってクラスは構造体としてつかうのが正解だよ

            ∩_ 
           〈〈〈 ヽ
          〈⊃  }
   ∩___∩  |   |
   | ノ      ヽ !   !
  /  ●   ● |  /
  |    ( _●_)  ミ/ 自分が無能で下働きしただけなのにSE、アーキテクトを逆恨みして日本を語る、本当に才能のない本日採れたてのバカID:Hepb4FxQ
 彡、   |∪|  /
/ __  ヽノ /
(___)   /

605 :デフォルトの名無しさん:2017/03/25(土) 12:21:44.32 ID:BoJVNcT4
関数指向って触ったことないんだけど
クラス図みたいなUMLとかも
オブジェクト指向のものとは異なるの?

コードレベルでラムダとかは使うけど
設計レベルで関数指向を意識したこと無いから
設計レベルで考えから変わるのキツイな

606 :デフォルトの名無しさん:2017/03/25(土) 12:23:06.30 ID:P+Eymz64
>>605
学生?

607 :デフォルトの名無しさん:2017/03/25(土) 12:23:54.43 ID:Bl9nCmA6
>>603
> 君はcat.opendoorクラスを軸としてcatを協調させるやり方を示さないとね

早漏乙wwwwwwwwww



>>590 : デフォルトの名無しさん2017/03/25(土) 12:00:44.51 ID:Bl9nCmA6
> オレ、これから出かけるから、夜までに“一体どこに欠陥があるか”答えだしとけよ、クソマヌケども

お前らに、ゆーーーーーーっくり考える時間やったのに
脊椎反射してくるバカいて力抜けるわw
おまえ、挿れる前に出ちゃって、まだ童貞だろ?w

608 :デフォルトの名無しさん:2017/03/25(土) 12:23:55.59 ID:yvUY9DOL
>>602
catGroup = new CatGroup(cat1, cat2, cat3)
catGroup.canOpen(door)

609 :デフォルトの名無しさん:2017/03/25(土) 12:23:58.00 ID:VqgCatE5
オブジェクト指向もまともに使いこなせない奴〜

610 :デフォルトの名無しさん:2017/03/25(土) 12:24:55.36 ID:Bl9nCmA6
>>608
悪いな、こっち側の人間なのかも知れねーが、
それ、全然ダメな。

現実世界がどうなってるか、よく考えろっつっただろ。

611 :デフォルトの名無しさん:2017/03/25(土) 12:25:14.13 ID:VqgCatE5
>>608
canOpenという命名だったらisHoge系みたくBooleanの戻り値がありそうだが

612 :デフォルトの名無しさん:2017/03/25(土) 12:27:38.02 ID:Bl9nCmA6
あー、誰かとおもったら、


608 : デフォルトの名無しさん2017/03/25(土) 12:23:55.59 ID:yvUY9DOL
>>602
catGroup = new CatGroup(cat1, cat2, cat3)
catGroup.canOpen(door)

こいつ、睡眠を知らない糞ニートかw そりゃ、こんなコード書くわけだw

613 :デフォルトの名無しさん:2017/03/25(土) 12:27:56.21 ID:P+Eymz64
どうやら学生しかいなようだな

614 :デフォルトの名無しさん:2017/03/25(土) 12:29:27.61 ID:Bl9nCmA6
>>581 : デフォルトの名無しさん2017/03/25(土) 08:37:14.06 ID:yvUY9DOL
> わかってるふうだったBl9nCmA6がいきなり黙ってわろたw

> catGroup = new CatGroup(cat1, cat2, cat3)
> catGroup.canOpen(door)

こんなコードしか書けないなら、お前が黙ってたほうがいいよw

615 :デフォルトの名無しさん:2017/03/25(土) 12:29:39.67 ID:VqgCatE5
学生=バカであるという前提

616 :デフォルトの名無しさん:2017/03/25(土) 12:31:10.03 ID:P+Eymz64
中二病こじらせてる人しかいないんですけどー(笑)

617 :デフォルトの名無しさん:2017/03/25(土) 12:32:33.69 ID:VqgCatE5
自分だけはまともだという前提

618 :デフォルトの名無しさん:2017/03/25(土) 12:32:56.37 ID:Bl9nCmA6
>>611
あるだろうな、普通に考えて。
で、その値を評価するのは、catGroupオブジェクトを持ってるオブジェクトだ。

つまり、なんか話が「猫がドアをあける」から「猫を使ってドアをあけさせる」っつう
「猫使い」の話に変わり始めてんのなwwwww

な、オブジェクト指向分かってねーやつって、狂ってるだろw?

619 :デフォルトの名無しさん:2017/03/25(土) 12:36:03.51 ID:Bl9nCmA6
> おまえさ、現実世界ってどうなってるか、
> ちょっとノートに書き出してみ?
> それ、本当にこんな世界か?
> door.canbe_opened_by(cat, cat, cat);
> door.canbe_opened_by([cat, cat, cat]);

>>602 : デフォルトの名無しさん2017/03/25(土) 12:18:41.27 ID:Hepb4FxQ
> そうだよ
> そうだよ
> そうだよ


たーのしーwwww

620 :デフォルトの名無しさん:2017/03/25(土) 12:42:42.07 ID:P+Eymz64
学生かという質問にこと得られない奴は
学生じゃないと書いたら大人の癖にと
学生と書くとまだ子供なんだからと馬鹿にされる
その間のジレンマということだな
悔しかったらまともな意見を書いて堂々と学生じゃないと
なれるようになろうな

621 :デフォルトの名無しさん:2017/03/25(土) 12:43:23.23 ID:VqgCatE5
やはりただのキティちゃんだったか

622 :デフォルトの名無しさん:2017/03/25(土) 12:44:18.63 ID:Hepb4FxQ
オブジェクト指向に傾倒できるのは、学生か、学生時代にコンピュータサイエンスを勉強しなかった大人だけだからね
ナショナリズムみたいなもんだね

623 :デフォルトの名無しさん:2017/03/25(土) 12:45:15.70 ID:Bl9nCmA6
>>620
かわいそうだから1回だけ言ってやるな。

おまえ、誰にも相手にされてねーって、まだ気づかねーの?
学生かどうかなんて気にしてんの、おめーだけだよ。
ずっと独り言言っててこえーよw

624 :デフォルトの名無しさん:2017/03/25(土) 12:46:08.58 ID:Bl9nCmA6
>>622
うん、おまえが言うと、全く説得力無い♪

625 :デフォルトの名無しさん:2017/03/25(土) 12:46:41.55 ID:P+Eymz64
何て言うか動物見てる感じだなこのスレは、
この子供たちは大人になれるのか心配だよ

626 :デフォルトの名無しさん:2017/03/25(土) 12:47:29.45 ID:VqgCatE5
本当の大人なら学生かそうでないかを問題にはしない

627 :デフォルトの名無しさん:2017/03/25(土) 12:48:25.73 ID:P+Eymz64
>>326
お前はウンコ投げてくる動物園のチンパンジーだな

628 :デフォルトの名無しさん:2017/03/25(土) 12:50:28.98 ID:P+Eymz64
喧嘩っていうのは同レベルどうししか起きなんだよな。
低いレベルの書き込みにつられるというのはつられた奴と
同レベルということ。

629 :デフォルトの名無しさん:2017/03/25(土) 12:53:32.55 ID:Bl9nCmA6
なんか、やけに投擲能力が高いチンパンジーがいるな…

630 :デフォルトの名無しさん:2017/03/25(土) 13:00:26.84 ID:Bl9nCmA6
後に語り継がれるバカ論理を、ここでもう一度晒しておこう

>>592 : デフォルトの名無しさん2017/03/25(土) 12:08:43.80 ID:Hepb4FxQ
> cat.opendoor()実装の先には、
> オブジェクト同士が協調して一つのものに立ち向かう
> まさしく現実世界そのものが表現できないんだけど
> 現実世界って君達のようにぼっちの世界じゃないんだよ?
>
> door.openedby(cats)
> これは容易に実装可能
> cat1.opendoor()
> cat2.opendoor()
> cat3.opendoor()
> これは3体が協調したことにはならないよね
> これで開くような単純なopendoorだったら
> cat1.opendoor()
> cat1.opendoor()
> cat1.opendoor()でも開いちゃうからね
> opendoorしてるオブジェクト数をdoor側が数えてようやく協調動作が実現できる、でもこれってdoorがopenしようとしているオブジェクトクラスに依存している
>
> よってdoor.openedby実装が正解にちかいわけだ
>
> cat.opendoor実装した奴はレイオフされたほうが社会のためだぞ

たーのしーwwww

631 :デフォルトの名無しさん:2017/03/25(土) 13:01:02.87 ID:Bl9nCmA6
さーて、出かけるよ〜ん♪

632 :デフォルトの名無しさん:2017/03/25(土) 13:01:13.53 ID:P+Eymz64
俺にダメージを与えることは誰にもできない。
なぜなら高度すぎるから。
ゴキブリの殺虫剤がゴキブリ以下の虫にしか効かないように
お前らのあおりもキッズにしか効かない

633 :デフォルトの名無しさん:2017/03/25(土) 13:08:22.08 ID:Hepb4FxQ
お前らキャットドアの実装にすら負けるのか

どんなくそみたいなプロダクトだしてるか興味あるな

634 :デフォルトの名無しさん:2017/03/25(土) 13:39:51.92 ID:P+Eymz64
知ったばかりの言葉を使って大人ぶってみたいお年頃なんだろうな。

635 :デフォルトの名無しさん:2017/03/25(土) 14:17:26.28 ID:yvUY9DOL
>>633
俺は勝ったぞ(`・ω・´)

636 :デフォルトの名無しさん:2017/03/25(土) 14:18:35.03 ID:yvUY9DOL
Bl9nCmA6が珍しく自分の頭をひねって出した意見>>618にだれか答えてやれ
無視するから病気がひどくなるんだ

637 :デフォルトの名無しさん:2017/03/25(土) 15:33:17.52 ID:WyZVpsBF
様々なドアを共通して扱えるようにドアライブラリを作ろうとしている
その中で猫が特定のドアを開けることができるかどうかを判定したい(らしい)

1. そもそもCatをクラスとしてモデリングする必要があるのか?

■仮にCatクラスが必要な場合
2. ドアが開く条件をどこで管理するのがいいか? Door/Cat/それ以外?
3. 猫が特定のドアを開けられるかどうかをどこで判断するのがいいのか? Door/Cat/それ以外?
4. Catクラス以外にどういうクラスがドアを開けようとするのか? それはこの先どの程度追加・変更されうるのか?

■cat.canOpen(door)の形にする場合
5. 引数にはDoor型以外にどういう型を取りうるのか? 変更・追加の可能性は?
6. canXXXタイプのメソッドはどのくらい必要なのか? 変更・追加の可能性は?

cat.canOpen(door)のほうが望ましいケースもあれば
あるクラスがcanXXXメソッドだらけになってメンテ不能になるケースもある
どういう種類の変化に対して柔軟性を確保しておくのかの選択の問題

638 :デフォルトの名無しさん:2017/03/25(土) 15:36:10.33 ID:OsPiTP2t
猫「さっさとドアを開けろ」

639 :デフォルトの名無しさん:2017/03/25(土) 15:37:46.36 ID:WyZVpsBF
どういうモデルが良いかは用途によって変わるし
特定の用途に有用なモデルなら現実世界からかけ離れていても何の問題もない

これはオブジェクト指向とは関係のない当たり前の話なんだが
staticおじさんや昨日のキチガイさんはこの当たり前をを理解してないから
オブジェクト指向を使いこなせない

640 :デフォルトの名無しさん:2017/03/25(土) 15:49:56.85 ID:ra7V2/PG
ドアが開いてるか閉まっているかの状態はネコのものではないし、ドアはネコの所有物ではない

641 :デフォルトの名無しさん:2017/03/25(土) 16:22:11.12 ID:P+Eymz64
じゃあ、俺がお前を殴ればお前殴られて俺は殴ってないのか?
それならお前が死ぬまで殴り続けるよ?
死にたいのか?
こんな赤ちゃんでもわかることを議論するな。

642 :デフォルトの名無しさん:2017/03/25(土) 16:26:40.65 ID:OsPiTP2t
猫「うるさい、三味線にするぞ」

643 :デフォルトの名無しさん:2017/03/25(土) 16:29:23.71 ID:Gy0JTtQc
>>640
全くそのとおりだなw

ネコからすれば手を動かしたに過ぎない。

手を動かしたら、何かに当たる
それがドアかもしれないしネズミかもしれない

cat.canOpenとかアホだろw

644 :デフォルトの名無しさん:2017/03/25(土) 16:34:48.34 ID:Gy0JTtQc
やるならcat.touch(object)だろうな

ネコは触るだけ。

これを実行すると、objectはtouchというイベントを受信し、
objectがdoorなら空いたり閉まったりするだろう。

またネコはネコで(非同期で)そのフィードバック
イベントを受信することになるだろう。

645 :デフォルトの名無しさん:2017/03/25(土) 16:43:54.32 ID:RRHIuX+r
猫に実装するメソッドはmoveFootとかにして引数で挙動を変えたらいいんじゃねえのか
猫にとって「ドアを開ける」という動作は非常に不自然だろ
基本的に必要ない

646 :デフォルトの名無しさん:2017/03/25(土) 17:03:49.22 ID:OjkYJeud
決まらない神設計より決まるクソ設計

647 :デフォルトの名無しさん:2017/03/25(土) 17:16:38.64 ID:WyZVpsBF
何のためにネコをモデル化するのか考えずに
どの実装方法がいいとか言っても無意味

648 :デフォルトの名無しさん:2017/03/25(土) 17:28:18.52 ID:LaDS9whr
日本人がオブジェクト指向が苦手な理由

主語を省略する
述語が一番後ろ

649 :デフォルトの名無しさん:2017/03/25(土) 17:38:00.19 ID:yvUY9DOL
自分が何をしたいのかもわかってない、客の曖昧で意味不明なおしゃべりから
自分の好き勝手なものを提示してメリットをまくしたて客をまるめこんで
客から金をふんだくってこそ真の一流

DoorType.catDoor って定数作っただけじゃ金とれんだろ!

650 :デフォルトの名無しさん:2017/03/25(土) 18:05:56.40 ID:OsPiTP2t
>>645
openDoorでいいじゃん
中身はmoveFootかもしれんけど

651 :デフォルトの名無しさん:2017/03/25(土) 18:35:57.87 ID:BoJVNcT4
スレ主は、オブジェクト指向はゴミ
関数型がベストと言ってるけど
オブジェクト指向に対する関数型のメリットを
語って欲しいわ

本当に、関数型知っちゃうと
オブジェクト指向はゴミと
思えるのかね

652 :デフォルトの名無しさん:2017/03/25(土) 18:46:04.22 ID:ra7V2/PG
適用分野で使い分けりゃいいじゃん

653 :デフォルトの名無しさん:2017/03/25(土) 18:48:22.84 ID:Gy0JTtQc
本物のネコだとしてopenDoorというメソッドをネコが持つのはおかしい。

まずネコドアを開けようと思った時、それには理由があるはずだ
外に行きたいとか。

外に行きたいとかいうのは、要するに欲求だな。
ネコは自分で考えて動くが、これをコンピュータに
置き換えるならば、時間などによってネコ自身のパラメータが
変わった結果による行動だ。

ドアの前まで移動し、手(体?)を使ってドア押す。
openDoorというのは、このネコの一連の行動に
名前をつけたものと考えられる。

移動するとか手を動かすとかはネコにつけるべきメソッドであるが、
一連の行動はネコ自身のメソッドではない。

コンピュータ的に言えばアルゴリズムになるだろう。
そのアルゴリズムはネコ自身ではなく別に独立させるべきものとなる。
そうしてopenDoorをネコから分離ささせることでイヌにも使用可能なものになる。

そしてネコが抱いた欲求の中で、そのアルゴリズムを使用することになる。
アルゴリズムはドアをあける一連の行動であるが、
移動するや手を動かすといったメソッドは、
そのアルゴリズムに渡したネコやイヌといったオブジェクトが持つものであり
各オブジェクトによって適切な処理が行われる。

654 :デフォルトの名無しさん:2017/03/25(土) 18:49:58.20 ID:Gy0JTtQc
>>651
> オブジェクト指向に対する関数型のメリットを
> 語って欲しいわ

オブジェクト指向と関数型は組み合わせて使うものだ
全体の構造はオブジェクト指向で作り、
関数の中の処理は関数型を使う

関数型のメリットは処理をシンプルに記述できる所
処理であって構造ではない。構造はオブジェクト指向の得意分野

655 :デフォルトの名無しさん:2017/03/25(土) 18:59:26.48 ID:OsPiTP2t
>>653
そんな御託はどうでもいいんだよ
結局第三者がそうとわかりやすければどうだっていい

猫がドアを開ける

そういう認識が猫側にあるかどうかは重要じゃなくて第三者がその表現でわかるかどうかが重要

やっぱりオブジェクト指向はゴミだな

656 :デフォルトの名無しさん:2017/03/25(土) 19:02:38.45 ID:RRHIuX+r
>>653
猫や犬のmoveFootで返ってきた値を使ってdoorを操作するって感じやな

657 :デフォルトの名無しさん:2017/03/25(土) 19:05:29.49 ID:VqgCatE5
>>655
>やっぱりオブジェクト指向はゴミだな
あなたにとっては絶対にそうなんだろうからそう思ってればいいと思う
で金輪際オブジェクト指向言語に関わらないようにすればいい
それだけだと思う
おつかれさまでした

658 :デフォルトの名無しさん:2017/03/25(土) 19:09:32.27 ID:ecqG0ALX
ライブラリはオブジェクト志向で書かれてると使いやすさのハードルがちょっと下がる気がする
対してオブジェクト志向でプログラムを書くのは関数型で書くより頭がこんがらがるし、変なコードになりがちと思った

659 :デフォルトの名無しさん:2017/03/25(土) 19:10:27.97 ID:RRHIuX+r
>>655
猫がドアを開ける、という動作を猫が足を動かしてドアに働きかけて実行するんだよ
猫がドアを開けるのはあくまでも結果だ
依存させてはいけない

660 :デフォルトの名無しさん:2017/03/25(土) 19:20:02.48 ID:P+Eymz64
自分の意見を曲げるわけのない奴に何を説得しても無駄
次々現れるゴキブリを手で摑まえるようなものだ

661 :デフォルトの名無しさん:2017/03/25(土) 19:27:12.50 ID:VqgCatE5
自分だけはゴキブリじゃないという前提

662 :デフォルトの名無しさん:2017/03/25(土) 19:29:38.53 ID:yvUY9DOL
>>653>>655
delegateしようず
実質関数型とか言うな

cat.addAction(cond:(actor) -> world.midnight(), action: (actor) -> door.open());

663 :デフォルトの名無しさん:2017/03/25(土) 19:36:42.56 ID:yvUY9DOL
状態があるから全然関数型じゃなかった
問題ない

664 :デフォルトの名無しさん:2017/03/25(土) 19:48:20.46 ID:Gy0JTtQc
>>655
なんで自分ででたらめな設計しておいて
自分の設計はゴミって言ってるの?
マゾなの?

665 :デフォルトの名無しさん:2017/03/25(土) 20:18:46.65 ID:Bl9nCmA6
帰ってきて見てみたら、よくもまぁそんな頓珍漢な話で盛り上がれるなw
おまえら、本物のアホだろ >>632-664
ゴミクズだらけだなw

割りとマトモなのは

>>640 : デフォルトの名無しさん2017/03/25(土) 15:49:56.85 ID:ra7V2/PG
> ドアが開いてるか閉まっているかの状態はネコのものではないし、ドアはネコの所有物ではない

>>643 : デフォルトの名無しさん2017/03/25(土) 16:29:23.71 ID:Gy0JTtQc
> >640
> 全くそのとおりだなw
> ネコからすれば手を動かしたに過ぎない。
> 手を動かしたら、何かに当たる
> それがドアかもしれないしネズミかもしれない
> cat.canOpenとかアホだろw

>>644 : デフォルトの名無しさん2017/03/25(土) 16:34:48.34 ID:Gy0JTtQc
> やるならcat.touch(object)だろうな
> ネコは触るだけ。

この辺だけだな。後は軒並みゴミクズだ
よくもそんなマヌケなレスでスレを埋め尽くせるもんだ

666 :デフォルトの名無しさん:2017/03/25(土) 20:20:16.37 ID:Bl9nCmA6
cat.touch(object)はねーけどな。

少なくともpush()やscratch()くらいは実装してるはずだ
なんだよ、touchって。お前の猫はアホなのか?

667 :デフォルトの名無しさん:2017/03/25(土) 20:21:25.16 ID:Bl9nCmA6
>>635 : デフォルトの名無しさん2017/03/25(土) 14:17:26.28 ID:yvUY9DOL
> >633
> 俺は勝ったぞ(`・ω・´)


バカって最強だな。滅多クソに叩かれてボロボロになってる事すらわかってない
実に最強だ

668 :デフォルトの名無しさん:2017/03/25(土) 20:23:01.39 ID:ecqG0ALX
猫を実装するってどういう状況よ?

669 :デフォルトの名無しさん:2017/03/25(土) 20:23:18.73 ID:Bl9nCmA6
んで、お前らゴミクズは、これ、どこに欠陥があるかわかったん?www


>>592 : デフォルトの名無しさん2017/03/25(土) 12:08:43.80 ID:Hepb4FxQ
> cat.opendoor()実装の先には、
> オブジェクト同士が協調して一つのものに立ち向かう
> まさしく現実世界そのものが表現できないんだけど
> 現実世界って君達のようにぼっちの世界じゃないんだよ?
>
> door.openedby(cats)
> これは容易に実装可能
> cat1.opendoor()
> cat2.opendoor()
> cat3.opendoor()
> これは3体が協調したことにはならないよね
> これで開くような単純なopendoorだったら
> cat1.opendoor()
> cat1.opendoor()
> cat1.opendoor()でも開いちゃうからね
> opendoorしてるオブジェクト数をdoor側が数えてようやく協調動作が実現できる、でもこれってdoorがopenしようとしているオブジェクトクラスに依存している
>
> よってdoor.openedby実装が正解にちかいわけだ
>
> cat.opendoor実装した奴はレイオフされたほうが社会のためだぞ

670 :デフォルトの名無しさん:2017/03/25(土) 20:24:59.11 ID:Bl9nCmA6
>>636 : デフォルトの名無しさん2017/03/25(土) 14:18:35.03 ID:yvUY9DOL
> Bl9nCmA6が珍しく自分の頭をひねって出した意見>>618にだれか答えてやれ
> 無視するから病気がひどくなるんだ


お前が答えればいいじゃん、答えられるならw

無視してるんじゃなくて、マトモに言い返せないだけなのわかってねーのはお前だけだよw

671 :デフォルトの名無しさん:2017/03/25(土) 20:26:15.59 ID:Bl9nCmA6
欠陥があるっていったのはこっちか、ま、どっちでもいいけど


door.canbe_opened_by(cat, cat, cat);

または

door.canbe_opened_by([cat, cat, cat]);

672 :デフォルトの名無しさん:2017/03/25(土) 20:29:22.06 ID:Bl9nCmA6
>>668 : デフォルトの名無しさん2017/03/25(土) 20:23:01.39 ID:ecqG0ALX
> 猫を実装するってどういう状況よ?

こういうマヌケなこと言って「オレの発送の転換、天才!」とか悦に入ってるオナニーバカは死ねばいいよね

仮に実装するならどうするって話をしてるだけじゃん。

あと言っとくけど、そのお題出したのはおれじゃねーし、
みんなそれを分かってて話に乗ってる。

おまえだけだよ、バカは。

673 :デフォルトの名無しさん:2017/03/25(土) 20:33:28.44 ID:Bl9nCmA6
>>639 : デフォルトの名無しさん2017/03/25(土) 15:37:46.36 ID:WyZVpsBF
> これはオブジェクト指向とは関係のない当たり前の話なんだが
> staticおじさんや昨日のキチガイさんはこの当たり前をを理解してないから
> オブジェクト指向を使いこなせない

昨日のキチガイって誰のことよ?

> どういうモデルが良いかは用途によって変わるし
> 特定の用途に有用なモデルなら現実世界からかけ離れていても何の問題もない

こんなこと言ってるのを見ると、おまえがオブジェクト指向を使いこなせてね―だけじゃん
現実世界からかけ離れてるから批判してるわけじゃなく

door.canbe_opened_by(cat)

が、すげー非合理だから批判してるんじゃん。で、おまえらは未だになんでこれが非合理かわかってねーんじゃん
おまえら、本物のアホじゃん
ちんこもげればいいじゃん

674 :デフォルトの名無しさん:2017/03/25(土) 20:33:34.22 ID:yvUY9DOL
薬でもやっとるんか

675 :デフォルトの名無しさん:2017/03/25(土) 20:35:23.71 ID:Bl9nCmA6
>>608 : デフォルトの名無しさん2017/03/25(土) 12:23:55.59 ID:yvUY9DOL
> >602
> catGroup = new CatGroup(cat1, cat2, cat3)
> catGroup.canOpen(door)

>>635 : デフォルトの名無しさん2017/03/25(土) 14:17:26.28 ID:yvUY9DOL
> >633
> 俺は勝ったぞ(`・ω・´)


こ れ が 、 お ま え ら の レ ベ ル wwwwwwwwww

676 :デフォルトの名無しさん:2017/03/25(土) 20:36:07.86 ID:Bl9nCmA6
>>674
おまえは頭のお薬だしてもらったほうがいいなw

677 :デフォルトの名無しさん:2017/03/25(土) 20:37:23.66 ID:Bl9nCmA6
>>636 : デフォルトの名無しさん2017/03/25(土) 14:18:35.03 ID:yvUY9DOL
> Bl9nCmA6が珍しく自分の頭をひねって出した意見>>618にだれか答えてやれ
> 無視するから病気がひどくなるんだ


こんなこといいながら、一向に答えられない超絶ヘタレwwwwww ID:yvUY9DOL

678 :デフォルトの名無しさん:2017/03/25(土) 20:38:45.19 ID:P+Eymz64
何がそんなにムキになれるほどキッズの感情を乱すのか、
キレれるキッズは我慢が足りないんだろうな。
昔は自然が自然と教えてくれていた。
今は駄目だ、快楽におぼれたキッズたちしかいない。

679 :デフォルトの名無しさん:2017/03/25(土) 20:40:12.45 ID:Bl9nCmA6
つーわけで、この長文、タダのゴミクズなw 理由は>>665

>>637 : デフォルトの名無しさん2017/03/25(土) 15:33:17.52 ID:WyZVpsBF
> 様々なドアを共通して扱えるようにドアライブラリを作ろうとしている
> その中で猫が特定のドアを開けることができるかどうかを判定したい(らしい)
>
> 1. そもそもCatをクラスとしてモデリングする必要があるのか?
>
> ■仮にCatクラスが必要な場合
> 2. ドアが開く条件をどこで管理するのがいいか? Door/Cat/それ以外?
> 3. 猫が特定のドアを開けられるかどうかをどこで判断するのがいいのか? Door/Cat/それ以外?
> 4. Catクラス以外にどういうクラスがドアを開けようとするのか? それはこの先どの程度追加・変更されうるのか?
>
> ■cat.canOpen(door)の形にする場合
> 5. 引数にはDoor型以外にどういう型を取りうるのか? 変更・追加の可能性は?
> 6. canXXXタイプのメソッドはどのくらい必要なのか? 変更・追加の可能性は?
>
> cat.canOpen(door)のほうが望ましいケースもあれば
> あるクラスがcanXXXメソッドだらけになってメンテ不能になるケースもある
> どういう種類の変化に対して柔軟性を確保しておくのかの選択の問題


いっぱいタイプしてご苦労さん、ほとんどマトモに読む価値なかったよ?wwwwwwww

680 :デフォルトの名無しさん:2017/03/25(土) 20:43:51.86 ID:VqgCatE5
このスレもうだめだわ

681 :デフォルトの名無しさん:2017/03/25(土) 20:45:02.52 ID:Bl9nCmA6
しっかし、よくもまぁ、こんなバカコードを思いつくもんだな…

> catGroup = new CatGroup(cat1, cat2, cat3)
> catGroup.canOpen(door)

なんでアホかはオレ以外の上の方みてもわかるよなw

で、

>>635 : デフォルトの名無しさん2017/03/25(土) 14:17:26.28 ID:yvUY9DOL
> >633
> 俺は勝ったぞ(`・ω・´)

やてwwwwwww

やべぇwwww まじ、ID:yvUY9DOL 脳味噌くさってるwwwww

682 :デフォルトの名無しさん:2017/03/25(土) 20:45:51.33 ID:Bl9nCmA6
>>680

諦めないで、なんで door.canbe_opened_by(cat)  がダメかくらい見届けていったら?
お前が説明してもよろしくってよ?

683 :デフォルトの名無しさん:2017/03/25(土) 20:46:45.09 ID:P+Eymz64
「俺は勝ったぞ」が釣りだと気付かないなんてどれだけ釣堀なんだここは

684 :デフォルトの名無しさん:2017/03/25(土) 20:49:03.36 ID:yvUY9DOL
> catGroup = new CatGroup(cat1, cat2, cat3)
> catGroup.canOpen(door)

え?釣りじゃないよ?
なにがだめなん?

685 :デフォルトの名無しさん:2017/03/25(土) 20:51:03.34 ID:Bl9nCmA6
>>684
>なんでアホかはオレ以外の上の方みてもわかるよなw

読めばいいじゃん。文盲なの? 釣りじゃないよ?

686 :デフォルトの名無しさん:2017/03/25(土) 20:51:11.09 ID:P+Eymz64
結論:どうでもいい

687 :デフォルトの名無しさん:2017/03/25(土) 20:52:36.82 ID:Bl9nCmA6
なんで ID:yvUY9DOL がこんなにアホなのかやっとわかった
1行以上の文章が読めないし、自分の都合のいい箇所しか見えてね―のなw

本当に脳味噌くさってやがったwww

688 :デフォルトの名無しさん:2017/03/25(土) 20:53:41.80 ID:yvUY9DOL
>>687
自分の書き込みの99%をゴミで埋めるお前が悪い

689 :デフォルトの名無しさん:2017/03/25(土) 20:55:09.08 ID:ZnS2c8Uq
長文書く奴はプレゼンの基本を訓練されてこなかった高卒だからしゃあない

690 :デフォルトの名無しさん:2017/03/25(土) 20:55:17.80 ID:Bl9nCmA6
>>688
おまえそれ、正しくお前の言いたいことを書けてるの? 変な文章だけど。

じゃ、言葉のとおりに理解して言うと、
「オレの書き込みの中にゴミはひとかけらもねーよ」

以上。

ばかじゃね? 

691 :デフォルトの名無しさん:2017/03/25(土) 20:57:15.23 ID:P+Eymz64
>>690
馬鹿に決まってるだろ。
そんなことに今まで気づかなかったのか?

692 :デフォルトの名無しさん:2017/03/25(土) 20:57:14.66 ID:Bl9nCmA6
>>689
高卒とかプレゼンとかはどうでもいいけどさ、canOpen()ありきで語ってるのがマヌケなんだよな。
だれもそんなクソメソッドの有効性をみとめてねーのに、
てめーで「こうだ!」とか勝手にかんがえて、そこから論理を展開してる。
根本的に非論理的なんだよ、こいつID:WyZVpsBF

693 :デフォルトの名無しさん:2017/03/25(土) 21:02:17.09 ID:P+Eymz64
>>692
中学生かな?

694 :デフォルトの名無しさん:2017/03/25(土) 21:02:54.87 ID:Bl9nCmA6
こいつもID:WyZVpsBFと同じタイプの長文バカだな

>>592 : デフォルトの名無しさん2017/03/25(土) 12:08:43.80 ID:Hepb4FxQ

狂った前提で一生懸命論理を展開して明後日の方向の結論をだして喜んでる。

695 :デフォルトの名無しさん:2017/03/25(土) 21:06:14.87 ID:Bl9nCmA6
なー、まじ、そろそろコレのキチガイ加減を説明できるマトモなグラマ、こないの?

door.canbe_opened_by(cat, cat, cat);
または
door.canbe_opened_by([cat, cat, cat]);

696 :デフォルトの名無しさん:2017/03/25(土) 21:06:28.78 ID:yvUY9DOL
>>694
何レス目の何行目から理由が書いてあるのかおしえて?

697 :デフォルトの名無しさん:2017/03/25(土) 21:08:43.32 ID:P+Eymz64
>>695
深呼吸して落ち着こう

698 :デフォルトの名無しさん:2017/03/25(土) 21:09:08.25 ID:hqpJ8ypB
一番子供っぽい ID:P+Eymz64

699 :デフォルトの名無しさん:2017/03/25(土) 21:13:15.27 ID:RRHIuX+r
なんつーか、自分も乗っかっといてなんだがこんなしょうもない話題でそんなに熱くなるなよ
扉とか猫とかしょうもない例え話

700 :デフォルトの名無しさん:2017/03/25(土) 21:13:47.43 ID:P+Eymz64
俺はピーターパンみたいな存在だからな。

701 :デフォルトの名無しさん:2017/03/25(土) 21:16:00.40 ID:R9sPsJfE
このスレ見た第三者の俺の感想

FILE *fp = fopen("/dev/null", "wb");

702 :デフォルトの名無しさん:2017/03/25(土) 21:16:54.99 ID:Bl9nCmA6
>>696

>>632 の 1行目から >>664 の 4行目の間

読めって言ったじゃん。
お前は本当に、全部読んで意味を考えろよ。少しはお前の腐った脳もまともになるから。

テメーの都合のいい内容しか読んでね〜からてめーはバカなんだよ。


>>690 : デフォルトの名無しさん2017/03/25(土) 20:55:17.80 ID:Bl9nCmA6
> >688
> おまえそれ、正しくお前の言いたいことを書けてるの? 変な文章だけど。
> じゃ、言葉のとおりに理解して言うと、
> 「オレの書き込みの中にゴミはひとかけらもねーよ」
> 以上。
> ばかじゃね? 

>>691 : デフォルトの名無しさん2017/03/25(土) 20:57:15.23 ID:P+Eymz64
> >690
> 馬鹿に決まってるだろ。
> そんなことに今まで気づかなかったのか?

703 :デフォルトの名無しさん:2017/03/25(土) 21:17:17.78 ID:1PW3zr8p
WM_OPENDOORでもpostしとけばおk

704 :デフォルトの名無しさん:2017/03/25(土) 21:18:13.67 ID:Bl9nCmA6
>>699

おー、おめーは少しはマトモなんだな?

ちょっとこれ説明しろよwwww

695 : デフォルトの名無しさん2017/03/25(土) 21:06:14.87 ID:Bl9nCmA6
なー、まじ、そろそろコレのキチガイ加減を説明できるマトモなグラマ、こないの?

door.canbe_opened_by(cat, cat, cat);
または
door.canbe_opened_by([cat, cat, cat]);

705 :デフォルトの名無しさん:2017/03/25(土) 21:20:23.82 ID:yvUY9DOL
>>702
お前の書き込み一行もねーじゃねーか!w

706 :デフォルトの名無しさん:2017/03/25(土) 21:21:46.64 ID:P+Eymz64
door.canbe_opened_by(cat, cat, cat,cat, cat, cat,cat, cat, cat,cat, cat, cat,
cat, cat, cat,cat, cat, cat,cat, cat, cat,cat, cat, cat,cat, cat, cat,
cat, cat, cat,cat, cat, cat,cat, cat, cat,cat, cat, cat,cat, cat, cat,
cat, cat, cat,cat, cat, cat,cat, cat, cat,);
こうするんだよ。
簡単でしょ。

707 :デフォルトの名無しさん:2017/03/25(土) 21:23:31.14 ID:Bl9nCmA6
>>705 : デフォルトの名無しさん2017/03/25(土) 21:20:23.82 ID:yvUY9DOL
> >702
> お前の書き込み一行もねーじゃねーか!w

こいつ、何言ってんの?
オレの書き込み“以外”って言ったじゃん。

まじ、文盲なのな… かわいそうになってきた、こいつの頭

708 :デフォルトの名無しさん:2017/03/25(土) 21:24:32.56 ID:Bl9nCmA6
オレの書き込みはアホの色眼鏡で歪んじまうから、
オレ以外の第三書の意見を聞いてみろっつってんのに…

本物のアホだな… ID:yvUY9DOL

709 :デフォルトの名無しさん:2017/03/25(土) 21:24:58.12 ID:yvUY9DOL
>>666
よくかんがえたら確かに猫が世界とのかかわりでOpenDoorなどというものを持ってるわけがなかった

ドアにopen,closeだけでなく、かけた力に反応するメソッドをもたして

実装:class Cat { pushObj(obj) { obj.gainPower(catpower); } }
呼出:cat.pushObj(door)

の結果ドアが開いてりゃいい
Bl9nCmA6マジ天才

710 :デフォルトの名無しさん:2017/03/25(土) 21:25:49.78 ID:Bl9nCmA6
>>706
その引数、argvで取るつもりなん? 別にいーけど。
論点はそこじゃねーよ?

711 :デフォルトの名無しさん:2017/03/25(土) 21:26:43.24 ID:Gy0JTtQc
1つのドアを複数のネコが開けようとしたらどうなるかだって?
それはマルチスレッドの問題だろう。

通常は一匹のネコしかさわれないように
同期処理を行う。

712 :デフォルトの名無しさん:2017/03/25(土) 21:26:52.40 ID:Bl9nCmA6
>>709
なんなの? コイツ…

713 :デフォルトの名無しさん:2017/03/25(土) 21:27:45.04 ID:Bl9nCmA6
>>711
> 通常は一匹のネコしかさわれないように
> 同期処理を行う。

お客さまは、そのような仕様を受け入れてはくれません、の設定

714 :デフォルトの名無しさん:2017/03/25(土) 21:32:12.53 ID:P+Eymz64
>>710
適当に書いた文にまでレスするなんてお前マジでイッってるな

715 :デフォルトの名無しさん:2017/03/25(土) 21:35:35.41 ID:P+Eymz64
子猫が3匹捨ててあった場合どうするの?

716 :デフォルトの名無しさん:2017/03/25(土) 21:39:58.22 ID:yvUY9DOL
catGroupがダメな理由はまだ聞いてないぞ

717 :デフォルトの名無しさん:2017/03/25(土) 21:42:43.74 ID:Bl9nCmA6
あれがマジレスだと思ってるって、どんだけレベル低いんだよ…
ただのじゃれ合いのつもりだったのに、致命傷負ってやがる…

718 :デフォルトの名無しさん:2017/03/25(土) 21:44:11.67 ID:Bl9nCmA6
>>716

>オレ以外の上の方みてもわかるよなw
>読めばいいじゃん。文盲なの? 釣りじゃないよ?

719 :デフォルトの名無しさん:2017/03/25(土) 21:45:14.47 ID:Bl9nCmA6
>>715

拾って大切に育てるんだよ? あたりまえじゃん。バカなの?

720 :デフォルトの名無しさん:2017/03/25(土) 22:13:40.72 ID:Bl9nCmA6
なんだ? こいつ ID:P+Eymz64

寝るにしては撤収早くね?

さんざん独り言言ってるからかわいそうだと思ってあいてしてやったのに、
都合がわるくなったら一瞬で退去かよ…

ま、明日またくんだろ。

721 :デフォルトの名無しさん:2017/03/25(土) 22:16:12.69 ID:VqgCatE5
IDがリセットされる2chでしか言えない奴

722 :デフォルトの名無しさん:2017/03/25(土) 22:20:28.20 ID:Bl9nCmA6
>>721

こういうレスは、オブジェクト指向的には自分に対して言ってるって、誰かが名言吐いてたな

723 :デフォルトの名無しさん:2017/03/25(土) 22:21:49.20 ID:VqgCatE5
ちょっと何言ってっかわかんないっすね

724 :デフォルトの名無しさん:2017/03/25(土) 22:24:11.08 ID:yvUY9DOL
Bl9nCmA6が自分で実装したサンプル見せてくれるのを
楽しみに待つスレ

725 :デフォルトの名無しさん:2017/03/25(土) 22:30:57.77 ID:Bl9nCmA6
>>724
「どうか、このマヌケな私めに正しいオブジェクト指向の使い方をご教示いただけませんか? 神よ」
って、30回位毎日唱えてみたら道は開けるかもね。

726 :デフォルトの名無しさん:2017/03/25(土) 22:31:20.11 ID:Gy0JTtQc
>>713
> お客さまは、そのような仕様を受け入れてはくれません、の設定

ではお客様の仕様どおりにしましょう。
さてどのようなの仕様なのですかな?

727 :デフォルトの名無しさん:2017/03/25(土) 22:32:10.51 ID:Bl9nCmA6
>>723
わかんねーの? おまえ、本当にグラマかよ

728 :デフォルトの名無しさん:2017/03/25(土) 22:34:06.38 ID:Bl9nCmA6
>>726

複数の猫が好き勝手にドアを押そうとする仕様をお客様は所望じゃ

729 :デフォルトの名無しさん:2017/03/25(土) 22:34:28.88 ID:BoJVNcT4
>>654
それじゃあ、スレ主みたいに
オブジェクト指向を貶め関数指向を称賛する主張も変な感じだね

相反するもんでもないんだから
ただの愚痴じゃん

730 :デフォルトの名無しさん:2017/03/25(土) 22:38:54.42 ID:OsPiTP2t
猫「あの・・・いつ頃ドアは開くのでしょうか?」

731 :デフォルトの名無しさん:2017/03/25(土) 22:40:39.39 ID:VqgCatE5
>>727
^^

732 :デフォルトの名無しさん:2017/03/25(土) 22:43:09.84 ID:Bl9nCmA6
731 名前:デフォルトの名無しさん 2017/03/25(土) 22:40:39.39 ID:VqgCatE5
>>727
^^

やてwwwwww 負け犬、素敵過ぎるwwwww

733 :デフォルトの名無しさん:2017/03/25(土) 22:43:14.20 ID:uvbjAxXd
>>699
オブジェクト指向スレを建ててはわけわからん難癖つけて
結果として自分を除け者にして周りで議論が始まると
最後は「美少女オブジェクトはうんこしない」とか
自分で荒らして自分で建てたスレ潰すって
こいつのいつもの行動パターンだよ。
「美少女がうんこ」じゃなくて今度は「ネコがドア」だってよwって眺めてるけど。

734 :デフォルトの名無しさん:2017/03/25(土) 22:43:49.62 ID:VqgCatE5
おつかれさまでした

735 :デフォルトの名無しさん:2017/03/25(土) 22:44:14.61 ID:Bl9nCmA6
>>730
悪いな、バカしかいねーからこの世界でドアは開かねーよ

最初からオレのところに札束持ってきたら良かったのにな

736 :デフォルトの名無しさん:2017/03/25(土) 22:44:57.06 ID:Bl9nCmA6
734 : デフォルトの名無しさん2017/03/25(土) 22:43:49.62 ID:VqgCatE5
おつかれさまでした


やてwwwwww 負け犬、素敵過ぎるwwwww

737 :デフォルトの名無しさん:2017/03/25(土) 22:45:52.36 ID:WyZVpsBF
ネコがドアを開けるゲームなのこれ?
力の弱いネコは重いドアを開けられないからレベルアップ必要とか

738 :デフォルトの名無しさん:2017/03/25(土) 22:46:22.80 ID:Bl9nCmA6
>>733
なんかわからん話してるとこ申し訳ないけど、「こいつ」ってドイツなん? オランダなん?
お前、妄想でも見えるん?

739 :デフォルトの名無しさん:2017/03/25(土) 22:46:59.11 ID:hqpJ8ypB
はい

740 :デフォルトの名無しさん:2017/03/25(土) 22:48:04.65 ID:Bl9nCmA6
>>737
おー、おまえ、少しだけマトモなこと言い始めたな

そうだよ、力の強い猫も弱い猫もいるわな。

いーよ、おまえ、なかなかいーよ♪

741 :デフォルトの名無しさん:2017/03/25(土) 22:48:59.12 ID:Bl9nCmA6
739 : デフォルトの名無しさん2017/03/25(土) 22:46:59.11 ID:hqpJ8ypB
はい

お ま え だ れ  だ よ ! ! ! ? ? ?

死ね!

742 :デフォルトの名無しさん:2017/03/25(土) 22:49:27.57 ID:Gy0JTtQc
>>728
> 複数の猫が好き勝手にドアを押そうとする仕様をお客様は所望じゃ
その場合はどうなるのかを聞いているのですが?

743 :デフォルトの名無しさん:2017/03/25(土) 22:50:26.47 ID:hqpJ8ypB
>>741
お前も誰だよ

744 :デフォルトの名無しさん:2017/03/25(土) 22:52:21.21 ID:Bl9nCmA6
すげーな、ID:WyZVpsBF が、たった1日で随分進化しやがった。
単細胞生物だと思ってたのに、なんかプラナリアくらいには進化したんじゃね? くらいの発言だぞ、それ

745 :デフォルトの名無しさん:2017/03/25(土) 22:52:28.68 ID:Hepb4FxQ
現実世界をシミュレートできるらしいオブジェクト指向言語は
キャットドアも実装できんかったか

746 :デフォルトの名無しさん:2017/03/25(土) 22:53:43.50 ID:Bl9nCmA6
743 : デフォルトの名無しさん2017/03/25(土) 22:50:26.47 ID:hqpJ8ypB
>>741
お前も誰だよ


あのさ、論理破綻したバカはしゃべらなくていいから。

「お前に聞いてねーのに返事するマヌケのお前は一体誰だ?」って言ってるんだけど、
お前の論旨はどうなってんの?

死ねよ、ホント

747 :デフォルトの名無しさん:2017/03/25(土) 22:54:24.46 ID:hqpJ8ypB
>>746
俺が死ぬ理由がない

748 :デフォルトの名無しさん:2017/03/25(土) 22:54:29.09 ID:Bl9nCmA6
>>745
お前みたいなマヌケには実装できなかったみたいだなw

749 :デフォルトの名無しさん:2017/03/25(土) 22:55:12.71 ID:Bl9nCmA6
>>747
ゴミは、自分が焼却される理由を分かってないよな

750 :デフォルトの名無しさん:2017/03/25(土) 22:55:39.95 ID:hqpJ8ypB
>>749
お前もな

751 :デフォルトの名無しさん:2017/03/25(土) 22:56:24.30 ID:Bl9nCmA6
750 : デフォルトの名無しさん2017/03/25(土) 22:55:39.95 ID:hqpJ8ypB
>>749
お前もな


あのさ、論理破綻したバカはしゃべらなくていいから。
お前の論旨はどうなってんの?

死ねよ、ホント

752 :デフォルトの名無しさん:2017/03/25(土) 22:56:43.06 ID:Gy0JTtQc
>>745
できるよw

ドアというオブジェクトがあって
そのオブジェクトに力をかける。

力をかけるネコは当然何匹でも良い。
それぞれのネコ(オブジェクト)がそれぞれ力をかけるのだから。
力がかかったオブジェクト(ドア)はその力の合計によって動く

引数にネコがたくさんあるなんて馬鹿げた関数は不要。
そんなものを考えるやつがオブジェクト指向をを解してないだけ
自分の作り上げた変な関数を、自分で侮辱しているだけなのだ

オブジェクト指向だとこのようにシンプルに設計できる

753 :デフォルトの名無しさん:2017/03/25(土) 22:57:22.54 ID:yvUY9DOL
>>742

>>422-423
これを金曜日の昼頃から延々やっている

754 :デフォルトの名無しさん:2017/03/25(土) 22:58:37.45 ID:Bl9nCmA6
>>752

まぁ、合格だな

オレならもうちょっと突っ込んだとこまで説明するけど、それは
お前のレスに更にアホが食いついてきた時のためにとっておく。

な、オレが言ってること、ずーーーーーーーーーーっと前から正しかったろ?

755 :デフォルトの名無しさん:2017/03/25(土) 22:59:09.14 ID:hqpJ8ypB
>>751
どーでもいいけどファビョりすぎじゃない?

756 :デフォルトの名無しさん:2017/03/25(土) 22:59:47.99 ID:Bl9nCmA6
>>753

長引かせてるマヌケの張本人がいう言葉とも思えん…

757 :デフォルトの名無しさん:2017/03/25(土) 23:00:31.29 ID:Bl9nCmA6
>>755

ファビョってるの、お ま え ら wwwww

お前らの言ってること、欠片も正当性ないじゃん、糞チョン脳どもw

758 :デフォルトの名無しさん:2017/03/25(土) 23:00:38.19 ID:Gy0JTtQc
>>754

144レスも使っても説明できないお前と一緒にすんなやw

759 :デフォルトの名無しさん:2017/03/25(土) 23:01:12.19 ID:hqpJ8ypB
>>758
無能ってことだね

760 :デフォルトの名無しさん:2017/03/25(土) 23:03:11.28 ID:Bl9nCmA6
>>758
マヌケだな、全部おしえてやったら、お前らバカは全く学習しねーじゃん。
だからヒントだけ出し続けてお前らを導いてやってんのに、何言ってんだよ。

お前のレス>>752が完璧だと思ってるのか? バカだろお前

「まぁ、合格だな」が、「正解です」だと勘違いしたのか?

ばーーーーーーーーーーーーかwwwwwww

761 :デフォルトの名無しさん:2017/03/25(土) 23:03:29.71 ID:Bl9nCmA6
>>759
お前がね

762 :デフォルトの名無しさん:2017/03/25(土) 23:04:04.91 ID:hqpJ8ypB
なむなむ

763 :デフォルトの名無しさん:2017/03/25(土) 23:05:28.67 ID:Bl9nCmA6
試しにさ、これの擬似コード書いてみろよ >>ID:Gy0JTtQc
CatクラスとDoorクラスの実装♪

それでお前がどの程度まで理解してるのか分かるからさwww



>>752 : デフォルトの名無しさん2017/03/25(土) 22:56:43.06 ID:Gy0JTtQc
> >745
> できるよw
>
> ドアというオブジェクトがあって
> そのオブジェクトに力をかける。
>
> 力をかけるネコは当然何匹でも良い。
> それぞれのネコ(オブジェクト)がそれぞれ力をかけるのだから。
> 力がかかったオブジェクト(ドア)はその力の合計によって動く
>
> 引数にネコがたくさんあるなんて馬鹿げた関数は不要。
> そんなものを考えるやつがオブジェクト指向をを解してないだけ
> 自分の作り上げた変な関数を、自分で侮辱しているだけなのだ
>
> オブジェクト指向だとこのようにシンプルに設計できる

764 :デフォルトの名無しさん:2017/03/25(土) 23:05:56.67 ID:Bl9nCmA6
>>762
自分が死ぬために念仏唱えてるのか、ご苦労様

765 :デフォルトの名無しさん:2017/03/25(土) 23:06:41.67 ID:Bl9nCmA6
ほんと、ID:hqpJ8ypB みたいに頭悪いのに必死で1行レスして食らいついてくるバカばっかなのな。

クソグラマしかいねーのかよ、マジ

766 :デフォルトの名無しさん:2017/03/25(土) 23:07:26.68 ID:yvUY9DOL
別にほかの説明が間違ってるわけでも全然ないからな

現実の実装だとドアの管理にcatクラス作るあほはおらん
凝ってもdoor.canbe_opened_by(petSize) とか

767 :デフォルトの名無しさん:2017/03/25(土) 23:08:49.08 ID:Bl9nCmA6
それとついでだ、 >>ID:Gy0JTtQc

door.canbe_opened_by(cat, cat, cat);
または
door.canbe_opened_by([cat, cat, cat]);

これのバカサ加減についても説明しろ。
できんだろ? 本当に理解しているなら

768 :デフォルトの名無しさん:2017/03/25(土) 23:09:53.54 ID:Gy0JTtQc
できないやつほど、他人にやってみせろっていうんだよね(苦笑)

769 :デフォルトの名無しさん:2017/03/25(土) 23:10:02.32 ID:Bl9nCmA6
お前はそろそろバカ過ぎてついて来れてないって気付こうな 3年ROMった方がいいよ

------------------------------------------------------------------
766 : デフォルトの名無しさん2017/03/25(土) 23:07:26.68 ID:yvUY9DOL
別にほかの説明が間違ってるわけでも全然ないからな

現実の実装だとドアの管理にcatクラス作るあほはおらん
凝ってもdoor.canbe_opened_by(petSize) とか

770 :デフォルトの名無しさん:2017/03/25(土) 23:10:32.46 ID:Bl9nCmA6
>>768
試してみればいいじゃんw

本当にオレが出来ないのか、お前がやってみればわかることじゃんwwwww

771 :デフォルトの名無しさん:2017/03/25(土) 23:10:44.83 ID:Gy0JTtQc
そもそもだね。俺は忙しんだよ。これ読むので。

http://ncode.syosetu.com/n8541cr/ 👀
Rock54: Caution(BBR-MD5:0be20a4887bc3d3353f527d3636c44e3)


772 :デフォルトの名無しさん:2017/03/25(土) 23:11:47.64 ID:Bl9nCmA6
どうしたのかなー? さっきの威勢は????

オレとは違うって、言い張ってたんじゃなかったのかなー???wwwwwww

-------------------------------------------------------------------
758 : デフォルトの名無しさん2017/03/25(土) 23:00:38.19 ID:Gy0JTtQc
>>754

144レスも使っても説明できないお前と一緒にすんなやw

773 :デフォルトの名無しさん:2017/03/25(土) 23:11:49.49 ID:yvUY9DOL
>本当にオレが出来ないのか、お前がやってみればわかることじゃんwwwww

文章がバグってる

774 :デフォルトの名無しさん:2017/03/25(土) 23:11:58.08 ID:hqpJ8ypB
で、お前らオブジェクト指向の何がわからないの?

775 :デフォルトの名無しさん:2017/03/25(土) 23:12:27.58 ID:Bl9nCmA6
771 : デフォルトの名無しさん2017/03/25(土) 23:10:44.83 ID:Gy0JTtQc
そもそもだね。俺は忙しんだよ。これ読むので。



いーーーーーーーーひゃっひゃっひゃっひゃ、逃げやがったw−−−−−−−−−−−wwww

776 :デフォルトの名無しさん:2017/03/25(土) 23:12:40.34 ID:Gy0JTtQc
> 本当にオレが出来ないのか、お前がやってみればわかることじゃんwwwww

どういう理屈?

お前がやって見せないと、わかるわけがないだろう?

まず最初に理屈を教えてくれ。

777 :デフォルトの名無しさん:2017/03/25(土) 23:12:49.84 ID:Bl9nCmA6
>>774
分かってないのは、お ま え だ け ♪

778 :デフォルトの名無しさん:2017/03/25(土) 23:13:15.71 ID:Gy0JTtQc
>>775
おい、リンクを省略すんな。
重要なところだぞ
わざとか?

779 :デフォルトの名無しさん:2017/03/25(土) 23:13:48.64 ID:Bl9nCmA6
>>776
>どういう理屈?

おまえ、やるじゃん

おれ、間違いをしてきするじゃん

理由をせつめいするじゃん

おまえ、ぐうの値もでないじゃん

おれ、勝利じゃん


ばかなの?

780 :デフォルトの名無しさん:2017/03/25(土) 23:14:30.91 ID:hqpJ8ypB
やれやれ

781 :デフォルトの名無しさん:2017/03/25(土) 23:14:31.72 ID:Bl9nCmA6
>>778
そう、わ ざ と 

どうでもいいから、 わ ざ と

ばーーーーーーーーーーーーか

782 :デフォルトの名無しさん:2017/03/25(土) 23:14:45.92 ID:vdXeyx6o
実装の前に仕様が分からん
厄介な顧客の対応演習みたいなものなのかな

783 :デフォルトの名無しさん:2017/03/25(土) 23:15:30.29 ID:Bl9nCmA6
>>780
そんなどうでもいい一行レス、一生懸命しなくてもいいのに
アホって素敵ね

おまえでもよくってよ?
遁走しようと必死な ID:Gy0JTtQcに変わって説明してくれても

784 :デフォルトの名無しさん:2017/03/25(土) 23:15:33.63 ID:hqpJ8ypB
無駄なレスが多すぎて本題が見えない
何をそんなにやりやってんの?

785 :デフォルトの名無しさん:2017/03/25(土) 23:16:15.29 ID:Bl9nCmA6
>>782
>厄介な顧客の対応演習みたいなものなのかな

真面目に答えてやると、笑点のお題みたいなもの? くじゅあんだーすたん?

786 :デフォルトの名無しさん:2017/03/25(土) 23:16:48.30 ID:Gy0JTtQc
> 何をそんなにやりやってんの?

みんなで餌をやりあってるんじゃないの?
ID:Bl9nCmA6 にw

787 :デフォルトの名無しさん:2017/03/25(土) 23:16:47.71 ID:Bl9nCmA6
>>784
おまえの知能の欠陥による理解力の不足の事など、知らん

788 :デフォルトの名無しさん:2017/03/25(土) 23:17:27.26 ID:yvUY9DOL
>>782
顧客がドアやペットの小売りなのか
ゲーム開発してるのかすらわからんからな

両方混ぜた変なシステムになりそう

789 :デフォルトの名無しさん:2017/03/25(土) 23:17:35.64 ID:Bl9nCmA6
>>786
そういう自分に都合の良い解釈ばっかしてるとボケるよ?

どうでもいいから実装かけよw
お前が書いた仕様だろw

790 :デフォルトの名無しさん:2017/03/25(土) 23:18:30.64 ID:Bl9nCmA6
784 : デフォルトの名無しさん2017/03/25(土) 23:15:33.63 ID:hqpJ8ypB
無駄なレスが多すぎて本題が見えない



本題が見えないのに参加してきちゃったバカwwwwwwwwwww

やっべ、クソグラマ、やっべwwwwww

791 :デフォルトの名無しさん:2017/03/25(土) 23:19:27.21 ID:hqpJ8ypB
元のお題のレス教えて

792 :デフォルトの名無しさん:2017/03/25(土) 23:20:19.94 ID:Bl9nCmA6
しかも、本当に無駄なレスしかしてないのは、お ま え ♪



----------------------------------------------------------------------
755 : デフォルトの名無しさん2017/03/25(土) 22:59:09.14 ID:hqpJ8ypB
>>751
どーでもいいけどファビョりすぎじゃない?

759 : デフォルトの名無しさん2017/03/25(土) 23:01:12.19 ID:hqpJ8ypB
>>758
無能ってことだね

762 : デフォルトの名無しさん2017/03/25(土) 23:04:04.91 ID:hqpJ8ypB
なむなむ

780 : デフォルトの名無しさん2017/03/25(土) 23:14:30.91 ID:hqpJ8ypB
やれやれ

793 :デフォルトの名無しさん:2017/03/25(土) 23:20:25.33 ID:hqpJ8ypB
>>786
まあそうかもしれんが、真面目にそろそろ終わらせればいいんじゃないかな

794 :デフォルトの名無しさん:2017/03/25(土) 23:20:51.37 ID:Bl9nCmA6
>>791
読めばいいじゃん、も ん も う く ん ♪

795 :デフォルトの名無しさん:2017/03/25(土) 23:22:13.18 ID:Bl9nCmA6
>>793
このバカ ID:Gy0JTtQc が
“自分の書いた仕様”についての実装を説明したら、終わるいとぐちが見えるかもねー♪

796 :デフォルトの名無しさん:2017/03/25(土) 23:22:16.57 ID:Gy0JTtQc
>>789
> お前が書いた仕様だろw

仕様書いてないよ?
馬鹿なのかな?

797 :デフォルトの名無しさん:2017/03/25(土) 23:22:48.22 ID:Bl9nCmA6
やっべ、マジやっべ、

なんでこんなマヌケどもしか湧いてこないの?wwwwww

798 :デフォルトの名無しさん:2017/03/25(土) 23:23:16.50 ID:Gy0JTtQc
意訳 俺以外は全員マヌケ

799 :デフォルトの名無しさん:2017/03/25(土) 23:24:08.21 ID:Bl9nCmA6
>>796
ほら、なんとか話をそらそうと、どうでもいいこと言い出したwwwww

これ、同実装するの?って話なことくらい、人間なら分かるよね? ロボなの?wwwww

------------------------------------------------------------------
752 : デフォルトの名無しさん2017/03/25(土) 22:56:43.06 ID:Gy0JTtQc
>>745
できるよw

ドアというオブジェクトがあって
そのオブジェクトに力をかける。

力をかけるネコは当然何匹でも良い。
それぞれのネコ(オブジェクト)がそれぞれ力をかけるのだから。
力がかかったオブジェクト(ドア)はその力の合計によって動く

引数にネコがたくさんあるなんて馬鹿げた関数は不要。
そんなものを考えるやつがオブジェクト指向をを解してないだけ
自分の作り上げた変な関数を、自分で侮辱しているだけなのだ

オブジェクト指向だとこのようにシンプルに設計できる

800 :デフォルトの名無しさん:2017/03/25(土) 23:24:31.33 ID:OsPiTP2t
終わったな
オブジェクト指向はキャットドアを付けるだけで破綻する

801 :デフォルトの名無しさん:2017/03/25(土) 23:24:34.32 ID:Bl9nCmA6
>>798
そうだよ? さっきもそうだけど、おまえ、たまには正しいこと言うね

802 :デフォルトの名無しさん:2017/03/25(土) 23:25:07.49 ID:Gy0JTtQc
>>799
それ仕様じゃないって理解できてないの?

803 :デフォルトの名無しさん:2017/03/25(土) 23:25:29.35 ID:Bl9nCmA6
>>800
だれもキャットドアなんか想定してねーってまだわかんねーのかゴミクズ!

お前だけは本当に吊れ!

804 :デフォルトの名無しさん:2017/03/25(土) 23:26:05.29 ID:Bl9nCmA6
>>802
仕様かどうかなんて、今関係ねーって理解できてないの?

805 :デフォルトの名無しさん:2017/03/25(土) 23:26:22.32 ID:Gy0JTtQc
>>801
> おまえ、たまには正しいこと言うね

マヌケなのに正しいんだ(笑)

ってことやマヌケじゃないってのが正解だろうね

806 :デフォルトの名無しさん:2017/03/25(土) 23:26:32.97 ID:Bl9nCmA6
なんとか必死に言い逃れしようとする ID:Gy0JTtQc が、惨め過ぎるwwwww

807 :デフォルトの名無しさん:2017/03/25(土) 23:26:55.16 ID:Gy0JTtQc
>>804

> どうでもいいから実装かけよw
> お前が書いた仕様だろw


仕様かどうかなんて、今関係ねーって理解できてないの?

808 :デフォルトの名無しさん:2017/03/25(土) 23:27:21.32 ID:OsPiTP2t
>>803
キャットドアも付かないなんて大した汎用性だな

809 :デフォルトの名無しさん:2017/03/25(土) 23:27:54.15 ID:Bl9nCmA6
>>805
>俺以外は全員マヌケ

お前、オレの言葉の意訳として書いたんだよな?

正しいじゃん。お前、何いってんの?

810 :デフォルトの名無しさん:2017/03/25(土) 23:28:24.48 ID:Bl9nCmA6
>>805 の頭がとうとう狂い始めましたwwwwww

811 :デフォルトの名無しさん:2017/03/25(土) 23:29:27.98 ID:Bl9nCmA6
>>808
キャットドアを付けるのが汎用的なのか、おまえの中では 
本当に、砕け散れ!

812 :デフォルトの名無しさん:2017/03/25(土) 23:29:56.14 ID:VqgCatE5
自分だけはバカじゃないという前提

813 :デフォルトの名無しさん:2017/03/25(土) 23:30:27.68 ID:Bl9nCmA6
だからさ、お前は馬鹿すぎるんだから、反論なんてしなくていいからさ

>>805 : デフォルトの名無しさん2017/03/25(土) 23:26:22.32 ID:Gy0JTtQc

とっとと、この実装を書いて晒せよ、ゴミカス

------------------------------------------------------------------
752 : デフォルトの名無しさん2017/03/25(土) 22:56:43.06 ID:Gy0JTtQc
>>745
できるよw

ドアというオブジェクトがあって
そのオブジェクトに力をかける。

力をかけるネコは当然何匹でも良い。
それぞれのネコ(オブジェクト)がそれぞれ力をかけるのだから。
力がかかったオブジェクト(ドア)はその力の合計によって動く

引数にネコがたくさんあるなんて馬鹿げた関数は不要。
そんなものを考えるやつがオブジェクト指向をを解してないだけ
自分の作り上げた変な関数を、自分で侮辱しているだけなのだ

オブジェクト指向だとこのようにシンプルに設計できる

814 :デフォルトの名無しさん:2017/03/25(土) 23:31:02.21 ID:Bl9nCmA6
>>812
前提じゃなくて、事実なんだよ、いい加減に気付け

815 :デフォルトの名無しさん:2017/03/25(土) 23:33:58.82 ID:Bl9nCmA6
アホなグラマって、論理構造いじってるから自分が論理的だと勘違いするんだけど
こういう、破綻したことを平然というノータリンばっかなんだよな、実際

--------------------------------------------------------------------
805 : デフォルトの名無しさん2017/03/25(土) 23:26:22.32 ID:Gy0JTtQc
>>801
> おまえ、たまには正しいこと言うね

マヌケなのに正しいんだ(笑)

ってことやマヌケじゃないってのが正解だろうね
--------------------------------------------------------------------

816 :デフォルトの名無しさん:2017/03/25(土) 23:35:11.03 ID:Bl9nCmA6
もう一回言うぞ、お前は馬鹿すぎるんだから、反論なんてしなくていいからさ

>>805 : デフォルトの名無しさん2017/03/25(土) 23:26:22.32 ID:Gy0JTtQc

とっとと、この実装を書いて晒せよ、ゴミカス

------------------------------------------------------------------
752 : デフォルトの名無しさん2017/03/25(土) 22:56:43.06 ID:Gy0JTtQc
>>745
できるよw

ドアというオブジェクトがあって
そのオブジェクトに力をかける。

力をかけるネコは当然何匹でも良い。
それぞれのネコ(オブジェクト)がそれぞれ力をかけるのだから。
力がかかったオブジェクト(ドア)はその力の合計によって動く

引数にネコがたくさんあるなんて馬鹿げた関数は不要。
そんなものを考えるやつがオブジェクト指向をを解してないだけ
自分の作り上げた変な関数を、自分で侮辱しているだけなのだ

オブジェクト指向だとこのようにシンプルに設計できる

817 :デフォルトの名無しさん:2017/03/25(土) 23:38:10.20 ID:Gy0JTtQc
なんんか Bl9nCmA6 がトチ狂ってるなw
でもな、まだ5章を読んでるところなんだ
君のようにヒマじゃないんだよ

818 :デフォルトの名無しさん:2017/03/25(土) 23:41:46.42 ID:Bl9nCmA6
>>817
んー、別に終わってからでいいよ? ずーっと待ってるから
言っとくけど、おれ、しつこいからね?
逃げたら一生馬鹿レス晒しつずけるよ♪

819 :デフォルトの名無しさん:2017/03/25(土) 23:43:18.36 ID:Bl9nCmA6
>>817
トチ狂ったの、どうみてもお前じゃんw

820 :デフォルトの名無しさん:2017/03/25(土) 23:44:16.18 ID:Gy0JTtQc
じゃあ終わってからな。
いつ終わるか知らないけど。
1週間に1話公開で最新話は2017/03/04公開のようだ

821 :デフォルトの名無しさん:2017/03/25(土) 23:46:02.07 ID:OsPiTP2t
オブジェクト指向ではドアにキャットドアは付かない

822 :デフォルトの名無しさん:2017/03/25(土) 23:47:38.89 ID:Gy0JTtQc
>>821
お前オブジェクト指向分かってないんだからw
また自分の考えた設計を
自分自身で罵倒する気かw

823 :デフォルトの名無しさん:2017/03/25(土) 23:49:23.11 ID:hqpJ8ypB
オブジェクト指向理解できない奴なんかいないだろ…

824 :デフォルトの名無しさん:2017/03/25(土) 23:50:07.08 ID:yvUY9DOL
おさらい

要件
>>422-423

追加案件
>>592

825 :デフォルトの名無しさん:2017/03/25(土) 23:50:24.41 ID:Bl9nCmA6
>>820
その間、ずっとお前を貶しつづけるけどね。
お前は読むのに忙しくて反論なんかできねーよなw
てか、忙しいのになんでさっきから馬鹿レスしてるん?
コードかけんしゃん♪

826 :デフォルトの名無しさん:2017/03/25(土) 23:51:58.84 ID:Bl9nCmA6
>>822
おめーは黙って向こう読んでろ、ゴミカス

827 :デフォルトの名無しさん:2017/03/25(土) 23:52:37.89 ID:Gy0JTtQc
そういや最近の言語というか開発環境すごいよね。
Unity使ったんだけど、物理演算機能が実装されていて
例えば、ドアオブジェクトを作って、
そこに力をかけると、ドアが開くとか
かんたんに実装できそうだ。
オブジェクト指向すごいよね

828 :デフォルトの名無しさん:2017/03/25(土) 23:54:34.68 ID:Bl9nCmA6
馬鹿が話を必死に変えようとし始めました
よほど都合が悪い事があるようです

829 :デフォルトの名無しさん:2017/03/25(土) 23:55:34.15 ID:yvUY9DOL
使うのは超簡単だけど
作るのは大概は超大変

パンピーは天才たちがつくったオブジェクトを使わせてもらって
手続き型で従来通り組めばいいんです

830 :デフォルトの名無しさん:2017/03/25(土) 23:55:36.10 ID:Bl9nCmA6
む こ う
読むんじゃなかったの?

831 :デフォルトの名無しさん:2017/03/25(土) 23:57:20.84 ID:WyZVpsBF
>>824
結局何の用途に使うためモデリングするのか分からないと
どういうモデルがいいのかなんて決まらない

あるモデルがいいって主張してる人は頭の中でなんらかの用途を想定してるだろうから
それも書けばこの無駄レスの応酬から抜け出せるかもね

832 :デフォルトの名無しさん:2017/03/25(土) 23:57:32.09 ID:Gy0JTtQc
お前が話が変わらないように頑張れやw

833 :デフォルトの名無しさん:2017/03/25(土) 23:57:52.47 ID:Gy0JTtQc
>>830
> 読むんじゃなかったの?

読んでるぞーw

834 :デフォルトの名無しさん:2017/03/26(日) 00:02:00.02 ID:7dOJEWlC
>>831
そのとおりだな。

具体的な仕様が決まっていないならば、
現実世界をシミュレートするしかない。
それはそれでオブジェクト指向の得意とするところなんだが、

非現実世界であれば、ドア開け専用ネコみたいな
ものだって作れるからな。

835 :デフォルトの名無しさん:2017/03/26(日) 00:02:59.99 ID:zz1arhc3
おつかれさまでした

836 :デフォルトの名無しさん:2017/03/26(日) 00:05:11.30 ID:KSncMErM
>>833
なんだ? このノータリンアピール…

脳みそ腐ってるやつの行動は本当に理解できんな…

837 :デフォルトの名無しさん:2017/03/26(日) 00:05:52.20 ID:zz1arhc3
ID:Bl9nCmA6 = ID:KSncMErM

838 :デフォルトの名無しさん:2017/03/26(日) 00:07:09.64 ID:KSncMErM
>>831
どういう風に話が展開してるか理解できない馬鹿はロムってていいんだよ?

839 :デフォルトの名無しさん:2017/03/26(日) 00:08:13.04 ID:KSncMErM
>>837
そんなの書かなきゃわからねーの、お前みたいなアホだけだよ

840 :デフォルトの名無しさん:2017/03/26(日) 00:08:37.25 ID:9GEo9DLb
オブジェクト指向は駄目だなw

841 :デフォルトの名無しさん:2017/03/26(日) 00:11:20.99 ID:7dOJEWlC
>>837
はずれwww

842 :デフォルトの名無しさん:2017/03/26(日) 00:19:36.80 ID:zz1arhc3
すまん、>>618のレス見落としてた…

843 :デフォルトの名無しさん:2017/03/26(日) 00:20:49.02 ID:7dOJEWlC
>>842
良いってことよ

844 :デフォルトの名無しさん:2017/03/26(日) 00:27:44.74 ID:fIyCs4Ls
>>834
仕様じゃなくて用途・目的・WHY
何に使うためにドアやネコをモデリングしようとしてるのか

現実世界をシミュレートしようとしたところで
モデルの優劣なんて決まらないから時間の無駄だよ

845 :デフォルトの名無しさん:2017/03/26(日) 00:29:43.88 ID:7dOJEWlC
>>844
> 何に使うためにドアやネコをモデリングしようとしてるのか

それを俺が最初から聞いているんだが?

846 :デフォルトの名無しさん:2017/03/26(日) 00:29:54.62 ID:zz1arhc3
たぶん、ドア、猫のお題をもう一度整理した方がみんなの認識が合うと思う
逆にそこが曖昧だから全然話がかみ合ってないんだと思う

847 :デフォルトの名無しさん:2017/03/26(日) 00:39:00.60 ID:CxBsJ1k9
結局誰も正しいお題を理解してなかっただけって言うオチ?

848 :デフォルトの名無しさん:2017/03/26(日) 00:46:44.57 ID:zz1arhc3
そんなところだろうね
DoorクラスとCatクラスがあるとして、それらをどのような目的で関連付けて何を処理したいのかが明確になっていないと思う

849 :デフォルトの名無しさん:2017/03/26(日) 00:52:28.63 ID:CxBsJ1k9
さっきまでの勢いが嘘のようだな…
オブジェクト指向を理解できない人なんていないんだよ
大概原因は要件定義がちゃんとできてないことによるミスアンダースタンディング

850 :デフォルトの名無しさん:2017/03/26(日) 00:57:29.97 ID:/dNZ7b2A
>>834

>非現実世界であれば、ドア開け専用ネコみたいな
>ものだって作れるからな。

想像して噴いた

851 :デフォルトの名無しさん:2017/03/26(日) 00:59:28.71 ID:zz1arhc3
そもそもお題が意味不明なのが諸悪の根元

852 :デフォルトの名無しさん:2017/03/26(日) 01:04:46.72 ID:/dNZ7b2A
オブジェクト指向が日本人向けじゃないことは理解してる
スレ主が言いたいのは、そういうことだったのかな

とはいえ、オブジェクト指向を超える概念を作れる
日本人計算機科学者が居ないんだから
仕方ないんだよ

853 :デフォルトの名無しさん:2017/03/26(日) 01:05:39.18 ID:9GEo9DLb
猫「あ、もういいんで、ドア開かなくて」

854 :デフォルトの名無しさん:2017/03/26(日) 01:06:35.42 ID:fIyCs4Ls
>>422-423を見てきたけど
建築基準法とか出てきてるからドアのカタログでも管理したいんじゃないの
でもこれだとデータの話しかしてないからドアのカタログスペックをデータベースにでも入れとけばいい話

855 :デフォルトの名無しさん:2017/03/26(日) 01:06:43.10 ID:zz1arhc3
>>852
オブジェクト指向が日本人向きじゃないとは全然思わないけどな…

856 :デフォルトの名無しさん:2017/03/26(日) 01:18:22.89 ID:CxBsJ1k9
>>422-423
オブジェクト指向以前に一体何がしたいのか…
猫にドアを開けさせたくて、ドアを開けるメソッドと、開けられるかどうかを調べるメソッドを定義したいのか
その辺を明確にしてくれ

857 :デフォルトの名無しさん:2017/03/26(日) 01:18:31.86 ID:fIyCs4Ls
DoorクラスとCatクラスが必要そうなゲームでも作れば

「ワンにゃん大冒険 オブジェクト邸の謎(仮)」
犬や猫が洋館の中を人間に隠れて冒険しながら謎を解くゲーム
4人まで協力プレイ可

ドアや窓にはいろんな種類がありそれぞれ開け方や開く条件が異なる


858 :デフォルトの名無しさん:2017/03/26(日) 01:53:09.12 ID:pXpbP+f8
いきなり広げすぎw

859 :デフォルトの名無しさん:2017/03/26(日) 01:58:23.74 ID:I6sXpNjB
2ちゃんで考えるなら
Boardクラス、Threadクラス、Userクラスって感じで分けて
各々の仕事やって必要あれば連携するわけでしょ?
ねこです、おねがいします。じゃないんだから
もっと具体的な例で話し合えよ

BoardはThreadを管理して
Threadはuser.WriteToThreadから書き込み受け取ってーみたいな
UserはuserのIDを24時間保持する、とかなんとか

860 :デフォルトの名無しさん:2017/03/26(日) 02:20:40.86 ID:zz1arhc3
例えばこんな感じ?

<Doorクラス>
フィールド:
・private int doorType // ドアの種類
 (定数:HINGED_DOOR_WITH_KNOB, HINGED_DOOR_WITHOUT_KNOB, SLIDING_DOOR)
・private int doorStatus // ドアの状態
 (定数:OPENED, CLOSED, BROKEN)

メソッド:
・public void setType(int type); // ドアタイプを変更
・public boolean open(); // ドアを開ける(戻り値 true:成功、false:失敗)
・public booloan close(); // ドアを閉める(戻り値 true:成功、false:失敗)
・public String getType(); // ドアの種類を返す(戻り値 doorTypeのStringインスタンス)
・public int getStatus(); // ドアの状態を返す

コンストラクタ:
・Door(); // デフォルト
・Door(int type); // タイプのみ指定、doorStatusはClosed
・Door(int type, int status); // タイプ、statusの両方指定してinstantiate

861 :デフォルトの名無しさん:2017/03/26(日) 02:21:12.84 ID:zz1arhc3
<Catクラス>
フィールド:
・private String name // 名前
・private float weight // 体重
・private int sex // 性別
 (定数:MALE, FEMALE)
・private Color color // 色

メソッド:
・public void setName(String name); // 猫の名前を設定
・public void setWeight(float weight); // 猫の体重を設定
・public void setSex(int sex); // 猫の性別を設定:Cat.MALE, Cat.FEMALE
・public void setColor(Color color); // 猫の色を設定
・public boolean openDoor(Door door); // その猫がdoorをOpen状態にする(戻り値 true:成功、false:失敗)
※this.canOpenDoor(door)の戻り値がtrueならdoor.open()を呼ぶ
・public boolean canOpenDoor(Door door); // その猫がdoorを開けられるかどうか調べる
 ※door.getType()がHINGED_DOOR_WITHOUT_KNOBの時のみtrueを返す

コンストラクタ:
・Cat(); // デフォルト
・Cat(name, weight, sex, color); // 名前、体重、性別、色全て指定してinstantiate

862 :デフォルトの名無しさん:2017/03/26(日) 03:40:11.35 ID:5CZauTMv
ええやん

863 :デフォルトの名無しさん:2017/03/26(日) 05:28:45.51 ID:EKCv78dE
だいたいこんなかんじ?
javaじゃないが……変数名は合わせたよ、rubyぽくなくなったけど

http://ideone.com/Ww11nA

864 :デフォルトの名無しさん:2017/03/26(日) 05:39:39.25 ID:6T6lVuSZ
>>863
怪しげな短縮アド貼るのはNG

865 :デフォルトの名無しさん:2017/03/26(日) 05:48:48.41 ID:EKCv78dE
>>864
いやまてideone.com(Web上で好きなコード実行してくれるサービス)知らんとか
ないだろ……

866 :デフォルトの名無しさん:2017/03/26(日) 06:00:57.42 ID:EKCv78dE
クラスネタだとさあ、大半の人は

・なんかの変数を持ってて
・なんかを引数に入れたら
・中身で(だいたいprivateメソッドで)なんか計算して(副作用含む)
・なんか返すブツ

くらいしか考えてなくない?
俺もだけど

眠剤が効かないので寝れないほうが問題だよ……

867 :デフォルトの名無しさん:2017/03/26(日) 07:48:46.59 ID:KSncMErM
>>860 名前:デフォルトの名無しさん 2017/03/26(日) 02:20:40.86 ID:zz1arhc3
>>861 名前:デフォルトの名無しさん 2017/03/26(日) 02:21:12.84 ID:zz1arhc3

おまえ、本当にクソグラマだろw

この話題展開で

・public void setName(String name); // 猫の名前を設定
・public void setWeight(float weight); // 猫の体重を設定
・public void setSex(int sex); // 猫の性別を設定:Cat.MALE, Cat.FEMALE
・public void setColor(Color color); // 猫の色を設定

なんか、いるかよw 問題点が見えてね―のか? マ・ヌ・ケwww

んで、そういう、問題に全く関係ない事書く割には話の展開で後半に追加された仕様について
全く考慮してないのなw

本当に も ん も う wwww

お前みたいなバカがつくったプログラムの依頼主が可愛そうだわ

868 :デフォルトの名無しさん:2017/03/26(日) 07:49:31.51 ID:KSncMErM
なのに、

>>862 : デフォルトの名無しさん2017/03/26(日) 03:40:11.35 ID:5CZauTMv
> ええやん

やてwwwww

ほんとに馬鹿ばっかwwwww

869 :デフォルトの名無しさん:2017/03/26(日) 07:53:09.74 ID:KSncMErM
>>857 : デフォルトの名無しさん2017/03/26(日) 01:18:31.86 ID:fIyCs4Ls
> DoorクラスとCatクラスが必要そうなゲームでも作れば
>
> 「ワンにゃん大冒険 オブジェクト邸の謎(仮)」
> 犬や猫が洋館の中を人間に隠れて冒険しながら謎を解くゲーム
> 4人まで協力プレイ可
> …
> ドアや窓にはいろんな種類がありそれぞれ開け方や開く条件が異なる
> …

>>858 : デフォルトの名無しさん2017/03/26(日) 01:53:09.12 ID:pXpbP+f8
> いきなり広げすぎw

バカじゃん? >>857は、結構マトモなことを言ってるのに…

>>851 : デフォルトの名無しさん2017/03/26(日) 00:59:28.71 ID:zz1arhc3
> そもそもお題が意味不明なのが諸悪の根元


こいつがバカの象徴だけどさ、
「お題が意味不明だ」なんて思ってるのは、
> door.canbe_opened_by(cat) 的なほうがいい気がする
とかホザイてるバカどもくらいだよw

十分な情報はとっくに出てんじゃん。も ん も う だ ら け ♪

870 :デフォルトの名無しさん:2017/03/26(日) 07:55:08.34 ID:KSncMErM
・private int doorStatus // ドアの状態
 (定数:OPENED, CLOSED, BROKEN)

腹いてぇwww

871 :デフォルトの名無しさん:2017/03/26(日) 07:56:45.77 ID:KSncMErM
・private int doorType // ドアの種類
 (定数:HINGED_DOOR_WITH_KNOB, HINGED_DOOR_WITHOUT_KNOB, SLIDING_DOOR)

・public String getType(); // ドアの種類を返す(戻り値 doorTypeのStringインスタンス)

猫にとってはそんな認識かんけーねーって、何度言わせんだwwww

872 :デフォルトの名無しさん:2017/03/26(日) 07:59:06.43 ID:KSncMErM
>>849 : デフォルトの名無しさん2017/03/26(日) 00:52:28.63 ID:CxBsJ1k9
>さっきまでの勢いが嘘のようだな…

夜中に何言ってんだ? こいつ…

>オブジェクト指向を理解できない人なんていないんだよ

そうかもな、お前みたいに、現実が理解できてないバカはたーくさん、上の方にいるけどなw

873 :デフォルトの名無しさん:2017/03/26(日) 08:04:22.05 ID:KSncMErM
マジで、大体の話の流れが把握できてるの、
オレ以外だと >>857 ID:fIyCs4Ls くらいなのな

それ以外は本当に廃業したほうがいいんじゃね?

というか、わかんねーなら大人しくこのバカが実装晒すの待ってて、それ肴にすればいいのに

------------------------------------------------------------------
752 : デフォルトの名無しさん2017/03/25(土) 22:56:43.06 ID:Gy0JTtQc
>>745
できるよw

ドアというオブジェクトがあって
そのオブジェクトに力をかける。

力をかけるネコは当然何匹でも良い。
それぞれのネコ(オブジェクト)がそれぞれ力をかけるのだから。
力がかかったオブジェクト(ドア)はその力の合計によって動く

引数にネコがたくさんあるなんて馬鹿げた関数は不要。
そんなものを考えるやつがオブジェクト指向をを解してないだけ
自分の作り上げた変な関数を、自分で侮辱しているだけなのだ

オブジェクト指向だとこのようにシンプルに設計できる

874 :デフォルトの名無しさん:2017/03/26(日) 08:05:29.32 ID:KSncMErM
841 : デフォルトの名無しさん2017/03/26(日) 00:11:20.99 ID:7dOJEWlC
>>837
はずれwww


は? このキチガイ、何言ってんだ????

875 :デフォルトの名無しさん:2017/03/26(日) 08:09:24.11 ID:KSncMErM
>>824 : デフォルトの名無しさん2017/03/25(土) 23:50:07.08 ID:yvUY9DOL
> おさらい
>
> 要件
> >>422-423
>
> 追加案件
> >>592   ←これ間違ってるぞ 正しくは >>577-578


この追加案件のことが頭からすっぽり抜けてるバカ、多すぎ

876 :デフォルトの名無しさん:2017/03/26(日) 08:14:56.10 ID:KSncMErM
・public boolean open(); // ドアを開ける(戻り値 true:成功、false:失敗)
・public booloan close(); // ドアを閉める(戻り値 true:成功、false:失敗)

あのさぁ…

877 :デフォルトの名無しさん:2017/03/26(日) 08:18:03.12 ID:KSncMErM
こんなに全面に渡ってツッコミどころ満載の擬似クラス定義を
なぜ発表しようと思ったんだ? こいつ…  ID:fIyCs4Ls

とっとと
>>752 : デフォルトの名無しさん2017/03/25(土) 22:56:43.06 ID:Gy0JTtQc
このバカ、実装晒さねーかな

おまえら馬鹿すぎて、いつまでたっても話、前にすすまねーよ

878 :デフォルトの名無しさん:2017/03/26(日) 08:21:28.28 ID:KSncMErM
> なぜ発表しようと思ったんだ? こいつ… ID:fIyCs4Ls

す、すまん ID:fIyCs4Ls

> なぜ発表しようと思ったんだ? こいつ… ID:zz1arhc3

の間違いだ。申し訳ない

879 :デフォルトの名無しさん:2017/03/26(日) 08:29:36.53 ID:KSncMErM
あー、そうだな、良いこと考えた

>>860 名前:デフォルトの名無しさん 2017/03/26(日) 02:20:40.86 ID:zz1arhc3
>>861 名前:デフォルトの名無しさん 2017/03/26(日) 02:21:12.84 ID:zz1arhc3

このバカのクラス定義についてさ、

> 追加案件
> >>592   ←これ間違ってるぞ 正しくは >>577-578

これを加味して修正かけさせたらいいんじゃね?

そうしたら、

door.canbe_opened_by(cat)

が、いかにクソ設計か嫌というほどわかるから。おまえらはそうやって数百レス消費しないと理解できないんだろ? バカ過ぎて。

おれは、1レスで全部理解してたけどな。

880 :デフォルトの名無しさん:2017/03/26(日) 08:37:29.51 ID:KSncMErM
あと今更だけどさ、

>さて“いぬ猫には”ドアノブを開店させることはできないが、プッシュで動くドアなら、ある一定の重量以下で押すことができるだろう

なんでお前ら、Catクラス決め打ちになっちゃってんの?wwwwww


>>480 「動物が1万種類いたらDoorクラスで1万件の開く条件分岐しやがるのか、てめーは 」

オレ、本当に天才よね。オレだけじゃん、他の動物がいる可能性について考慮してたの

881 :デフォルトの名無しさん:2017/03/26(日) 08:43:56.85 ID:KSncMErM
>>873 に追加しておくと、一応、ID:Gy0JTtQc も理解はしている
上の方で、それについてはオレも認めているしな。

理解度は、かなり低いが、まぁ、バカにしてはよくやっている方だ。

882 :デフォルトの名無しさん:2017/03/26(日) 08:49:58.93 ID:CFMZDvhX
オブジェクト指向がピンとこない奴は
並列処理でもないのに部品をいっぱい作るところかな
結局複雑にしてバトン渡してるだけだからピンとこないんだろう

883 :デフォルトの名無しさん:2017/03/26(日) 08:57:38.30 ID:KSncMErM
>>882

ピンときてるお前がズバッとイカしたコードをパブリッシュしてもよろしくってよ?

884 :デフォルトの名無しさん:2017/03/26(日) 09:29:20.52 ID:CxBsJ1k9
>>883
超絶優秀なお前なら小一時間もかからずできるんだから、ささっとideoneにでも実装上げて終わりにしろよ
じゃないとお前もギャーギャー一人でわめいてるただの馬鹿になるぞ

885 :デフォルトの名無しさん:2017/03/26(日) 09:51:07.27 ID:KSncMErM
>>884 名前:デフォルトの名無しさん 2017/03/26(日) 09:29:20.52 ID:CxBsJ1k9
> >883
> じゃないとお前もギャーギャー一人でわめいてるただの馬鹿になるぞ

ぷっ ばかじゃん?

これまでのオレの書き込み内容見て、まだそんなこといってんだw
もう、いまさらそんな煽り、何の意味もなさねーよ

アホほど威勢がいいよな、ホント
本物のアホだって自己紹介は、もう、あきたー

886 :デフォルトの名無しさん:2017/03/26(日) 09:53:11.52 ID:KSncMErM
てか、

>>884 : デフォルトの名無しさん2017/03/26(日) 09:29:20.52 ID:CxBsJ1k9
> >883
> 超絶優秀なお前なら小一時間もかからずできるんだから、ささっとideoneにでも実装上げて終わりにしろよ
> じゃないとお前もギャーギャー一人でわめいてるただの馬鹿になるぞ

お前が上げればいいじゃんwwww
おまえ、ギャーギャーわめいてるただの馬鹿じゃないんだろ???????

うっひゃっひゃっひゃっひゃ、はらいてーwwwww

887 :デフォルトの名無しさん:2017/03/26(日) 09:55:52.88 ID:KSncMErM
そろそろ気付こうな?

お前らがまともな設計するか、このバカが実装さらすまでおわらねーってこと

------------------------------------------------------------------
752 : デフォルトの名無しさん2017/03/25(土) 22:56:43.06 ID:Gy0JTtQc
>>745
できるよw

ドアというオブジェクトがあって
そのオブジェクトに力をかける。

力をかけるネコは当然何匹でも良い。
それぞれのネコ(オブジェクト)がそれぞれ力をかけるのだから。
力がかかったオブジェクト(ドア)はその力の合計によって動く

引数にネコがたくさんあるなんて馬鹿げた関数は不要。
そんなものを考えるやつがオブジェクト指向をを解してないだけ
自分の作り上げた変な関数を、自分で侮辱しているだけなのだ

オブジェクト指向だとこのようにシンプルに設計できる

888 :デフォルトの名無しさん:2017/03/26(日) 09:56:08.33 ID:CxBsJ1k9
>>885
威勢がいいのはどっちだよ…
人の作ったものへのダメ出しは出来ても、ゼロから何かを作ることは出来ない人なのかな

889 :デフォルトの名無しさん:2017/03/26(日) 10:04:56.46 ID:EQ4b/fv4
スレ伸びてると思って覗いてみれば、、、
罵りあいは別でやってもらえないですかね

890 :デフォルトの名無しさん:2017/03/26(日) 10:27:11.33 ID:x4Z/V1LA
>>864
ワロタ

891 :デフォルトの名無しさん:2017/03/26(日) 10:28:06.09 ID:KSncMErM
>>888 : デフォルトの名無しさん2017/03/26(日) 09:56:08.33 ID:CxBsJ1k9
>人の作ったものへのダメ出しは出来ても、ゼロから何かを作ることは出来ない人なのかな

出来るからダメ出ししてるんだってこと、これだけオレのレス読んでもまだ理解できないの?

ま ぬ け ♪

892 :デフォルトの名無しさん:2017/03/26(日) 10:28:52.50 ID:KSncMErM
>>890
どんだけレベル低いツボなんだよ、おまえの笑点wwwwww

893 :デフォルトの名無しさん:2017/03/26(日) 10:29:09.43 ID:9GEo9DLb
やっぱりオブジェクト指向は駄目だな

894 :デフォルトの名無しさん:2017/03/26(日) 10:30:05.08 ID:KSncMErM
一生懸命オレが理解できてないことに印象操作しようとしても無駄だからねー

上の方でオレが引用したお前らのレスとそれに関するオレのコメントが全部物語ってるから

895 :デフォルトの名無しさん:2017/03/26(日) 10:30:56.33 ID:KSncMErM
てか、

>>884 : デフォルトの名無しさん2017/03/26(日) 09:29:20.52 ID:CxBsJ1k9
> >883
> 超絶優秀なお前なら小一時間もかからずできるんだから、ささっとideoneにでも実装上げて終わりにしろよ
> じゃないとお前もギャーギャー一人でわめいてるただの馬鹿になるぞ

お前が上げればいいじゃんwwww
おまえ、ギャーギャーわめいてるただの馬鹿じゃないんだろ???????

うっひゃっひゃっひゃっひゃ、はらいてーwwwww

896 :デフォルトの名無しさん:2017/03/26(日) 10:31:42.03 ID:KSncMErM
さぁ、ID:CxBsJ1k9 への期待が高まってまいりました!!!!!!

897 :デフォルトの名無しさん:2017/03/26(日) 10:33:10.24 ID:KSncMErM
きっとID:CxBsJ1k9も、

>>860 名前:デフォルトの名無しさん 2017/03/26(日) 02:20:40.86 ID:zz1arhc3
>>861 名前:デフォルトの名無しさん 2017/03/26(日) 02:21:12.84 ID:zz1arhc3

こういうバカ定義するんだろうなー

いいな、いいなー、ノータリンっていいなー♪

898 :デフォルトの名無しさん:2017/03/26(日) 10:34:27.06 ID:KSncMErM
はやくー

ID:CxBsJ1k9

はやくー

ぷりーず♪w

899 :デフォルトの名無しさん:2017/03/26(日) 10:37:07.44 ID:wLX0ZmuV
ID:KSncMErM のレスを読んでて、ふとこの前読んだ
http://world-fusigi.net/archives/8784113.html
の記事を思い出した

900 :デフォルトの名無しさん:2017/03/26(日) 10:37:11.71 ID:KSncMErM
>>866 : デフォルトの名無しさん2017/03/26(日) 06:00:57.42 ID:EKCv78dE
> クラスネタだとさあ、大半の人は
>
> ・なんかの変数を持ってて
> ・なんかを引数に入れたら
> ・中身で(だいたいprivateメソッドで)なんか計算して(副作用含む)
> ・なんか返すブツ
>
> くらいしか考えてなくない?
> 俺もだけど
>
> 眠剤が効かないので寝れないほうが問題だよ……


そうだよー、大半の“バカ”はそうだよー? 上の方見ればわかるじゃん

でも、オレとかを一緒にしないでねー?

901 :デフォルトの名無しさん:2017/03/26(日) 10:39:27.15 ID:KSncMErM
>>899
そういうことにしておかないと、“見下されたバカ”の気持ちが収まらないもんな
バカほどプライド高いからさw

902 :デフォルトの名無しさん:2017/03/26(日) 10:40:20.41 ID:cyHlMDDk
>>900
でもおまえ抽象化理解していないじゃん

903 :デフォルトの名無しさん:2017/03/26(日) 10:40:45.07 ID:KSncMErM
>>899
てかさ、そういうことは、お前らの誰か一人でもマトモなコード晒してから言えよって話よねw

オレに片っ端からつっこまれて、おまえら、一切それについては反論できてねーじゃん

本当にプログラマなのかよ? お前ら

904 :デフォルトの名無しさん:2017/03/26(日) 10:41:13.34 ID:KSncMErM
>>902
わけわからんこと言い出したな

論拠は?

905 :デフォルトの名無しさん:2017/03/26(日) 10:44:19.39 ID:x4Z/V1LA
>>899
岬ちゃん

906 :デフォルトの名無しさん:2017/03/26(日) 11:01:44.37 ID:KSncMErM
>>902

論拠、どうしたん? なんで理解できてないと思ったん? バカなん? 妄想癖なん? 天の声きこえるん?

907 :デフォルトの名無しさん:2017/03/26(日) 11:28:41.05 ID:Y0bfhEoZ
天の声きこえるん?

908 :デフォルトの名無しさん:2017/03/26(日) 11:35:00.99 ID:9/vJOC7I
すげーな。数日でスレ消費完了やん
次はいらんな

909 :デフォルトの名無しさん:2017/03/26(日) 11:44:15.81 ID:cyHlMDDk
>>906
おまえが抽象化を理解していないことは>>440で証明してると言っただろ
何度も言わせんな

910 :デフォルトの名無しさん:2017/03/26(日) 11:48:44.89 ID:KSncMErM
>>909 名前:デフォルトの名無しさん 2017/03/26(日) 11:44:15.81 ID:cyHlMDDk
> >906
> おまえが抽象化を理解していないことは>>440で証明してると言っただろ
> 何度も言わせんな


おまえ、「論拠」の意味分かってないの?

なんで、>>440で分かってないことになるのか、それを説明するのが「論拠」じゃん

ほんとさ、マヌケはくだらねープライドとかどうでもいいからさ、
言われたことだけに答えろよ
おまえらは本当にどうしようもないバカなんだから

911 :デフォルトの名無しさん:2017/03/26(日) 11:50:16.42 ID:KSncMErM
>>909 : デフォルトの名無しさん2017/03/26(日) 11:44:15.81 ID:cyHlMDDk
> >906
> おまえが抽象化を理解していないことは>>440で証明してると言っただろ
> 何度も言わせんな

            ∩_ 
           〈〈〈 ヽ
          〈⊃  }
   ∩___∩  |   |
   | ノ      ヽ !   !
  /  ●   ● |  /
  |    ( _●_)  ミ/ 本日最高のバカ!!!(暫定)
/ __  ヽノ /
(___)   /

912 :デフォルトの名無しさん:2017/03/26(日) 11:51:35.28 ID:KSncMErM
本当にクソグラマって、議論の仕方をまったくわかってねーよな
誰か上で言ってたけど、プレゼンの仕方教わってね―高卒みたいな話だと思うけど…

ほんと、ちまたのクソグラマって馬鹿ばっかだけど自覚してねーもんな…

913 :デフォルトの名無しさん:2017/03/26(日) 11:53:26.95 ID:KSncMErM
>>908 : デフォルトの名無しさん2017/03/26(日) 11:35:00.99 ID:9/vJOC7I
> すげーな。数日でスレ消費完了やん
> 次はいらんな


立てるに決まってんじゃん♪

それが楽しみで待ってんだから

914 :デフォルトの名無しさん:2017/03/26(日) 11:54:14.90 ID:KSncMErM
>>907 : デフォルトの名無しさん2017/03/26(日) 11:28:41.05 ID:Y0bfhEoZ
> 天の声きこえるん?

聞こえるみたいよ? こいつはw

902 : デフォルトの名無しさん2017/03/26(日) 10:40:20.41 ID:cyHlMDDk 

915 :デフォルトの名無しさん:2017/03/26(日) 11:55:16.61 ID:wLX0ZmuV
>>908
うん、次スレは要らないね

916 :デフォルトの名無しさん:2017/03/26(日) 11:55:44.78 ID:KSncMErM
「論拠」の意味もわかんねぇ

>>909 : デフォルトの名無しさん2017/03/26(日) 11:44:15.81 ID:cyHlMDDk

とかが作ったプログラムを使わされるクライアントが哀れ過ぎるな…

917 :デフォルトの名無しさん:2017/03/26(日) 11:56:10.30 ID:KSncMErM
>>915

アホか、おめー

立てるって言ってんだろw

918 :デフォルトの名無しさん:2017/03/26(日) 12:13:50.63 ID:tNCmzNST
オブジェクト指向に脳をやられたのか

919 :デフォルトの名無しさん:2017/03/26(日) 12:25:17.87 ID:KSncMErM
オブジェクト指向を理解する脳が無い奴が何言ってもしらねーよ

920 :デフォルトの名無しさん:2017/03/26(日) 12:27:13.25 ID:Y0bfhEoZ
オブジェクト指向でこうはならないだろう
なんぼなんでも

921 :デフォルトの名無しさん:2017/03/26(日) 12:31:33.58 ID:EKCv78dE
もしかして:コード書けない人なんじゃない?
インスタンス変数の初期値指定してないとか

しょっぱなから萎えたのでネタに走ったが

922 :デフォルトの名無しさん:2017/03/26(日) 12:38:29.83 ID:KSncMErM
>>920

>>440の事? ならねーと思うなら実際に実装みせてみろよ
そうすっとお前らが如何にアホかわかるし、
同時にdoor.canbe_opened_by(cat) のバカさ加減も露呈してくっから

オブジェクト指向わかってたらこんなスレにはなってないという話なら
そのとおりだ。
分かってねぇ馬鹿しかいねぇからこうなってる。

923 :デフォルトの名無しさん:2017/03/26(日) 12:39:57.43 ID:KSncMErM
>>921

だからな、お前らは本当にアホすぎるんだから、お前らの弱い頭で出した結論なんかメチャクチャ過ぎて話にならねぇの。

お前が実際に実装書いて晒せば全てわかるんだから、妄想働かせてねーでコード書けよ、脳無し

924 :デフォルトの名無しさん:2017/03/26(日) 12:43:15.48 ID:KSncMErM
まだ「もしかして:コード書けない人なんじゃない? 」とかマヌケなこと言ってるやつは
本当に自分の都合のいい部分しか読んでねーし、
基本3行以上は理解できねぇんだろうな。
そりゃ、脳の欠陥だよ。病院行け。

925 :デフォルトの名無しさん:2017/03/26(日) 12:45:43.03 ID:Y0bfhEoZ
>>924
君がコードかいた部分どこにもみあたらないんだけど

何百スレも費やして相手を罵らないでも
自分がコードかいたら終わる話じゃん

926 :デフォルトの名無しさん:2017/03/26(日) 12:52:50.15 ID:K8PTcO/0
power = cat.moveFoot
door.open(power)

927 :デフォルトの名無しさん:2017/03/26(日) 12:54:30.14 ID:5CZauTMv
僕はオブジェクト指向のダメな点を論えば、このスレはおわると思ってた
そうじゃなかったんだ
キャットドアの問題一つで容易に破壊できたんだ

だってオブジェクト指向を信じている人たちはオブジェクト指向をつかって何かをなしえたことがないのだから

928 :デフォルトの名無しさん:2017/03/26(日) 13:00:44.43 ID:5CZauTMv
自分で何かをなしえない人たち
オブジェクト指向に人生破壊されて狂う人たち
君達のサビ残がまさかオブジェクト指向によって生産されているとは思いもしない

オブジェクト指向は自然言語から人工言語へのコンバートに対して何も有用でない

500レス費やしてまともなコードをかけたのが何人いただろうか

オブジェクト指向って不自然な文法だけでなく、生産性も低いよな

生産性が低い人間が何かしら設計行為をなしえていると思わせる言語だ、こういう役立たずは文系でも務まるわ、理系にもこういうパラダイムに騙される馬鹿多いけど

929 :デフォルトの名無しさん:2017/03/26(日) 13:15:08.21 ID:EKCv78dE
>>928
いんでぶ使ってりゃいいんでない? 仕様書の文面からコード吐くのが売りでそ

まあみずほ案件見る限り、生産性は疑問だけど(もう終わってないとおかしくね?)

930 :デフォルトの名無しさん:2017/03/26(日) 13:15:32.82 ID:wLX0ZmuV
>>923
あんたがRuby読めるか知らないけど、その人は>>863に一応書いてくれてるみたいだけど

931 :デフォルトの名無しさん:2017/03/26(日) 13:18:14.95 ID:EKCv78dE
>>930
アレ「ボケて」仕様やで、本人が保証

932 :デフォルトの名無しさん:2017/03/26(日) 13:29:03.98 ID:2Hrx9090
>>910
論拠なるものも一度説明したがそれで理解できなきなら理解する頭を持ち合わせていないおまえが悪い反省しろ
再度言うと抽象化を理解しているなら440のような発想にはならない
つまりおまえはオブジェクト指向を理解していない

933 :デフォルトの名無しさん:2017/03/26(日) 13:44:53.35 ID:Y0bfhEoZ
どのレス番?

934 :デフォルトの名無しさん:2017/03/26(日) 13:47:14.47 ID:tNCmzNST
オブジェクト指向キャットドア問題としてITProに投稿するべき

935 :デフォルトの名無しさん:2017/03/26(日) 13:55:40.44 ID:wLX0ZmuV
というか、オブジェクト指向の問題じゃなく、要件定義が曖昧なのが問題なだけだと思うけど…

>>931
そ、そうですか…

936 :デフォルトの名無しさん:2017/03/26(日) 13:57:39.40 ID:ZrNYQ0Ge
だめだ、ここにいる人達。
オブジェクト指向信者は何でも肯定だし、アンチは何でも否定と両極端。

その時その時でオブジェクト指向がピッタリくる場合もあるし、そうじゃ無い場合も有るだろ。

オブジェクト指向なんか勉強するより、オブジェクト指向なる物を最初にはじめた奴がどんな問題にぶち当たってて、どう解決したかを勉強した方がよっぽどましだ。

937 :デフォルトの名無しさん:2017/03/26(日) 14:01:18.26 ID:7dOJEWlC
>>934
投稿するのは勝手だけど、俺の権限を使って
その投稿は却下させるよw

938 :デフォルトの名無しさん:2017/03/26(日) 14:01:53.79 ID:tNCmzNST
オブジェクト指向キック!

939 :デフォルトの名無しさん:2017/03/26(日) 14:04:39.69 ID:7dOJEWlC
>>936
> オブジェクト指向なる物を最初にはじめた奴がどんな問題にぶち当たってて、

順番が逆

どんな問題にぶち当たってて、オブジェクト指向をはじめたのかを勉強するべき

ちなみに俺は開発を効率的に行う(複数人での並列開発や拡張性や重複したコードの排除等)
にはどうすればいいか?という問題にぶつかって自然にオブジェクト指向を始めるに至った

940 :デフォルトの名無しさん:2017/03/26(日) 14:09:47.08 ID:7dOJEWlC
あとゲームを作ると自然にオブジェクト指向になるよね
例えばシューティングゲームだと同じタイプの敵が複数でてきて
同じ動きをするが、初期位置という情報で出現場所は違っていて、
それぞれでHPを持っているとか

941 :デフォルトの名無しさん:2017/03/26(日) 14:10:11.88 ID:2Hrx9090
>>936
オブジェクト指向言語の多くが手続き型と併用だし数年前からjava中心に流行っているRxなんてほぼ関数型アルゴリズムだしオブジェクト指向パラダイムのみでプログラミングしてるやつなんてほぼいない
オブジェクト指向どころかプログラミングパラダイム全般を理解していないからオブジェクト指向マンセーに見えるだけである

942 :デフォルトの名無しさん:2017/03/26(日) 14:14:06.30 ID:NX2FjwOv
もしかしてプロのプログラマが2chで議論してるの?

943 :デフォルトの名無しさん:2017/03/26(日) 14:17:13.64 ID:7dOJEWlC
議論じゃなくて、間違ってるやつ対してプロが諭しているという感じかな

944 :デフォルトの名無しさん:2017/03/26(日) 14:17:59.08 ID:Zh9dYFfj
>>925
オレが書いたら終わっちゃうじゃん、つまんねーじゃん

url貼って、これ読み終わったらかくって大見得きってた本物の馬鹿君に申し訳ないじゃん♪

945 :デフォルトの名無しさん:2017/03/26(日) 14:18:53.61 ID:Zh9dYFfj
>>926
ばかだろ?

946 :デフォルトの名無しさん:2017/03/26(日) 14:19:45.90 ID:Zh9dYFfj
>>927
オレ以外な

947 :デフォルトの名無しさん:2017/03/26(日) 14:21:19.74 ID:ZrNYQ0Ge
>>939
順番一緒だぞ。
日本語の問題か?

948 :デフォルトの名無しさん:2017/03/26(日) 14:23:20.68 ID:Zh9dYFfj
>>928
オレは書くまでもなく、ここにいるアホどもの狂ったオブジェクト指向をさらけ出してやってるけどな。

949 :デフォルトの名無しさん:2017/03/26(日) 14:25:35.71 ID:Zh9dYFfj
>>930
見たに決まってんじゃん
全然ダメ
発達障害レベルのクソ設計

950 :デフォルトの名無しさん:2017/03/26(日) 14:25:52.96 ID:ZrNYQ0Ge
>>941
話ズレてる。

951 :デフォルトの名無しさん:2017/03/26(日) 14:27:31.19 ID:Zh9dYFfj
>>931

こういう逃げしか出来ない馬鹿がなんかの参考になるわけねーだろ

>>939

952 :デフォルトの名無しさん:2017/03/26(日) 14:28:40.23 ID:Zh9dYFfj
ちっ、アンカーみすった

キーちいせぇよ…

953 :デフォルトの名無しさん:2017/03/26(日) 14:31:14.64 ID:Zh9dYFfj
>>932
なるかならないか判断してするのはおまえじゃねーってまだ高卒はりかいできねーの?

死んだほうが良いって、ほんとおまえ

954 :デフォルトの名無しさん:2017/03/26(日) 14:32:27.16 ID:wLX0ZmuV
>>943
不毛な話に終始するんだから次スレは要らないって言ったじゃない...

955 :デフォルトの名無しさん:2017/03/26(日) 14:32:29.93 ID:Zh9dYFfj
>>932
こいつだけは、本当に脳みそ腐りやがってるな

956 :デフォルトの名無しさん:2017/03/26(日) 14:33:20.61 ID:Zh9dYFfj
>>954
立てるって言ったじゃん、ばかなの?

957 :デフォルトの名無しさん:2017/03/26(日) 14:33:47.90 ID:wLX0ZmuV
>>943
と思ったら、スレタイ変わってたしw

958 :デフォルトの名無しさん:2017/03/26(日) 14:37:31.01 ID:2Hrx9090
>>953
判断するのは俺でもよいし俺でなくてもよい
ようするにおまえの思考がオブジェクト指向ではないことが理解できればよいわけだから

959 :デフォルトの名無しさん:2017/03/26(日) 15:07:40.91 ID:fIyCs4Ls
>>860
いろんな種類のドアを共通して扱えるようなドアのライブラリとしてDoorクラスを作るんだとしたら
open()やclose()はドアの種類によって実装が異なると思うんだけどdoorTypeは定数で管理するの?
JavaらしくあとはDoorクラスを継承して自前で実装してねってことかな

ノブ付きのスライドドアや錠付きのスライドドアなんかも定数化していくと
open()の中で共通するスライド動作についてはコピペになるかペルパーメソッドかになるよね

960 :デフォルトの名無しさん:2017/03/26(日) 15:14:51.36 ID:7dOJEWlC
>>959
> いろんな種類のドアを共通して扱えるようなドアのライブラリとしてDoorクラスを作るんだとしたら
その場合は、DoorクラスというよりDoorインターフェースと言うべきだろうな。
doorType = クラスだよ。Typeの数だけ、Doorインターフェースを実装したクラスができる
オブジェクト指向なら定数がなくなるね

961 :デフォルトの名無しさん:2017/03/26(日) 15:17:01.49 ID:7dOJEWlC
> ノブ付きのスライドドアや錠付きのスライドドアなんかも

ノブ付き や 錠付き の
「付き」がヒントかな。

これらは継承で表現するものじゃない。
付いているだけなのだから

こういうのはロボットが武器を装備するのと同じ扱い

962 :デフォルトの名無しさん:2017/03/26(日) 15:18:49.00 ID:wLX0ZmuV
>>960
確かにdoorTypeをDoorインターフェースを実装したクラスにするのもありだね

963 :デフォルトの名無しさん:2017/03/26(日) 15:20:41.39 ID:2Hrx9090
>>950
ズレてないよ
1人だけオブジェクト指向を知らずにハッスルしてやつがいるから両極端に見えるだけで全体の構造設計のとっかかりとしてオブジェクト指向を使ってる人はオブジェクト指向のみを信仰しているわけではないということ

964 :デフォルトの名無しさん:2017/03/26(日) 15:24:27.16 ID:wLX0ZmuV
>>959
open()、close()が内部的にドアの開閉状態を表すdoorStateを書き換えるだけなら
doorTypeによらず同じ実装でもいける気はするけどね

965 :デフォルトの名無しさん:2017/03/26(日) 15:29:59.62 ID:7dOJEWlC
>>964
同じ実装で行けるのなら Doorインターフェースを実装した
BaseDoorクラスを継承すれば良いんだよ

966 :デフォルトの名無しさん:2017/03/26(日) 15:34:39.45 ID:7dOJEWlC
もちろんBaseDoorクラスを継承するのは方法の一つってだけね

ルールとしてはDoorインターフェースを実装していればいいってだけなので
BaseDoorクラスを継承しても良いし、独自でDoorインターフェースを実装しても良い。
またBaseDoorクラスを継承しなくてコンポジションを使って移譲してもよい

いずれにしろ求められているのはDoorインターフェースを実装するってだけ

967 :デフォルトの名無しさん:2017/03/26(日) 15:58:10.49 ID:EKCv78dE
>>949
不真面目の極みにしか見えないはずなんだがなあ
設計とかいうレベルですらないし

パブリックメソッドを使わないでメンバ変数の値設定したり
勝手にインスタンスのメソッド消してゴーストしたり
メソッド乗っ取って例外投げさせたり
「オブジェクト指向? ハァ?」状態にしてあるので

968 :デフォルトの名無しさん:2017/03/26(日) 16:05:45.98 ID:TXTrXvby
>>964
なぜドアに自分自身の開閉状態を知る事が出来るのか?

969 :デフォルトの名無しさん:2017/03/26(日) 16:11:04.81 ID:yfXNbDHU
つまりAIの発達が必要不可欠と言う事か

970 :デフォルトの名無しさん:2017/03/26(日) 16:11:55.80 ID:fIyCs4Ls
>>960
型としてのDoorを流れを考慮して便宜的にDoorクラスと書いてるんだよ
このレベルの抽象度でDoor型の実装をインターフェースにするかクラスにするかそれ以外にするかはさして重要じゃない
もし早い段階から分けて考えることを強制されてるんならそれは使ってる言語の制約だし考え方が実装に寄り過ぎてると思うよ

>>860の例はdoorType = クラスにはなってないよね?

971 :デフォルトの名無しさん:2017/03/26(日) 16:28:28.75 ID:fIyCs4Ls
>>968
ネタだろうけどマジレスすると
把握すべき状態変化を該当のオブジェクトに閉じ込めることで
開発や維持管理上の利便性が高まるからそういう仕組みにしてるだけ

現実のドアが自分の開閉状態を知ることができないとか自分で開閉することができないとか
そういうのと特定の用途のためにドアをどうモデル化するかは全く別次元の話
それを分離して考えられない人にはオブジェクト指向は無理

972 :デフォルトの名無しさん:2017/03/26(日) 17:13:36.94 ID:wLX0ZmuV
>>971
本当そう思う

973 :デフォルトの名無しさん:2017/03/26(日) 18:05:48.35 ID:x4PiaTuJ
>>971
そだね

974 :デフォルトの名無しさん:2017/03/26(日) 18:08:55.72 ID:TXTrXvby
>>971
全然別観点のレスきてワロタw

思った通りだけどw

975 :デフォルトの名無しさん:2017/03/26(日) 18:18:34.33 ID:EKCv78dE
MySQLConnectorが自分が今つながってるのか閉じてるか知らんとかだったら頭おかしいよね

みたいな……

976 :デフォルトの名無しさん:2017/03/26(日) 18:23:43.57 ID:EKCv78dE
分類学とか抽象論的な意味でクールっぽいモデリングしても
実装がめんどくさすぎるならたぶんバグ乱打で使い物にならない
継承ツリーが五段六段とか、インターフェースとインターフェースをアダプタしまくりとか

と思ったのは俺だけだろうか

977 :デフォルトの名無しさん:2017/03/26(日) 18:36:04.38 ID:5CZauTMv
工数20万人月という「クフ王のピラミッド建設」並の
プロジェクトが完成のメド立たず破綻4000億円がパー

オブジェクト指向は貧乏神か何かか?
みずほのプロマネが悪かった?
は?お前らよりは賢いと思うけど?

978 :デフォルトの名無しさん:2017/03/26(日) 18:37:33.74 ID:x+8SPGXv
何だったら成功した?関数型?

979 :デフォルトの名無しさん:2017/03/26(日) 18:44:37.52 ID:shCY5XLb
>>977
何そのプロジェクト、詳しく調べたいから教えたって。

980 :デフォルトの名無しさん:2017/03/26(日) 18:44:44.51 ID:wLX0ZmuV
>>977
どう考えてもマネージャーが無能

981 :デフォルトの名無しさん:2017/03/26(日) 18:45:13.04 ID:shCY5XLb
みずほって書いてあった、、

982 :デフォルトの名無しさん:2017/03/26(日) 18:58:20.14 ID:e3sv7A1e
なんか違和感があると思ったらそう、インターフェイスなんだよな、ドアって
うん、納得

983 :デフォルトの名無しさん:2017/03/26(日) 19:01:40.36 ID:e3sv7A1e
>>977
合併の絡みだろ?
組織が依存しあってるからオブジェクト指向は無理っすわ

984 :デフォルトの名無しさん:2017/03/26(日) 19:03:54.81 ID:4NQfH3Br
猫「キャットドアはおいくらで付きますかね?」

985 :デフォルトの名無しさん:2017/03/26(日) 19:11:18.79 ID:K0FPpjuZ
>>1
goto文が悪いわけではないからな。制約のあるgoto文をどのプログラミング言語も持っていて、マシン語ではジャンプするわけで。

986 :デフォルトの名無しさん:2017/03/26(日) 19:11:26.15 ID:K0FPpjuZ
東京電力の新会長に日立製作所の人間が就任

987 :デフォルトの名無しさん:2017/03/26(日) 19:16:45.13 ID:CFMZDvhX
あさからずっとやってんのかw

988 :デフォルトの名無しさん:2017/03/26(日) 19:20:49.89 ID:C1bHvYK/
猫何処言ったんだよ?

な、馬鹿レスばっかなのな、日曜日の午後。

ほんと、ゴミクズしかいねえよ…

989 :デフォルトの名無しさん:2017/03/26(日) 19:22:04.47 ID:C1bHvYK/
>>968

そのくらいは今時子供でもセンサー付けられるよ、バーカ

990 :デフォルトの名無しさん:2017/03/26(日) 19:25:59.56 ID:C1bHvYK/
>>958
>判断するのは俺でもよいし

良いわけねーだろw

ホントに高卒かよ?
意見の対立があった時、是非を判断するのは常に中立な第三者だよ、ゴミカス

本物のガキかよ

991 :デフォルトの名無しさん:2017/03/26(日) 19:27:47.22 ID:C1bHvYK/
>>963
>1人だけオブジェクト指向を知らずにハッスルしてやつがいるから

へー、おまえ、ハッスルしてたんだ

元気だなw

992 :デフォルトの名無しさん:2017/03/26(日) 19:28:44.80 ID:mdrVR0tF
ああ、おまえか。こんどはそれで100連投?

993 :デフォルトの名無しさん:2017/03/26(日) 19:28:48.71 ID:x+8SPGXv
>>977
まあどう考えてもレガシーシステムのクソ仕様が足引っ張ったんだろうな
オブジェクト指向とか関係なく

994 :デフォルトの名無しさん:2017/03/26(日) 19:30:25.23 ID:e3sv7A1e
cobolってどうなん
置き換えるとなるとやっぱえげつないのかな

995 :デフォルトの名無しさん:2017/03/26(日) 19:32:14.91 ID:C1bHvYK/
>>984
無理だね、馬鹿しか居ないから。
最初に札束持って、俺のとこ来れば良かったね。

996 :デフォルトの名無しさん:2017/03/26(日) 19:32:57.29 ID:C1bHvYK/
>>992
何言ってんの? この馬鹿

997 :デフォルトの名無しさん:2017/03/26(日) 19:35:29.00 ID:e3sv7A1e
なんでこう、高圧的なマウンティング野郎が多いんだろうか
仕事のストレスを2ちゃんにぶつけてるのか

998 :デフォルトの名無しさん:2017/03/26(日) 19:35:58.63 ID:C1bHvYK/
>>978
お前らみたいなバカ採用しなければ、或いは…

999 :デフォルトの名無しさん:2017/03/26(日) 19:36:55.18 ID:mdrVR0tF
>>994
基本的にユニットごとに括ればどの言語でもメッセージングにはできるはずだよなぁ
というか、むしろ普通のネットワークプログラムはそうなってるわけだし

1000 :デフォルトの名無しさん:2017/03/26(日) 19:37:44.47 ID:C1bHvYK/
>>997
アホだよねなの?
おおくねーよ、基本俺一人だろ
理由はお前らが致命的にアホ過ぎる癖に舐めた口きいてくるからだ

1001 :1001:Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 18日 11時間 30分 53秒

1002 :1002:Over 1000 Thread
2ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 2ちゃんねる専用ブラウザからの広告除去
★ 2ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.2ch.net/

▼ 浪人ログインはこちら ▼
https://login.2ch.net/login.php

315 KB
★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.02.02 2014/06/23 Mango Mangüé ★
FOX ★ DSO(Dynamic Shared Object)