トップページ⇒tech
1002コメント390KB

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

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん2017/03/26(日) 14:30:57.45ID:7dOJEWlC
前スレ
オブジェクト指向って不自然な文法だよな [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/tech/1488928012/
0002デフォルトの名無しさん2017/03/26(日) 15:09:20.80ID:5CZauTMv
I.write("String" ,In(document))
超自然、今からIクラスとInクラスを定義しなきゃ
Iにはこちらがコンピュータ上のオブジェクトにたいして出す命令全てをメソッドとして記述しよう

I.replace(objA,objB)
I.sumup(numericalobjectlist)
I.construct(obj ,By.(objectfactory))
自然過ぎ吹いたwwwこれぞ現実世界を記述するに相応しい表現だな
0003デフォルトの名無しさん2017/03/26(日) 15:37:45.86ID:7dOJEWlC
Iってだれのことだよw

プログラマーのことか?
それともCPUのことか?
0004デフォルトの名無しさん2017/03/26(日) 16:10:10.24ID:ACZDPQ0F
プログラミング言語における主語って何だろうと考えたが
名前空間になるのかなあ
0005デフォルトの名無しさん2017/03/26(日) 17:20:51.74ID:YSC0s2Za
不自然だからって
他に変わるものが無いもんな
0006デフォルトの名無しさん2017/03/26(日) 18:04:54.34ID:l+dBxcll
>>5
あー関数型理解できない人か…
生産性の悪いOOPにしがみつく人生は大変そう…
0007デフォルトの名無しさん2017/03/26(日) 18:11:49.71ID:avI+l4ib
>>6
なんでそんなマウンティング?
0008デフォルトの名無しさん2017/03/26(日) 18:59:40.16ID:6yrIJbRl
やはり論理型が人間の思考ルーチンに合ってる
0009デフォルトの名無しさん2017/03/26(日) 19:40:23.76ID:C1bHvYK/
>>7
そいつも、お前も、アホだから
0010デフォルトの名無しさん2017/03/26(日) 19:40:52.42ID:XA6YgUQb
前にオブジェクト指向使わなくてもモジュールを整理整頓してたらオブジェクト指向はいらないと言ってたけどどうなんやろな?
0011デフォルトの名無しさん2017/03/26(日) 19:43:22.21ID:C1bHvYK/
ほれ、とっととキャットドア問題再開させろ
仕事おせーぞ、能無しども
0012デフォルトの名無しさん2017/03/26(日) 19:45:45.59ID:C1bHvYK/
>>10
設計書がえらい事になって後から入ってくる奴の学習量が時間経過と共に増加するから
簡単なプロジェクトならまだしも、まともなシステムでは論外と結論出た
0013デフォルトの名無しさん2017/03/26(日) 19:47:35.65ID:C1bHvYK/
んな事はいいから、キャットドアやろーぜ

猫が鳴いてんだよ
0014デフォルトの名無しさん2017/03/26(日) 19:57:32.05ID:XA6YgUQb
何だよ猫ドアって
前スレもググってもようわからんぞ
0015デフォルトの名無しさん2017/03/26(日) 20:29:19.70ID:/dNZ7b2A
>>6
それじゃあ、オブジェクト指向に対する関数型のメリットを説明できる?
出来ないでしょ?

お前は、関数指向ってバズワードを楽しんでるだけ。

周りを巻き込まないでくれる?
0016デフォルトの名無しさん2017/03/26(日) 20:35:28.48ID:wLX0ZmuV
ID:C1bHvYK/ はスルーで
0017デフォルトの名無しさん2017/03/26(日) 20:46:38.57ID:/wEjbMQu
猫がドアを押し開けるのをオブジェクト指向で表現するのに2日かかったというお話
0018デフォルトの名無しさん2017/03/26(日) 20:52:58.43ID:/dNZ7b2A
>>17
猫がドアを押し開けるモデリングすら2日かかった
やはりオブジェクト指向は使い物にならない

という結論を出しそう
0019デフォルトの名無しさん2017/03/26(日) 20:54:20.93ID:7dOJEWlC
>>17
2日かかったのはお前の能力の問題だろw
0020デフォルトの名無しさん2017/03/26(日) 20:56:43.07ID:/dNZ7b2A
業務内容の理解が低いまま作ったクラスを
ある程度業務を理解した時に見ると
酷いと思っちゃう

なんとかする方法は無いかなと思うけど
無いよね
0021デフォルトの名無しさん2017/03/26(日) 21:00:17.29ID:/dNZ7b2A
>>6
関数型って、実装レベルでは
コードが小さくなったり非同期処理が簡潔に書けたりメリットはあるだろうけど
猫がドアを開ける問題を簡潔にしたり出来るの?

まあ、俺もラムダ使えないとかストレスだけど
あくまで実装レベルの話だよね

実装レベルなら、
そんなに大きな問題には感じないわ
0022デフォルトの名無しさん2017/03/26(日) 21:05:54.26ID:XA6YgUQb
猫ドアってこうゆう話か?

まずオブジェクト指向は抽象的な話
そして猫はドアを開ける事は出来る、がドアを開けるはずの生き物ではないし
ドアは猫に開けられる事は想定されてない
出来る、からといって想定されてない事情をシステムに盛り込むのはおかしい
0023デフォルトの名無しさん2017/03/26(日) 21:07:18.37ID:mdrVR0tF
>>20
オブジェクト指向は外へのインターフェイスを変えずに
中身を書き換えてリプレースできるんだけどねぇ…
MacOSXは2007~2009あたりでそのOS全面書き換えやって
それでなんもバグ出ないから「なんも変わってねぇ!」って謎の謗り受けてたw
0024デフォルトの名無しさん2017/03/26(日) 21:10:41.46ID:wLX0ZmuV
前スレ>>968, 971

968 名前:デフォルトの名無しさん Mail: 投稿日:2017/03/26(日) 16:05:45.98 ID:TXTrXvby
>>964
なぜドアに自分自身の開閉状態を知る事が出来るのか?

971 名前:デフォルトの名無しさん Mail:sage 投稿日:2017/03/26(日) 16:28:28.75 ID:fIyCs4Ls
>>968
ネタだろうけどマジレスすると
把握すべき状態変化を該当のオブジェクトに閉じ込めることで
開発や維持管理上の利便性が高まるからそういう仕組みにしてるだけ

現実のドアが自分の開閉状態を知ることができないとか自分で開閉することができないとか
そういうのと特定の用途のためにドアをどうモデル化するかは全く別次元の話
それを分離して考えられない人にはオブジェクト指向は無理
0025デフォルトの名無しさん2017/03/26(日) 21:12:06.21ID:7dOJEWlC
>>22
違う。

猫という生物はドアがなくても存在している通り
ドアとは関係ない。

猫に対してドア専用の処理を入れるのは間違っている。


ただし非現実世界の猫であればそうとは言い切れない。
非現実世界であればドア開け専用猫というものだって作れる
0026デフォルトの名無しさん2017/03/26(日) 21:13:56.62ID:wLX0ZmuV
結局オブジェクト指向云々ではなく設計ポリシーの問題なだけなんだけどな
0027デフォルトの名無しさん2017/03/26(日) 21:17:31.59ID:TXTrXvby
前スレ見て確信したんだけど
やっぱりバカにオブジェクト指向は扱えない
理解したつもりで珍妙なモデル()が構築される様は非常に痛々しかったよ
0028デフォルトの名無しさん2017/03/26(日) 21:18:16.33ID:6T6lVuSZ
英語非ネイティブの人には不自然かもね
0029デフォルトの名無しさん2017/03/26(日) 21:21:14.49ID:XA6YgUQb
>>25
いんやその非現実世界の猫は猫と呼ぶに相応しくないな
猫人間とか呼んだ方がいいやろ。猫人間とやらが猫クラスとどう関係付けるかはまた別問題にした方がいいな
0030デフォルトの名無しさん2017/03/26(日) 21:23:55.08ID:7dOJEWlC
> なぜドアに自分自身の開閉状態を知る事が出来るのか?

それは非現実世界のドアだから。

現実に近づけたドアでは自分自身の開閉状態というものはなくなる。

例えば物理演算機能を搭載したゲームであれば「物体と物体は重なることがない」
という事実によって、しまっているドアを通り抜けることは出来ないだろう。
そしてドアをあけるということは、丁番で固定されている板を動かす行為にすぎない。

自分自身どころか開閉状態というものをなくすことだってできる。
そこまで実現するにはかなり面倒な現実世界のシミュレートが必要ってだけ
0031デフォルトの名無しさん2017/03/26(日) 21:24:10.35ID:TXTrXvby
もっとはっきり言うと抽象化が分かってないとオブジェクト指向は使えない
出来の悪い現実世界の模写にしかならない
0032デフォルトの名無しさん2017/03/26(日) 21:24:56.51ID:7dOJEWlC
>>29
人間じゃないのだから、人間である必要がない。
0033デフォルトの名無しさん2017/03/26(日) 21:26:13.36ID:7dOJEWlC
オブジェクト指向であれば、現実世界のシミュレーションを
完璧に行なえよ!という指摘はアホとしか言いようがない。

完璧に行うのがオブジェクト指向ではない。
行いやすくするのがオブジェクト指向だ。
0034デフォルトの名無しさん2017/03/26(日) 21:28:27.68ID:XA6YgUQb
>>32
猫の人間てのは例えよ。
非現実の猫なんて何て呼ぶに相応しいか知らんしな
とりあえずそれは猫、と呼ぶに相応しくない
0035デフォルトの名無しさん2017/03/26(日) 21:29:39.93ID:7dOJEWlC
>>34
だから非現実の猫は人間じゃないから、人間をつけるのは間違いって言ってるんだが?
0036デフォルトの名無しさん2017/03/26(日) 21:30:23.74ID:7dOJEWlC
>>34
> とりあえずそれは猫、と呼ぶに相応しくない
猫クラスっていえば?(笑)
0037デフォルトの名無しさん2017/03/26(日) 21:32:04.24ID:7dOJEWlC
猫クラスは現実世界の猫ではない。
当たり前のことだがねw

つーかコンピュータを使って現実世界の
生物を作れると思ってるのか?
神の領域だぞw
0038デフォルトの名無しさん2017/03/26(日) 21:37:01.98ID:XA6YgUQb
>>35
非現実の猫は人間と呼ぶのも間違いだし猫と呼ぶのも間違いだな
猫人間(仮)とか呼べばいいのか?
0039デフォルトの名無しさん2017/03/26(日) 21:37:40.81ID:7dOJEWlC
だから "人間" を付ける理由がないだろ
アホか
0040デフォルトの名無しさん2017/03/26(日) 21:38:27.75ID:/wEjbMQu
>>2
主語はほぼ常に処理が書かれてるクラスだから省略されてるだけだろ

>In(document)
なんぞこれ
0041デフォルトの名無しさん2017/03/26(日) 21:39:29.61ID:7dOJEWlC
猫"人間" ではない
猫"クラス" とすればよい

クラスであるということは現実世界のものではないことを意味する
0042デフォルトの名無しさん2017/03/26(日) 21:41:19.91ID:XA6YgUQb
>>39
しょうがないだろドアは基本人間様専用なんだから
0043デフォルトの名無しさん2017/03/26(日) 21:42:41.55ID:7dOJEWlC
>>42
お前の間違いが分かってスッキリしたわ(笑)
0044デフォルトの名無しさん2017/03/26(日) 21:45:32.70ID:V93zNkIR
猫は人間はと言って曖昧のままスレはのびていくのあった
0045デフォルトの名無しさん2017/03/26(日) 21:47:04.40ID:XA6YgUQb
>>43
猫は基本ドアを開けるべきではないしどうしても猫にドアを開けさせたいなら
やはり猫人間(仮)というものを作りこいつにドアを開けさせるしかない。これを猫クラスと関連付けるかはケースバイケースだろうな
そしてこれに対して猫はドアを開けていると呼べるかはやはしケースバイケースやな
0046デフォルトの名無しさん2017/03/26(日) 21:48:38.56ID:XA6YgUQb
>>44
抽象的なのはいい事だがそれが具体的にならないのは良くないな
0047デフォルトの名無しさん2017/03/26(日) 21:48:39.87ID:7dOJEWlC
もう一回言おうかね?

>>25より

猫という生物はドアがなくても存在している通り
ドアとは関係ない。
0048デフォルトの名無しさん2017/03/26(日) 21:49:15.21ID:6T6lVuSZ
2ちゃんにおいて
Boardクラス、Threadクラス、Userクラスがあるとする。
BoardはThreadを管理するが、Userが何をするかは基本どうでもいい。
ThreadクラスはBoardに管理されるが
他にどんなthreadがあるか気にする必要はないし
user.Kakikomi()によって渡されるテキストを
保管するのが仕事

UserはIDや書き込み回数を管理して、回線と紐付けする。

オブジェクト指向を使わないとなると
これをひとつの場所にまとめることになるわけで
それはそれで不可能ではないけど
分けた方がわかりやすいでしょ?
少なくともBoardとUserの関係性はかなり薄いから
ほぼ無視できるし。

ってのがオブジェクト指向じゃないの?
0049デフォルトの名無しさん2017/03/26(日) 21:50:14.51ID:7dOJEWlC
猫という生物はドアがなくても存在している通り
ドアとは関係ない。

人間という生物もドアがなくても存在している通り
ドアとは関係ない。

またドアは人間や猫がいなくても存在している通り
どちらとも関係ない関係ない。

ドアは風で開くこともあるように、開けるのは人間とは限らない
0050デフォルトの名無しさん2017/03/26(日) 21:52:25.68ID:XA6YgUQb
>>47
うむ。ドアと猫と人間は全くの別クラスであるべきだ
例え猫が人間用のドアを開けることが出来たとしてもな
0051デフォルトの名無しさん2017/03/26(日) 21:55:13.67ID:avI+l4ib
>>50
猫と人間を分ける必要があるのかね
String person = "夏目"
String cat = ""
これでよくね?
0052デフォルトの名無しさん2017/03/26(日) 21:57:14.76ID:XA6YgUQb
>>51
今までの話でいう猫人間(仮)というやつだな
多分この辺が難しい所やろうな
0053デフォルトの名無しさん2017/03/26(日) 21:57:45.85ID:7dOJEWlC
>>51
むしろ誰があけるとか考えないで
独立させることができるのが
オブジェクト指向だよね。

他のものに依存させないので
拡張性が高い設計ができる。
0054デフォルトの名無しさん2017/03/26(日) 21:58:19.79ID:7dOJEWlC
猫人間とか言い張ってるやつが
たった一人という(笑)
0055デフォルトの名無しさん2017/03/26(日) 22:04:27.25ID:XA6YgUQb
>>53
それならまずドアの問題があるな
ペット専用の人間が通れない小さな入り口はまずドアと呼べるのか?という問題がある
おそらくはドアとは呼べないが入り口という意味でドアとの意味合いが被ってしまう

誰が開けるとか考えないならまずドアクラスを見直すべきだな
0056デフォルトの名無しさん2017/03/26(日) 22:09:59.61ID:7dOJEWlC
> ペット専用の人間が通れない小さな入り口は
普通に「ペットドア」って言えばいいだろw
普通に使われてる用語だぞ

ペットドア、キャットドア、ドッグドア
検索したらヒットする単語だ

で、何が言いたいって?
0057デフォルトの名無しさん2017/03/26(日) 22:10:29.72ID:XA6YgUQb
ああそう考えれば話が多少スッキリするな
猫がドアを開けるという話で
ドアをドア、と呼ぶのが間違いなのかもしれん
0058デフォルトの名無しさん2017/03/26(日) 22:10:49.44ID:7dOJEWlC
あー、ペットドアはドアか?って
話がしたいのか。

ペットドアにはドアって言葉が含まれているとおり
ドアだろう?
0059デフォルトの名無しさん2017/03/26(日) 22:12:16.88ID:7dOJEWlC
ということで、ペットドアはドアの一種であるから
ドアインターフェースをを持ってるドアクラスの一種ってことだろうな。
そのペットドアにはサイズと言った属性があることだろう。
0060デフォルトの名無しさん2017/03/26(日) 22:14:56.76ID:XA6YgUQb
>>56
それらはドアと言う名前が付いてるだけでドアと安直に呼べないということだな
同じドアでもそれらは人間は通れないし、鍵を付けたら猫は間違いなく通れなくなってしまう
それらを踏まえた上で抽象的な意味でドアとはどういうモノとして捉えるべきかという話になる
0061デフォルトの名無しさん2017/03/26(日) 22:17:38.79ID:7dOJEWlC
ペットドアはドアという名前がついているとおり
ドアの一種だとわかったが、

さて、このペットドアは人間が開けることはできるだろうか?

答は「できる」だね。

同じように普通のドアを開けることができる猫もいる

もはやペットドアの効果がない、人間みたいに部屋へ入る猫が笑える(笑)
http://heal-animals.com/post-3766/2/

ということでペットドアにはペットと付いているし、ペットがついてないドアも
人間だけが開けられることではないことは証明された

まあ、最初から言うようにドアはドアであり、他のオブジェクトとは独立しているもの
この独立性がオブジェクト指向のメリットの一つでもある。
0062デフォルトの名無しさん2017/03/26(日) 22:18:27.53ID:7dOJEWlC
訂正

ということでペットドアにはペットと付いているからといってペット専用ではないし、
ペットがついてないドアも人間だけが開けられることではないことは証明された
0063デフォルトの名無しさん2017/03/26(日) 22:20:27.99ID:XA6YgUQb
>>59
いや入り口クラスとか別の呼び名で呼んだ方がいい
サイズという属性もあれば開き方の問題とか色々ある
そもそもドア、と言われると人間が取手をひねって開ける物という先入観もあるし
ドア自体色々ある入り口の一つの形式だからとても限定的でもある
0064デフォルトの名無しさん2017/03/26(日) 22:22:52.74ID:6T6lVuSZ
猫と人間とをどうクラス分けするか
考える際にmammalクラスまで考える必要あるのか?
というどこまで考えるべきか?問題は確かに難しいと思うけど
0065デフォルトの名無しさん2017/03/26(日) 22:23:56.83ID:/wEjbMQu
cat.open(door)
cat.getPosition()
オブジェクト指向のオブジェクトって主語なのか目的語なのかはっきりしない
0066デフォルトの名無しさん2017/03/26(日) 22:24:07.52ID:7dOJEWlC
> いや入り口クラスとか別の呼び名で呼んだ方がいい

ペットドアという名前がすでに存在する。
アマゾンでも楽天でもググれば出てくる
0067デフォルトの名無しさん2017/03/26(日) 22:24:54.37ID:7dOJEWlC
>>65
> オブジェクト指向のオブジェクトって主語なのか目的語なのかはっきりしない

catオブジェクトに(ドアの)openメソッドは存在しない
0068デフォルトの名無しさん2017/03/26(日) 22:27:25.39ID:XA6YgUQb
>>58
まずこれが難問だ
ドアだろうがペットドアだろうが何でもいいんだが
猫がドアを開けるという話で
ドアをドアと呼ぶに必要な要素は何だろう?
0069デフォルトの名無しさん2017/03/26(日) 22:27:37.11ID:wLX0ZmuV
>>65
コマンド(メッセージ)を送る対象=目的語でしょ
0070デフォルトの名無しさん2017/03/26(日) 22:28:47.57ID:/wEjbMQu
>>67
今はそんな話がしたいんじゃない
抽象化のできんやつだな
0071デフォルトの名無しさん2017/03/26(日) 22:29:17.29ID:7dOJEWlC
>>68
> ドアをドアと呼ぶに必要な要素は何だろう?

プログラムと関係ない話だから
辞書でも見ると良いよw
0072デフォルトの名無しさん2017/03/26(日) 22:29:58.14ID:/wEjbMQu
>>69
じゃあcat.open(door)の主語ってなに…
0073デフォルトの名無しさん2017/03/26(日) 22:32:05.58ID:7dOJEWlC
>>72
そのコードが書かれているクラス
0074デフォルトの名無しさん2017/03/26(日) 22:32:33.50ID:V93zNkIR
仕様が曖昧で仕様をの為の議論で刺し合いのスレ
0075デフォルトの名無しさん2017/03/26(日) 22:33:12.92ID:XA6YgUQb
>>69
だな。
猫がドア開ける話なら猫オブジェクトにジャンプとひっかきメッセージでドアを開けるという事は出来るけども
>>71
バカチン
辞書を引くのは必要があるのは正解だが抽象化プログラミングで一番関係がある所だろ
0076デフォルトの名無しさん2017/03/26(日) 22:33:59.88ID:/wEjbMQu
>>73
わからん
Mainclass open cat by door…?

ちょっとえいごになおして
0077デフォルトの名無しさん2017/03/26(日) 22:34:45.96ID:oC0jrerO
敢えて主語を決めるなら各々の処理系としか
小説書いてる訳でもなし自然言語に対応させることに無理がある様な
0078デフォルトの名無しさん2017/03/26(日) 22:36:19.75ID:7dOJEWlC
>>76
言語によってはthisやselfが表現できるものが
主語ってことだよ
0079デフォルトの名無しさん2017/03/26(日) 22:37:52.27ID:7dOJEWlC
>>76
猫がドアによって開かれる?
お前英語の勉強したほうが良いんじゃね?w
0080デフォルトの名無しさん2017/03/26(日) 22:38:19.75ID:4NQfH3Br
キャットドア問題根深いな
0081デフォルトの名無しさん2017/03/26(日) 22:40:38.17ID:wLX0ZmuV
>>76
The main class makes cat to open the door.
0082デフォルトの名無しさん2017/03/26(日) 22:40:39.93ID:/wEjbMQu
>>79
だからわからんゆーてるやん!

そもそもcatが目的語じゃないっぽいから主語じゃなかったら何者なのか不明
0083デフォルトの名無しさん2017/03/26(日) 22:40:44.36ID:4NQfH3Br
ぶっちゃけ家なんか作るどころじゃないな
ドアにキャットドア付けるだけでこの大騒ぎ

オブジェクト指向は駄目だな
0084デフォルトの名無しさん2017/03/26(日) 22:40:59.06ID:/wEjbMQu
おぅ
0085デフォルトの名無しさん2017/03/26(日) 22:41:17.61ID:wLX0ZmuV
>>76
すまんtoはいらない
The main class makes cat open the door.
0086デフォルトの名無しさん2017/03/26(日) 22:42:05.33ID:XA6YgUQb
>>80
まず猫がドアあける訳ないしな
具体的な意味で猫にドア開けさせるのはアリだとしても
抽象的な意味で猫にドアを開けさせようと考えるのは間違ってる
0087デフォルトの名無しさん2017/03/26(日) 22:44:55.67ID:XA6YgUQb
>>82
不明でいいんだよ
不明だから後で猫でも非現実世界の猫でも猫人間でもなれるし出来る
0088デフォルトの名無しさん2017/03/26(日) 22:45:18.83ID:wLX0ZmuV
普通の人間用ドアを猫に開けさせたいのか、
人間用ドアに猫が通るための猫用ドアをつけたいのか要件定義をはっきりさせてくれ
0089デフォルトの名無しさん2017/03/26(日) 22:48:02.08ID:/wEjbMQu
>>85>>87
不 自 然 な 文 法 だ な !

でもちょっとすっきりしたありがとう
0090デフォルトの名無しさん2017/03/26(日) 22:50:07.45ID:4NQfH3Br
>>88
それはお前がやるんだよ!
客がどうしたいかなんてこっちが「このようになります」って
出してから「この部分ですがいかがいたしましょう」って聞くんだろ
初めから全部出てるとかありえない
0091デフォルトの名無しさん2017/03/26(日) 22:53:56.00ID:/wEjbMQu
対応パターンが数通りあってややこしい
自動詞だと主語になるのかと思ったらそうでもない
0092デフォルトの名無しさん2017/03/26(日) 22:54:54.44ID:wLX0ZmuV
>>90
えぇ...
それただ依頼元が無能なだけだろ
0093デフォルトの名無しさん2017/03/26(日) 22:58:14.39ID:wLX0ZmuV
>>89
いや文法自体は正しいんだよ
ただやってることが現実離れしているだけで

例えばもしもう少し現実に近い要件として
フリーランで動く猫がいて、猫がドアに加える力がある一定値以上になったら
ドアが開く様にする
ってなってるならまた違った作り込みになるってだけ

これはオブジェクト指向が自然か不自然かという議論とは全く別問題
0094デフォルトの名無しさん2017/03/26(日) 22:59:47.54ID:/dNZ7b2A
>>83
文句言うのは良いけど
構造化プログラミングじゃ
猫ドアの表現すらできんし

どうしたら良いよ
0095デフォルトの名無しさん2017/03/26(日) 23:01:09.02ID:/dNZ7b2A
コンパイル時に、
猫がドアを開けるという処理が
完全に規定されている
構造化プログラミングが最強というオチ?
0096デフォルトの名無しさん2017/03/26(日) 23:02:41.73ID:x+8SPGXv
結局言語云々は全く関係ない話で要は如何に馬鹿を現場から締め出すか、なんだよな
0097デフォルトの名無しさん2017/03/26(日) 23:03:25.20ID:wLX0ZmuV
>>94
猫ドアの仕様が明確になってない
または不自然な仕様になっている
ってだけなんだけど理解いただけない?
0098デフォルトの名無しさん2017/03/26(日) 23:03:41.66ID:7dOJEWlC
これが自然だよな

猫が何かを思ったというイベントハンドラの中で
隣の部屋に行きたいと思った時に実行するのが
door.open() だよな

すごく自然だ
0099デフォルトの名無しさん2017/03/26(日) 23:04:17.02ID:6T6lVuSZ
あと自然言語能力な
0100デフォルトの名無しさん2017/03/26(日) 23:04:38.85ID:/wEjbMQu
>>93
現実離れしてるかなあ
猫はコマンドパターンというか割とよく見るきがする

bigComplexDataClass.write(stream)とか
0101デフォルトの名無しさん2017/03/26(日) 23:04:44.57ID:7dOJEWlC
>>97
そりゃ不自然なのは当たり前だろw

猫に(ドアの)openメソッドなんてないのに
cat.open()とか書いてるんだから
0102デフォルトの名無しさん2017/03/26(日) 23:05:30.11ID:wLX0ZmuV
>>98
そうだな
で、door.open()が呼び出される条件は例えば>>93の様にドアに加わっている力などで判定する
0103デフォルトの名無しさん2017/03/26(日) 23:07:14.59ID:7dOJEWlC
>>102
現実のドアのシミュレーションをしたいという前提か?

ならそうだろうな。
0104デフォルトの名無しさん2017/03/26(日) 23:08:00.92ID:7dOJEWlC
現実世界のシミュレーションをしたいというのなら、
>>30でさっき書いたとおりだよ。

> なぜドアに自分自身の開閉状態を知る事が出来るのか?

それは非現実世界のドアだから。

現実に近づけたドアでは自分自身の開閉状態というものはなくなる。

例えば物理演算機能を搭載したゲームであれば「物体と物体は重なることがない」
という事実によって、しまっているドアを通り抜けることは出来ないだろう。
そしてドアをあけるということは、丁番で固定されている板を動かす行為にすぎない。

自分自身どころか開閉状態というものをなくすことだってできる。
そこまで実現するにはかなり面倒な現実世界のシミュレートが必要ってだけ
0105デフォルトの名無しさん2017/03/26(日) 23:08:04.53ID:wLX0ZmuV
>>101
>猫に(ドアの)openメソッドなんてないのに
>cat.open()とか書いてるんだから

だからそれは要件次第なわけで...
仮に猫にドアを開ける調教がなされていて、ドア開けてって命令すれば
ドアを開けられる様な猫がいるという設計要件があるならば、
catクラスはドアをオープンする能力=メソッドを持つ実装が施される

何度も言うが、その設計要件自体が自然か不自然かは、
オブジェクト指向とはなんら関係がない
0106デフォルトの名無しさん2017/03/26(日) 23:08:52.34ID:EFRDc51t
盛り上がってるなぁ
0107デフォルトの名無しさん2017/03/26(日) 23:09:54.78ID:7dOJEWlC
> 仮に猫にドアを開ける調教がなされていて、ドア開けてって命令すれば
> ドアを開けられる様な猫がいるという設計要件があるならば、

じゃあそれは単純にメソッド名がおかしいって話だ
0108デフォルトの名無しさん2017/03/26(日) 23:11:50.76ID:7dOJEWlC
調教されている猫が何匹書いたとして、
命令する人が俺だとするのなら、
主語は俺で「俺が猫に○○しろと命令を出す」
という感じになるだろうな。
0109デフォルトの名無しさん2017/03/26(日) 23:11:58.96ID:wLX0ZmuV
>>107
>じゃあそれは単純にメソッド名がおかしいって話だ
うーん、じゃあ、前スレの>>861のように
cat.openDoor(Door door)
ならまだ納得出来る?
0110デフォルトの名無しさん2017/03/26(日) 23:12:20.83ID:7dOJEWlC
そうなるとopenDoorは関数ではなくて命令ということになる。
0111デフォルトの名無しさん2017/03/26(日) 23:12:35.32ID:7dOJEWlC
間違えた

そうなるとopenDoorは関数ではなくて引数ということになる。
0112デフォルトの名無しさん2017/03/26(日) 23:12:41.06ID:wLX0ZmuV
>>108
うん、そうなると思う
0113デフォルトの名無しさん2017/03/26(日) 23:13:05.89ID:XA6YgUQb
抽象化なんだから何が正しいなんて簡単に決めちゃだめよ
openメソッドもペットドアならアリだろう?
0114デフォルトの名無しさん2017/03/26(日) 23:13:34.86ID:KSncMErM
>>27 : デフォルトの名無しさん2017/03/26(日) 21:17:31.59 ID:TXTrXvby
> 前スレ見て確信したんだけど
> やっぱりバカにオブジェクト指向は扱えない
> 理解したつもりで珍妙なモデル()が構築される様は非常に痛々しかったよ

だろ?

オレもアホの思考に呆れて、おもしれーから「お前ら馬鹿だろ?w」って言ってるのに、
バカどもは全く自分を省みようとしねぇんだもんな

あいつら、自分が珍妙だって分かってないんだぜ?w
0115デフォルトの名無しさん2017/03/26(日) 23:15:04.25ID:KSncMErM
>>33 : デフォルトの名無しさん2017/03/26(日) 21:26:13.36 ID:7dOJEWlC
> オブジェクト指向であれば、現実世界のシミュレーションを
> 完璧に行なえよ!という指摘はアホとしか言いようがない。
>
> 完璧に行うのがオブジェクト指向ではない。
> 行いやすくするのがオブジェクト指向だ。


言い訳はじめたよw

出来ることすら出来てねーから笑われてんじゃんw ノータリン♪
0116デフォルトの名無しさん2017/03/26(日) 23:15:11.23ID:7dOJEWlC
>>109

cat.execCommand(OEPN_DOOR)

こうだろうな

JavaScriptでもあるな。
https://developer.mozilla.org/ja/docs/Web/API/Document/execCommand
0117デフォルトの名無しさん2017/03/26(日) 23:15:52.06ID:wLX0ZmuV
>>111
であれば、例えばcatクラスにはperformOrder(int order)のような
猫が命令を実行するメソッドが定義されていて、
引数として渡す命令orderが、定数てもenumでもいいけど、例えば
OpenDoorのようなドアを開ける命令を表すものがCatクラスに定義されてて、

cat.performOrder(Car.OpenDoor);

の様に呼び出す

でもいいんじゃね?
0118デフォルトの名無しさん2017/03/26(日) 23:16:33.07ID:wLX0ZmuV
>>116
あ、かぶったな

そう、そういう感じ
0119デフォルトの名無しさん2017/03/26(日) 23:17:07.17ID:wLX0ZmuV
×Car.OpenDoor
○Cat.OpenDoor
0120デフォルトの名無しさん2017/03/26(日) 23:20:28.07ID:KSncMErM
一通り読み終わったよ

>>16-113 に、読む価値のあるレス、皆無w

おまえら何人でかきこんでんの?
それだけ人数がいて、昨日までの話の進捗より後退してんじゃねーかwwww

そりゃ、ID:TXTrXvby に“珍妙だ”って言われるわ、バカばっか
0121デフォルトの名無しさん2017/03/26(日) 23:21:02.64ID:EKCv78dE
え、まだ続くの?

もうめんどくさいからjava.lang.reflectionとjavaassist使ってもいいか?
0122デフォルトの名無しさん2017/03/26(日) 23:21:10.86ID:wLX0ZmuV
まあ、どっちにしても命令を実行するのは猫なのであって、
命令ごとにメソッドを用意するか、命令を実行するメソッドと命令列を用意するかの違いなだけだけど
0123デフォルトの名無しさん2017/03/26(日) 23:21:44.78ID:KSncMErM
> cat.execCommand(OEPN_DOOR)
> こうだろうな

やてwwwwwwwwww

はらいてぇwwwww
0124デフォルトの名無しさん2017/03/26(日) 23:22:15.68ID:wLX0ZmuV
ID:KSncMErM はスルーで
0125デフォルトの名無しさん2017/03/26(日) 23:22:28.32ID:EFRDc51t
単芝滅ぶべし
0126デフォルトの名無しさん2017/03/26(日) 23:23:15.56ID:EKCv78dE
cat.open

うわぁグロい
0127デフォルトの名無しさん2017/03/26(日) 23:24:25.19ID:XA6YgUQb
水を刺すようですまんが猫がドア開けるのを抽象的に親に定義して
サブクラスはどう具体的にドアを開けるようになるのかようわからんのだが、、
0128デフォルトの名無しさん2017/03/26(日) 23:24:42.92ID:/wEjbMQu
>>125
サブリミナル効果で東芝がつぶれるから単芝いうのやめて
0129デフォルトの名無しさん2017/03/26(日) 23:25:54.03ID:XA6YgUQb
>>120
まあでも一理ある、
俺はそもそも猫にドア開けさせんな派だからな
0130デフォルトの名無しさん2017/03/26(日) 23:26:20.10ID:wLX0ZmuV
>>126
何か誤解をしているようだ

cat.run();
と同じ様な感覚で
cat.open();
と考えているんだろうが、

cat.open(door);
であって、openの目的語はdoorだ

前スレの例なら
cat.openDoor(door);
だからさらに明確になるが
0131デフォルトの名無しさん2017/03/26(日) 23:26:54.11ID:fIyCs4Ls
何のためにドアやネコをモデリングしようとしてるのかまたわからなくなってるね
ふりだしに戻った感
0132デフォルトの名無しさん2017/03/26(日) 23:29:17.14ID:KSncMErM
昨日の16時の時点でここまで出てるのに、時間を巻き戻して退化する Cat.OpenDoor厨 ワロスwwwwww

---------------------------------------------------------------------------
>>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なら空いたり閉まったりするだろう。
> またネコはネコで(非同期で)そのフィードバック
> イベントを受信することになるだろう。

>>665 : デフォルトの名無しさん2017/03/25(土) 20:18:46.65 ID:Bl9nCmA6
> 帰ってきて見てみたら、よくもまぁそんな頓珍漢な話で盛り上がれるなw
> おまえら、本物のアホだろ >632-664
> ゴミクズだらけだなw
> 割りとマトモなのは
> >640 >643 >644
> この辺だけだな。後は軒並みゴミクズだ
>よくもそんなマヌケなレスでスレを埋め尽くせるもんだ

>>666 : デフォルトの名無しさん2017/03/25(土) 20:20:16.37 ID:Bl9nCmA6
> cat.touch(object)はねーけどな。
> 少なくともpush()やscratch()くらいは実装してるはずだ
> なんだよ、touchって。お前の猫はアホなのか?
0133デフォルトの名無しさん2017/03/26(日) 23:32:07.22ID:KSncMErM
もう一度言っとくな

>>16-131のオレ以外のレスに、読む価値のあるレス、皆無w
0134デフォルトの名無しさん2017/03/26(日) 23:33:30.51ID:7dOJEWlC
な?馬鹿だから理解できないだろ?

猫自身が直接持っているメソッドと
猫に対する命令をごっちゃにしている。

こういうやつがオブジェクト指向はわけわからんと
言ってるんだよ。
0135デフォルトの名無しさん2017/03/26(日) 23:33:38.11ID:EFRDc51t
>>133
注釈つけなくても大丈夫
お前も存在価値ないから
0136デフォルトの名無しさん2017/03/26(日) 23:35:06.97ID:EKCv78dE
>>130
あー、もうなんならPrologやったらどうだ、合うかもしらんよ
0137デフォルトの名無しさん2017/03/26(日) 23:35:50.52ID:KSncMErM
>>134

今お前のID抽出して読んでみたら、お前、大分いいコト言ってるじゃん。

その調子でがんばってくれ、アホしかいなくて困ってた
0138デフォルトの名無しさん2017/03/26(日) 23:38:18.10ID:KSncMErM
>>109 : デフォルトの名無しさん2017/03/26(日) 23:11:58.96 ID:wLX0ZmuV
> うーん、じゃあ、前スレの>>861のように
> cat.openDoor(Door door)
> ならまだ納得出来る?


だ・か・ら、

http://echo.2ch.net/test/read.cgi/tech/1488928012/860
http://echo.2ch.net/test/read.cgi/tech/1488928012/861

は、頓珍漢な馬鹿すぎてダメだって、何回言わせんだよ
0139デフォルトの名無しさん2017/03/26(日) 23:39:56.15ID:XA6YgUQb
>>137
お前このスレは読む価値のあるレス皆無言いながら一番書き込んでる奴によく見たらいい事言ってるてどうゆう事よ、
0140デフォルトの名無しさん2017/03/26(日) 23:42:02.57ID:KSncMErM
>>139

文字通り、“よく読んでみたらいいコト言ってた”ということだが?

そいつ、ワザとアホレス混ぜてるからよく読まんとわからんという事だよ
0141デフォルトの名無しさん2017/03/26(日) 23:44:02.39ID:KSncMErM
>>139

>>98 : デフォルトの名無しさん2017/03/26(日) 23:03:41.66 ID:7dOJEWlC
> これが自然だよな
> 猫が何かを思ったというイベントハンドラの中で
> 隣の部屋に行きたいと思った時に実行するのが
> door.open() だよな

>>101 : デフォルトの名無しさん2017/03/26(日) 23:04:44.57 ID:7dOJEWlC
> >97
> そりゃ不自然なのは当たり前だろw
> 猫に(ドアの)openメソッドなんてないのに
>cat.open()とか書いてるんだから


これとかな。言ってること背反してんだろ? これ、わざとやってんだぜ?
0142デフォルトの名無しさん2017/03/26(日) 23:44:30.18ID:EFRDc51t
>>140
ちゃんと読まずに読む価値なしと決めつけるとはなかなか難解な価値観をお持ちですな
0143デフォルトの名無しさん2017/03/26(日) 23:44:51.11ID:EKCv78dE
def KSncMErM.say; end

これで黙るはずだ……!

Joel on softwareの「アーキテクチャ宇宙飛行士」思い出すな、こういう流れ
0144デフォルトの名無しさん2017/03/26(日) 23:45:25.52ID:KSncMErM
一行抜けた

>>98 : デフォルトの名無しさん2017/03/26(日) 23:03:41.66 ID:7dOJEWlC
> これが自然だよな
> 猫が何かを思ったというイベントハンドラの中で
> 隣の部屋に行きたいと思った時に実行するのが
> door.open() だよな
> すごく自然だ
0145デフォルトの名無しさん2017/03/26(日) 23:46:03.02ID:KSncMErM
>>142

ちゃんと読んで判断してほしいなら、もうちょっとマトモなこと言えるようになろうな
0146デフォルトの名無しさん2017/03/26(日) 23:47:19.69ID:wLX0ZmuV
>>134
>猫自身が直接持っているメソッドと
>猫に対する命令をごっちゃにしている。

cat.execCommand(OPEN_DOOR);
はOPEN_DOOR(ドアを開ける)という命令(動作)を実行せよという命令を猫に出している

cat.openDoor(door);
はdoorを開けよという命令を猫に出している


両方とも猫に対して命令を出しかつ結果は同じだが、一般的には上の表現が妥当ということ?
0147デフォルトの名無しさん2017/03/26(日) 23:48:58.25ID:EKCv78dE
>>146
多分我々ごとき凡人などでは知りえぬ超高級言語をお使いなのであろうと思われる
言語系として未実装の奴
0148デフォルトの名無しさん2017/03/26(日) 23:49:03.57ID:KSncMErM
>>142
少なくとも、
こんなレスしかしない馬鹿、ちゃんと判断してもらえるわけねぇよなw


----------------------------------------------------------------------------
106 : デフォルトの名無しさん2017/03/26(日) 23:08:52.34 ID:EFRDc51t
盛り上がってるなぁ

125 : デフォルトの名無しさん2017/03/26(日) 23:22:28.32 ID:EFRDc51t
単芝滅ぶべし

135 : デフォルトの名無しさん2017/03/26(日) 23:33:38.11 ID:EFRDc51t
>>133
注釈つけなくても大丈夫
お前も存在価値ないから

142 : デフォルトの名無しさん2017/03/26(日) 23:44:30.18 ID:EFRDc51t
>140
ちゃんと読まずに読む価値なしと決めつけるとはなかなか難解な価値観をお持ちですな
----------------------------------------------------------------------------
0149デフォルトの名無しさん2017/03/26(日) 23:50:40.91ID:KSncMErM
>>146 : デフォルトの名無しさん2017/03/26(日) 23:47:19.69 ID:wLX0ZmuV
> 両方とも猫に対して命令を出しかつ結果は同じだが、一般的には上の表現が妥当ということ?

端的に言うと、どっちもキチガイということ
0150デフォルトの名無しさん2017/03/26(日) 23:50:55.15ID:EKCv78dE
KSncMErMはsayメソッド上書きに備えてprivateで再度メソッドを作り直している……?
なんだこの仕様、やべえよ
0151デフォルトの名無しさん2017/03/26(日) 23:50:57.98ID:XA6YgUQb
>>141
どっちでもええなこれは
猫が主役かドアが主役かなんてわからんしな
0152デフォルトの名無しさん2017/03/26(日) 23:51:18.02ID:EFRDc51t
>>148
全く話に参加してないはずの俺に対してもいろいろ評価してくれてありがとうな
貴重な時間が無駄になるから俺に構わず他を評価してやってくれ
0153デフォルトの名無しさん2017/03/26(日) 23:54:29.47ID:KSncMErM
>>152
あー、たしかに評価に値しないという評価をくだした、と判断できるわな…って、

トンチ問答したいなら酬恩庵でも行ってろクズ
0154デフォルトの名無しさん2017/03/26(日) 23:55:15.72ID:KSncMErM
>>151

死ね
0155デフォルトの名無しさん2017/03/26(日) 23:56:16.32ID:EKCv78dE
コードが期待通りに動き
変な入力に対して耐性があり
階層のエラーにもある程度リカバリが効いて
俺の問題なり客の問題なりをキッチリ解決できるなら
オブジェクトがどーとかどうでもよくね、って気がする
0156デフォルトの名無しさん2017/03/26(日) 23:56:24.32ID:EFRDc51t
>>153
おう
いってらっしゃい
0157デフォルトの名無しさん2017/03/26(日) 23:56:58.99ID:XA6YgUQb
つか猫がドア開けるってどんな状況なのよ
ジャンプして取手を空中で叩いて少し空いた所を着地した後に身体でドア押して入るって事か?

こんなもんメソッドにすんじゃねぇよ
0158デフォルトの名無しさん2017/03/26(日) 23:58:06.77ID:EKCv78dE
KSncMErMのクラス書き換えるのムリっぽいわ、なんか2重3重にメソッドとかメンバ変数を再定義してるっぽい
さっきローカルで試した
0159デフォルトの名無しさん2017/03/26(日) 23:58:25.46ID:/wEjbMQu
プログラマーはみんな死ねこだいすき
0160デフォルトの名無しさん2017/03/26(日) 23:59:09.42ID:XA6YgUQb
>>154
猫が入るという事ならcat.openでいいが、ドアが入れるのを選ぶような事ならdoor.openもアリだ
0161デフォルトの名無しさん2017/03/26(日) 23:59:26.66ID:EKCv78dE
pip install KSncMErM
gem install KSncMErM

入るから試せる
0162デフォルトの名無しさん2017/03/27(月) 00:00:09.92ID:E+FNp5P9
>>100
すまん見落としてた

いや例えばその例は別に現実離れしていない

ただ、今回の題材が猫だから面倒くさい感じになってるだけで...
0163デフォルトの名無しさん2017/03/27(月) 00:10:24.00ID:GePKDk09
今のIDが何か知らんけど、旧ID:KSncMErM先生がコードをご披露くださるってよ
超クールなやつだぜ

出来ないなら寝言ぶっこいてると判断していいだろ
0164デフォルトの名無しさん2017/03/27(月) 00:11:45.18ID:NR+izKjp
>>159
シュレーディンガーの猫

その箱を開けなければ猫は死なずに済むかも知れなかった
0165デフォルトの名無しさん2017/03/27(月) 00:13:39.79ID:E+FNp5P9
まあ正確には箱を開けなければ猫が生きている状態と死んでいる状態が
重ね合わされた状態のままだったという感じだろうけど
0166デフォルトの名無しさん2017/03/27(月) 00:14:19.69ID:GePKDk09
>>164
ぬこだいすきなのでリフレクションでごまかす
0167デフォルトの名無しさん2017/03/27(月) 00:14:56.12ID:GePKDk09
ム板じゃないと通じないボケ
0168デフォルトの名無しさん2017/03/27(月) 00:16:15.69ID:E+FNp5P9
>>166
カプセル化のポリシー違反や...
0169デフォルトの名無しさん2017/03/27(月) 00:16:37.89ID:GePKDk09
極端な低温か極端な高温なら制御可能なんだろ?

っていう話をするとぬこさんダメじゃん orz みたいな
0170デフォルトの名無しさん2017/03/27(月) 00:16:40.59ID:hxVTicGO
猫とドア以外の題材はよ
0171デフォルトの名無しさん2017/03/27(月) 00:19:25.06ID:GePKDk09
>>168
まぁな
大事なものを守るために、やらなきゃいけないことも……あるんや……!
あ、俺今カッコよくね? (A:全然かっこよくない)

もう冗談の域だからな……せいぜいふざけていこう

あとメール欄に「さげ」って書いても下げてくれるんだな、知らなんだ
0172デフォルトの名無しさん2017/03/27(月) 00:20:30.60ID:UxXnYzuG
キャットドア問題を出せば
オブジェクト指向の理解度を測れるとわかったのがこのスレの収穫
0173デフォルトの名無しさん2017/03/27(月) 00:20:55.40ID:NR+izKjp
蒼き猫型のロボット
0174デフォルトの名無しさん2017/03/27(月) 00:21:44.18ID:GePKDk09
>>172
大体の人はバートランド・ラッセルのような現実主義者であって
ヴィトケンシュタインみたいなオナニストじゃないからな
0175デフォルトの名無しさん2017/03/27(月) 00:24:37.13ID:E+FNp5P9
>>171
手段を選んでる余裕はないからな
背に腹はかえられぬ...

つーか「さげ」も有効とか2chの中の人は暇だろ絶対
0176デフォルトの名無しさん2017/03/27(月) 00:27:50.67ID:GePKDk09
>>175
やるときはなんか「できないなら裁判沙汰」ってときだけよ
ひでぇ客は相手にしたくないね……
0177デフォルトの名無しさん2017/03/27(月) 00:28:13.14ID:8CT7MInZ
>>141
その2レスは別に背反してないと思う。
どちらもdoor.open()が正しいという主張だ。
cat.go(diningRoom)などの処理でdoor.open()を呼ぶのだろう。
0178デフォルトの名無しさん2017/03/27(月) 00:30:12.48ID:jVvzovDA
>>157 : デフォルトの名無しさん2017/03/26(日) 23:56:58.99 ID:XA6YgUQb
> つか猫がドア開けるってどんな状況なのよ
> ジャンプして取手を空中で叩いて少し空いた所を着地した後に身体でドア押して入るって事か?

なんでこのバカは、ドアに取っ手があるって決めつけてるん?

本物のバカなん?
0179デフォルトの名無しさん2017/03/27(月) 00:31:11.28ID:jVvzovDA
>>160 : デフォルトの名無しさん2017/03/26(日) 23:59:09.42 ID:XA6YgUQb
> 猫が入るという事ならcat.openでいいが、ドアが入れるのを選ぶような事ならdoor.openもアリだ

ねーっつってんじゃん、池沼
0180デフォルトの名無しさん2017/03/27(月) 00:32:19.64ID:GePKDk09
>>179
真剣に考えて下すった相手を池沼呼ばわりするとかは許せんな
俺はそういうのが大嫌いだ
0181デフォルトの名無しさん2017/03/27(月) 00:34:55.83ID:jVvzovDA
>>163 : デフォルトの名無しさん2017/03/27(月) 00:10:24.00 ID:GePKDk09
> 今のIDが何か知らんけど、旧ID:KSncMErM先生がコードをご披露くださるってよ
> 超クールなやつだぜ
> 出来ないなら寝言ぶっこいてると判断していいだろ

クールなわけ無いじゃん。スゲー普通なやつだ。
お前らの奇天烈なコードじゃなく、普通のコードだ。

ただし、

http://echo.2ch.net/test/read.cgi/tech/1488928012/820

こいつが晒してからな。そういう約束だからな。
0182デフォルトの名無しさん2017/03/27(月) 00:35:27.99ID:uDHlqDK4
犬にボールを取って来させて受け取る
一般的な犬との戯れを
OOPLで表現すると以下ので正しいよね?

Dog dog = new Dog();
dog.take(new Ball());
Ball ball = dog.give();

つか、Getter/Setterとか
廃止すれば良いのにと思う。

もう使ってる人は居ないでしょ?
0183デフォルトの名無しさん2017/03/27(月) 00:36:39.77ID:jVvzovDA
>>180
> 真剣に考えて下すった相手を池沼呼ばわりするとかは許せんな
> 俺はそういうのが大嫌いだ

ほー、そうかい

オレは、真剣に考えてその程度しか考えられない不勉強なバカこそ、大嫌いだ
0184デフォルトの名無しさん2017/03/27(月) 00:36:54.00ID:hxVTicGO
>>178
決めつけてないだろう?決めつけてると決めつけたら駄目よ
0185デフォルトの名無しさん2017/03/27(月) 00:38:54.99ID:jVvzovDA
>>177 : デフォルトの名無しさん2017/03/27(月) 00:28:13.14 ID:8CT7MInZ
> どちらもdoor.open()が正しいという主張だ。

もしそうなら、言ったやつは本物のアホだから、本当にそうかそいつに聞いてみな
0186デフォルトの名無しさん2017/03/27(月) 00:39:27.07ID:vQHLMr9c
>>183
おまえの考える普通のコードと異なるものを全て否定するその発想は不自由だと思う
0187デフォルトの名無しさん2017/03/27(月) 00:39:36.59ID:jVvzovDA
>>184

アホは黙ってろ
0188デフォルトの名無しさん2017/03/27(月) 00:40:30.16ID:hxVTicGO
>>182
これはよう分かるわ。犬種やボールの種類はサブクラス化でイメージし易い
猫がドア開けるとかは状況が意味わからんしな、題材としてアカン
0189デフォルトの名無しさん2017/03/27(月) 00:40:31.70ID:jVvzovDA
>>186

なんでそう、自分の都合の良いように解釈する?

奇天烈なコード・仕様・設計だから「普通じゃない」と言ってるだけだ

くじゅあんだーすたん?
0190デフォルトの名無しさん2017/03/27(月) 00:42:07.91ID:NR+izKjp
blue cat: everywhere door !
0191デフォルトの名無しさん2017/03/27(月) 00:42:08.35ID:vQHLMr9c
>>189
じゃあその「普通」ってのは何を基準に定めてるの?
0192デフォルトの名無しさん2017/03/27(月) 00:46:36.23ID:GePKDk09
>>183
ここはム板だ、コードで語れ
コードでお前の能力を証明して見せろ
お前のクールなコードを見せてみろ

できないなら情シス板かマ板にでも失せな
0193デフォルトの名無しさん2017/03/27(月) 00:47:29.51ID:hxVTicGO
>>187
抽象的で素晴らしい

この文法なら何故この時俺をアホと呼べたか今じゃなく後々で理屈付けをすればいい
お手本のようなオブジェクト指向の使い方だ
0194デフォルトの名無しさん2017/03/27(月) 00:48:36.00ID:GePKDk09
ID:jVvzovDAは絶対コード書かんぜ、保証していい
こいつの言うことは全部無視していい
0195デフォルトの名無しさん2017/03/27(月) 00:50:43.09ID:GePKDk09
期待age
0196デフォルトの名無しさん2017/03/27(月) 00:55:51.25ID:GePKDk09
でもなんだ、rubyの機能を悪用してIT芸人キメた人が言うべきことでもなかろうが
0197デフォルトの名無しさん2017/03/27(月) 00:56:00.51ID:jVvzovDA
>>182 : デフォルトの名無しさん2017/03/27(月) 00:35:27.99 ID:uDHlqDK4
> 犬にボールを取って来させて受け取る
> 一般的な犬との戯れを
> OOPLで表現すると以下ので正しいよね?
>
> Dog dog = new Dog();
> dog.take(new Ball());
> Ball ball = dog.give();

全然ダメ

> 犬にボールを取って来させて

ここから分かることは、ボールは主人が用意して設置したということ
なのに、dog.take(new Ball()); と、新しいボールを犬が取っている

さらに、犬は「取ってこさせられる」のだからtakeは不適切。letTakeあたり

Ball ball = dog.give(); に至ってはもう、アホとしか。誰目線なんだよという話。

「犬にボールを取って来させて受け取る 」を現実的に正しく表現すると
Ball ball = dog.bitten; あたり。
犬が咥えているものくらい、パブリックアクセスできるだろう。
getterはお前を尊重して使わなかった。
Ball ball = takeBall(dog); でもいいだろう。

ウォームアップとしてはこんなもんだ。
0198デフォルトの名無しさん2017/03/27(月) 00:59:24.13ID:hxVTicGO
オブジェクト指向の指南というより英語の文法指南みたいになってんな
0199デフォルトの名無しさん2017/03/27(月) 00:59:33.38ID:GePKDk09
ID:jVvzovDAって他人をヘイトすることで「俺ツエー」を表現したい子っぽいから
そういう子だと思って付き合ってあげるといいと思うよ

一番いいのは「失せろカス」ってひたすらいってあげることかな

>>197
失せろカス
0200デフォルトの名無しさん2017/03/27(月) 00:59:39.35ID:w19GhvCX
>>194
そいつはスルーでいいと思う
他人をバカにすることでしか自己を維持出来ない奴の典型だから
さらにこいつが救えないのはただ単にバカと言ってるだけで全く論理性がないところ
本当に論破したいならもっと落ち着いて論理的に述べればいいものを無能がゆえに感情的になって全く会話にならない
もはや御愁傷様と言わざるを得ないレベル
0201デフォルトの名無しさん2017/03/27(月) 00:59:58.44ID:jVvzovDA
>>198
オブジェクト指向ってなんだ? ってことがわかってないバカにはそうかもな
0202デフォルトの名無しさん2017/03/27(月) 01:00:54.65ID:jVvzovDA
本物のバカ二連発だな


---------------------------------------------------------------------------------
199 : デフォルトの名無しさん2017/03/27(月) 00:59:33.38 ID:GePKDk09
ID:jVvzovDAって他人をヘイトすることで「俺ツエー」を表現したい子っぽいから
そういう子だと思って付き合ってあげるといいと思うよ

一番いいのは「失せろカス」ってひたすらいってあげることかな

>>197
失せろカス
200 : デフォルトの名無しさん2017/03/27(月) 00:59:39.35 ID:w19GhvCX
>>194
そいつはスルーでいいと思う
他人をバカにすることでしか自己を維持出来ない奴の典型だから
さらにこいつが救えないのはただ単にバカと言ってるだけで全く論理性がないところ
本当に論破したいならもっと落ち着いて論理的に述べればいいものを無能がゆえに感情的になって全く会話にならない
もはや御愁傷様と言わざるを得ないレベル
0203デフォルトの名無しさん2017/03/27(月) 01:01:03.23ID:GePKDk09
>>201
失せろカス
0204デフォルトの名無しさん2017/03/27(月) 01:01:16.40ID:UxXnYzuG
>>182
Ballはどういうメソッド持ってるの? 人間は出てこないの?
犬が勝手にボールを取ってくるのと取って来させるのと違いはないの?
dog.give()は常にBall型を返すの?
とかね、採用面接で使えそう

何回も言うけどモデルが適切かどうかは用途次第だよ
0205デフォルトの名無しさん2017/03/27(月) 01:01:30.70ID:GePKDk09
>>202
失せろカス
0206デフォルトの名無しさん2017/03/27(月) 01:02:13.51ID:jVvzovDA
論理性が無いかどうかオレのレス全部読んでみればわかるのに。
オレが論理性ないと思ってる時点で、そう判断するやつに論理性が無いことを証明してるんだよ。
0207デフォルトの名無しさん2017/03/27(月) 01:02:34.63ID:GePKDk09
>>206
失せろカス
0208デフォルトの名無しさん2017/03/27(月) 01:03:22.72ID:vQHLMr9c
>>206
論理的に「普通」について教えてくれ
0209デフォルトの名無しさん2017/03/27(月) 01:03:30.82ID:jVvzovDA
>>204 : デフォルトの名無しさん2017/03/27(月) 01:01:16.40 ID:UxXnYzuG
> Ballはどういうメソッド持ってるの?

おもしれーこというなー、こいつ

現実世界を模倣したら、Ballがメソッド持ってるわけねーじゃん。
Ballが持ってるのはプロパティだけだよw
0210デフォルトの名無しさん2017/03/27(月) 01:03:38.65ID:hxVTicGO
>>201
まあでもオブジェクト指向以前に手続き型でも関数型でも全く同じ指南が出来るからな
0211デフォルトの名無しさん2017/03/27(月) 01:04:00.66ID:GePKDk09
>>209
失せろカス
0212デフォルトの名無しさん2017/03/27(月) 01:04:27.48ID:jVvzovDA
>>208
知りたいの? じゃ、“普通は”教えて“ください”だよね♪
0213デフォルトの名無しさん2017/03/27(月) 01:05:29.77ID:jVvzovDA
>>210

そうだよ? つまりバカどもは、プログラムの基本中の基本もわかってねーって事なんだよ?
0214デフォルトの名無しさん2017/03/27(月) 01:05:31.84ID:GePKDk09
ブラウザキャッシュをクリアしてOS再起動する女々しさがないあたりだけは
ID:jVvzovDAを認めよう

どのみち数レスくらいで文体みりゃわかるんだけど……
0215デフォルトの名無しさん2017/03/27(月) 01:06:07.86ID:GePKDk09
>>212
>>213
失せろカス
0216デフォルトの名無しさん2017/03/27(月) 01:06:12.22ID:vQHLMr9c
>>212
いや、だから何をもって普通としているの?
0217デフォルトの名無しさん2017/03/27(月) 01:07:10.71ID:jVvzovDA
>>214 : デフォルトの名無しさん2017/03/27(月) 01:05:31.84 ID:GePKDk09
> ブラウザキャッシュをクリアしてOS再起動する女々しさがないあたりだけは
> ID:jVvzovDAを認めよう

なんでそんなめんどくさいことしなきゃなんないの?

オレ様だけが絶対に正しいこと言ってるのに♪
0218デフォルトの名無しさん2017/03/27(月) 01:07:44.74ID:GePKDk09
>>217
失せろカス
0219デフォルトの名無しさん2017/03/27(月) 01:08:09.39ID:jVvzovDA
>>216
ん?

>知りたいの? じゃ、“普通は”教えて“ください”だよね♪

これに異論があるってこと? おまえ、他人に物を教わる時、「教えてくれ!」って言うの?

ばかじゃんw
0220デフォルトの名無しさん2017/03/27(月) 01:09:59.13ID:w19GhvCX
ID:jVvzovDA は無視で
それが社会的な存在を抹消する唯一の方法
0221デフォルトの名無しさん2017/03/27(月) 01:10:45.55ID:GePKDk09
>>217
失せろカスとかタイプするのだるいから 失 だけでいいか?
めんどくさくなってきたんだよ
0222デフォルトの名無しさん2017/03/27(月) 01:12:00.67ID:hxVTicGO
>>209
これは違うな。ballは割れるだの跳ねるだのの振る舞いはballの持ち主ではなくballそのものに依存すべきよ
上記の話のドアだって鍵が付いてたら鍵が合わない場合、ドアに鍵が合わないと言わせなきゃいかん
現実で無機質だからと言ってメッセージを返さないようにするのは違う
0223デフォルトの名無しさん2017/03/27(月) 01:12:05.83ID:jVvzovDA
なんか、一生懸命な奴がいるなぁ…

こうなると、「言っていることの是非は関係ない、オレが気に入らないから排除だ!」レベルのガイキチさんだなぁ…
0224デフォルトの名無しさん2017/03/27(月) 01:12:25.50ID:GePKDk09
わぉ、昔どこぞの「魔法のiらんど」で政治討論やってた頃を思い出すね
……なんで文系の俺がマやってんだか #ここで食いつくと思うよ
0225デフォルトの名無しさん2017/03/27(月) 01:12:34.62ID:vQHLMr9c
>>219
なかなか通じないな

俺がバカなのは周知のことだからどうでもいいんだよ
俺はおまえが繰り返してる「普通は」って言うその「基準」を知りたいんだよ
0226デフォルトの名無しさん2017/03/27(月) 01:14:18.78ID:GePKDk09
>>223
お前は理由もなく他人をヘイトした
彼か彼女かは知らんが、彼が言いたいことを理解しようと試みたように思えない
だから同じことをし返している

もう 失 でいいよなタイプするのだるいし
0227デフォルトの名無しさん2017/03/27(月) 01:18:49.31ID:jVvzovDA
>>222

おまえがどうあってほしいかなんてしらないけど、
メソッドって何だかわかってるん?

ボールが勝手に跳ねてくれたら便利だな―って、しらねーよ。

ボールは投擲者が与えた慣性によって進んでるだけ
持ってるのは加速度ベクトルというプロパティ

地面に当たった時もそう。
ボールが自分で「こんな角度ではねかえって進みまーす」って決めて動いてるんじゃない。

>現実世界を模倣したら

って言ったろ?

これだけ言えば、そろそろ本題のヒントが見えてくんだろ?

お前らの仕事ってなんだ? おまえらの書きやすいようにコードを書くことだと思ってるのか?

>現実で無機質だからと言ってメッセージを返さないようにするのは違う

「違う」じゃなくて、お前が「大変だからヤダ」と思ってるだけだろ?
0228デフォルトの名無しさん2017/03/27(月) 01:21:18.82ID:hxVTicGO
ある意味煽り合いっていうのは抽象的な流れだから抽象的って何だよ!って場合ここ見れば
ああ確かにこの人具体的な言及はしてないなってわかり易いのかもわからん、、
0229デフォルトの名無しさん2017/03/27(月) 01:21:19.82ID:jVvzovDA
>>225
お前の言いたいことなんか全部わかった上で相手してるんだから心配すんなよ。

で、


>知りたいの? じゃ、“普通は”教えて“ください”だよね♪

これに異論があるってこと? おまえ、他人に物を教わる時、「教えてくれ!」って言うの?

に、素直に答えた方おまえのためになるんじゃないかと思うよ
0230デフォルトの名無しさん2017/03/27(月) 01:23:14.31ID:jVvzovDA
>>226 : デフォルトの名無しさん2017/03/27(月) 01:14:18.78 ID:GePKDk09
> >223
> お前は理由もなく他人をヘイトした

理由は「そいつがアホだから」って言ったじゃん。あるよ♪
0231デフォルトの名無しさん2017/03/27(月) 01:26:07.66ID:GePKDk09
設計やるなら、期日までに動かせなかったら首吊って詫び入れる覚悟が必要だ

ID:jVvzovDAの文面を見る限り「俺が気に食わないからイヤです」って営業マンの寝言に見えるな
自称SEかも知らんが
お前が言ったことを実現できなかったら、億単位の損害を賠償するとかそういう世界になる

ま、学者さんなのかもしらんがね

とりあえず失せな
0232デフォルトの名無しさん2017/03/27(月) 01:27:07.53ID:vQHLMr9c
>>229
別に俺のためとか考えてくれなくていいから

結局何をもって普通のコードとするかの基準はなんなの?
やっぱり基準なんか無くておまえの意図するコード以外は全て否定して異常としてるだけなの?
0233デフォルトの名無しさん2017/03/27(月) 01:27:21.82ID:jVvzovDA
>>231

お前のバカれすに賛同者がいっぱいついたらいいな♪
0234デフォルトの名無しさん2017/03/27(月) 01:27:40.12ID:w19GhvCX
まともな人間性を持たない奴に正面から向き合っても疲れるだけだよ
無視して関わらないと言うのが唯一の解でありかつ最適解
ということでみんな寝よう
おつかれさま
0235デフォルトの名無しさん2017/03/27(月) 01:27:57.40ID:jVvzovDA
>>232
それはお前がオレに聞かれた事に答えていかないと、お前には見えてこない
0236デフォルトの名無しさん2017/03/27(月) 01:28:43.30ID:jVvzovDA
>>234
一人で寝ればいいのにw

みんなが寝ないと眠れないって小学生かよw
0237デフォルトの名無しさん2017/03/27(月) 01:29:07.48ID:vQHLMr9c
>>235
質問に対して質問で返してごまかす程度のやつか
もういいよ
0238デフォルトの名無しさん2017/03/27(月) 01:29:34.06ID:jVvzovDA
>>232
だが、敢えて言っておくなら

>やっぱり基準なんか無くておまえの意図するコード以外は全て否定して異常としてるだけなの?

違うよ。

お前らバカにはわからんだろうけどな。
0239デフォルトの名無しさん2017/03/27(月) 01:30:34.13ID:jVvzovDA
>>237 くいっとw
0240デフォルトの名無しさん2017/03/27(月) 01:30:54.83ID:GePKDk09
世の中にはクソッタレを黙らせるのが趣味の人もいるがな

三発くらい「失せろカス」で黙らなかったから、なんか別の手を試みているけど
いやー楽しいね
試みがいがある

目的は黙らせることでね、黙るまでいろいろやってみたいね
0241デフォルトの名無しさん2017/03/27(月) 01:31:21.01ID:jVvzovDA
自分に都合の良い答えばかりを求めるバカが多いようで♪
0242デフォルトの名無しさん2017/03/27(月) 01:31:36.57ID:hxVTicGO
>>227
いやいやballを投げる奴が投げたballがどれ程飛ぶのか跳ねるのか耐久性があるのか知っているとは限らないて話よ
だからballにメソッドをもたせるのは間違ってない

さっきのドアの話が一番わかり易い。ドアを解錠しようとする人間がいて鍵が合わなかった場合、鍵が合わないと誰が人間に伝えるかって事よ
0243デフォルトの名無しさん2017/03/27(月) 01:32:06.96ID:jVvzovDA
>>240

ん? お前、誰? 初めて見た
0244デフォルトの名無しさん2017/03/27(月) 01:32:48.08ID:vQHLMr9c
>>241
そーゆーのは答えてから言うべきだよね♪
0245デフォルトの名無しさん2017/03/27(月) 01:34:28.41ID:jVvzovDA
>>242
> いやいやballを投げる奴が投げたballがどれ程飛ぶのか跳ねるのか耐久性があるのか知っているとは限らないて話よ
> だからballにメソッドをもたせるのは間違ってない

いや、間違ってるよ。

それがわかんないとしたら、お前の世界は現実世界に比べて何かが欠けてるんじゃね?

>さっきのドアの話が一番わかり易い。ドアを解錠しようとする人間がいて鍵が合わなかった場合、鍵が合わないと誰が人間に伝えるかって事よ

伝えるわけねーじゃん。鍵回らねーって人間が認識するだけだよ、現実世界なら。
0246デフォルトの名無しさん2017/03/27(月) 01:34:54.28ID:w19GhvCX
>>240
まあ好きでやってるならもう止めないけど、明日朝起きてなんでこんな奴のために自分の時間使ってたんだろう
って自己嫌悪に陥らない程度にね
ではでは
0247デフォルトの名無しさん2017/03/27(月) 01:35:05.96ID:GePKDk09
>>243
ああ ID:jVvzovDA はマでもないし、SEでもない
何度 ID:GePKDk09 にレスしたか覚えていないのか?

営業してこい、せいぜい稼いで来いよ
失せろカス

やべぇ、楽しくなってきたよ……!
0248デフォルトの名無しさん2017/03/27(月) 01:36:10.05ID:GePKDk09
>>246
あざーす
0249デフォルトの名無しさん2017/03/27(月) 01:38:01.78ID:jVvzovDA
類は友を呼ぶって本当だったんだ…
0250デフォルトの名無しさん2017/03/27(月) 01:38:57.19ID:jVvzovDA
>何度 ID:GePKDk09 にレスしたか覚えていないのか?

ごめん、記憶の片隅にもない。

で、おまえ、誰? なんか意味あること言ってたっけ?
0251デフォルトの名無しさん2017/03/27(月) 01:38:59.46ID:vQHLMr9c
>>249
だからおまえの周りはクズだらけなんだね☆
0252デフォルトの名無しさん2017/03/27(月) 01:39:46.48ID:hxVTicGO
>>245
現実世界の物と比べるのはいい方法だが完璧ではないな
現実だと人間がドアの鍵が合わない場合人間が勝手に認識すればいいが
プログラミングだとドアが人間にメッセージ送って"ドアが人間に認識させなければならない"
ドアが自ら人様に喋らなきゃいかんのだ
0253デフォルトの名無しさん2017/03/27(月) 01:41:11.88ID:jVvzovDA
>>252 : デフォルトの名無しさん2017/03/27(月) 01:39:46.48 ID:hxVTicGO
> >245
> 現実世界の物と比べるのはいい方法だが完璧ではないな

いや、「完璧ではないな、キリッ」じゃなくて、
そういうお題なんだって。

おまえ、前スレ読んでこいよ
0254デフォルトの名無しさん2017/03/27(月) 01:42:07.06ID:jVvzovDA
>>252

おまえ、仕様が降りてきた時に、「こういう仕様は現実的じゃないですね」って言うん?

「こういう設計は現実的じゃないですね」じゃないぞ?
0255デフォルトの名無しさん2017/03/27(月) 01:42:57.90ID:GePKDk09
>>250
スルーしないでレスったのは知ってる証拠やで

なんか無益な気がしてきたんだが、どうしたらいいんかな
冗談でリフレクションっぽいのをrubyで書いたらシカトされたし
pythonかjavaで書いたら冗談を理解してくださるんかね
0256デフォルトの名無しさん2017/03/27(月) 01:43:02.26ID:jVvzovDA
仕様じゃなくて、もはや、要件レベルだな
0257デフォルトの名無しさん2017/03/27(月) 01:43:55.00ID:jVvzovDA
>>255

ごめん、今、真面目な話してるからどうでもいいレスは後にしてくれるかな?
0258デフォルトの名無しさん2017/03/27(月) 01:45:21.59ID:GePKDk09
>>254
エラい人に「あの人の言ってることは実装不能です」とナシつけてから
お前に「こういう仕様は実装不能です」っていうんじゃないかなあ

「現実的じゃない」じゃなくて、テクニカルな意味で実装不能ならそういう
現実的じゃない、程度なら普通に実装できる(方法があるんならなんだってやれるよ)

とりあえず自称SEのウンコなのはわかったから失せてくれよ
0259デフォルトの名無しさん2017/03/27(月) 01:45:36.75ID:jVvzovDA
>>252
>プログラミングだとドアが人間にメッセージ送って"ドアが人間に認識させなければならない

そのMUSTがおかしいじゃんって話してんだけど

出来ないなら仕方ないけど、出来るじゃん。
0260デフォルトの名無しさん2017/03/27(月) 01:45:49.32ID:hxVTicGO
>>253
いや前スレとかそんなもん関係ないやろ
オブジェクト指向を現実世界のモノと捉え過ぎるのは良くないって話だから
現実のドアは喋らないけどプログラ厶のドアは喋らなきゃいけないのよ。プログラムの仕様上
0261デフォルトの名無しさん2017/03/27(月) 01:46:37.17ID:GePKDk09
>>257
お前をどっかに逝かせてこのスレを終わらせるのが俺の目的だ

失 (失せろカスの略)
0262デフォルトの名無しさん2017/03/27(月) 01:51:24.23ID:hxVTicGO
>>259
人間が複数の鍵を持っててドアに合う鍵は一つならドアは人間に対して返答しなきゃならん
これは駄目これは良しと
現実世界に喩えるには限界があるやろ
0263デフォルトの名無しさん2017/03/27(月) 01:51:26.01ID:jVvzovDA
>>260 : デフォルトの名無しさん2017/03/27(月) 01:45:49.32 ID:hxVTicGO
> オブジェクト指向を現実世界のモノと捉え過ぎるのは良くないって話だから

「良くない」とか、お前個人の意見は知らない。
そう言いたいなら、お前が札束握って発注出来る立場になって。


今回の発注者は前スレのこれ

> 要件
> >>422-423
>
> 追加案件
> >>592   ←これ間違ってるぞ 正しくは >>577-578


それが出来なければ、どんなに御託をならべようと、You are fired.
0264デフォルトの名無しさん2017/03/27(月) 01:51:53.08ID:8CT7MInZ
>>231
学者さんのわけがない。
>>185や>>209を見ると現実と切り離して整理したモデリングが出来ない。
古いオブジェクト指向入門本を読み終えたばかりの初心者と見た。
オブジェクト指向ソフトウェアを完成させた経験はまずないだろう。

「憂鬱なプログラマのためのオブジェクト指向開発講座」でも読んだのかな?
ID:jVvzovDAは「オブジェクト指向のこころ」で再入門すべきだと思う。
0265デフォルトの名無しさん2017/03/27(月) 01:52:15.55ID:jVvzovDA
>>262 : デフォルトの名無しさん2017/03/27(月) 01:51:24.23 ID:hxVTicGO
> 人間が複数の鍵を持っててドアに合う鍵は一つならドアは人間に対して返答しなきゃならん

なんで?
0266デフォルトの名無しさん2017/03/27(月) 01:52:54.06ID:jVvzovDA
>>262 : デフォルトの名無しさん2017/03/27(月) 01:51:24.23 ID:hxVTicGO
> これは駄目これは良しと
> 現実世界に喩えるには限界があるやろ

何の限界? お前の限界じゃん
0267デフォルトの名無しさん2017/03/27(月) 01:54:33.97ID:hxVTicGO
>>265
鍵が合わないなら鍵が合わない事を人様にドアが伝えなきゃならんからやな
0268デフォルトの名無しさん2017/03/27(月) 01:55:01.23ID:GePKDk09
>>264
なんでもかんでもメンバ変数が * してるところだけはアレだけど
説明はイケてるよな、「憂鬱」
0269デフォルトの名無しさん2017/03/27(月) 01:55:48.14ID:jVvzovDA
>>267 : デフォルトの名無しさん2017/03/27(月) 01:54:33.97 ID:hxVTicGO
> 鍵が合わないなら鍵が合わない事を人様にドアが伝えなきゃならんからやな

おまえんちのドア、教えてくれるん?

おまえ、ドアが教えてくれないと理解できないん?
0270デフォルトの名無しさん2017/03/27(月) 01:56:45.28ID:jVvzovDA
>>269

ん? お前、障害者の人やったん?
0271デフォルトの名無しさん2017/03/27(月) 01:57:05.44ID:jVvzovDA
間違えた

>>267

ん? お前、障害者の人やったん?
0272デフォルトの名無しさん2017/03/27(月) 01:57:29.00ID:vQHLMr9c
>>ID:jVvzovDA
スッキリわかる Java入門 第2版、2014

読むといいよ
0273デフォルトの名無しさん2017/03/27(月) 01:58:01.91ID:hxVTicGO
>>263
これ軽く見たけど別に機能が複数あるだけで整理が大変てだけの話やろ?
機能が複数あってもドアのリアクションはそれぞれ抽象化すればいんじゃね???
0274デフォルトの名無しさん2017/03/27(月) 01:58:46.00ID:GePKDk09
>>269
うん、鍵穴回らんでそ
0275デフォルトの名無しさん2017/03/27(月) 01:59:36.16ID:jVvzovDA
>>273 code plz!
0276デフォルトの名無しさん2017/03/27(月) 02:00:48.64ID:jVvzovDA
>>274

おまえ、鍵が回らなかっとこと、認識できないん? やっぱ障害者の人やったん?

そしたらそれは class UniversalDoor extends Door {}

しないとダメだよ、別クラスの話
0277デフォルトの名無しさん2017/03/27(月) 02:01:05.38ID:hxVTicGO
>>269
ああ、教えてくれるぞ。鍵穴に別の鍵入れたらガチガチ言って鍵穴回ってくれないからな
ドアのリアクションを見てこれは違う鍵だなと俺は判断するな
お前もドアをプログラミングするときはドアのリアクションを書かなきゃいかんぞ
0278デフォルトの名無しさん2017/03/27(月) 02:01:15.32ID:GePKDk09
>>275
さんざん煽っておいて code plz とかざけんな

ほら書かんだろこいつ
俺はrubyでアホみたいなコード書いたが(前スレのネタ)、そういうバカすらしねえ
0279デフォルトの名無しさん2017/03/27(月) 02:01:39.01ID:jVvzovDA
class UniversalDoor extends Door {}

は、教えてくれるメソッド持っててもいいよ、もちろん。
0280デフォルトの名無しさん2017/03/27(月) 02:02:17.76ID:jVvzovDA
>>278

ごめん、おまえのレス見てなかった。なんで怒ってるの?
0281デフォルトの名無しさん2017/03/27(月) 02:03:58.56ID:hxVTicGO
>>275
難しく考え過ぎよドアのリアクションの親クラス作れ
で、delegateにドアのリアクションメソッドを書け
細かい事はその中に全部投げろ。何ならドアのリアクションオブジェクトまで作って継承させろ
0282デフォルトの名無しさん2017/03/27(月) 02:04:44.69ID:jVvzovDA
>>277 : デフォルトの名無しさん2017/03/27(月) 02:01:05.38 ID:hxVTicGO
> ああ、教えてくれるぞ。鍵穴に別の鍵入れたらガチガチ言って鍵穴回ってくれないからな

おまえさ、それ、ドアが自分で鳴ってるんだと思ってるん?

違うよ。言ったじゃん、お前の世界は現実世界に比べて何かが欠けてるんじゃね?

>ドアのリアクションを見てこれは違う鍵だなと俺は判断するな

判断してるのは“ドア”のリアクションじゃねーわけさ。

> お前もドアをプログラミングするときはドアのリアクションを書かなきゃいかんぞ

UniversalDoorには書くよ?
0283デフォルトの名無しさん2017/03/27(月) 02:05:33.68ID:GePKDk09
>>280
お前が真剣に問題に取り組もうとしていないからだ
自分が解決せにゃならん、とハラをキメてコード書いた経験がないように見えるから

そういう態度だきゃあ腹が立つんだよ
アマチュアならどっかで寝言ぶっこいてろカス
0284デフォルトの名無しさん2017/03/27(月) 02:06:16.64ID:vQHLMr9c
>>282
鍵穴が回らないってのはドアのリアクションだろ

boolean open(key){〜}
0285デフォルトの名無しさん2017/03/27(月) 02:06:42.72ID:hxVTicGO
>>282
いやドアのリアクションだろ
それ見らなきゃあっ!鍵間違えてる!ってならんわ
0286デフォルトの名無しさん2017/03/27(月) 02:07:04.94ID:jVvzovDA
>>281 : デフォルトの名無しさん2017/03/27(月) 02:03:58.56 ID:hxVTicGO
> 難しく考え過ぎよ

いや、お前が楽天的過ぎるだけだ

>ドアのリアクションの親クラス作れ
>で、delegateにドアのリアクションメソッドを書け
>細かい事はその中に全部投げろ。何ならドアのリアクションオブジェクトまで作って継承させろ

そろそろ真面目に答えるけど、大喜利のお題目守れないバカは参加する資格ねーよ
0287デフォルトの名無しさん2017/03/27(月) 02:08:15.96ID:jVvzovDA
>>281

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

君がいったドアの例の延長で行くぞ
現実世界で使えるレベルのモデリングを提起する
-----------------------------------------------------------------------------
0288デフォルトの名無しさん2017/03/27(月) 02:09:03.29ID:zW6KwjjJ
まだ決まっていないものを決まっているかのように語るのはおかしい
決まってないんだから、このスレの大体のコードは正しい
もっと例題に条件をつけないと、そのコードはおかしいとかもっといいやり方があるとか語れる

現実を例に出すと、各々が暗黙的に想定していることが違って齟齬を生むよ

例題:
あるオブジェクトaと、それを引数にとる処理pがある。
aによく似たオブジェクトa'やa''が後々追加される可能性があり、これらも処理pにかけたい。
又、新たな処理p'も追加される可能性がある。p'はaやa''を引数に取りたい
aの型(あるいはクラス)Aやpを定義した時のコードは変更できない場合、どのようにAやpを定義するべきか
0289デフォルトの名無しさん2017/03/27(月) 02:09:10.66ID:GePKDk09
>>286
技術論を真剣にやる気がないなら失せろって言ってんだろ

マジメにやってる連中に無礼だと思わないのか
0290デフォルトの名無しさん2017/03/27(月) 02:09:44.90ID:jVvzovDA
>>284 : デフォルトの名無しさん2017/03/27(月) 02:06:16.64 ID:vQHLMr9c
> 鍵穴が回らないってのはドアのリアクションだろ

ドアがリアクションすると、本気で思ってるのか、ゴミカス
0291デフォルトの名無しさん2017/03/27(月) 02:09:49.55ID:hxVTicGO
>>286
完璧過ぎる回答だろう
あの複雑な内容に親クラス作ってdelegateに全部投げろってまさにオブジェクト指向らしい我ながら完璧な回答だわ
0292デフォルトの名無しさん2017/03/27(月) 02:10:38.16ID:jVvzovDA
>>288
おまえは寝てていい
0293デフォルトの名無しさん2017/03/27(月) 02:11:34.00ID:jVvzovDA
>>291 : デフォルトの名無しさん2017/03/27(月) 02:09:49.55 ID:hxVTicGO
> 完璧過ぎる回答だろう


脳味噌がお花畑の奴にとってはな。
0294デフォルトの名無しさん2017/03/27(月) 02:11:56.48ID:GePKDk09
>>292
逝ってよし
0295デフォルトの名無しさん2017/03/27(月) 02:13:13.22ID:jVvzovDA
ほんと、誰だ? こいつ…
0296デフォルトの名無しさん2017/03/27(月) 02:13:22.05ID:vQHLMr9c
>>290
思ってるよ
おまえはゴミカスの俺より想像力が欠如してるんだろうな
0297デフォルトの名無しさん2017/03/27(月) 02:15:20.87ID:jVvzovDA
>>296

そうだろうな、流石にオレでも普通のドアが自分自信の状態教えてくれるなんて妄想は抱けん。

お前はきっと天の声も聞こえるだろう。そうだ、お前は最強だ。おめでとう。
0298デフォルトの名無しさん2017/03/27(月) 02:15:38.80ID:hxVTicGO
>>293
あれ以上の回答思い付かないな
機能を溜め込んだ箇所への適切な対処。てかこれ以外の方法あんの?
0299デフォルトの名無しさん2017/03/27(月) 02:16:14.65ID:jVvzovDA
ドアと対話できる ID:vQHLMr9c 最強説が誕生した瞬間!!!!!
0300デフォルトの名無しさん2017/03/27(月) 02:16:29.15ID:GePKDk09
ともかく、俺らは現実の問題を解決するのが生きがいのクソッタレであり
お前の望みを完璧に実現する奴隷じゃないわけ

そんなんでなければ技術者やれんぜ
0301デフォルトの名無しさん2017/03/27(月) 02:16:49.52ID:jVvzovDA
>>298 : デフォルトの名無しさん2017/03/27(月) 02:15:38.80 ID:hxVTicGO
> 293
> あれ以上の回答思い付かないな
> 機能を溜め込んだ箇所への適切な対処。てかこれ以外の方法あんの?

あるにきまってんだろ、バカ
0302デフォルトの名無しさん2017/03/27(月) 02:17:08.53ID:hxVTicGO
>>297
ああ俺もドアの声が聞こえるなんて馬鹿な妄想は抱けんわ流石に
0303デフォルトの名無しさん2017/03/27(月) 02:17:34.75ID:jVvzovDA
>>300 : デフォルトの名無しさん2017/03/27(月) 02:16:29.15 ID:GePKDk09
> ともかく、俺らは現実の問題を解決するのが生きがいのクソッタレであり

真っ先に現実の問題から逃避しといて何言ってんだよ
0304デフォルトの名無しさん2017/03/27(月) 02:17:50.49ID:vQHLMr9c
>>297
ありがとう

正直おまえと一緒に仕事してなくて良かったと感じてるよ
リアルだったら喧嘩になるもん
0305デフォルトの名無しさん2017/03/27(月) 02:18:03.96ID:jVvzovDA
>>302

お ま え が い っ た ん だ ろ !
0306デフォルトの名無しさん2017/03/27(月) 02:18:24.57ID:hxVTicGO
>>301
無理無理炎上がオチ
0307デフォルトの名無しさん2017/03/27(月) 02:18:58.80ID:jVvzovDA
>>304 : デフォルトの名無しさん2017/03/27(月) 02:17:50.49 ID:vQHLMr9c
> >297
> ありがとう
>
> 正直おまえと一緒に仕事してなくて良かったと感じてるよ
> リアルだったら喧嘩になるもん

喧嘩じゃなくて、おまえ、クビ
おれじゃなくても、おまえ、クビ
0308デフォルトの名無しさん2017/03/27(月) 02:19:56.30ID:vQHLMr9c
>>305
誰もドアが声を出すなんて言ってないよ
おまえが言い出したんだよ

リアクションが発声のみと思ってるのなら残念賞
0309デフォルトの名無しさん2017/03/27(月) 02:20:39.15ID:jVvzovDA
>>306
お前に無理だからって、全員無理だとおもうなよ…

まともなやつはおまえらなんか相手にしてねーよ…

なんでオレが相手にしてるとおもってんだよ…

暇つぶしにきまってんじゃねーか…
0310デフォルトの名無しさん2017/03/27(月) 02:20:44.53ID:GePKDk09
ID:jVvzovDA 先生が >>301 で
「あるにきまってんだろ、バカ」
と書いてくださりました

実装を待とうぜ! マジ期待age!
0311デフォルトの名無しさん2017/03/27(月) 02:20:46.19ID:vQHLMr9c
>>307
あー大丈夫
おまえにそんな権限与えるような会社は作らないから
0312デフォルトの名無しさん2017/03/27(月) 02:22:22.02ID:hxVTicGO
>>305
おいおいまさかセキュリティセンターみたいな所のカードキーで開いて"認証ニセイコウシマシタ"とかいうドアと勘違いしてるんじゃないだろうな
アナログの鍵で開く普通のドアだぞ
0313デフォルトの名無しさん2017/03/27(月) 02:22:46.37ID:GePKDk09
ID:jVvzovDA

実装できないならお前マじゃないしSEですらないぞ
俺らはそう判断する

どうするね、失せるかコード書くか、どっちかだよ
御託はいらね

やれないなら消えな
0314デフォルトの名無しさん2017/03/27(月) 02:23:51.37ID:jVvzovDA
>>308 : デフォルトの名無しさん2017/03/27(月) 02:19:56.30 ID:vQHLMr9c
> リアクションが発声のみと思ってるのなら残念賞

回らないってことがリアクションだと思ってるなら、お前が残念賞

“自発的に”回らなかったことがリアクションならわかる

おまえのドアキーは、『回るまい』という意思をもってるのか?

それ、おまえ、きらわれてんだよ
0315デフォルトの名無しさん2017/03/27(月) 02:24:59.58ID:hxVTicGO
>>309
あんな機能量でdelegateに投げない奴がそんな仕事出来る時点でおかしいし
そもそもそれならオブジェクト指向使う意味ねーって話になるしな全部本末転倒よ
0316デフォルトの名無しさん2017/03/27(月) 02:25:49.67ID:jVvzovDA
>>312 : デフォルトの名無しさん2017/03/27(月) 02:22:22.02 ID:hxVTicGO
> >305
> おいおいまさかセキュリティセンターみたいな所のカードキーで開いて"認証ニセイコウシマシタ"とかいうドアと勘違いしてるんじゃないだろうな
> アナログの鍵で開く普通のドアだぞ

なおさらおまえばかだろ、上の文こそリアクション有ってもあたりまえじゃねーか
0317デフォルトの名無しさん2017/03/27(月) 02:26:37.02ID:GePKDk09
>>314
× それ、おまえ、きらわれてんだよ
〇 それ、お前、嫌われてんだよ

日本語すら正しく使えないのか? 意味があってヒラガナ化してんのか?
ひらがなに「開いた」(漢字で表記するのが一般的な文言をひらがなにした)理由を説明してみな
0318デフォルトの名無しさん2017/03/27(月) 02:28:15.72ID:jVvzovDA
>>315 : デフォルトの名無しさん2017/03/27(月) 02:24:59.58 ID:hxVTicGO
> >309
> あんな機能量でdelegateに投げない奴がそんな仕事出来る時点でおかしいし

なんか必死にでりげーとでりげーと言ってるけど、そんなHOWの部分、
ほんとどーでもいいにきまってんだろ

お題目の「現実世界で使えるレベルのモデリングを提起する 」
が守れね―奴は全員バカなわけさ

おまえ、バカなわけさ

死ね
0319デフォルトの名無しさん2017/03/27(月) 02:28:47.44ID:vQHLMr9c
>>314
自発的なら「アクション」だよ
こちらから何かをした結果を返すのが「リアクション」

人:ドアノブを回す ←アクション
ドア:鍵かかってるから開かない ←アクションに対するリアクション
0320デフォルトの名無しさん2017/03/27(月) 02:29:13.84ID:hxVTicGO
>>316
オブジェクト指向ってオブジェクト同士の対話だからな
ドアクラスやドアオブジェクト作った時点で人間オブジェクトとのリアクションあって当たり前やがな
0321デフォルトの名無しさん2017/03/27(月) 02:29:34.18ID:jVvzovDA
>>317 : デフォルトの名無しさん2017/03/27(月) 02:26:37.02 ID:GePKDk09
> 日本語すら正しく使えないのか? 意味があってヒラガナ化してんのか?

分かってんなら聞くなよ

おまえがアホすぎて変換するのもめんどくさいからわざとひらがなにしてるに決まってんだろ

正確に言うならめんどくさいから変換してない、だ
0322デフォルトの名無しさん2017/03/27(月) 02:30:50.86ID:jVvzovDA
>>319 : デフォルトの名無しさん2017/03/27(月) 02:28:47.44 ID:vQHLMr9c
> 自発的なら「アクション」だよ
> こちらから何かをした結果を返すのが「リアクション」

誰目線の話をしてんだよ
0323デフォルトの名無しさん2017/03/27(月) 02:30:57.27ID:GePKDk09
>318
二人目か同一人物か知らんけど

「HOWの部分、
ほんとどーでもいい」

お前は技術者なんかじゃない

どうにかするのが技術者の使命だからだ
失せろカス
0324デフォルトの名無しさん2017/03/27(月) 02:32:22.80ID:vQHLMr9c
>>322
言葉の意味すら分かってなさそうなおまえ目線だよ
0325デフォルトの名無しさん2017/03/27(月) 02:32:38.94ID:hxVTicGO
>>318
どーでもいいどころかそのワード一つで解決策提示し終わったんだからお前のお題それで終わりだろ
お前のお題クリアーして終わったんだから褒めたり感想言ったりはよ
0326デフォルトの名無しさん2017/03/27(月) 02:32:52.86ID:jVvzovDA
>>319 : デフォルトの名無しさん2017/03/27(月) 02:28:47.44 ID:vQHLMr9c
> ドア:鍵かかってるから開かない ←アクションに対するリアクション

だーから、ドアはなんにもしてねーっていってんだらーー

お前の世界は現実世界に比べて何かが欠けてるんだってばよー!
0327デフォルトの名無しさん2017/03/27(月) 02:33:09.83ID:hxVTicGO
>>322
オブジェクトやな
0328デフォルトの名無しさん2017/03/27(月) 02:34:17.08ID:jVvzovDA
>>325 : デフォルトの名無しさん2017/03/27(月) 02:32:38.94 ID:hxVTicGO
< お前のお題クリアーして終わったんだから

どうどうめぐりだよ、バカ

前スレの
422 : デフォルトの名無しさん2017/03/24(金) 13:02:26.33 ID:3PUwYYlD
に聞いてミロ

お前がそいつなら、お題挙げた奴が狂ってて、それこそ終了だ
0329デフォルトの名無しさん2017/03/27(月) 02:34:19.26ID:hxVTicGO
>>326
いやドアは何かするんだっての
それがお前の間違いやな
0330デフォルトの名無しさん2017/03/27(月) 02:35:27.77ID:jVvzovDA
おもしれーやつかと思ったら、本当にマジでおかしいやつだった

ID:hxVTicGO

            ∩_ 
           〈〈〈 ヽ
          〈⊃  }
   ∩___∩  |   |
   | ノ      ヽ !   !
  /  ●   ● |  /
  |    ( _●_)  ミ/ 初めてのキチガイ認定!
/ __  ヽノ /
(___)   /
0331デフォルトの名無しさん2017/03/27(月) 02:35:35.44ID:hxVTicGO
>>328
堂々巡りならどう間違ってるのか言わなきゃ分かりませんなぁ
0332デフォルトの名無しさん2017/03/27(月) 02:35:37.03ID:vQHLMr9c
>>326
その「何か」を明確に提示できるの?
0333デフォルトの名無しさん2017/03/27(月) 02:35:40.18ID:GePKDk09
>>326
名古屋県民? 愛知県ってのが適切だろうが……
0334デフォルトの名無しさん2017/03/27(月) 02:36:02.38ID:jVvzovDA
>>329

あー、おまえんちのドアは勝手に動くのね、すごいすごい
0335デフォルトの名無しさん2017/03/27(月) 02:37:04.34ID:jVvzovDA
>>331 : デフォルトの名無しさん2017/03/27(月) 02:35:35.44 ID:hxVTicGO
> >328
> 堂々巡りならどう間違ってるのか言わなきゃ分かりませんなぁ

これだけ説明してわかんねーなら、おまえが納得する答えはねーよ、池沼
0336デフォルトの名無しさん2017/03/27(月) 02:37:50.23ID:hxVTicGO
>>334
なあもし俺の家が本当に開くドアだったらどうする??
一応現実にそんなドアは存在する訳ではあるんだが
0337デフォルトの名無しさん2017/03/27(月) 02:38:03.69ID:vQHLMr9c
>>334
人が動かすからドアは動くんだよ

何でこんなことも説明しなきゃならないのか
0338デフォルトの名無しさん2017/03/27(月) 02:39:22.22ID:hxVTicGO
>>335
それつまり俺の答えが合ってんだよきっと
お前が間違えてるって変な先入観で思い込んでるだけよ
0339デフォルトの名無しさん2017/03/27(月) 02:39:32.24ID:jVvzovDA
>>332 : デフォルトの名無しさん2017/03/27(月) 02:35:37.03 ID:vQHLMr9c
> >326
> その「何か」を明確に提示できるの?

おまえに聞く耳があるならな、
ただし、

http://echo.2ch.net/test/read.cgi/tech/1488928012/820

コイツが晒してからだ。そういう約束だからな
0340デフォルトの名無しさん2017/03/27(月) 02:40:19.06ID:jVvzovDA
>>338
あってるよ、おまえん中ではな。だから堂々巡りだ。
0341デフォルトの名無しさん2017/03/27(月) 02:40:34.89ID:GePKDk09
>>337
自動ドアあるじゃん、イオンの
近づいたら向こうが勝手に開いてくださるアレ

なんかもうメチャクチャにしてやったほうが面白い気がしてきた
0342デフォルトの名無しさん2017/03/27(月) 02:42:17.93ID:GePKDk09
せいぜい論争してみたほうがいいときもあろうさ

後で考え直して「んー?」って思い返してからわかることもあるしな
0343デフォルトの名無しさん2017/03/27(月) 02:43:03.66ID:jVvzovDA
>>341

お前そろそろ、話に参加出来るレベルでは無い事を理解した方外良い >>276
0344デフォルトの名無しさん2017/03/27(月) 02:45:20.66ID:GePKDk09
>>343
方外良い
なんて誤タイプする人に言われたかねぇな

もしかして: 方が良い

よっぽどのクソでないならこんなあげつらいはしねぇが
0345デフォルトの名無しさん2017/03/27(月) 02:45:51.26ID:hxVTicGO
>>340
違うよ。俺はお前の問の答えを出してるんだからお前は何か言わなきゃいけないのにそれが無いって事はお前は知らない内に
自分の間違いに気付いてないってだけよ。お前が反論すれば堂々巡りが終わるのにお前がそれをしないって事が答えでもあるのよ
0346デフォルトの名無しさん2017/03/27(月) 02:46:25.41ID:Z7V+LHTb
実在しないドアと猫について
延々と議論し続けるのは滑稽だとは思わんかね?
0347デフォルトの名無しさん2017/03/27(月) 02:47:53.96ID:0g9Nny9t
やっべーキャットドア
ついに選ばれし者のみの所業になってきたな!
0348デフォルトの名無しさん2017/03/27(月) 02:48:15.20ID:GePKDk09
コードを書いて証明してみせろ

できないならマ板か情シス板にでもいくか、逝ってよし
ってところかなぁ
0349デフォルトの名無しさん2017/03/27(月) 02:49:14.66ID:vQHLMr9c
>>339
それは俺となんの関係もないから安心して提示してくれていいよ
0350デフォルトの名無しさん2017/03/27(月) 02:49:27.64ID:hxVTicGO
>>346
実在しないならまだしもお題が猫とドアてのが悪すぎる
猫のドアの命令文法とか糞どうでもいい話しか始まらんしな
抽象的な振る舞いに関する話ゼロだぞオブジェクト指向なのに
0351デフォルトの名無しさん2017/03/27(月) 02:49:56.41ID:jVvzovDA
>>345 : デフォルトの名無しさん2017/03/27(月) 02:45:51.26 ID:hxVTicGO
> >340
> 違うよ。俺はお前の問の答えを出してるんだからお前は何か言わなきゃいけないのにそれが無いって事はお前は知らない内に
> 自分の間違いに気付いてないってだけよ。お前が反論すれば堂々巡りが終わるのにお前がそれをしないって事が答えでもあるのよ

プログラマってこう、いびつな理論を展開するけど、

ものすごく分かりやすく言うと、
現実世界でありえない「ドアがなんらかの方法で鍵が合っていないことを教えてくれる」メソッドを実装してる時点で
狂っているという事がわからないバカには、何言っても無駄
0352デフォルトの名無しさん2017/03/27(月) 02:50:47.06ID:GePKDk09
>>346
ぬこさんモフってるほうがしあわせ
0353デフォルトの名無しさん2017/03/27(月) 02:51:18.37ID:vQHLMr9c
>>351
「ドアがなんらかの方法で鍵が合っていないことを教えてくれる」メソッド
↓
開かない
0354デフォルトの名無しさん2017/03/27(月) 02:51:22.07ID:jVvzovDA
>>346 : デフォルトの名無しさん2017/03/27(月) 02:46:25.41 ID:Z7V+LHTb
> 実在しないドアと猫について
> 延々と議論し続けるのは滑稽だとは思わんかね?

思ってるよ

だって、ドアがなんか教えてくれるって本当に思っちゃってるバカ相手にしてんだもん

こんな茶番あるかよ?
0355デフォルトの名無しさん2017/03/27(月) 02:52:28.45ID:jVvzovDA
353 : デフォルトの名無しさん2017/03/27(月) 02:51:18.37 ID:vQHLMr9c
>>351
「ドアがなんらかの方法で鍵が合っていないことを教えてくれる」メソッド
↓
開かない
------------------------------------------

だって

それはただ、開けようとした側が勝手に認識してるだけ。
ひょっとしたら、ドアは心があって、自分は開いたと思ってるかもしれないのにね
0356デフォルトの名無しさん2017/03/27(月) 02:52:41.43ID:GePKDk09
>>351
「ドアがなんらかの方法で鍵が合っていないことを教えてくれる」メソッドを実装してる

お前MIWAに土下座しろよ、合わない鍵なら開かないと手ごたえで教えてくれる
0357デフォルトの名無しさん2017/03/27(月) 02:53:11.63ID:hxVTicGO
>>351
だから言ったろ現実世界で例えるのは無理があるって
でもドアは絶対開くとは限らないんだぞ??
0358デフォルトの名無しさん2017/03/27(月) 02:53:36.46ID:jVvzovDA
>>352 : デフォルトの名無しさん2017/03/27(月) 02:50:47.06 ID:GePKDk09
> >346
> ぬこさんモフってるほうがしあわせ

ああ、そうだよ、おまえは好きなだけモフれよ

おれはこのアホの相手を眠くなるまで続けるから
0359デフォルトの名無しさん2017/03/27(月) 02:54:25.01ID:vQHLMr9c
>>355
割とロマンチストなのね
0360デフォルトの名無しさん2017/03/27(月) 02:54:33.68ID:jVvzovDA
>>357 : デフォルトの名無しさん2017/03/27(月) 02:53:11.63 ID:hxVTicGO
> >351
>だから言ったろ現実世界で例えるのは無理があるって


ねーって何回いわせんだ、池沼

>でもドアは絶対開くとは限らないんだぞ??

あたりまえだろ、そんなこと織り込み済みだ、死ね
0361デフォルトの名無しさん2017/03/27(月) 02:56:00.40ID:hxVTicGO
もしかしてメソッドというものを口から声に出して喋る行為と勘違いしてるのか??
ドアが口から声に出して喋る訳ねーだろ馬鹿じゃないのか??
0362デフォルトの名無しさん2017/03/27(月) 02:56:08.94ID:GePKDk09
>>358
誰これとか知らないとか言ってた御大がこのレス、びっくりね

知らないで押し通すほうがすがすがしい
知らないで押し通しな
知らないで押し通すという覚悟を示せ、そうでなければ面白くもないわ
0363デフォルトの名無しさん2017/03/27(月) 02:57:56.89ID:jVvzovDA
>>361 : デフォルトの名無しさん2017/03/27(月) 02:56:00.40 ID:hxVTicGO
> もしかしてメソッドというものを口から声に出して喋る行為と勘違いしてるのか??

し   て   ね  ぇ   よ


お前は下らん妄想は、本当にすんな
天からの声が聞こえても、聞こえなかったふりしてろ、吉がい
0364デフォルトの名無しさん2017/03/27(月) 02:58:41.17ID:hxVTicGO
>>360
ドアは口は無くて喋れないから意思の疎通は出来ないが
鍵穴はあるから指定の相手しか解錠してくれないのは知ってるよな???
0365デフォルトの名無しさん2017/03/27(月) 02:59:04.12ID:GePKDk09
ID:jVvzovDA 先生語録

吉がい

俺らの幸福を祈ってくれてるんやで……この先生ツンデレや……!
0366デフォルトの名無しさん2017/03/27(月) 03:00:33.56ID:hxVTicGO
>>363
いやしてるだろ!ドアはリアクションしないってそりゃあ確かにドアはこの鍵じゃ通す事は出来ませんとか声に出してリアクションしないわ
ドアは喋るって勘違いしてるだろお前!
0367デフォルトの名無しさん2017/03/27(月) 03:00:49.74ID:jVvzovDA
もう一度言っとくけど、ドアと対話できる ID:vQHLMr9c が最強なことは間違いないな。 アンタッチャブルという事実において
0368デフォルトの名無しさん2017/03/27(月) 03:01:36.51ID:jVvzovDA
>>366
「比喩」知らねーバカに話すことはねーよ
0369デフォルトの名無しさん2017/03/27(月) 03:02:43.48ID:jVvzovDA
寝るから、残りは明日まとめて

もう一度言っとくけど、ID:hxVTicGO お前、最強。話通じないという点において
0370デフォルトの名無しさん2017/03/27(月) 03:02:49.70ID:hxVTicGO
とりあえずドアは基本喋れないけど鍵穴をというプロパティを使って通す相手を選別するメソッドは作れるよな
ok?
0371デフォルトの名無しさん2017/03/27(月) 03:03:42.97ID:vQHLMr9c
>>367
ありがとう
バカからバカみたいな内容でほめられてもうれしくはないけどありがとう
0372デフォルトの名無しさん2017/03/27(月) 03:04:12.94ID:hxVTicGO
>>369
ドアは喋らないし、みんなドアは喋らないって思ってるから変な勘違いやめろよ皆迷惑だぞ気を付けろよ
0373デフォルトの名無しさん2017/03/27(月) 03:04:18.32ID:GePKDk09
ID:jVvzovDA

比喩は近似であり、近しい物事を例示して相手に理解してもらおうとする試みだ
相手に完全な理解を求めるものではなかろう

少なくともたかが誤タイプを比喩というのは無理があるな
0374デフォルトの名無しさん2017/03/27(月) 03:04:25.37ID:Z7V+LHTb
もしドアが喋れて、状態を教えてくれたらどうよ?
さらに扉の向こうにいる猫について教えてくれたらどうよ?

こういうことならわからんでもない
0375デフォルトの名無しさん2017/03/27(月) 03:04:35.87ID:vQHLMr9c
>>369
おやすみ(o゚▽゚)o
もう目覚めないことを祈ってるよ♪
0376デフォルトの名無しさん2017/03/27(月) 03:07:39.52ID:hxVTicGO
逆に言えばドアが喋れたらドアにメソッド追加してもええのかいな
ドアは喋れないからメソッド追加しないみたいな言い方してたな
0377デフォルトの名無しさん2017/03/27(月) 03:10:14.91ID:GePKDk09
>>376
いいよ
しゃべるドアってのもかわいいだろうし

……まあ、専門家にわかるよう配慮してれば、彼らは直してくれるよ
Chefのように「例えで書いてる」ってわかる表現ならだけど
0378デフォルトの名無しさん2017/03/27(月) 03:10:35.38ID:LarKYmAi
ドアが喋るなら、ドアにメソッド追加だろうな。
ドアが開くなら、ドアに開くメソッド追加だ
だが猫にそのメソッドを追加するのはありえないw
0379デフォルトの名無しさん2017/03/27(月) 03:14:52.63ID:Z7V+LHTb
Doorクラスのdoorは繋いでいる部屋の状態を知ることが出来るとしよう!

Personクラスのbobは、bob.OpenDoorメソッドを使い
doorを開けようとしたが、falseが返ってきて開かなかった。エラー!
どうやらdoorは壊れていて開けられないらしい・・・
door.Enable = false

向こうの部屋には、
Catクラスのtamaがいるが、当然入ることが出来ないので
tamaの様子を知ることが出来ない。

なので、doorを通じてtamaの様子を教えてもらった
door.CheckRoomメソッドによって。
元気ではあるが、どうやら寝ているだけらしい
tama.IsSleeping = true

めでたしめでたし!

めっちゃわかりやすくね?
0380デフォルトの名無しさん2017/03/27(月) 03:16:40.44ID:LarKYmAi
例えば、赤いバラや青いバラがあるが
バラが「赤ですー」って喋ってくれるわけじゃない。

これらは状態。他のオブジェクトから認識できる状態。
オブジェクトが持っているものはメソッドだけじゃない。

状態も持っている
0381デフォルトの名無しさん2017/03/27(月) 03:17:33.85ID:GePKDk09
>>379
明日の朝イチに鍵屋さん呼んでこないと不安になりそ
うちのぬこさんが心配、みたな
0382デフォルトの名無しさん2017/03/27(月) 03:18:55.66ID:1MxFwM/B
クラスは名詞
メソッドは動詞
状態は形容詞

くらいのサクッとした認識でいいのかもしれない
0383デフォルトの名無しさん2017/03/27(月) 03:19:35.61ID:GePKDk09
>>390
全部をグローバル変数にできるほど我々は頭良くない
という制限かもしれねー

統計的には、変数は7コまでしか覚えてられねーから(Code Completeを参照のこと)
0384デフォルトの名無しさん2017/03/27(月) 03:21:22.12ID:Z7V+LHTb
>>381
bobの部屋、密室だからな
まず自分が脱出しないとだからな
0385デフォルトの名無しさん2017/03/27(月) 03:22:54.33ID:GePKDk09
うへ、そろそろ寝るか
いつも考えすぎて寝る機会を逸する

最後のマイスリーで意識が落ちてくれりゃあ、明日イケてる先生から眠剤ちょうだいしてしのげるわけだが

さてそんなの書いたら暴言食らいそうだな
0386デフォルトの名無しさん2017/03/27(月) 03:23:21.90ID:hxVTicGO
人とか動物とか生あるモノに対してにしかメソッドを付けない謎の拘りは何なんだろうな?
ドアが鍵に対して開くかどうかはドアオブジェクトのメソッド以外持ちようがないのに
0387デフォルトの名無しさん2017/03/27(月) 03:24:42.69ID:Z7V+LHTb
bob.BreakDoorっていうメソッドもあるけど
乱数でミスする場合も、自分が怪我することもあるし
bob.HP -= 20
体力消費すっかんな
0388デフォルトの名無しさん2017/03/27(月) 03:25:18.11ID:GePKDk09
>>384
ああ、ボブが出れなかったのか orz 夜中だとダメだな……すまんね
0389デフォルトの名無しさん2017/03/27(月) 03:27:09.16ID:Z7V+LHTb
>>386
偽造キー使ったら、警告発する
あるいは通報する、ってメソッドならありじゃね?
0390デフォルトの名無しさん2017/03/27(月) 03:30:40.87ID:GePKDk09
>>386
俺はやったことないけどさ、相手の鯖落とすときは
「メソッド以外持ちようがない」
なんてのを裏返すバグを叩く

そうだ

俺は低能だからしたことねぇよ、たかがemacsのlisp程度でもできたことがあるらしいけど知らんわ
0391デフォルトの名無しさん2017/03/27(月) 03:30:55.03ID:8CT7MInZ
>>263
http://echo.2ch.net/test/read.cgi/tech/1488928012/422-423
http://echo.2ch.net/test/read.cgi/tech/1488928012/577-578
前スレ422-423と577-578の要件を整理した。

1 下記機能をオプションとして持つドアを設計せよ
  (a)ドアストッパー
  (b)ドアクローザー
  (c)ドアの向こう側を目視できるガラス
  (d)内部から外部の一方通行のみ目視できるのぞき穴

2. 1.で行ったクラス設計を破壊せずに下記性質を追加せよ
  (e)異なる耐火性
  (f)異なる開閉重量
  (g)鍵がついており、サムターンか電子錠である
  (h)異なる遮音性
  (i)開き方は右開き左開き、内開き外開きスライドのいずれもありえる
  (j)ドアノブはついていることもついてないこともある

3. 2.で行ったクラス設計を破壊せずに下記性質を追加せよ
  (k)犬猫はドアノブを回転させることはできない
  (l)犬猫はプッシュで動くドアなら、ある一定の重量以下で押すことができる
  (m)数匹の犬猫が同時にドアを押すと合計重量で押すことができる(577-578で追加)
0392デフォルトの名無しさん2017/03/27(月) 03:31:53.36ID:UxXnYzuG
■door.open派
array.length
array.map(fn)
array.reduce(fn)
array.join(“,”)

■cat.open(door)派
len(array)
map(fn, array)
functools.reduce(array, fn)
“,”.join(array)
0393デフォルトの名無しさん2017/03/27(月) 03:35:42.18ID:Z7V+LHTb
そもそもopenって他動詞だろ・・・
0394デフォルトの名無しさん2017/03/27(月) 03:36:49.89ID:GePKDk09
まぁウチの鯖をハックしてくださった人が、うちの鯖にいるときにメッセージ投げたら
実に詳細なやり口をおしえてくだすったんで "You have a good brain! thanks!"とお返ししたとか
そんなんはあらーな
0395デフォルトの名無しさん2017/03/27(月) 03:37:28.47ID:LarKYmAi
> 1 下記機能をオプションとして持つドアを設計せよ

簡単だな。

door.equipments() というメソッドを呼び出せば、
どのドアにどんなオプション(装備)を持っているかを取得できる
0396デフォルトの名無しさん2017/03/27(月) 03:39:09.99ID:LarKYmAi
> 2. 1.で行ったクラス設計を破壊せずに下記性質を追加せよ

これも簡単だな。

doorにつけた装備によって、door自体の性質を
修正すればいい

プラグインという仕組みでよく用いられる方法だ
0397デフォルトの名無しさん2017/03/27(月) 03:40:40.00ID:LarKYmAi
> 3. 2.で行ったクラス設計を破壊せずに下記性質を追加せよ

簡単簡単。アクセス制限と同じようなもんだ。
こういったものはクラスに直接つけるんじゃなくて
割り込ませて制御するべきだろうな
0398デフォルトの名無しさん2017/03/27(月) 03:54:38.56ID:LarKYmAi
>>392
■door.open派
■cat.open(door)派

その2つは全く別のメソッドだろ。

cat.open(door)というのは
猫に対して何かをopenするという動作をするメソッドであり、
door.openはドアをopenするメソッド。

class Cat() {
 function open(door) {
  door.open()
 }
}

このように組み合わせて使う
0399デフォルトの名無しさん2017/03/27(月) 04:18:56.07ID:UxXnYzuG
>>398
それはそれで一つの考え方だけどdoor.open派に入るよ

cat.canOpen(door)
door.canOpenedBy(cat)
の場合でも同じようにするかどうか

cat.open(chair)や
cat.open(desk)の場合はどうするか
0400デフォルトの名無しさん2017/03/27(月) 04:23:50.36ID:GePKDk09
あーまだおちねぇな(頭が)
マイスリーをルネスタに変えてもらう時期か

ま、うまいこと凌いでイケてるコードを書けることを祈る
0401デフォルトの名無しさん2017/03/27(月) 04:26:01.92ID:GePKDk09
どこにも報告されてない某Web鯖のバグ叩かれてハックされることもあるんで
自称完璧なんて無理だべさ

やれることをやったんならよしとしよう
0402デフォルトの名無しさん2017/03/27(月) 04:27:45.34ID:UxXnYzuG
戦士ソード問題にすればキャットドア問題よりイメージしやすいかもね

warrior.canEquip(sword) vs sword.canEquip(warrior)

どういう武器なら装備できるのかを持ち主である戦士側で管理するのがいいのか
どういう属性の持ち主なら装備できるかを武器の側で管理するのがいいのか
もしくはその両方?
0403デフォルトの名無しさん2017/03/27(月) 04:57:47.60ID:RTqWjQkD
・猫がドアを押し開ける
・犬がボールを取ってくる

現実世界の相互作用する2オブジェクト間のプログラミングは必修課題にすべき
普通の業務プログラミングやってると忘れる

みんなが覚えたらきっとゲームプログラマーふえる
0404デフォルトの名無しさん2017/03/27(月) 07:27:34.69ID:6nDsbLzq
猫がドアを開ける

これで表現されてれば
良いんじゃない

ドアは猫に開けられる
とか考える人間は
ノーマルな人生歩んで来なかった
奴だから理解は永遠にできないよ
0405デフォルトの名無しさん2017/03/27(月) 07:49:19.06ID:G8XHCg/A
opened=Door.Open(cat.movefoot(push))
にはどんな問題があるんだ?
0406デフォルトの名無しさん2017/03/27(月) 07:56:56.37ID:zkHiCLH6
思い付きで単語ならべただけだろそれw
とりあえず、引数の意味がまったくわからん
0407デフォルトの名無しさん2017/03/27(月) 08:02:16.11ID:G8XHCg/A
>>406
猫が押すように足を動かすと扉はあくか?
っていう
0408デフォルトの名無しさん2017/03/27(月) 08:37:50.48ID:jVvzovDA
>>405
馬鹿は黙ってればいいのに…
0409デフォルトの名無しさん2017/03/27(月) 09:01:32.60ID:DZ7KBqWQ
ドアが自動ドアだったらとか、一般に考えそうなことが出てこないところを見ると
お子ちゃまの群れだなぁと思う。
お子ちゃま何もかも新鮮に感じるからほほえましくもある。
0410デフォルトの名無しさん2017/03/27(月) 09:09:15.00ID:jVvzovDA
>>409
出てるよ馬鹿

お題読め馬鹿

死ね
0411デフォルトの名無しさん2017/03/27(月) 09:18:56.12ID:sZk+Bubt
ID:jVvzovDA はスルーで
0412デフォルトの名無しさん2017/03/27(月) 09:19:50.27ID:DZ7KBqWQ
日本はこんなキッズを大量生産してるのかぁ。
日本の将来は暗いな。
0413デフォルトの名無しさん2017/03/27(月) 10:36:18.63ID:Ylmj74EC
オブジェクト指向って文法なのか??
0414デフォルトの名無しさん2017/03/27(月) 11:12:03.84ID:AOUFcLHl
http://echo.2ch.net/test/read.cgi/tech/1488928012/417
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 にかけての開発にさかのぼるアイデアを起源とする)。
0415デフォルトの名無しさん2017/03/27(月) 11:27:06.34ID:LarKYmAi
> このような柔軟な機能はどれだけ複雑である必要があるだろうか? 文法上は決して複雑で無くてもよい。
> なじみ深い英語の語順である主語、動詞、目的語(よく前置詞や、たまに暗黙の主語を伴う)があれば全く十分だ。

なじみ深い英語というのは複雑な文法なんだが
それが分かってないのかな?

シンプルな文法 = 数式 だよ。
馴染み深くはないが数式のほうがシンプル

英語を使うことでわかりやすいと勘違いした結果
COBOLという英語に近いが冗長な言語が出来てしまった。
0416デフォルトの名無しさん2017/03/27(月) 11:34:21.01ID:jVvzovDA
>>398
まだお前ら狂ってるってわかんえのは、もう、
お前らの脳みそが別の意味で芸術品って事なんだろうな

根本的に間違ってるよ、お前ら
0417デフォルトの名無しさん2017/03/27(月) 11:40:05.40ID:LarKYmAi
と喚くので精一杯
論理的な反論はできません
0418デフォルトの名無しさん2017/03/27(月) 11:43:30.23ID:jVvzovDA
できるに決まってんだろ、バカ

前スレの「これ読んでからな」って言って逃げたバカ待ちだって何回言わせんだよ

俺に示して欲しかったらそいつ引きずり出せよ、将軍様
0419デフォルトの名無しさん2017/03/27(月) 11:45:00.46ID:Sygej3yf
>>415
100%近く同意
0420デフォルトの名無しさん2017/03/27(月) 11:57:10.95ID:DZ7KBqWQ
中二病の特徴
数学の勉強をある程度して、数式に詳しくなると「シンプルな文法 = 数式 だよ。」と急に言い出す。
0421デフォルトの名無しさん2017/03/27(月) 12:05:14.28ID:P96KfG3+
>>418
おまえ実は何もわかってないんだろ?
だから何も語らないように難癖付けて逃げまくってる

かわいそうになるだけだから黙った方がおまえのためだよ
素直に勉強した方がいいと思う
0422デフォルトの名無しさん2017/03/27(月) 12:05:59.83ID:jVvzovDA
>>417 : デフォルトの名無しさん2017/03/27(月) 11:40:05.40 ID:LarKYmAi

こいつは多分さ、清い目でこれまでの書き込み内容を冷静に見れば本当は気づかなきゃおかしいんだよ
どれだけお前らが顔真っ赤になるくらい恥ずかしい事言ってたかって

目が濁っちゃってると、気づくものも気づかねーよな
0423デフォルトの名無しさん2017/03/27(月) 12:07:36.57ID:jVvzovDA
>>421

まだそんな事言ってる余裕があるなら

http://echo.2ch.net/test/read.cgi/tech/1488928012/820

はやくこいつ引きずり出してこい、使いっ走り
0424デフォルトの名無しさん2017/03/27(月) 12:08:21.87ID:DZ7KBqWQ
デジタル大辞泉の解説
ちゅうに‐びょう〔‐ビヤウ〕【中二病】

思春期に特徴的な、過剰な自意識やそれに基づくふるまいを揶揄(やゆ)する俗語。
具体的には、不自然に大人びた言動や、自分が特別な存在であるという根拠のない思い込み、またはコンプレックスなどを指す。
名称は、その年代の子供が抱きがちな心理状態であることから、一過性の病気に見立てたもの。
0425デフォルトの名無しさん2017/03/27(月) 12:10:05.65ID:P96KfG3+
>>423
本当かわいそう
0426デフォルトの名無しさん2017/03/27(月) 12:14:15.49ID:jVvzovDA
自分の脳味噌と将来の事の心配してればいいのに…
0427デフォルトの名無しさん2017/03/27(月) 12:17:48.43ID:P96KfG3+
>>426
おれもそう思うよ
切にそう思うよ
0428デフォルトの名無しさん2017/03/27(月) 12:21:51.33ID:jVvzovDA
今読み返してたら、良いバカ一人見つけたぞ

前スレの ID:yvUY9DOL

こいつ本物のバカだから、ある意味、清い目を持ってるんだろうな
無自覚に一言だけ、おまえらの誰よりも的確なこと言ってやがんのな。

あの時は大して気に留めてなかったけど、そこは褒めといてやるべきだったな。
0429デフォルトの名無しさん2017/03/27(月) 12:28:13.49ID:wLrtvEW7
いやお前ら皆神々しい程に頭が悪いからw
0430デフォルトの名無しさん2017/03/27(月) 12:31:59.81ID:jVvzovDA
>>429
じゃ、眩しいほどに頭禿げてる天才のお前が正しい答えを出してみせろよ
0431デフォルトの名無しさん2017/03/27(月) 12:32:09.56ID:DZ7KBqWQ
馬鹿な動物の行動をみるのも楽しいな
0432デフォルトの名無しさん2017/03/27(月) 12:33:51.28ID:jVvzovDA
>>431
へぇ、お前、ずっと鏡見てるのか。ナルシスだな
0433デフォルトの名無しさん2017/03/27(月) 12:38:49.01ID:jVvzovDA
オレID:jVvzovDA >>> ID:Gy0JTtQc >>> 超えられない壁 >>> ID:yvUY9DOL >>> 超えられない壁 >>> ID:hxVTicGO >>> ID:DZ7KBqWQ、ID:GePKDk09クラスの雑魚

な構図か…
0434デフォルトの名無しさん2017/03/27(月) 12:39:59.60ID:jVvzovDA
ID:Gy0JTtQc は返答次第では格上げされるかもしれんな。それだけのレバレッジはかけてやったはずだ
0435デフォルトの名無しさん2017/03/27(月) 12:51:18.58ID:P96KfG3+
ID:jVvzovDAは現実で嫌なことでもあったのかな
自分の意見を言えずただただ周りを罵倒し続けるだけなんてどこかおかしいよ
必死に否定することで自我を保ってるようにしか見えない

悩みとかあるなら早めに解決しなよ
0436デフォルトの名無しさん2017/03/27(月) 12:51:47.70ID:G8XHCg/A
>>435
やさC
0437デフォルトの名無しさん2017/03/27(月) 12:56:18.82ID:Sygej3yf
なんか格付けとか始めてるしね
0438デフォルトの名無しさん2017/03/27(月) 12:58:35.76ID:G8XHCg/A
ここで構ってもらえるのが唯一の癒しなんだろうな
0439デフォルトの名無しさん2017/03/27(月) 13:02:49.88ID:jVvzovDA
昼間が雑魚だらけなのは、現実の海や川といっしょだな
0440デフォルトの名無しさん2017/03/27(月) 13:04:02.48ID:jVvzovDA
>>435 : デフォルトの名無しさん2017/03/27(月) 12:51:18.58 ID:P96KfG3+
> 自分の意見を言えずただただ周りを罵倒し続けるだけなんてどこかおかしいよ

100歩譲るが、助詞くらい正しく使えよ

> 自分の意見を言“わ”ずただただ周りを罵倒し続けるだけなんてどこかおかしいよ
0441デフォルトの名無しさん2017/03/27(月) 13:05:29.36ID:P96KfG3+
そりゃそうだろ
優秀なヤツはこんな時間にこんな所を見てる暇はないんだよ

本当に大丈夫?
こんな単純なことにも気付けなくなってるのはやばいと思うよ
0442デフォルトの名無しさん2017/03/27(月) 13:07:10.39ID:P96KfG3+
>>440
そうだね
ごめんね

言えないんじゃなくて言わないだけだったね
傷つけるつもりはなかったんだ
本当にごめん
0443デフォルトの名無しさん2017/03/27(月) 13:07:16.18ID:jVvzovDA
>>441
> そりゃそうだろ
> 優秀なヤツはこんな時間にこんな所を見てる暇はないんだよ

おまえ、自覚してたんなら良いよ

でもな、本当に優秀なら時間なんか自分で調整出来る立場にいるから昼夜関係ねーよ
優秀じゃねぇから必ず昼間働いてんだろ
0444デフォルトの名無しさん2017/03/27(月) 13:08:30.52ID:G8XHCg/A
>>443
わざわざ平日に夜を選んでる人間が優秀とは思えんが
0445デフォルトの名無しさん2017/03/27(月) 13:08:45.95ID:jVvzovDA
>>442
“呆れる”という事がお前にとっては“傷つく”という事なのなら

おう、今度から気をつけろ
0446デフォルトの名無しさん2017/03/27(月) 13:10:11.16ID:jVvzovDA
>>444
バカは、実際にそういう立場になったことないからそんなアホなことを言う

選んでそうなるのではなく、何らかの他の理由でたまたまそうなるだけだ
0447デフォルトの名無しさん2017/03/27(月) 13:12:04.34ID:jVvzovDA
一応言っておくと、
オレは優秀だから今この時間に書き込みしてるわけじゃねーぞ?

確かにオレは優秀だが、今書き込みしてるのはそれ故じゃない
0448デフォルトの名無しさん2017/03/27(月) 13:13:11.92ID:G8XHCg/A
>>446
だからといって平日の昼間から2ちゃんに100レスもしちゃうような人が優秀とはとても思えん
うんこし終わったから仕事に戻るわ〜
0449デフォルトの名無しさん2017/03/27(月) 13:28:24.62ID:Sygej3yf
書き込みの量や時間と優秀さとの間に関連があるとは思えないが、基本的に2ちゃんは素人が雑談する所なんだから
高度な内容を期待するのは場違いだ。
0450デフォルトの名無しさん2017/03/27(月) 13:44:23.04ID:LarKYmAi
うんこだからな。うんこだからな。
0451デフォルトの名無しさん2017/03/27(月) 14:12:33.49ID:ykyRge6V
>>449
余計な事考えてねーで、優秀かどうかは内容で判断しろよ

オレがアホどもを否定している内容を見るだけで、アホどもとは違うって事くらいわかんだろ
0452デフォルトの名無しさん2017/03/27(月) 15:24:27.03ID:9SfM+OHA
>>449
いや、あるでしょ
よほど暇か頭がおかしくないかじゃないとこんなに書き込めないわ
0453デフォルトの名無しさん2017/03/27(月) 15:49:22.87ID:DZ7KBqWQ
みんな、ちびっ子プログラミングクラブの教室から書き込んでるんだよな
0454デフォルトの名無しさん2017/03/27(月) 17:25:03.87ID:Sygej3yf
>>452
まあ暇は暇なんだろうけどそのためのbotを作って投稿してるんだとしたら優秀と言えるな(高度なギャグ)
0455デフォルトの名無しさん2017/03/27(月) 17:39:37.95ID:LarKYmAi
寒いギャグを言った後で
自分で高度なギャグって付け加えるのって
なんでだろう?
0456デフォルトの名無しさん2017/03/27(月) 17:43:20.86ID:DZ7KBqWQ
中二病の症状に自意識過剰ってのもあるからな。
0457デフォルトの名無しさん2017/03/27(月) 18:00:28.15ID:SyLROXpT
人間クラスから美少女クラスが作れない。
なぜなのか?
0458デフォルトの名無しさん2017/03/27(月) 18:09:41.80ID:DZ7KBqWQ
中二病ならシュレティンガーのクラスだね
と答えればいいのか?
0459デフォルトの名無しさん2017/03/27(月) 19:03:36.35ID:IKPiy9ZZ
>>458
それ、面白いと思ったん?
0460デフォルトの名無しさん2017/03/27(月) 19:38:13.41ID:SyLROXpT
人間クラスから美少女クラス、
普通に作れるが。
なぜ作れないと思うのか?
0461デフォルトの名無しさん2017/03/27(月) 19:41:47.97ID:Sygej3yf
>>455
ごめんよ
言わずにはいられなかったんだよ
0462デフォルトの名無しさん2017/03/27(月) 19:42:10.59ID:zkHiCLH6
変な誘導やめろ
なんでどこもかしこもその話にもってこうとする
0463デフォルトの名無しさん2017/03/27(月) 20:31:19.34ID:lQg2+5AY
なんで妙に伸びているのか不思議だったがキチガイの集積所か
他のスレには来るなよ、とくにIDの赤いの
0464デフォルトの名無しさん2017/03/27(月) 20:40:50.20ID:SOnqeqD1
>>413
それな
0465デフォルトの名無しさん2017/03/27(月) 21:14:08.69ID:9ObHSaYA
次スレは無しじゃなかったのかよw
0466デフォルトの名無しさん2017/03/27(月) 21:21:01.63ID:hxVTicGO
お疲れ様です。帰ってきますた。オモロい話出た?
0467デフォルトの名無しさん2017/03/27(月) 21:24:32.69ID:7u/tydVP
アンチオブジェクト指向って何を信仰しんてんの?
バカなの?
0468デフォルトの名無しさん2017/03/27(月) 21:27:53.88ID:hxVTicGO
>>467
アンチオブジェクト指向て関数型マニアしか思い付かない
0469デフォルトの名無しさん2017/03/27(月) 21:50:30.81ID:8CT7MInZ
>>468
アンチオブジェクト指向の論理型マニアもいると思う。
関数型の場合はオブジェクトが参照透過性と型推論を制限する。
論理型の場合はオブジェクトを述語論理による推論に取り込みにくい。
0470デフォルトの名無しさん2017/03/27(月) 22:07:42.67ID:zkHiCLH6
>>2>>81
一日働いて帰ってきたら悟りが開けていた
cat.open(door)
cat.getProperty()
dog.fetch(ball)
bigComplexDataClass.write(stream)

I open the door by cat
I get property from cat
I fetch ball by dog
I write to stream by bigComplexDataClass

実は主語は俺だったのだ
オブジェクトが主導権を握っているようで、じつは俺が言わないと誰も何もしはしない
猫がドアを開けるのも、犬がボールを取ってくるのも単に犬猫を物のようにつかっているだけのこと
俺が神だった
0471デフォルトの名無しさん2017/03/27(月) 22:17:46.01ID:0g9Nny9t
猫「できたんすかね?」
0472デフォルトの名無しさん2017/03/27(月) 22:39:41.00ID:YT5BYYtA
できない神設計よりできる糞設計
0473デフォルトの名無しさん2017/03/27(月) 22:42:43.21ID:dtoY5Pke
>>471
素直に札束持ってオレにお願いしたら?
0474デフォルトの名無しさん2017/03/27(月) 22:48:20.78ID:E+FNp5P9
>>470
mainメソッドから呼び出されたメインストリームは自分が意図した動きをする様に
つくり込むわけだから、使うクラスをinstantiateしているのは「俺」といえるかもね
0475デフォルトの名無しさん2017/03/27(月) 22:51:01.97ID:dtoY5Pke
また頓珍漢などうでもいい事話し始めたよ。
んな事してる暇あったらとっととキャットドア設計完了させろよ
0476デフォルトの名無しさん2017/03/27(月) 22:59:16.99ID:2Upo6u3v
最近の殺鼠オブジェクトはネズミオブジェクトを食べたキャットオブジェクトが死なないように
何回も摂取することで段階的に効く遅効性の毒になってるらしいな。
0477デフォルトの名無しさん2017/03/27(月) 23:13:30.45ID:zkHiCLH6
>>475
前スレでほとんど答えでてたし
汎化したドアオブジェクトを猫が押すのが練習問題的には正解っぽい
cat.push(obj: door)
0478デフォルトの名無しさん2017/03/27(月) 23:16:57.36ID:qDTlbwjV
アホしかいないなw
0479デフォルトの名無しさん2017/03/27(月) 23:25:56.26ID:zkHiCLH6
>>197
>さらに、犬は「取ってこさせられる」のだからtakeは不適切。letTakeあたり

>「犬にボールを取って来させて受け取る 」を現実的に正しく表現すると
>Ball ball = dog.bitten; あたり。
>犬が咥えているものくらい、パブリックアクセスできるだろう。

>Ball ball = takeBall(dog); でもいいだろう。

人を罵るばっかりだったjVvzovDAが一生懸命かいたのか渾身のボケかはわからんが
失せろカスの一言で終わっててもののあはれを感じる
0480デフォルトの名無しさん2017/03/27(月) 23:26:28.38ID:jVvzovDA
>>477
お前、アホだろ

それでも全然ダメだよ。マトモな答えなんか欠片もでてねぇよ
文盲なのか理解力ゼロなのか? お前らは本当に
0481デフォルトの名無しさん2017/03/27(月) 23:27:47.55ID:zkHiCLH6
おかえりw
0482デフォルトの名無しさん2017/03/27(月) 23:29:27.45ID:jVvzovDA
>>479
> 失せろカスの一言で終わっててもののあはれを感じる

そう思うのはお前みたいな生粋のバカだけだよw
反論できないから誰も反論しないだけだにゅーーーーーーーーん♪


   ∩___∩
   | ノ      ヽ/⌒) あばばばばばば
  /⌒) (゚)   (゚) | .|
 / /   ( _●_)  ミ/    ∩―−、
.(  ヽ  |∪|  /    / (゚) 、_ `ヽ
 \    ヽノ /      /  ( ●  (゚) |つ
  /      /      | /(入__ノ   ミ   あばばっあびゃばびゃばば
 |       /       、 (_/    ノ
 |  /\ \       \___ ノ゙ ─ー
 | /    )  )       \       _
 ∪    (  \        \     \
0483デフォルトの名無しさん2017/03/27(月) 23:39:39.21ID:zkHiCLH6
>>482
Ball ball = dog.bitten;
これって、現在犬が咥えてるボールを参照してるだけじゃないの?
0484デフォルトの名無しさん2017/03/28(火) 00:19:22.33ID:ZGgECKv8
>>483
自分で何言ってるか、もう一度よく考えてごらん♪
0485デフォルトの名無しさん2017/03/28(火) 00:24:18.00ID:QvJjdHfs
作文と間違えてる
0486デフォルトの名無しさん2017/03/28(火) 00:39:01.53ID:5RUVNWwS
>>485
うまいこと言うな
お題自体が作文の問題だったってのもあるんだろうね
0487デフォルトの名無しさん2017/03/28(火) 01:34:33.61ID:ZGgECKv8
>>486
何言ってんだ? おめー

おめーに理解できね―お題だからってお題が悪いってことすんなよ、サル
0488デフォルトの名無しさん2017/03/28(火) 02:55:31.19ID:vGNqj6m3
テクニカルな意味で言えばオブジェクト指向は「比喩」という側面もある
後日改修を担当するマへのメッセージ、とでもいうか

クラス名で「これはxxx担当やで」
メソッドで 「このクチにこういうデータ放り込んだら、こういう結果返すで」
が伝わるなら何でもいいわけ

犬がボールくわえてるかどうか、getかtakeかはあまり意味がないというか……
まあ文芸的な表現をしたんだろうと解する

あのさあ、オブジェクト指向 = 現実世界の完コピ、でもないのね
計算通りに動けばどうだっていいのよ

某IDの君はそんなこと言ってもわからんヴィトケンシュタイン風味の先生だろうと思うが
0489デフォルトの名無しさん2017/03/28(火) 03:18:53.86ID:vGNqj6m3
センセイっつっても学者先生でもない単なるイカレのようだが、たまにいるわね
0490デフォルトの名無しさん2017/03/28(火) 03:22:52.18ID:vGNqj6m3
そろそろミン剤キメるわ
修羅場った時からクセになってて困る、7年くらいか?

病院の先生がProlog勉強したことあるとか今日聞いてちょっとワロたわ
……あー、頭の中身を知るのが好きすぎて手ぇ出したんやな、イケてるな、みたいな
俺にはちとPrologはわからんが
0491デフォルトの名無しさん2017/03/28(火) 03:29:03.57ID:vGNqj6m3
ん、時差? 昨日かね

あークソ、結局夜中までコード書いて一発酒キメて眠剤とか我ながら泣けるぜ
まぁマやってりゃそんなもんか
0492デフォルトの名無しさん2017/03/28(火) 03:30:43.11ID:5RUVNWwS
作文のお題に反射的に作文で答えるのが土方の土方たる所以
これが要件なんだからこうするしかないというのも同じく土方思考
土方思考が染み付いてるやつは抽象化能力も低い
だからオブジェクト指向が使えない
0493デフォルトの名無しさん2017/03/28(火) 03:32:25.31ID:5RUVNWwS
結果として設計担当とプログラミング担当がますます分離して負のスパイラルに陥っていく
キャットドアは優秀な土方フィルター
0494デフォルトの名無しさん2017/03/28(火) 03:36:18.58ID:8XEqMjkn
まだドアをオブジェクト指向で実装したらって話をしてんのか?w

ゲームをオブジェクト指向で実装する話をしようぜ
スライム、スライムベス、バブルスライム
メタルスライム、ホイミスライムとか、スライム系すべてを
オブジェクト指向で表現してみようぜ
0495デフォルトの名無しさん2017/03/28(火) 03:49:15.35ID:vGNqj6m3
>>492
簡単に言えば、バカの寝言に付き合う気はないってことだよ

ヴィトケンシュタインはどっかの山奥で「自分は間違っていた」と気づいたんで
ありゃあれで天才のようだが、師のバートランド・ラッセルには劣るという評価

お前はプログラミング言語に影響を及ぼした哲学者二名すらググったり調べたりしてないようで
草生えるw
0496デフォルトの名無しさん2017/03/28(火) 03:50:59.18ID:8XEqMjkn
プログラミング言語に影響を及ぼした哲学者は
現代のプログラミングの役に立つのだろうか?
0497デフォルトの名無しさん2017/03/28(火) 04:00:34.70ID:vGNqj6m3
>>496
バートランド・ラッセルの疑問がきっかけで「lambda」が見いだされた
現代のプログラミングで役に立つのだろうか? の答えはYES
0498デフォルトの名無しさん2017/03/28(火) 04:07:00.58ID:vGNqj6m3
関数(実際の思考プロセス)、および、関数にぶっこむ値(考えなければいけない対象)は分離可能だ

くらいの理解しかしてないけどな、だいたいlasy bindingって感じ
後付けで無理くり押し込めるんでどうしようもないときは便利、あれマジプログラミング言語の真祖
0499デフォルトの名無しさん2017/03/28(火) 04:25:29.34ID:8XEqMjkn
>>497
lambdaが役に立つのであって
哲学者は何の役にも立たんよ
0500デフォルトの名無しさん2017/03/28(火) 04:29:49.81ID:vGNqj6m3
>>499 もとになった疑問を知るのは無益でもないだろう
知りたがりの設計屋なら特にな……俺はマメインだからアレだが

ごめんもうおちそうさらば
0501デフォルトの名無しさん2017/03/28(火) 04:31:34.80ID:vGNqj6m3
もう文章が誤脱乱打せかい、すまぬ
0502デフォルトの名無しさん2017/03/28(火) 05:31:19.38ID:5n2lAvJf
>>493
そもそも図解するとドアにキャットドア付けるだけなのに
もう途中から選ばれし人間しか組めないみたいな話は絶対おかしいよな
0503デフォルトの名無しさん2017/03/28(火) 07:12:38.42ID:1WRXezaS
バカどもの宗教論争水掛け論が
横行したせいで、派遣先の正社員
プロマネがOOPでの設計禁止したぜ

今は派遣のお姉ちゃんが設計無しの
VB非構造プログラム書いてるけど
産休で居なくなるから
もう誰も読めないコードだけが残るぜ
0504デフォルトの名無しさん2017/03/28(火) 09:12:55.19ID:D2g9aNol
VBで組むような程度のアプリのコードの可読性なんてどうでもいいさ
0505デフォルトの名無しさん2017/03/28(火) 12:33:18.50ID:+lSR7dcK
読めなくて悔しそうw
0506デフォルトの名無しさん2017/03/28(火) 12:50:49.31ID:rBmD0mlz
ぎゃーぎゃー騒いでたのは結局逃げたのか
0507デフォルトの名無しさん2017/03/28(火) 12:58:46.53ID:0xLqs4gQ
VBねーちゃんが書き散らしたコードを見たらOOPの有り難みを実感するぜ

1クラス1メソッドなのに
変数レベルで多態性が
凄いことになってる

メソッドどころか関数という
概念にも興味が無い感じだぜ
0508デフォルトの名無しさん2017/03/28(火) 13:03:21.49ID:xK9w46xb
「根拠が無いのに説得してくる」
0509デフォルトの名無しさん2017/03/28(火) 13:51:00.61ID:ZGgECKv8
>>500
おめーが寝ようが寝まいが、誰も興味ねーよw
0510デフォルトの名無しさん2017/03/28(火) 13:54:42.28ID:ZGgECKv8
>>502 : デフォルトの名無しさん2017/03/28(火) 05:31:19.38 ID:5n2lAvJf
> そもそも図解するとドアにキャットドア付けるだけなのに

あの文章だとそういう解釈してはならないこともないが、
普通の人が解釈するのは猫でも犬でも人間でも押せる普通のドアの話
0511デフォルトの名無しさん2017/03/28(火) 19:41:36.59ID:dzmFuSTH
>>510
キャットドアの提案は出しては駄目なのかい?
0512デフォルトの名無しさん2017/03/28(火) 19:53:51.44ID:RfbOgi1T
いいけど実装しろ
0513デフォルトの名無しさん2017/03/28(火) 20:25:04.70ID:F34OC8Lz
言うまでもない事をあえて言うけどドアは構造体ではなくオブジェクトにしろよ
何故あえて言ったかと言うとドアはメソッドにしないきゃいかんからだぞ
何故オブジェクトのメソッドにするかと言うと構造体の関数にするとネコに対してオブジェクト指向のメリットが無くなるからだぞ
0514デフォルトの名無しさん2017/03/28(火) 20:40:04.02ID:ZGgECKv8
>>511
施主様と相談するのはいいんじゃないかな?
0515デフォルトの名無しさん2017/03/28(火) 20:40:43.03ID:ZGgECKv8
>>513
お前、施主様?
0516デフォルトの名無しさん2017/03/28(火) 20:43:12.95ID:ZGgECKv8
施主様がHOWについて指示をするのは請負法違反だよな。
0517デフォルトの名無しさん2017/03/28(火) 20:43:16.66ID:F34OC8Lz
>>515
何だよそれ、?
0518デフォルトの名無しさん2017/03/28(火) 20:44:37.54ID:ZGgECKv8
HOWについて指示したいなら派遣契約にしないとな。
派遣契約には納品義務ないけど。
0519デフォルトの名無しさん2017/03/28(火) 20:45:01.36ID:ZGgECKv8
>>517
何って? 施主の意味わからないってことか?
0520デフォルトの名無しさん2017/03/28(火) 20:47:18.79ID:F34OC8Lz
>>519
あ、はい
0521デフォルトの名無しさん2017/03/28(火) 21:21:19.43ID:ZGgECKv8
>>520
あー、建築工事とかで資金を出す人のことを「施主(せしゅ)」って言う。

つまり、「こういう物作ってください」って大工さんにお願いする人の事。
0522デフォルトの名無しさん2017/03/28(火) 21:25:21.97ID:gJlCKM05
ここに真面目に書き込んでた自分がバカだったと今は思う
0523デフォルトの名無しさん2017/03/28(火) 21:29:32.35ID:ZGgECKv8
>>522
はぁ? お前、ここに限らず「真面目に」真面目な事してんの? バカじゃね?

真面目な事っつーのは、いつでもフザケてやるもんだよ。

本気でフザけて、やる。それをほんとうの意味で「真面目」っつーんだ。覚えとけ。
0524デフォルトの名無しさん2017/03/28(火) 21:30:11.78ID:F34OC8Lz
>>521
てっきり上の人か何かのアダ名かと
もう猫ドア問題は終わったのか。終わったんなら俺の迷ってる話してもええんかな??
0525デフォルトの名無しさん2017/03/28(火) 21:32:22.76ID:8XEqMjkn
>>524
終わった。

今はロボットを設計するという話になってる。

ガンダムとガンタンクとガンキャノン
ビームサーベルやシールド といったものを
どう設計するか
0526デフォルトの名無しさん2017/03/28(火) 21:36:42.08ID:D2g9aNol
>>525
んなもんオブジェクトの塊なんだから考えると余地もねーだろ
0527デフォルトの名無しさん2017/03/28(火) 21:41:34.79ID:ZGgECKv8
>>524
終わってない。

だが、誰がどんな話題を持ちかけようとも、
それに語る価値があるのならそれについて語る。それが2chだ。
0528デフォルトの名無しさん2017/03/28(火) 21:42:43.34ID:ZGgECKv8
>>525
材質はABSかPLAでええんか?
0529デフォルトの名無しさん2017/03/28(火) 21:49:07.74ID:F34OC8Lz
>>525
上読んでないけどいくら何でも話がアバウト過ぎるだろ、
0530デフォルトの名無しさん2017/03/28(火) 21:51:25.33ID:ZGgECKv8
>>529
お前、純朴な良い奴ってみんなから言われるだろw
0531デフォルトの名無しさん2017/03/28(火) 21:59:19.13ID:h1fkCUCX
手まんして潮ふかせる仕組みを考えよう
0532デフォルトの名無しさん2017/03/28(火) 22:00:20.11ID:LEXBHR2D
荒らしがテキトーに引っ掻き回すために出した例だから
話1/4ぐらいに流してほとんどNGになってたが
「オブジェクトの中に自由に出入りするネコオブジェクトの意味ってなんだろーな…
害になるネズミでも捕ってくれるのか。」とか考えてた。
0533デフォルトの名無しさん2017/03/28(火) 22:09:33.72ID:ZGgECKv8
>>532
ペットも満足に飼えない貧民の発想なんてそんなもんだ、気にするな
0534デフォルトの名無しさん2017/03/28(火) 22:12:18.71ID:xlsHHzOq
>>531
潮はただのおしっこなので却下
0535デフォルトの名無しさん2017/03/28(火) 22:15:03.89ID:F34OC8Lz
まあスルーでもいいから聞くだけ聞いてくれ

オブジェクトを使ってシステム作る際段取りとして親や上位から作るだろ?親や上位を作ったあと子やプロパティのオブジェクトを入れたり、その後孫とか
いわゆる話や段取りが基本トップダウン形式やな。その後の仕様変更とかも下位をどう弄り直すかの話が大半だと思うんだが

最上位の更に最上位、親から見ておじいちゃんを後の仕様変更で作る事は現実的にアリなのかわからんのよな
理論上出来るのはわかるが、現実的に可能でそれも想定して前々から現時点での最上位を緩く作るのはオブジェクト指向上望ましいのかという問題
0536デフォルトの名無しさん2017/03/28(火) 22:21:34.30ID:QvJjdHfs
template <typename T>
class Derived : public T;
0537デフォルトの名無しさん2017/03/28(火) 22:24:03.92ID:ZGgECKv8
>>535
影響範囲が見えてないから悩むんだろ。

その改変によってどういう影響がでるか考えてみたらいいんじゃね?
OOPこそそういう事が考えやすいはずだ。

そして、問題が出た時に考えてみろ、それはOOPの問題だったのか? おまえのOOPの理解力の問題だったのか?
0538デフォルトの名無しさん2017/03/28(火) 22:35:51.42ID:RfbOgi1T
>>535
状況がまったくわからんけどエスパーすると一番上を作り直すの推奨

そこで悩むってことは一番上にあれもこれもって盛り込んでないか
ふつうはメイン関数とかだけもってて、主機能をキックするだけぐらいのクラスになると思う

再利用して使いまわすつもりの部分と、ガワの使いすて部分を切り分けておくのおすすめ
0539デフォルトの名無しさん2017/03/28(火) 22:48:03.72ID:r5fJHO+Q
知ったかどもが語りだしたぞww
0540デフォルトの名無しさん2017/03/28(火) 22:50:02.39ID:F34OC8Lz
>>537
影響範囲は確かに悩むな。それがキモかな?
>>538
上でオブジェクト指向でロボットをどうやって作る?って奴がいたけどそれで例を出すと
ロボット単体で完結してたシステムと話を
ロボットをどうやって管理するか?とか、このロボットを量産しよう!、って話に発展する様なケースやな

最初から全部そんな話だったら簡単だけど元がロボット単体で済んでた話だったのが悩み所
0541デフォルトの名無しさん2017/03/28(火) 23:08:55.56ID:RfbOgi1T
たとえばの話かよ!
しかも余計抽象的な話になってるし余計わからん…
0542デフォルトの名無しさん2017/03/28(火) 23:10:47.90ID:5RUVNWwS
最上位の更に上位を作るってのは
BaseRobotとBaseWeaponを最上位として作って使ってたけど
両方に共通する部分をBaseHogeで抽象化したりさらにその上位を作るのがアリなのかって意味?

だとすれば抽象化するメリット・デメリットを天秤にかける以外にないのでは?
悩んでるポイントは別にありそうだけど
0543デフォルトの名無しさん2017/03/28(火) 23:20:16.34ID:F34OC8Lz
>>541
そりゃわからんよ。現時点で最初からそう作ると決まってたらそう作れるけど
将来に向けてこの作り方と準備アリなのって話だしな
0544デフォルトの名無しさん2017/03/28(火) 23:52:08.46ID:v6Lj9R3/
後からスーパークラスを追加するケースっていうのは大抵がオブジェクトの抽象化が目的ではなく処理を共通化したいなどの理由が多くオブジェクト指向として本来許容されるはずもない

しかし我々はプロトコル指向というパラダイムを手にいれた
プロトコルの拡張
これこそが聖杯だよ

swift万歳
0545デフォルトの名無しさん2017/03/28(火) 23:54:00.46ID:RfbOgi1T
つくりもしないうちからそんな心配するなwwwww

でも「ゆるく作る」なんてのは絶対推奨しない
小さく作って、あとから必要なとこだけ取り出すか、拡張すればいい
見えない将来の課題に備えて成功したためしがない、必要なことだけ最小限でやるのが結局一番拡張性高い
0546デフォルトの名無しさん2017/03/29(水) 00:11:17.91ID:ZwfTQ2HH
>>544
処理を共通化するのも抽象化の一つだろ??
それにSwiftに限らず似たようなことは他言語でもできるよ
Javaですらインターフェースにデフォルト実装を作れる時代なんだから
0547デフォルトの名無しさん2017/03/29(水) 00:14:28.23ID:ZwfTQ2HH
>>545
>でも「ゆるく作る」なんてのは絶対推奨しない
ほんとこれ
ゆるく作ったほうがいいんじゃないかと考える理由を探れば根本の問題に辿り着けるかも
0548デフォルトの名無しさん2017/03/29(水) 00:26:48.10ID:G25OA3ZV
>>542
> 両方に共通する部分をBaseHogeで抽象化したりさらにその上位を作るのがアリなのかって意味?

両方に共通する部分があるから、親クラスを作るんじゃないよ。
親クラスと子クラスの関係性があるならば、親クラスを作るんだよ。
単に共通するってだけならユーティリティクラスを作ればいい
0549デフォルトの名無しさん2017/03/29(水) 00:57:23.96ID:ZwfTQ2HH
>>548
>>535は継承構造と親子関係を明確に区別して親とか孫とかおじいちゃんって言葉を使ってる?
そうは思えなかったけど
0550デフォルトの名無しさん2017/03/29(水) 01:09:17.34ID:YK3nJaET
>>549
そりゃ流石にそうよ。だからおじいちゃん親子、最上位上位下位と言い分けたんだから
0551デフォルトの名無しさん2017/03/29(水) 01:22:30.26ID:ZwfTQ2HH
>>550
だとすると仕様変更で新たな親子関係が必要になったけど親クラス追加するかどうかで悩んでるのか!?
ちょっと俺には理解できんわ
0552デフォルトの名無しさん2017/03/29(水) 01:30:48.69ID:MuyfUd6J
そろそろ飽きるだろいい加減
0553デフォルトの名無しさん2017/03/29(水) 02:42:46.09ID:YK3nJaET
>>551
まあまあそんな大袈裟に言うな
俺はオブジェクトの群れ束ねる飼い主オブジェクトというのをオブジェクト指向で組もうとしてて
まてよ飼い主が何人もいたらそのまとめ役が更に必要になってくるのか?と想定しただけよ
0554デフォルトの名無しさん2017/03/29(水) 03:14:40.14ID:d5wwz1O4
>>535
そも、なぜ「おじいちゃん」クラスが必要か、にもよろうね

たとえ話:
どっかでみた jp.co.fujitsu なアプリがあって、新バージョンでいろんなクラスに
メソッドを追加しないといけないんだけど面倒だからおじいちゃんクラス作りたい
(interfaceは実装を引っ張ってきてくれないという一大欠陥がある)

みたいなのかな
0555デフォルトの名無しさん2017/03/29(水) 03:56:11.27ID:G25OA3ZV
クラスA、クラスBの両方に共通する親クラスを作るときは、
クラスA、クラスBに同じ処理があるか?じゃなくて
クラスA、クラスBを同じオブジェクトとしてみなしたいか?
という観点で考えれば良い
0556デフォルトの名無しさん2017/03/29(水) 04:10:02.70ID:ZwfTQ2HH
>>553
そういう話か
その例だと一般的には親子関係とは呼ばないかもな

それはいいとして飼い主をまとめて扱ったり
まとめ役を通じて飼い主を操作したりするケースが多い場合や
そのシステムの用語としてまとめ役みたいな言葉が存在する場合は
まとめ役を追加を前向きに検討すればいいと思う

レイヤーを一つ追加することにはなるからその価値があるのかどうか
0557デフォルトの名無しさん2017/03/29(水) 09:01:05.74ID:PMA68UxV
"Squeak Smalltalk でドアをラピッドプロトタイピングしてみた"
aドア := Object new assureUniClass.
aドア class rename: #ドア.

"ドアには状態(開閉)があり、ラッチがついていて固定、解除ができる"
aドア addInstanceVarNamed: #開閉 withValue: #閉; addInstanceVarNamed: #ラッチ withValue: #固定.
aドア class compile: 'ラッチ解除 ラッチ := #解除'; compile: 'ラッチ固定 ラッチ := #固定'.

"ドアはラッチで固定されていると開けられず、ラッチが解除されていればドアは押すと開く"
aドア class compile: '開けられる? ^開閉 == #開 or: [ラッチ == #解除]'.

aドア ラッチ解除; 開けられる?. "=> true "
aドア ラッチ固定; 開けられる?. "=> false "

"ドアにはノブがついていて回すとラッチの解除ができ、戻すと再びラッチで固定される"
aドア addInstanceVarNamed: #付属ノブ withValue: Object new assureUniClass "ノブ".
aドア class compile: 'ノブ ^付属ノブ'.
aドア ノブ class rename: #ノブ.
aドア ノブ addInstanceVarNamed: #所属ドア withValue: aドア.
aドア ノブ class compile: '回す 所属ドア ラッチ解除'; compile: '戻す 所属ドア ラッチ固定'.

aドア ノブ 回す. aドア 開けられる?. "=> true "
aドア ノブ 戻す. aドア 開けられる?. "=> false "

"ドアはラッチが解除されている状態で押すと開き、引くと閉まってラッチで固定される"
aドア class compile: '押す self 開けられる? ifTrue: [開閉 := #開]'; compile: '引く 開閉 := #閉. ラッチ := #固定'.
aドア class compile: '開いている? ^開閉 == #開'.

aドア 押す; 開いている?. "=> false "
aドア ノブ 回す. aドア 押す; 開いている?. "=> true "
aドア 引く; 開いている?. "=> false "
aドア 開けられる?. "=> false "
0558デフォルトの名無しさん2017/03/29(水) 09:12:44.23ID:VZqvhY7a
>>546
適当なことをもっともらしく言うのはやめたほうがいいよ
0559デフォルトの名無しさん2017/03/29(水) 11:04:23.82ID:2bVB6bMW
ガンダムはミノフスキー粒子とかいう最強の便利ライブラリさえあれば作れるわ
0560デフォルトの名無しさん2017/03/29(水) 13:50:01.07ID:PMA68UxV
>>557 続き

"仕様の変更も試みた: ラッチ(固定具)の解除はノブの操作を通じてのみ行なえるべき"

"ラッチをドアからノブに移動"
ノブ addInstVarName: #ラッチ; compile: 'pvtXラッチ: 固定か解除 ラッチ := 固定か解除'. "private"
"aドア ノブ pvtXラッチ: #解除 => compile error: Private messages may only be sent to self "
ノブ compile: 'ラッチ解除? ^ラッチ == #解除'.
ノブ compile: '回す self pvtXラッチ: #解除'; compile: '戻す 所属ドア 閉じている? ifTrue: [self pvtXラッチ: #固定]'.
ドア compile: '閉じている? ^self 開いている? not'.


"ラッチにアクセスしているドアのメソッド一覧を得て削除(ドア>>#ラッチ固定 と #ラッチ解除 はそのまま廃止)"
methods := SystemNavigation default allAccessesTo: #ラッチ from: ドア.
methods asArray collect: #selector. "=> #(開けられる? ラッチ固定 ラッチ解除 引く) "
methods do: [:each | ドア removeSelector: each selector].


"ドア>>#開けられる? と #引く については仕様の変更を反映して再定義"
ドア compile: '開けられる? ^開閉 == #開 or: [付属ノブ ラッチ解除?]'.
ドア compile: '引く 開閉 := #閉. 付属ノブ 戻す'.

"振る舞いが変わらないことを確認"
self assert: [aドア ノブ 回す. aドア 開けられる? == true].
self assert: [aドア ノブ 戻す. aドア 開けられる? == false].
self assert: (aドア 押す; 開いている?) == false.
self assert: [aドア ノブ 回す. (aドア 押す; 開いている?) == true].
self assert: (aドア 引く; 開いている?) == false.
self assert: (aドア 開けられる?) == false.
0561デフォルトの名無しさん2017/03/29(水) 18:49:33.84ID:8ykoX9Ts
>>545
ゆるく作ってんじゃねぇよ。
「強くなるためにはどうすればいいですか?」>「毎日鍛錬しろ、走れ」で済むところを
最小限で作れば〜必要なものだけ作れば〜言ってるバカに限って
(相手が単細胞の最小限だから)「腹筋100セット、腕立て100セット、然るのちに朝食を食べ…」って
ぜんぶ周りが教えてやらなきゃいけないし、相手の状態が変わるたびに
"周りが"与えるもの変更してやらなきゃいけねぇから
それじゃ弟子が変わる度に周りや師匠にどんだけ手間かかるんだよ、おまえらバカだろ?
自分で自立した単位で切ってそいつに責任移譲しろよって話。

"オブジェクト"の意味がわかってねぇ奴がだいたいカンチガイし続けるのはそこ。
0562デフォルトの名無しさん2017/03/29(水) 19:03:15.93ID:DKbUPR60
派生クラスに仮想関数の実装を強要する修飾子がほしい
0563デフォルトの名無しさん2017/03/29(水) 19:23:44.34ID:qOd5arPB
>>562
それは何に使うの?
0564デフォルトの名無しさん2017/03/29(水) 19:47:28.60ID:YK3nJaET
仮想関数って名前だけ先に用意して中身実装はサブで作るアレしか思い付かない
0565デフォルトの名無しさん2017/03/29(水) 19:59:01.30ID:+RgzTgUH
>>561
そんな複雑なこと単一オブジェクトにやらせるな
やること教えてくれる先生を別途オブジェクトとして作ればいいだけじゃないか
0566デフォルトの名無しさん2017/03/29(水) 20:15:33.37ID:8zEKqVfn
アレって純粋仮想関数のことか?
562は中身もある奴だろ
0567デフォルトの名無しさん2017/03/29(水) 20:54:42.63ID:gsszT5JL
性の悦びモデルで、初めてオブジェクト指向の実装をしてみたのですが
OOPへの認識の誤りや改善点はあるでしょうか?

public abstract class Human
{
public abstract string Ahegoe();
public abstract void Seiki(object chinko);
public abstract object Seiki();
}

public class Man : Human
{
public override string Ahegoe(){return "あーーー";}
public override void Seiki(object Chinko){}
public override object Seiki(){return null;}
}

public class Woman : Human
{
public override string Ahegoe(){return "んぎもじぃぃぃ";}
public override void Seiki(object Chinko) { }
public override object Seiki() { return null; }
}

Man man = new Man();
Woman woman = new Woman();
woman.Seiki(man.Seiki());
string Shout = woman.Ahegoe();
Shout = man.Ahegoe();
Man man2 = new Man();
man.Seiki(man.Seiki());
0568デフォルトの名無しさん2017/03/29(水) 20:59:07.74ID:jPHlHu9R
>>567
自分の性器に自分の性器入れるとか
どこのソドムだよ
0569デフォルトの名無しさん2017/03/29(水) 21:02:43.61ID:gsszT5JL
>>568
失礼しました。

Man man2 = new Man();
man.Seiki(man2.Seiki());

の誤りです。
0570デフォルトの名無しさん2017/03/29(水) 21:06:40.67ID:jPHlHu9R
>>567
男の性器を受け入れる男の性器ってなんだよw
0571デフォルトの名無しさん2017/03/29(水) 21:15:27.04ID:YK3nJaET
性器オブジェクトの実装が求められる
0572デフォルトの名無しさん2017/03/29(水) 21:25:48.45ID:MuyfUd6J
>>569
いやいやそこじゃないから
0573デフォルトの名無しさん2017/03/29(水) 21:26:47.52ID:YK3nJaET
性器クラスの実装は少し考えながらのがいいな
使うタイミングやメソッド名は殆ど変わらないものの内部処理だけは全然違う場合がある
外からはオナニー等の同じ様な呼び出し方を出来るようにして
中身は別の処理になるよう外と中を分離させる必要がある
0574デフォルトの名無しさん2017/03/29(水) 21:37:21.75ID:iJynlngf
ヌルッと逝きそうなコード
0575デフォルトの名無しさん2017/03/29(水) 21:49:44.97ID:gsszT5JL
色々ご指摘ありがとうございます。
男性器に男性器を入れるのは現実的にあり得ないモデリングなので
以下のように改善します

public abstract class Human
{
public abstract string Ahegoe();
public abstract void Seiki(object chinko);
public abstract object Seiki();
public abstract object Koumon(); //revision002
}

↓

Man man2 = new Man();
man.Koumon(man2.Seiki());
0576デフォルトの名無しさん2017/03/29(水) 21:52:57.32ID:YK3nJaET
アナルの実装も必要かもしれん
05775672017/03/29(水) 21:52:59.67ID:gsszT5JL
revision002の改善により
より現実に近いファックが再現できました。
オブジェクト指向って凄いですね。
初体験なので感動です。

Woman woman = new Woman();
woman.Koumon(man.Seiki());
0578デフォルトの名無しさん2017/03/29(水) 21:58:06.40ID:XzQ1niZO
性器 「Don't Repeat Yourself 」
0579デフォルトの名無しさん2017/03/29(水) 22:01:32.98ID:jPHlHu9R
kuchiメソッドも実装しな
0580デフォルトの名無しさん2017/03/29(水) 22:03:59.89ID:YK3nJaET
やっぱfackはデリゲートメソッドにすべきかもしれん
使うのはチンコマンコだが受け入れ先がチンコマンコとは限らない。ここは強い柔軟性が必要だ
05815672017/03/29(水) 22:05:45.82ID:gsszT5JL
さらにリアルに性の悦びを再現しました。
僕のSeikiも爆発しそうです。

public abstract class Human
{
public abstract string Ahegoe();
public abstract void Seiki(object chinko);
public abstract object Seiki();
public abstract object Koumon(); //revision002
public abstract object kuchi(); //revision003
}

↓

Man man2 = new Man();
man.kuchi(man2.Seiki());
0582デフォルトの名無しさん2017/03/29(水) 22:29:09.20ID:wajUYfMf
キャットドアどうなったかと思って見に来たら、
本物のオナニー仕様策定で盛り上がりだしたのか…

本当にバカしかいねぇな…
05835672017/03/29(水) 22:39:13.70ID:gsszT5JL
>やっぱfackはデリゲートメソッドにすべきかもしれん

すみません。それが何なのか解りませんでした。
やり方を研究してみます。
05845672017/03/29(水) 22:42:50.49ID:gsszT5JL
>>582
性の悦びより猫がドアをくぐる方が重要な人間は
あまり多く無いと思います。
0585デフォルトの名無しさん2017/03/29(水) 22:46:02.61ID:wysGCAMZ
性の喜びを知りやがって!ゆるさんぞ!!
05865672017/03/29(水) 22:54:41.80ID:gsszT5JL
どうしても猫が良いという方に接し、そもそも性の悦びは動物にまで及ぶことに気が付きました。
まだまだモデラーへの道が遠いと痛感し、修正しました。
public abstract class Animal
{
public abstract string Ahegoe();
public abstract void Seiki(object chinko);
public abstract object Seiki();
public abstract object Koumon();
public abstract object kuchi();
}

public class Cat : Animal
{
public override string Ahegoe(){return "アニャィィィヤーン";}
public override void Seiki(object Chinko) { }
public override object Seiki() { return null; }
public override object Koumon() { return null; }
public override object kuchi() { return null; }
}
05875672017/03/29(水) 22:57:38.81ID:gsszT5JL
Man man = new Man();
Cat mike = new Cat();
mike.Koumon(man.Seiki());

こっこれは、レベルが高すぎて
自分はエレクチオンできません!
0588デフォルトの名無しさん2017/03/29(水) 23:01:00.90ID:wysGCAMZ
mike.koumonっなんだよ
mike.insertInAnal(man.penis())だろ
0589デフォルトの名無しさん2017/03/29(水) 23:09:37.82ID:ZwfTQ2HH
キモ
05905672017/03/29(水) 23:57:03.33ID:gsszT5JL
ご指摘の通り、メソッドが名詞はおかしいので修正しました

public abstract class Animal
{
public abstract string moaning();
public abstract object PutsPenis();
public abstract void InsertInPussy (object PutsPenis);
public abstract void InsertInAnal(object PutsPenis);
public abstract void InsertInMouth(object PutsPenis);
}

しかし、Penis以外を入れたい時はどうするとか
考えると大変ですね。

モデリングの奥深さを知りました。
0591デフォルトの名無しさん2017/03/30(木) 00:12:43.64ID:ygl6H7Vq
やっぱオブジェクト指向ってゴミじゃね
0592デフォルトの名無しさん2017/03/30(木) 00:27:27.92ID:yzEGuOSk
とりあえずまともな人が少なめなのこのスレ
0593デフォルトの名無しさん2017/03/30(木) 00:28:37.84ID:gGp/SYAm
>>591
やっぱりって何を見てそう思ったの?

いや、今までの流れはオブジェクト指向便利だったのが
脈絡もなく書き込んでるからさ、
もしかして、(くやしいから?)今までの話を
リセットしようとしてるのか思ってね。

で、何を見てそう思ったの?
0594デフォルトの名無しさん2017/03/30(木) 00:32:45.84ID:nVOZ71qD
>>561
「比喩で話したくなる」ってのがオブジェクト指向の魔の部分だ……

問題は自分が書いたコードと、他人が書いたコードとの接点のみじゃなかろうか
具体的には、引数でもらったインスタンスをどうこうする事

お前が言ってることをそのままコードに直すなら、引数にもらったインスタンスにsetXXXすることが
サブクラスごとに微妙に異なるので
基底クラスじゃなくて派生クラスごとに個別の対応が必要になるって話だぁな

twitterとfacebookとmixiとgoogle+とyammer(MSのSNSのほうな)とほかのSNS10個くらい
扱ってんの? って話になろうよ
通常そこまで扱うことはない

duckduckgoとかlibvirtみたいなことをしてるんなら別だが……割と地味に苦痛な作業になるだろうな
差異を受け止めるラッパーやってる自覚があるんならやるしかないし(たぶんそうなる)
そうでもないならあきらめな

>>590
Animal#fuck
の切り口でなんとかする手もあるかも、思い付きだけど……

おくち
ま〇こ
あな〇
そのほか(ド変態は耳とか鼻とか……傷口にも性欲を見出す……俺には無理だ)

みたいなのにも対処するなら、もっとうまい手があるようにも思える
ネタなのはわかってるから気にすんなYO!
0595デフォルトの名無しさん2017/03/30(木) 00:35:51.70ID:nVOZ71qD
>>591
Javaっ子の継承・インターフェース乱打だけはいただけんな

デバッガがドンドコと別のコードに振り回される
gnu global(caller/calleeの位置を全部バラしてくれるエグいツール)あるいは
類似のツール使わんとイマイチわかりづらい感じ

マジなんとかしてほしいよ jp.co.fujitsu のイミフフレームワークとかさ……
0596デフォルトの名無しさん2017/03/30(木) 00:42:04.03ID:ygl6H7Vq
>>593童貞くさい低俗なレスみて

オブジェクト指向すげえ、オブジェクト指向に嫉妬する
なんてことになるわけねえじゃん
0597デフォルトの名無しさん2017/03/30(木) 00:44:02.30ID:nVOZ71qD
スレッドに関してはオブジェクト指向でやったほうが楽だねって思うけど
ほかはもう慣れだと思う
0598デフォルトの名無しさん2017/03/30(木) 00:44:17.05ID:ygl6H7Vq
結局プログラムは単純な機械語へのインタープリトにすぎないという事実をプログラマから隠蔽することによって生じる自慰行為なんだいね
0599デフォルトの名無しさん2017/03/30(木) 00:46:09.14ID:gGp/SYAm
>>596
え? 何を見て童貞臭い低俗なレスって思ったの?w
そういうことにしたいんだくそーって感じがプンプンするねw
0600デフォルトの名無しさん2017/03/30(木) 00:49:11.64ID:vlkkbUGw
オブジェクト指向は肥大化したクラスを分割しづらいのがダルいわ
0601デフォルトの名無しさん2017/03/30(木) 00:50:13.21ID:gGp/SYAm
それに対して、○○なら肥大化した○○を分割しやすい

ここまで言えないと何の意味もないよw
0602デフォルトの名無しさん2017/03/30(木) 00:51:52.45ID:nVOZ71qD
>>601
mixinとかtraitなら肥大化した「単独で切り出せるメソッド」を分割しやすい

ID:gGp/SYAmは今日の酒のツマミだな
0603デフォルトの名無しさん2017/03/30(木) 00:53:26.31ID:gGp/SYAm
※ mixinとかtraitはオブジェクト指向です
0604デフォルトの名無しさん2017/03/30(木) 00:53:30.11ID:nVOZ71qD
いや、ミン剤飲もうか

っていうかこのスレはよ沈まんのかいワレェ(CV:竹内力@ミナミの帝王
0605デフォルトの名無しさん2017/03/30(木) 00:55:41.15ID:nVOZ71qD
>>603
ごめん、ちょっとお前が考える「オブジェクト指向」の定義を聞いていいか?
0606デフォルトの名無しさん2017/03/30(木) 00:57:49.41ID:gGp/SYAm
https://ja.wikipedia.org/wiki/Mixin
> mixin とはオブジェクト指向プログラミング言語において、サブクラスによって継承されることにより機能を提供し、単体で動作することを意図しないクラスである。
0607デフォルトの名無しさん2017/03/30(木) 00:58:11.59ID:gGp/SYAm
https://ja.wikipedia.org/wiki/%E3%83%88%E3%83%AC%E3%82%A4%E3%83%88
トレイト (英: trait) とはコンピュータープログラミングにおける概念で、構造的にオブジェクト指向プログラミングを行うための簡素な概念モデルとして使われるメソッド群の集まりである。[1] [2]
0608デフォルトの名無しさん2017/03/30(木) 01:03:41.61ID:nVOZ71qD
>>603
wikipediaを引いてこいなんて言ったつもりはなかった
申し訳ない、ほんとにお手数をお掛けしてごめんね?

プログラマーじゃないんやな
自分の文章で書けるでそ、実際書いたことあるんなら「メソッドだけ欲しいときのやつな」って言うと思う

java界で言うmixinとは「interface」のことだってことも知らんようだし……まじごめんな
0609デフォルトの名無しさん2017/03/30(木) 01:04:43.58ID:gGp/SYAm
wikipediaと指摘することが
反論になってると思ってる糞ガキw
0610デフォルトの名無しさん2017/03/30(木) 01:05:02.53ID:nVOZ71qD
Java8でデフォルトのインターフェースとか……Java好きになれそうもないやうえぇ
0611デフォルトの名無しさん2017/03/30(木) 01:05:58.52ID:gGp/SYAm
> java界で言うmixinとは「interface」のことだってことも

意訳 Javaでmixinを初めて知りました。interfaceのことだと思っていました。
一般的な意味はしりません。
0612デフォルトの名無しさん2017/03/30(木) 01:07:37.95ID:nVOZ71qD
>>609
使ったことあるのかどうかによるな
あるんならWikipedia引くまでもなく数秒でタイプしてしまえると思う

そうせずにしばらくしてwikipediaを引いてきたのだからアヤシイ気もするのよ
0613デフォルトの名無しさん2017/03/30(木) 01:09:17.74ID:nVOZ71qD
>>611
Javaのinterfaceはmixinとして不十分
実装のコピペができないから(Java8でようやくできるようになった)

その指摘もできないとかどうなん
0614デフォルトの名無しさん2017/03/30(木) 01:09:39.88ID:gGp/SYAm
数秒で何をタイプしろと?
タイプしろってお前言ったか?
0615デフォルトの名無しさん2017/03/30(木) 01:10:11.15ID:gGp/SYAm
本当にJavaの話しか出来ないんだな(笑)
0616デフォルトの名無しさん2017/03/30(木) 01:14:09.49ID:nVOZ71qD
>>615
Javaきらーい
もともとの設計が「組み込み用」だったんで、機能制限ありすぎて書きにくい

っていうか、そのくらいは知ってるよな? cafebabeとかは言わんけど
0617デフォルトの名無しさん2017/03/30(木) 01:20:26.40ID:gGp/SYAm
あー、知ってる知ってる。

お前だけだよ、知識自慢したいのはw
0618デフォルトの名無しさん2017/03/30(木) 01:22:32.03ID:nVOZ71qD
嫌いでもそりゃ多少は

「javaはもともと組込用言語として設計されたので機能を厳選せざるを得ず
関数型言語に近しい機能はかたっぱしシカトしてたけども
時期的にクラサバからWeb系への移行期だったことからWeb系対応の機能拡張を施されたので
ちょうどよくWeb系言語の主流になりStrutsとかSpringでウヒョーになったものの
あずれさんとかあまぞそとかGoogleのせいで分散処理が(再び)主流になった現在では微妙」

くらいはしってるでそ、雑魚の野良マなら
0619デフォルトの名無しさん2017/03/30(木) 01:22:44.55ID:gGp/SYAm
っていうか、俺はJavaの話なんかしてないのに
意気揚々とJavaの話をふっかけてきて、何だこいつとしか思ってないから
0620デフォルトの名無しさん2017/03/30(木) 01:23:41.42ID:nVOZ71qD
>>617
あのさあ、マジメに議論する気あるん?

ないならどっか別の板行けよマジで
0621デフォルトの名無しさん2017/03/30(木) 01:23:41.49ID:gGp/SYAm
>>618
俺はお前にJavaの話を聞いたわけでもないのに、
なんで一人で語ってるの?意味不明

お前だけだよ、知識自慢したいのはw
0622デフォルトの名無しさん2017/03/30(木) 01:24:48.46ID:nVOZ71qD
>>621
ヘイトが趣味なら失せろって意味でしゃべってるのよ
0623デフォルトの名無しさん2017/03/30(木) 01:25:01.25ID:gGp/SYAm
え?何の議論?

mixinとかtraitというオブジェクト指向ならではともいえる
機能を使うと肥大化したクラスを分割しやすい

という話の続きですか?

反論を待っている最中なんですが?
0624デフォルトの名無しさん2017/03/30(木) 01:26:28.10ID:nVOZ71qD
>>623
本当にあなた適当なことしかいわないのね
0625デフォルトの名無しさん2017/03/30(木) 01:26:55.30ID:gGp/SYAm
>>624
どこの部分が適当なこと?
深追いすると困るでしょあなた?w
0626デフォルトの名無しさん2017/03/30(木) 01:28:15.25ID:gGp/SYAm
あんたは表面しか理解してないから
突っ込まれると何も言えなくなるんだよ
0627デフォルトの名無しさん2017/03/30(木) 01:28:23.16ID:nVOZ71qD
>>625
なぜ初めから技術論で深追いしないのか
なぜ煽りに徹する
お前は技術論がわからないんじゃないのか

と、疑っている
0628デフォルトの名無しさん2017/03/30(木) 01:29:14.83ID:gGp/SYAm
反論を待ってると言っても、やっぱり話をずらしてくるんだよなw
0629デフォルトの名無しさん2017/03/30(木) 01:32:21.70ID:nVOZ71qD
じゃあとりあえず >>593 を引用して

「いや、今までの流れはオブジェクト指向便利だったのが
脈絡もなく書き込んでるからさ、
もしかして、(くやしいから?)今までの話を
リセットしようとしてるのか思ってね。 」

のあたりについて、キチンと「例えば関数型・手続き型言語よりもオブジェクト指向言語のほうが優れている」
というコードを見せてもらおうか
ideone.comにうpってくれ

お前書かんでしょ、知ってるけど
0630デフォルトの名無しさん2017/03/30(木) 01:33:17.43ID:gGp/SYAm
そりゃ書かんよw

反論を待ってる最中なんだから
0631デフォルトの名無しさん2017/03/30(木) 01:35:54.96ID:nVOZ71qD
>>630
書けないのを分かってて言ってるからアレだけど
別の板いったほうがいいと思うよ

イライラしてるのはわかってるし、意図的にそうしてるんよこっちは
0632デフォルトの名無しさん2017/03/30(木) 01:38:13.51ID:gGp/SYAm
まあ情けで少しだけヒントをやると、オブジェクト指向は関数型と
組み合わせて使うもので構造(クラス)を記述するのに適してる言語だ。
処理の内容は関数型が優れている。
構造(オブジェクト指向)と処理(関数型)は組み合わせて使うことができる

手続き型はもういらねw
0633デフォルトの名無しさん2017/03/30(木) 01:39:44.89ID:gGp/SYAm
>>631
いや、あまりにも想定通りの行動するもので呆れてる所w

http://echo.2ch.net/test/read.cgi/tech/1488213507/30

30 自分:デフォルトの名無しさん[sage] 投稿日:2017/03/30(木) 01:21:13.47 ID:gGp/SYAm [1/2]
相手に喋らせてボロを出すのを待ち構えるメソッドかいな(笑)

31 自分:デフォルトの名無しさん[sage] 投稿日:2017/03/30(木) 01:35:10.41 ID:gGp/SYAm [2/2]
やっぱりそうだったな。どうにかして相手に
書かせようとする作戦だった。
自分は逃げてばっかり
0634デフォルトの名無しさん2017/03/30(木) 01:41:28.91ID:nVOZ71qD
>>632
ちょっとリーナス呼んできていいか? Matzでもいいし、あのインデント偏執狂のグイドでもかまわないが
「もういらねw」とか無礼にもほどがある
0635デフォルトの名無しさん2017/03/30(木) 01:43:32.22ID:nVOZ71qD
>>633
お前営業やったほうがいいんじゃないか? マじゃないだろ……

ヒントなどではなくピンポイントで分かる情報を出してるつもりだが
0636デフォルトの名無しさん2017/03/30(木) 01:46:23.96ID:gGp/SYAm
俺が待ってるのはこれ

え?何の議論?

mixinとかtraitというオブジェクト指向ならではともいえる
機能を使うと肥大化したクラスを分割しやすい

という話の続きですか?

反論を待っている最中なんですが?
0637デフォルトの名無しさん2017/03/30(木) 01:48:32.69ID:Babdh16b
>>600-607 の流れはこう読めた。

ID:gGp/SYAmは
オブジェクト指向批判するなら代案をだせ、
mixinとtraitはオブジェクト指向で解決しているから批判にならない、
Wikipediaに載っているから「mixinとtraitがオブジェクト指向」は間違ってない、
と言っているわけだ。これはよくわかる。

ID:nVOZ71qDはなぜオブジェクト指向の定義を聞いた?
自分の文章で書けると言っているが
それでは「mixinとtraitがオブジェクト指向」の証明にならないだろ。
ID:nVOZ71qDが何を言いたいのかわからない。

>>631
君が相手の言っている事を理解できないだけだと思う。
0638デフォルトの名無しさん2017/03/30(木) 01:50:01.83ID:gGp/SYAm
>>637
あんた真面目に読んでるなw
0639デフォルトの名無しさん2017/03/30(木) 01:51:15.02ID:nVOZ71qD
>>636
ID:gGp/SYAm
順番としては、一番早い >>593 を解決してもらわなければ筋が通らん

「いや、今までの流れはオブジェクト指向便利だったのが
脈絡もなく書き込んでるからさ、
もしかして、(くやしいから?)今までの話を
リセットしようとしてるのか思ってね。 」

これについての説明を、コードでしてもらわなきゃね
お前が先に切りかかったのだから

自分が言ったことを証明できないならあとの話はウソかもと疑わないと仕方ないわけで
いやね、事情があるなら説明してもらえりゃ構わんけどさ……俺みたく酔っぱらってヒートアップしてるなら知らんし
0640デフォルトの名無しさん2017/03/30(木) 01:54:53.99ID:nVOZ71qD
>>637
手続き型の言語な感じだからだろうね

関数/メソッドとclassが切り離すのが容易

くらいの意味合いだわな
0641デフォルトの名無しさん2017/03/30(木) 01:58:23.56ID:nVOZ71qD
空気みたく他人をヘイトする文面をみると腹立たしくてたまらんのは間違いない

ID:gGp/SYAmはすぐにヘイト文面書くと思うが……どうしたらいいんかねこの子
0642デフォルトの名無しさん2017/03/30(木) 02:03:55.80ID:nVOZ71qD
別に俺がバカにされるのは仕様がないがね……俺あたま悪ぃからさ
0643デフォルトの名無しさん2017/03/30(木) 02:19:42.70ID:nVOZ71qD
もう寝るわ、俺が頭悪いのはいつものことだ、すまんね
0644デフォルトの名無しさん2017/03/30(木) 02:23:38.29ID:nVOZ71qD
あ、誤タイプしてる >>640

ごめん眠剤オーバードーズして死んできていいか orz しやせんが
0645デフォルトの名無しさん2017/03/30(木) 02:26:53.57ID:QQ8BCWsM
「オブジェクト指向言語」のスレでは無いんだが
0646デフォルトの名無しさん2017/03/30(木) 02:30:29.89ID:nVOZ71qD
>>645
あー、IDなんちゃらが他人をあおってたのにイラっとして爆撃したようなもんで
俺のIDを全部無視に入れれば済むぜ……! っていうかそうしてくれ……
0647デフォルトの名無しさん2017/03/30(木) 03:14:34.94ID:nVOZ71qD
>>633のリンクみてきたんだけど
まんこがくさい女の子のスレに張られた文言
言われても仕様がないんですけどー

ミン剤バキバキなんでアレだが、性病検査(あたりなら抗生剤)→ラクトフローラで匂い改善じゃないですかねー

よし寝る、風呂ってきたよ
0648デフォルトの名無しさん2017/03/30(木) 03:19:25.43ID:gGp/SYAm
ID:nVOZ71qD 必死だなw
0649デフォルトの名無しさん2017/03/30(木) 03:24:38.24ID:nVOZ71qD
>>648
眠剤入れるとスコンって落ちるからね、最近のはよく効く

まあ明日(というか今日?)はきっと「オブジェクト指向のすごさ」を実装してくれるのでしょう?
できなかったらお前マジ「素人」判定

場所は idenoe.com つかったらええでそ
バチっとワンニャンアニマルfuckなクラス、全員がなるほどこう設計するのかと納得できるコードをうpやな
できんかったらアホ扱いやで
0650デフォルトの名無しさん2017/03/30(木) 03:29:47.15ID:nVOZ71qD
もうあかんわ、別に実装でなくてもええからクラス図やな imgur (でうpれる)

もう布団いくでほんじゃあな
0651デフォルトの名無しさん2017/03/30(木) 07:15:18.58ID:GTk/dUnn
>>645
オブジェクト指向がいかに
素晴らしいか語らうスレだろ

猫のドアから
性の悦びまで与えてくれるんだぞ
0652デフォルトの名無しさん2017/03/30(木) 07:29:51.45ID:IGixA1Qp
毎晩やって来ては「ミン剤、ミン剤」言いながらズレた論理で話をはぐらかしつ付けてるやつ、
マジ薬中かなんかなん?
最後には誰も聞いてねぇのに寝る寝る騒ぎ出すし
書き込みがことごとく基地外過ぎるだろ、繋いどけよ家族
0653デフォルトの名無しさん2017/03/30(木) 07:42:36.08ID:41dNcfyJ
途中追ってないけど前スレから罵倒発言してた奴なの?
0654デフォルトの名無しさん2017/03/30(木) 08:18:17.98ID:o354xqK8
>>652
ここが唯一のセーフティネットなんだ
0655デフォルトの名無しさん2017/03/30(木) 08:28:13.25ID:9khgRv1/
https://goo.gl/8by4rX
これは嫌だなー。。本当?
0656デフォルトの名無しさん2017/03/30(木) 08:29:37.83ID:IGixA1Qp
>>653
いや、ミン剤くんは、それにブチギレした変な人
0657デフォルトの名無しさん2017/03/30(木) 09:01:46.72ID:Y2Gx9wEv
>>560 続き [>>391の 1(a)]

"ドアにドアストッパーを設置(traitを使用)"
bドア := aドア as: ドア newSubclass.
bドア class rename: #ストッパー付きドア.
bドア addInstanceVarNamed: #ストッパー withValue: #解除.
ストッパー付きドア compile: 'ストッパー ^ストッパー'.
ストッパー付きドア compile: 'ストッパー: 固定か解除 ストッパー := 固定か解除'.
"bドア ストッパー: #解除 => compile error: Private messages may only be sent to self"

Trait named: #Tドアストッパー uses: #() category: 'UserObjects'.
Tドアストッパー compile: 'ストッパーを外す self ストッパー: #解除'.
Tドアストッパー compile: 'ストッパーをかける self ストッパー: #固定'.
Tドアストッパー compile: 'ストッパーかかっている? ^self ストッパー == #固定'.
Tドアストッパー compile: '押す self ストッパーを外す. super 押す'.
Tドアストッパー compile: '引く self ストッパーかかっている? ifFalse: [super 引く]'.
ストッパー付きドア uses: Tドアストッパー.


bドア ノブ 回す. bドア 押す; 開いている?. "=> true "
bドア ストッパーをかける; 引く; 閉じている?. "=> false "
bドア ストッパーを外す; 引く; 閉じている?. "=> true "
bドア ノブ 回す. bドア 押す; 開いている?. "=> true "
bドア ストッパーをかける; 引く; 閉じている?. "=> false "
bドア 押す; 引く; 閉じている?. "=> true "
0658デフォルトの名無しさん2017/03/30(木) 09:03:50.12ID:Y2Gx9wEv
>>657 続き

"ドアにドアクローザーを設置(こちらはオーバーライドで済むので継承で)"
cドア := aドア as: ドア newSubclass.
cドア class rename: #クローザー付きドア.
cドア addInstanceVarNamed: #遅延 withValue: 3 seconds.
クローザー付きドア compile: '遅延: 秒 遅延 := 秒'.
クローザー付きドア compile: '押す
  super 押す.
  self 開いている? ifTrue: [[遅延 asDelay wait. self 引く] fork]'.

cドア ノブ 回す. cドア 押す. {cドア 開いている?. cドア 閉じている?} "=> #(true false) "
4 seconds asDelay wait. cドア 閉じている?. "=> true "


"ドアストッパーとドアクローザー、両方ついているドア(traitを使用)"
dドア := cドア as: クローザー付きドア newSubclass.
dドア class rename: #ストパクロザ付きドア.
dドア addInstanceVarNamed: #ストッパー withValue: #解除.
ストパクロザ付きドア compile: 'ストッパー ^ストッパー'.
ストパクロザ付きドア compile: 'ストッパー: 固定か解除 ストッパー := 固定か解除'.
ストパクロザ付きドア uses: Tドアストッパー @{#aliasストッパーを外す -> #ストッパーを外す}.
ストパクロザ付きドア compile: 'ストッパーを外す self aliasストッパーを外す. super 押す'.

dドア ノブ 回す. dドア 押す. {dドア 開いている?. dドア 閉じている?}. "=> #(true false) "
4 seconds asDelay wait. dドア 閉じている?. "=> true "

dドア ノブ 回す. dドア 押す. {dドア 開いている?. dドア 閉じている?}. "=> #(true false) "
dドア ストッパーをかける. 4 seconds asDelay wait. dドア 閉じている?. "=> false "
dドア ストッパーを外す. 4 seconds asDelay wait. dドア 閉じている?. "=> true "
0659デフォルトの名無しさん2017/03/30(木) 09:03:59.36ID:IGixA1Qp
日本語で書かれると、ここまで読みづらくなるという事がわかったのはまぁ、収穫だった。
0660デフォルトの名無しさん2017/03/30(木) 12:55:27.07ID:M03Rbfp8
なでしこ
0661デフォルトの名無しさん2017/03/30(木) 17:24:36.73ID:Y2Gx9wEv
>>659
> 日本語で書かれると、ここまで読みづらくなるという

いちいち英語表現を考えるのが面倒で、つい日本語でやり始めちゃいました。すみません。
改めて、>>557,560,657,658 のメソッドや変数名などを英語で書き直したのも書きました。
http://ws.stfx.eu/4Z3UG9LYB5FK

なおPharoのコード共有機能を使って公開していますが、Pharoではこれらの式の多くは評価できません。
(Squeak独自のAPIをいろいろ叩いているので)

参考まで、オーソドックスにクラスを定義するコードにも落としておきました。
http://ws.stfx.eu/DG7M9JMU9YMS
これならPharo Smalltalkでも動きます。
(RawをRPT-Door.stなどと名前を付けて保存し、PharoからTools → File Browser → Filein)

もっともこんなふうにクラス定義を起こしてしまえば他言語でも代り映えしないので、
試しにRubyにも移植しておきました。当初のオブジェクトと対話しながら作り上げる感じは無くなっちゃいますけど。
http://ideone.com/or6JyE
0662デフォルトの名無しさん2017/03/30(木) 18:28:59.57ID:b9TSGOCH
>>563
562だが、純粋仮想関数の引数を追加したときに使う。
予め派生クラスがオーバライドしている状況で基底クラスのメソッドの引数を追加する。
派生クラスが一段(子クラス)なら純粋仮想関数で警告が見でるが、多重派生(孫クラス)していると子クラスがあるから警告がでない。

ようは派生クラスの孫まで引数を一致させることをコンパイル段階で検出したい。

フレームワーク全盛で保守を続ける場合、かならず起きるバグ。それを潰したい
0663デフォルトの名無しさん2017/03/30(木) 18:29:01.48ID:LEwdK5Fw
結局何をしたいコードなのか全くわからんね
0664デフォルトの名無しさん2017/03/30(木) 18:37:02.18ID:b9TSGOCH
現状の言語仕様だと同名メソッドの引数違いを許すが、これが仇になることがある。
孫に引数追加漏れを起こしたとき、実行して、その孫クラスのインスタンスでメソッドを呼ばないとわからない。
そのふるまいは、孫のはずが子クラスの処理するから昨日不全や意図しない動作になってハマる。
なので修飾子をつけたら派生クラスはメソッドを同じ引数と名前で作ってなかったら
「変更をお漏ししてるよ?雑魚が」
とコンパイラが警告してほしい。
0665デフォルトの名無しさん2017/03/30(木) 18:38:29.99ID:b9TSGOCH
すまん。言語はC++想定の話
シャープやJavaとかの後発なら当然出来るんじゃないかと思ってもいる。
0666デフォルトの名無しさん2017/03/30(木) 22:02:09.80ID:5QdmhTYf
なにゆーてんかわからん
孫があっても引数追加したら子クラスと合わなくなるから
子クラスのほうで必ずエラーでるだろ
0667デフォルトの名無しさん2017/03/30(木) 22:28:31.73ID:Babdh16b
>>666
親クラスと子クラスを修正して孫クラスが修正漏れの時、
コンパイルエラーにならないという話だろう。

●改変前
親:virtual int a(int b) = 0; ←純粋仮想関数
子:int a(int b){} ←オーバーライド
孫:int a(int b){} ←オーバーライド

●改変後
親:abstruct int a(int b, int c) = 0; ←引数追加
子:int a(int b, int c){} ←引数追加
孫:int a(int b){} ←修正漏れ、オーバーロードになる
0668デフォルトの名無しさん2017/03/30(木) 22:30:34.00ID:Babdh16b
× 親:abstruct int a(int b, int c) = 0; ←引数追加
○ 親:virtual int a(int b, int c) = 0; ←引数追加
Javaが混じってしまった。
0669デフォルトの名無しさん2017/03/30(木) 22:56:08.66ID:gGp/SYAm
>>667
@Override をつければコンパイルエラーになる
0670デフォルトの名無しさん2017/03/30(木) 22:58:26.63ID:5QdmhTYf
そういうことでしたか

C#は大丈夫だけどJavaは@overrideつけてないとだめかな
0671デフォルトの名無しさん2017/03/30(木) 23:04:19.44ID:ap45rSI5
書いたやつの脳がぶっ壊れてんじゃないかってレベルで
クソなSmalltalkのコードが連投された時はどうなることかと思ったけど、
マトモな話になってるね
0672デフォルトの名無しさん2017/03/30(木) 23:09:19.98ID:S+GupbQt
キャットドア付いたん?
0673デフォルトの名無しさん2017/03/30(木) 23:12:03.75ID:gGp/SYAm
それがくだらん話の一つなw
0674デフォルトの名無しさん2017/03/30(木) 23:30:49.96ID:Ni3DJSOS
オブジェクト指向なら戻り値引数は基本継承でどうにでもなるやろ
0675デフォルトの名無しさん2017/03/30(木) 23:58:38.98ID:kr0iImC9
脳がぶっ壊れてるクソっぽいSmalltalkのコードだが
とりあえず>>391の1(b)までのオブジェクト指向の例は出たのだから
>現実の構造を表現するなら、連想配列のほうが表現力は上
とか言ってたヤツはこれを凌駕するコード出せ
0676デフォルトの名無しさん2017/03/31(金) 00:08:49.80ID:xzhcWqnp
オブジェクト指向の話なのかJavaの話なのか
プロトタイプベースのオブジェクト指向ならjsでもluaでも連想配列はあるし
0677デフォルトの名無しさん2017/03/31(金) 00:27:09.29ID:H7XDmqS1
jsの連想配列で考えてみたが大分クラスっぽくなるからやめた
0678デフォルトの名無しさん2017/03/31(金) 00:37:40.28ID:IVZLVoCl
キャットドア盛り上がってるね

まさか1スレぐらい人気続くと思わなかったわ

"満場一致で"満足いく"自然な"答えは得られたかい?
ってのが重要な意図なんだけど
0679デフォルトの名無しさん2017/03/31(金) 00:50:10.69ID:lne8XdLn
キャットドア飽きた
0680デフォルトの名無しさん2017/03/31(金) 00:52:39.26ID:ywC1ipWX
何でもかんでもバカしか言わない人間性の欠片もないやつが常駐してりゃ
そりゃ愛想つかされるだろ
0681デフォルトの名無しさん2017/03/31(金) 01:01:41.62ID:H7XDmqS1
これからオブジェクト指向で遺伝的アルゴリズムを組む
オブジェクト指向じゃなくても良くね?という話はNG
0682デフォルトの名無しさん2017/03/31(金) 05:09:26.00ID:0K4W1CIv
なにが遺伝するん?
0683デフォルトの名無しさん2017/03/31(金) 06:37:49.84ID:sUNIpGB0
ポリモってる?
0684デフォルトの名無しさん2017/03/31(金) 07:06:10.95ID:1f3bJ8bv
>>678
小並感満載の屁理屈で後出しジャンケンしてんじゃねーよ
なんだかんだ言って結局コードは書けないんだろ?
ちゃんと読めてるかどうかすら怪しいわ
0685デフォルトの名無しさん2017/03/31(金) 07:29:31.17ID:1f3bJ8bv
「満場一致」ひとつとってみても、そもそもオブジェクト指向が
ストラウスストラップらの「抽象データ型をクラスでやるOO」と
ケイの「メッセージの受け手をオブジェクトにやらせるOO」の少なくとも二つ、
さらには後者のシンプリシティを追求した「プロトタイプOO」や
これらを意識して混ぜたり、理解できなくて混同する奴もうじゃうじゃいて
コンセンサスすら得られてないんだからどだい無理
一致したら対抗コード出すみたいなのは端から出す気がないのバレバレ
0686デフォルトの名無しさん2017/03/31(金) 07:41:23.91ID:IVZLVoCl
敗北宣言ありがとう
0687デフォルトの名無しさん2017/03/31(金) 07:48:55.70ID:cvdYyXTA
模範解答をよろしく
0688デフォルトの名無しさん2017/03/31(金) 08:39:42.79ID:vW58ZqWM
コンセンサスってことなら、>>661は(ラピッドタイピングの変態コードはさておき、最終的なコードは)
まともなtraitsか最悪mixinがあれば、たとえばPHPだって書けるシンプルなオブジェクト指向のコードだろ
(くしくもRubyのmixinがtraitsに対して不完全であることがわかる例にもなっていて笑える)
0689デフォルトの名無しさん2017/03/31(金) 09:03:10.29ID:xC6OHsgz
Rubyはmixとかいうtraits寄りの機能をモジュールに盛り込もうとして自爆した
0690デフォルトの名無しさん2017/03/31(金) 10:50:27.90ID:IbZDcdEL
このスレ日本語が不完全っぽい人が多いけど
文法を語るに値するのかしら
0691デフォルトの名無しさん2017/03/31(金) 11:13:14.93ID:T5xyE4x5
不完全
0692デフォルトの名無しさん2017/03/31(金) 13:12:17.54ID:EQTp78mJ
完全な日本人である僕の出番だお!
0693デフォルトの名無しさん2017/03/31(金) 14:28:48.23ID:2HzJw//0
>>98
これが正解
0694デフォルトの名無しさん2017/03/31(金) 14:31:30.01ID:2HzJw//0
>>130
オブジェクト指向で勘違いされやすいところ
主語をオブジェクトにしたらいかんのですよ
0695デフォルトの名無しさん2017/03/31(金) 15:19:13.07ID:jUUN27r5
>>690
これ
自然言語能力が1番大事!
0696デフォルトの名無しさん2017/03/31(金) 15:31:30.47ID:XZKlqyQZ
>>694
目的語がどうされるか、ってことか
0697デフォルトの名無しさん2017/03/31(金) 16:16:39.53ID:WzS7AZAh
主語とか目的語とかそういう感覚で理解しようとしても無理よ
状況によってどう作るのがいいかは変わってくるから
それに考え方によって何が主語なのかも変わる

door.open()はdoorにopenしてねって依頼してる
人に仕事依頼するのと同じ
この場合ドアがドア自身を開ける
0698デフォルトの名無しさん2017/03/31(金) 16:41:15.67ID:i0FUDyg+
doorの状態を変化させるのにdoor以外のメソッドを使うのは設計ミス、door.open()で正解
オブジェクト志向を現実例えるからこんなしょうもない議論を産む
0699デフォルトの名無しさん2017/03/31(金) 16:58:42.09ID:EFNllGPI
door.openとは、”doorのopenメソッド”だからな
open method of doorだ
つかまだネコドアの話してるのかw
0700デフォルトの名無しさん2017/03/31(金) 18:33:44.13ID:WzS7AZAh
Doorクラスがある前提ならともかく
現実の設計ならドアをクラスにすべきかどうかから考えないといけないわけで
常にdoor.open()がいいとは限らんよ
0701デフォルトの名無しさん2017/03/31(金) 18:41:08.16ID:4qwJlBYL
ドアを開けれるかどうかの判断を誰がするかで設計が変わると思うけど
例えば自動ドアで人には反応するけど猫には反応しないならdoor.open(cat)とするのが分かりやすいと思う
後はドアは1種類だけど開ける対象(人、猫、猿、、、)が多くて対象によって開けれるかどうかが違うなら、ドア自体は対象を気にせず、開ける側で開けれるか判断する方が収まりがいい
ドアの種類と開ける対象の組み合わせで開く/開かないが変わる場合が考えどころでは?
0702デフォルトの名無しさん2017/03/31(金) 18:47:14.60ID:OV1cbLT2
>>701
なんだ? そのセキュリティの概念の欠片もない案
0703デフォルトの名無しさん2017/03/31(金) 18:52:02.79ID:FcWj0OtH
>>700-701
このスレでは>>391により複雑なDoorクラスがある前提だからdoor.open()が正しい。
実際にソフトウェアを作る時は単純になるモデルを考えるのはその通りだと思う。
0704デフォルトの名無しさん2017/03/31(金) 19:00:01.88ID:WzS7AZAh
391の内容だけでドアをクラスにすべきかどうかはわからんよね
属性についてしか書いてないし
0705デフォルトの名無しさん2017/03/31(金) 19:02:37.39ID:LvE5/jil
>>703
猫は人間と同じ認識でドアを捉えてはいない
ただ通路をふさぐ物体をどけているだけだ>>391

ドアの開け方は基本しらないから猫にdoor.open()メソッドは使えないはず
0706デフォルトの名無しさん2017/03/31(金) 19:07:09.75ID:OV1cbLT2
>>705
それ、前スレからずっと言ってるのに、アホどもはどうしても猫がopenメソッド使えると言い張ってるのさ。
0707デフォルトの名無しさん2017/03/31(金) 19:09:03.08ID:4qwJlBYL
>>703
直近のスレだけ目を通してたから詳細な前提条件があるの知らなかった
教えてくれてありがとうございます
0708デフォルトの名無しさん2017/03/31(金) 19:28:15.64ID:FcWj0OtH
>>705
>>701のようにdoor.open(cat)として押して開くドア以外は開かなければ>>391は守れる。
door.push(weight)でもいいけど猫は通りたくて押すのだからdoor.open(cat)でもよい。
0709デフォルトの名無しさん2017/03/31(金) 19:31:31.32ID:4qwJlBYL
>>705
そんなこと言い出したらドアだって押し戸は開けられた(open)なんて認識せず押された(push)と認識するのでは?
0710デフォルトの名無しさん2017/03/31(金) 19:32:34.81ID:cvdYyXTA
>>708
扉は猫じゃなきゃ開けらんないの?
0711デフォルトの名無しさん2017/03/31(金) 19:41:42.39ID:OV1cbLT2
>>708
だめに決まってんだろ、まだわかんねーのか?

>>710
元のお題読では、犬もいるかもしれなくて、開けられる事になってる。
フェレットもいるかもしれないし、ウサギもフクロウもいるかもしれない。
ひょっとしたらカバやラクダもいるかもしれないな。

だから>>708はダメだと言っているのに、こいつら、全く話聞かねぇのよ。
0712デフォルトの名無しさん2017/03/31(金) 19:42:25.09ID:LvE5/jil
>>709
猫がドアのことを知らないのと、ドアがドア自身のことを知らないのは別の話だ
それにコード上、Cat->Doorとコード上の依存ができたら猫はドアライブラリのない世界で生きていけなくなってしまう
door.open(), door.push()(親のmaterialかなんかを継承)と抽象度の異なるメソッドができるのは気持ち悪いが仕方ない
0713デフォルトの名無しさん2017/03/31(金) 19:42:39.02ID:LvE5/jil
使い手と実装側のギャップ、異なる抽象度のメソッド、多重継承の問題
Java型のオブジェクト指向の泣き所を的確にとらえてる
そして猫とドアというセンス

これたまたま思いついて書いたんじゃないだろ
どっかに転がってたんだろ正直に言え!
0714デフォルトの名無しさん2017/03/31(金) 19:45:21.22ID:4qwJlBYL
>>710
引数の型はCatでは無くドアが開けれる条件を知るためのインタフェース
ドアノブ回せるか?押す荷重は?て感じになる
catはインタフェースを実装してるだけ
0715デフォルトの名無しさん2017/03/31(金) 20:33:21.82ID:SfUEPmxo
これがopen(door=door, actor=cat)で済む普通の関数ってやっぱり神だわ
0716デフォルトの名無しさん2017/03/31(金) 20:40:27.81ID:OnVWZsDN
そもそも『コードを読む側が理解しやすいかどうか』の話なので
"このドアは「開け!」という命令で開くように決めた"という読む側のお約束の話であって、
ネコがpushしようがcall mewしようがそれはプログラマー(ヒト)が
"これがネコの「開け」である"って解釈して実装するだけの話。

「ここに暴れたら退店してもらうって書いてあるけど
うんこ!うんこは暴れるに入るの!?しょんべんは!?
張り紙なんて無効だよね!!」とかアスペルガー知障が暴れ喚いてるの
なんで相手してんだよw 議論じゃなくて退店だよw
0717デフォルトの名無しさん2017/03/31(金) 20:50:19.64ID:OV1cbLT2
>>716

>"これがネコの「開け」である"って解釈して実装するだけの話。

その部分実装してたやつ、一人もいねーじゃん
0718デフォルトの名無しさん2017/03/31(金) 21:06:25.26ID:4qwJlBYL
>>715
open関数の実装をなんて名前のファイルに保存しよう?って考えるのもdoor.openとするのも人の認識度を上げるって意味では同じじゃないかな
どっちのopenも実装の中身は変わらないと思うし
>>716
おっしゃる通り、藪を突いてすいません
0719デフォルトの名無しさん2017/03/31(金) 21:12:11.49ID:LvE5/jil
open()はドアを回す、ドアを押す(横にずらす、引く)とかの一連の手続きでドアをopen()状態にする
push()はドアを押すだけ

言葉の上だけのちがいじゃないだろ
0720デフォルトの名無しさん2017/03/31(金) 21:14:22.06ID:dseKSPuY
openとpushはどちらも開けるという意味だ。

ふすまはpushすると開くだろ
0721デフォルトの名無しさん2017/03/31(金) 21:19:11.54ID:LvE5/jil
開いた後の状態が違いすぎるわ!w
0722デフォルトの名無しさん2017/03/31(金) 21:23:17.43ID:SfUEPmxo
>>718
それ以上の話はバックグラウンドがないとどうしようもないな。でも、ドアの状態を変更させるならドアの実装に近いところにないと意味分からなくなるな
0723デフォルトの名無しさん2017/03/31(金) 21:24:59.58ID:y15g6khc
入門書で動物を例えに出すのがオブジェクト指向の間違いの始まりってどこかのスレで読んだな。
例えばそのドアクラスと猫クラスを扱うのがWebアプリだったら、DBからインスタンス化に必要なデータを読み書きするわけだが、現実のドアと猫の関係にDBなんて無い。

それぞれがDBとやりとりするメソッド書くのか、別にDBクラス作って、ドアと猫を管理させるのかとか、そう言う現実とは別の視点の切り分けでオブジェクト指向をしなきゃいけないのに、現実に無理やり合わせようとするから悲劇が起きるとか何とか。
0724デフォルトの名無しさん2017/03/31(金) 21:25:59.06ID:dseKSPuY
> 入門書で動物を例えに出すのがオブジェクト指向の間違いの始まりってどこかのスレで読んだな。

あぁ、よくある偉そうに間違いだと言いはるだけで、
代替案を出せないってやつだなw
0725デフォルトの名無しさん2017/03/31(金) 21:28:32.80ID:NJLeaTk9
動物にしても人間にしても単一責務には納まりにくいわな
0726デフォルトの名無しさん2017/03/31(金) 21:33:41.69ID:dseKSPuY
というか例え話って言うの分かっていない。

例え話っていうのは「例え」なのだから
そのものとは違うのは当たり前。

例えである以上、そのものとは違うものなんだから、
違うところがあると指摘する意味がない。

例えは物事を理解しやすくするためのもの。

なお、例えを使って馬鹿にする行為は
例えである以上そのものとは違うので意味がない
0727デフォルトの名無しさん2017/03/31(金) 21:52:15.39ID:cvdYyXTA
たとえ話なので別に見当違いなことを言ったりするのは構わない
でもそれに対して罵倒で対応したりただただバカにする対応は本当に嫌い
0728デフォルトの名無しさん2017/03/31(金) 21:53:44.40ID:fE+99Cns
>>724
代替案出さないで文句ばっかり言う奴いるよな
0729デフォルトの名無しさん2017/03/31(金) 21:53:55.11ID:SfUEPmxo
>>723には俺も賛成だな。オブジェクト志向は動物に例えても理解しやすくならない
0730デフォルトの名無しさん2017/03/31(金) 21:54:53.33ID:dseKSPuY
>>729
理解しやすくなるぞw
0731デフォルトの名無しさん2017/03/31(金) 21:55:27.20ID:OV1cbLT2
>>727
お前の好き嫌いなんて聞いてない
0732デフォルトの名無しさん2017/03/31(金) 21:56:48.49ID:SfUEPmxo
>>730
動物に例えた理解でもの作ったことある?
俺は動物で理解してた頃はてんでメンテナンス性の低いものばかり作ってたけど、動物の理解をやめたらメンテナンス性めっちゃ上がったんだけど
0733デフォルトの名無しさん2017/03/31(金) 21:57:16.67ID:NJLeaTk9
>>720
openは結果をも含めた概念だがpushはそうではないだろう
0734デフォルトの名無しさん2017/03/31(金) 21:57:30.24ID:cvdYyXTA
>>731
そーだね
なんか心当たりでもあるの?
0735デフォルトの名無しさん2017/03/31(金) 21:58:18.41ID:SfUEPmxo
>>698が全てだと思うな
0736デフォルトの名無しさん2017/03/31(金) 22:00:54.69ID:dseKSPuY
>>732
お前は例えにおける理解のプロセスがおかしい。

何も知らない状態で理解するのが難しいから
例えを使う。

例えを使うことで、既存の知識とつなげて理解しやすくなる。
その上で理解を深めて初めて使いこなせるようになる。

例えの情報だけでものを作ろうとしているそのやり方が間違ってるんだよ。
例えをきっかけに知識を深めて、ものを作るのが正しいやり方なんだよ
0737デフォルトの名無しさん2017/03/31(金) 22:01:32.39ID:NJLeaTk9
多面的なクラスなんてごめんだね
0738デフォルトの名無しさん2017/03/31(金) 22:04:16.69ID:dseKSPuY
例えを使った説明に文句を言ってるやつって、たいてい

「例えでは完璧に説明することが出来ない」という
言い方をするんだよなw


例えは所詮例えなんだから当然そのものとは違う。
ゆえに例えだけで完璧に説明できないのは当たり前の話。
例えは理解するきっかけとなれば、それで十分な効果があったと
みなすべきなんだよ。
0739デフォルトの名無しさん2017/03/31(金) 22:06:01.05ID:NJLeaTk9
動物が例えに適しているかという問題にそんな一般論は役に立たない
0740デフォルトの名無しさん2017/03/31(金) 22:08:55.76ID:OV1cbLT2
>>734
無いと思ったのか? おまえ、バカだろう?
0741デフォルトの名無しさん2017/03/31(金) 22:10:03.71ID:cvdYyXTA
>>740
俺、おまえ嫌い
以上
0742デフォルトの名無しさん2017/03/31(金) 22:10:48.41ID:2D51TYwb
考え方を変えて
たとえ話が必要なアホを消滅させればどうか
0743デフォルトの名無しさん2017/03/31(金) 22:12:28.64ID:SfUEPmxo
>>736
せやな。そんで一回動物の例えをきっかけに理解したらあとはキャットドア議論とかするより、実際にものを作って理解していくほうがいいな
0744デフォルトの名無しさん2017/03/31(金) 22:13:26.59ID:dseKSPuY
動物の例えを批判するやつが
もっと良い例えを言えないのも説明できて、

どんな例えであっても、それが例えである以上
なにかしら説明できない部分があるからなんだよ。

例え(動物)で完璧に説明できないと言っているやつは、
同じようにその他の例えでも完璧に説明できないことに気づいて
代替案を出すことが出来ない。
0745デフォルトの名無しさん2017/03/31(金) 22:17:04.84ID:IU/scL0A
>>706
結局どんな設計になるの?
コードで示してもらえますか?
0746デフォルトの名無しさん2017/03/31(金) 22:25:18.23ID:LvE5/jil
>>744
タイヤとハンドルととエンジンと車体で車つくって!
っていうのが一番最初の課題だった
0747デフォルトの名無しさん2017/03/31(金) 22:28:47.95ID:dseKSPuY
>>746
タイヤを継承して何かができるとかいう話をしたの?
0748デフォルトの名無しさん2017/03/31(金) 22:32:26.37ID:LvE5/jil
>>747
車が海にもぐったり空飛べるようになったりするよ!
0749デフォルトの名無しさん2017/03/31(金) 22:33:57.66ID:cvdYyXTA
>>747
タイヤって言うインターフェースを使ってスタッドレス履かせた時とそれ以外のタイヤを履かせた時でクルマの動きが違う
って感じじゃないの
0750デフォルトの名無しさん2017/03/31(金) 22:34:49.08ID:LvE5/jil
>>749
天才
0751デフォルトの名無しさん2017/03/31(金) 22:35:05.67ID:dseKSPuY
例え(知らない人)にいきなりインターフェースとか
出してもわからないだろうなw
0752デフォルトの名無しさん2017/03/31(金) 22:35:33.24ID:dseKSPuY
例えが必要な人(=知らない人)にいきなりインターフェースとか
出してもわからないだろうなw
0753デフォルトの名無しさん2017/03/31(金) 22:42:52.67ID:cvdYyXTA
プログラムを目の前にしたくないタイプの人にはミニ四駆でも改造しながら話せばいいよ
0754デフォルトの名無しさん2017/03/31(金) 22:51:57.26ID:y15g6khc
そこよな。
結局、オブジェクト指向の後にテンプレートとかジェネリックとか言われるものが出てきたけど、結局継承なくてもジェネリックとインターフェースの組み合わせだけでええやんけって言う。
0755デフォルトの名無しさん2017/03/31(金) 22:56:00.94ID:j+49GCZB
>>754
継承はオブジェクト指向に必須でもなんでもないんですよC++おじいちゃん…
0756デフォルトの名無しさん2017/03/31(金) 22:58:13.52ID:dseKSPuY
ジェネリックもインターフェースもオブジェクト指向には必須じゃない。

というか、オブジェクト指向に必須のものなんか
最初からなにもなくて、

オブジェクト指向を実現しやすいかどうかの差でしかないんだよ。
0757デフォルトの名無しさん2017/03/31(金) 22:59:35.39ID:LvE5/jil
Go言語の先見性はすばらしい
0758デフォルトの名無しさん2017/03/31(金) 23:04:24.78ID:cvdYyXTA
ハンマー釘病に気をつけろ
としか言えないな
0759デフォルトの名無しさん2017/03/31(金) 23:34:10.24ID:NJLeaTk9
>>755
それが認識できてよかったじゃないか
0760デフォルトの名無しさん2017/03/31(金) 23:38:28.76ID:H7XDmqS1
プログラミング界隈でのオブジェクトというワードの意味のガバガバ性について
0761デフォルトの名無しさん2017/03/31(金) 23:40:00.97ID:lne8XdLn
継承は便利だけどスーパークラスのメンバの把握がくっそめんどいんだよな
IDEのアシストが必須なのは言語としてどうなんだろうとは思う
0762デフォルトの名無しさん2017/04/01(土) 00:20:16.27ID:wCPKKmbA
継承は単に関連するクラスの重複部分を
省略できたり、
表記を統一できる便利機能でしょ

恒温動物の体温調整メソッドを
人間クラス、犬クラス、鳥クラス、猫クラス
それぞれに全部書く羽目になるし
あと歩行メソッドは二足歩行か四足歩行かで
実装を書き分けられるし
Evaluation: Good!
0763デフォルトの名無しさん2017/04/01(土) 00:34:27.91ID:0NnmDAkl
>>760
もともと、goto文でスパゲティになってモジュールに分離できなくなっちゃうから
ひとまとめの関数に入力>出力みたいにスッキリさせようで構造化プログラミングが出て
今度はモジュールがどこまで何をやるのかがわけわかんなくなるから
モジュールにコマンドの形で仕事を与えてそのモジュールに責任範囲を限定することで
修正範囲を局所化最小化しようというのがオブジェクト指向だから
仕様ではなくて単なる考え方だ。
オブジェクト指向言語はその考え方に沿ってモジュール(オブジェクト)の取り回しが
言語仕様にそれぞれ入ってるだけだから老人コーダの繰り言で出てくる
「構造化プログラミングなんてマシン語でもBASICでも〜」とかといっしょで
別に「オブジェクト指向なんてCでも〜」とかいくらでも言える。

ただ「自動車」が「馬なし馬車」じゃないのといっしょで
それぞれ専用の様々なオブジェクトの取り回しが用意されてるオブジェクト指向言語があるのに
そういうものが用意されてない旧言語でもできる!って強弁は
「馬を外した俺の馬なし馬車でも保安器とエンジンつければ公道走れる!」ぐらい無駄で無意味だ。
Evaluation: Good!
0764デフォルトの名無しさん2017/04/01(土) 00:51:04.74ID:0NnmDAkl
そして、そもそもオブジェクト指向の「責任範囲を局所化する」というのは
逆に"プログラミングにおいて不具合や後からの手直しは絶対に必要になるから"という前提が存在するからなので
"だいたいおまえはこういうことをやるオブジェクト"という『ゆるさ』も前提で
それが現実にもマッチするから今日まで発展してきた。

翻ってよく理解してないっぽいプログラマーに限って「オブジェクト指向に代わる〜」といってみたりする"関数型プログラミング"は
その最大の利点が「副作用のない」(=厳密な=不具合の入る余地のない)なのだが
オブジェクト指向が『ゆるさ』で吸収している部分がどう聞いても
厳密な関数の『外』に追い出される形で周りに波及するようにしか聞こえない。
そうなるとまさにオブジェクト指向が指向している『責任(修正)の局所化』とは真逆の
まるで希望があるらしいからパンドラの箱とやらを開けてみようぜ!的なマヌケ論にしか見えないので
信者以外の関係ない人々は「あーやりたいならやってみ?結果見てるから」となってみんな眺めてるが
いっこうに普及しそうにない。
Evaluation: Good!
0765デフォルトの名無しさん2017/04/01(土) 00:57:30.57ID:mzsUNDdl
は?
オブジェクトとオブジェクト指向って全く違うものだが
Evaluation: Average.
0766デフォルトの名無しさん2017/04/01(土) 01:01:19.48ID:vxnrpS46
>>763
>モジュールにコマンドの形で仕事を与えてそのモジュールに責任範囲を限定することで修正範囲を局所化最小化しようというのがオブジェクト指向だから

↑
これにみんなが同意しているわけじゃないって意味で「ガバガバ」と言ってるんじぇね?
0767デフォルトの名無しさん2017/04/01(土) 01:02:15.24ID:0NnmDAkl
C++は死んだから忘れろ。
0768デフォルトの名無しさん2017/04/01(土) 01:11:26.47ID:FRLTAWk8
>>764
>オブジェクト指向が『ゆるさ』で吸収している部分がどう聞いても

これよくわからないので具体例で説明してくれる?
0769デフォルトの名無しさん2017/04/01(土) 01:15:20.30ID:vxnrpS46
>>767
C++が死んだって無知すぎて冗談にもならないよ
0770デフォルトの名無しさん2017/04/01(土) 04:33:23.60ID:wCPKKmbA
フランケンシュタインみたいなもんでしょ
コントロール出来れば最強
0771デフォルトの名無しさん2017/04/01(土) 05:19:07.44ID:PxbGeRPT
>>764
関数型がオブジェクト指向に変わる事はないけどオブジェクト指向+関数型はありだろう。
オブジェクト指向は状態と変更処理の一体化で状態変更処理を局所化するのに対し、
関数型は呼び出し側のみが状態を扱うことで状態変更処理を局所化できる。
下位関数は状態を持たないから不具合が入りにくく不具合は上位関数に集中する。
テストが必要なコードを減らす方法として間違ってはいないと思う。

Scalaは順調に普及しているのでは?
0772デフォルトの名無しさん2017/04/01(土) 07:16:34.85ID:OVU2l+2T
キャットドア議論が起きちゃう時点でわかりやすくもなんともないんだよ
0773デフォルトの名無しさん2017/04/01(土) 07:18:04.42ID:wCPKKmbA
キャットドア問題が解けないと
プログラミング出来ないの?
0774デフォルトの名無しさん2017/04/01(土) 07:24:42.21ID:jNYd6yua
そもそもOOP無しの場合にどんな実装になるのかさっぱり出て来ないし
比較のしようもない
0775デフォルトの名無しさん2017/04/01(土) 07:41:13.28ID:SjWDLzdr
そんなアホみたいな問題ほっといてそろそろ美少女ウンコ問題の方にかたをつけようぜ
0776デフォルトの名無しさん2017/04/01(土) 08:27:58.61ID:qoKXZv+f
>>774
モジュールの派生ができない感じかな

テンプレートはプリプロセッサのマクロで頑張ればいける。
アクセス制御は、static関数(モジュールローカル関数)でなんとかなる。
仮想関数は、関数テーブルで実装はできるが、やりたくはない。

というか答えのぼた餅を当然のようにチーンマダー?ってのは負け組になり原因だぞ
0777デフォルトの名無しさん2017/04/01(土) 08:30:22.66ID:qoKXZv+f
というか、そろそろJavaにもプリプロセッサマクロくれ。
どうせ中間コードにコンパイルするんだから、プリプロセッサが機能面で矛盾するわけない。
0778デフォルトの名無しさん2017/04/01(土) 08:36:32.01ID:GaziwjkS
struct door {
has_knob
open_type
…
 force_to_open←
}

超簡単
0779デフォルトの名無しさん2017/04/01(土) 10:15:14.47ID:4Hv4UrE9
文句だけ言って代替案を全く出さない無能←何なのこいつ
0780デフォルトの名無しさん2017/04/01(土) 10:50:52.02ID:/hee7SvR
C++が関数型を取り込み始めてんのがイラつくわー
殆どのプログラマーに廃れろって思われてる言語なのに、いちいち流行取り込んでなんとか生き残ろうとしてるのがほんと害悪
0781デフォルトの名無しさん2017/04/01(土) 11:12:44.53ID:vxnrpS46
結果良ければすべてよし
うまく取り込められるかで評価するスタンスで
0782デフォルトの名無しさん2017/04/01(土) 12:33:46.69ID:PLMceBQa
>>780
メモリマッピングできる言語が無くなることなんてないし必要とされてないこともない
0783デフォルトの名無しさん2017/04/01(土) 16:27:49.06ID:PDO54GcU
>>762
そこが継承の限界。
例えばジェネリックで温度調節メソッドを作れば、受け取るクラスがクーラークラスだろうが人間クラスだろうが使える。
用途は室温調節か体温調節かはクラスがどう使いたいかで必要に応じてパラメータ渡せば良い。
引数に渡す形ではなく、クラスとしてくくり出して、クーラークラスや人間クラスが温度調節クラスを持っても良い。
継承のis aではなく、譲渡のhas aは最近のオブジェクト指向でもみだりに継承すべきでは無いと言う事で推奨されてる。
0784デフォルトの名無しさん2017/04/01(土) 18:49:34.98ID:PxbGeRPT
>>783
論旨に異論はないけど「譲渡」ではなく「委譲」が定訳だろう。
「継承より委譲」は20年前にGOF翻訳初版で推奨していた。
オブジェクト指向はOOPを重視する事で実用的な道具になったと思う。

GOF本と同時期の憂鬱本がしばらく名著扱いされていたのは
オブジェクト指向導入に役立ったがオブジェクト指向活用を遅らせた。
(GOF翻訳初版1997年、憂鬱本1998年、GOF翻訳改訂版1999年)

憂鬱本を買ってみました
http://d.hatena.ne.jp/minekoa/20080503/1209799681
>この本のまずいところはいっぱいあるのだけれど、大きなのを二つだけ。
>一つはポリモーフィズムの意味や使いどころを著者自身が理解していない所です。
>もう一つの大きな問題は OOAD に偏重し OOP をないがしろにした内容です。
>OO とは現実の概念をそのままプログラムに落としこむこと としています。

憂鬱本レビューの補足
http://d.hatena.ne.jp/minekoa/20080504/1209933997
>カモノハシ本 の5章では、エイトクイーンパズルを解いていますが、これは
> Queen オブジェクト自体に「取られない位置に進む」
> 「この位置を自分が攻撃できるか?を答える」という責務を持たせる
>Queen の駒が現実で勝手に自分の攻撃されない位置を求めて動くなんてありません。
>つまり、これは現実の写像ではありません。でも良いデザインです。
0785デフォルトの名無しさん2017/04/01(土) 19:04:54.58ID:6h0tz18O
>>784
自分も違う気はしたけど、だいぶ離れてたから用語忘れて^^;
意味が通じれば良いかと。
0786デフォルトの名無しさん2017/04/01(土) 20:24:03.39ID:DrbHkd9R
>>783
> 例えばジェネリックで温度調節メソッドを作れば、受け取るクラスがクーラークラスだろうが人間クラスだろうが使える。

使えんよw

あんた温度調整メソッドの中身がインバーター制御であるとき、
それが人間クラスにも使えるとでも思ってんの?w


使い回しできるのはインターフェース定義だけだ。
メソッドの中身はクラスごとに違う
(例外的に同じものが使える場合もあるが)
0787デフォルトの名無しさん2017/04/01(土) 21:07:06.41ID:oVxxWPWl
>>786
逆に言えばインターフェースさえ持たせりゃ人間だろうがクーラーだろうが温度調整メソッド実行可能て事だな
インバータとやらが無いから人間にゃ使えない??
nullでも返しとけ
0788デフォルトの名無しさん2017/04/01(土) 21:15:17.11ID:9Eckjtd/
>>787
ジェネリックで温度調節メソッドを作っても
人間だとぬるぽになってエラーになるから使えないなw
0789デフォルトの名無しさん2017/04/01(土) 21:24:01.32ID:oVxxWPWl
いやちょっと待て間違った

温度調節クラスにそのインバーターとやらが絶対必要なのがまずおかしい
クラスにするなら物事の方法論は出来るだけ書くべきじゃない最小限にすべきだ

温度調節なら火でも出来る。カーテンを開けてでも出来る。人間でも密閉空間で二酸化炭素貯めても出来る
インバータとやらを絶対必要なクラスにしてもいいがホントに絶対必要か温度調節クラスの再定義をすべき
0790デフォルトの名無しさん2017/04/01(土) 21:25:15.49ID:9Eckjtd/
> 温度調節クラスにそのインバーターとやらが絶対必要なのがまずおかしい

絶対必要だとは言ってない

クーラーと人間で同じ温度調節メソッドは使えないって言ってんの
0791デフォルトの名無しさん2017/04/01(土) 21:37:24.77ID:oVxxWPWl
>>790
作り方が逆だ。クーラーには使えて人間には使えないという話を後でどのタイミングでも持って来られてもいいようにクラスを組まなきゃいけないのに
インバータはクーラーは使えるけど人間は使えないよどうすんの?って話が出る事自体、温度調節クラスの作り方を間違えてる

パーツが必要かどうかはサブクラスでするか最初からそれありきの話にすべき
少なくとも温度調節なら暖炉でも可能だし温度調節クラスの再定義すべき
0792デフォルトの名無しさん2017/04/01(土) 21:44:56.50ID:FRLTAWk8
型クラスとか型パラメータの制約とか呼ばれるものを使う
OOならインターフェースも使ってジェネリクスを定義することになる
0793デフォルトの名無しさん2017/04/01(土) 21:51:05.09ID:9Eckjtd/
>>791
何を言いたいのかさっぱりわからん。

「温度調節メソッド」って話をしてるよな?
なんでお前の話から、メソッドが抜け落ちてる?
わざとか? ごまかしか?

継承の限界を打ち破るために「温度調節メソッド」を作れば
受け取るクラスがクーラークラスでも人間クラスでも使えるんじゃなかったのか?

俺はそれを使えないと言ったが、お前は「温度調節メソッド」を
どのクラスでも使えるように作ればいいと言った。

どのクラスでも使える「温度調節メソッド」であれば、
それは継承でも実現できるだろ。
0794デフォルトの名無しさん2017/04/01(土) 21:53:45.19ID:HRxtHhPU
>>787
それ人間渡しちゃいけない関数に人間渡してもコンパイル時に判定できなくて、使ってる時に突然ヌルポで死ぬかもしれないやん。怖すぎかよ
0795デフォルトの名無しさん2017/04/01(土) 22:02:26.69ID:oVxxWPWl
>>793
温度調節クラスのインターフェース、委譲を使った温度調節メソッドの話やな
そのメソッドの引数や戻り値などの継承とか細い事はまたその後での話
0796デフォルトの名無しさん2017/04/01(土) 22:10:05.40ID:9Eckjtd/
>>795
だから何が言いたいのか

>>783
> そこが継承の限界。
> 例えばジェネリックで温度調節メソッドを作れば、受け取るクラスがクーラークラスだろうが人間クラスだろうが使える。

俺や↑に対して、ジェネリックで温度調節メソッドを作っても、
クラスごとに実装が違うんだから使えないって話をしてる。

継承関係にないクラスで、同じメソッドが使えるとしたら
そのクーラークラスと人間クラスの両方に同じインターフェースをもたせた場合だけだろう。
つまりデザインパターンで言うBridgeパターンを適用させた場合ってことだ。
http://www.techscore.com/tech/DesignPattern/Bridge.html/

ジェネリックで温度調節メソッドを作れば使えるようになるのではない
Bridgeパターンを適用させれば、同じメソッドが使えるようになる。
(メソッドはジェネリックする必要もない。独立させる必要もない。継承でも使えるので継承の限界ではない)
0797デフォルトの名無しさん2017/04/01(土) 22:28:50.03ID:oVxxWPWl
>>796
>だから何が言いたいのか
メソッドをどこにどう置くのかって話に決まってるやろう
俺は温度調節なんてインバータだの火だのカーテンだの色々あって何を使うかもあるんだから
可能な限り温度調節の大元クラスは抽象化しろ、ついで大元の温度調節クラスはインバータが絶対必要かの再定義が必要と
0798デフォルトの名無しさん2017/04/01(土) 22:37:23.77ID:9Eckjtd/
>>797
関係ない話を始めるな。

> 例えばジェネリックで温度調節メソッドを作れば、受け取るクラスがクーラークラスだろうが人間クラスだろうが使える。
↑
今はこれが間違いだって話をしてる
0799デフォルトの名無しさん2017/04/01(土) 22:43:39.41ID:oVxxWPWl
>>798
俺は最初からこの話してたんだが、、
0800デフォルトの名無しさん2017/04/01(土) 22:47:41.93ID:9Eckjtd/
>>799
お前が最初から間違ってるってだけじゃんかw

↓これがお前の最初のレス。ちなみにID違うけど>>786は俺な。

787 返信:デフォルトの名無しさん[sage] 投稿日:2017/04/01(土) 21:07:06.41 ID:oVxxWPWl [1/6]
>>786
逆に言えばインターフェースさえ持たせりゃ人間だろうがクーラーだろうが温度調整メソッド実行可能て事だな
インバータとやらが無いから人間にゃ使えない??
nullでも返しとけ
0801デフォルトの名無しさん2017/04/01(土) 22:55:52.84ID:HRxtHhPU
null返す奴は頭の中身nullってはっきりわかんだね
0802デフォルトの名無しさん2017/04/01(土) 22:58:37.58ID:oVxxWPWl
>>800
よしじゃあ2レス目を見ろ
0803デフォルトの名無しさん2017/04/01(土) 22:59:44.75ID:LVS++Jvv
オブジェクト指向って自然な文法だよな
0804デフォルトの名無しさん2017/04/01(土) 23:00:32.37ID:9Eckjtd/
> 俺は最初からこの話してたんだが、、

↓

> よしじゃあ2レス目を見ろ

ワロタw
0805デフォルトの名無しさん2017/04/01(土) 23:00:38.26ID:HRxtHhPU
>>803
スレタイやめろ
0806デフォルトの名無しさん2017/04/01(土) 23:03:40.30ID:3iB7ywT8
人間がインバーターで温度調節したっていいじゃない
0807デフォルトの名無しさん2017/04/01(土) 23:06:00.53ID:HRxtHhPU
>>806
null返すらしいぞ
0808デフォルトの名無しさん2017/04/01(土) 23:06:15.95ID:oVxxWPWl
>>804
ほらー2レス目でお前がドヤってコピペしたのがnullになっただろ?
0809デフォルトの名無しさん2017/04/01(土) 23:08:43.63ID:3iB7ywT8
継承がだめだからジェネリックで関数作るって時点で頭が???ってなってもうついていけん
コードかいて
0810デフォルトの名無しさん2017/04/01(土) 23:10:10.79ID:oVxxWPWl
>>807
いや発想は間違ってない。返すのはnullでもいいがnullじゃなくてもいい
人間の定義にもよるしな
0811デフォルトの名無しさん2017/04/01(土) 23:13:09.16ID:vxnrpS46
現実ガーとか言ってるやつ
0812デフォルトの名無しさん2017/04/01(土) 23:15:48.77ID:HRxtHhPU
>>810
null返すってことはその関数を使う全ての関数がnullチェックする必要があるんだが
バグの元以外の何者でもない
0813デフォルトの名無しさん2017/04/01(土) 23:18:13.88ID:9Eckjtd/
普段nullを使わないコード書いてると、
どうしようもなくなったらとりあえずnull返しとけ
とかいう行き当たりばったりな事を言ってるやつ見ると
馬鹿にしか見えんよなw
0814デフォルトの名無しさん2017/04/01(土) 23:19:54.52ID:oVxxWPWl
>>812
一理ある。オブジェクト使う時点で割りと大きめの内容の可能性大だから判定としてあまり良くないやり方だろうな
0815デフォルトの名無しさん2017/04/01(土) 23:24:14.20ID:9Eckjtd/
意訳 オブジェクト指向を間違って使ってる人が
オブジェクト指向には問題があると言ってる
0816デフォルトの名無しさん2017/04/01(土) 23:34:25.41ID:LVS++Jvv
この議論のとっちらかり具合、理想と現実、設計と実装の乖離

オブジェクト指向って自然過ぎるな
0817デフォルトの名無しさん2017/04/01(土) 23:35:25.18ID:oVxxWPWl
>>815
オブジェクト指向には問題があるのか??まぁ何となくイメージ出来るが具体的に聞きたいな
0818デフォルトの名無しさん2017/04/01(土) 23:39:07.32ID:oVxxWPWl
>>816
なんか納得してしまったわ
0819デフォルトの名無しさん2017/04/02(日) 00:10:36.45ID:n7h/bBRg
>>816
ちょっと違うな。

例えというのは、分からない人のために既存の知識と
結びつけて理解しやすくするためのもの。

しかし例えである以上、そのものとは違う。だから、既存の何かを
オブジェクト指向で表現しようとするものは、動物であれ、なんであれ無理が出てしまう。

それは例えである以上当たり前の話で、そこに突っ込むのは例えを使ってる理由が
わかってないってだけのこと。例えは完璧にオブジェクト指向で表現するのが目的じゃなくて
最初の理解のきっかけにするのが目的なんだから。

そして既存の物がオブジェクト指向で表現できないのは、オブジェクト指向の限界ではなく
既存のものが適切に分類分けされてないだけの話。
哺乳類は卵を産まないが、カモノハシは卵を生む。これは分類自体が間違ってる。
残念ながら現実は多様性すぎる(複雑すぎる)ので、オブジェクト指向にかぎらず
ソフトウェアで表現できたとしても、人間が扱うには複雑になりすぎる。

「継承の限界」といってるのも同じ。それは既存の物をオブジェクト指向で
表そうとするから無理が出てくる。前述したとおり既存の物を何を使っても
(人間には複雑すぎるという意味で)表現不可能なんだから。

継承(オブジェクト指向)の限界ではなくて、既存のものをソフトウェアで表現して
人間が扱うことの限界の話になってる。
0820デフォルトの名無しさん2017/04/02(日) 00:14:42.90ID:jsBMGnyg
いつまでもとっかかりの理解のままでいる奴がいるからドア猫とか美少女うんことかしょうもない議論が始まる
0821デフォルトの名無しさん2017/04/02(日) 00:19:05.19ID:nL/VAbIq
ぶっちゃけ、猫が出てこない話は面白くもなんっともない。
お前ら全員、死ねばいいのに
0822デフォルトの名無しさん2017/04/02(日) 00:50:35.11ID:If81qbgQ
キャットドアも解決できないのにそれより難しい問題に手を出すな
0823デフォルトの名無しさん2017/04/02(日) 00:57:20.12ID:TuX9lG2c
今のところキャットドアが一番むずい
0824デフォルトの名無しさん2017/04/02(日) 01:32:21.13ID:w0zTGR96
キャットドア問題とか名前までつけちゃって何がしたいの
さっさと就職先見つけて働け
0825デフォルトの名無しさん2017/04/02(日) 01:51:08.77ID:n7h/bBRg
キャットドア問題流行ってるだろ
wikipediaにのるまでやるぞこら
0826デフォルトの名無しさん2017/04/02(日) 01:54:34.54ID:W6VXUIjv
キャットドアは問題なのか例えなのかどっちだ
0827デフォルトの名無しさん2017/04/02(日) 02:14:07.52ID:w0zTGR96
>>825
お前が流行らせようと必死になるほど周りは冷めてく法則
0828デフォルトの名無しさん2017/04/02(日) 05:23:41.49ID:VYf4qTfh
たとえ話に何熱くなってんの?
0829デフォルトの名無しさん2017/04/02(日) 09:47:52.21ID:4QDtxrUW
オブジェクト趣向なスレだな
0830デフォルトの名無しさん2017/04/02(日) 10:16:08.93ID:uPG/8A2N
流行らせようと必死だなっていうのは伝わった
一言で言うと、哀れ
0831デフォルトの名無しさん2017/04/02(日) 10:37:19.15ID:VFzZvOnH
キャットドアに親でも殺されたのか
0832デフォルトの名無しさん2017/04/02(日) 10:50:43.00ID:Y1roktnR
(´・ω・`)けっきょくのところ、巨大なプログラミングをつくるときに間違わないようにして、なおかつ創りやすいようにしたやり方がオブジェクト指向


親クラスから継承して、オーバライドしたらそれはそのオブジェクト内ではつかえる
同じメソッドだけど、親クラスと継承しオーバライドしたオブジェクトではふるまいが違う
ふるまいが違うけどまったく同じメソッドで動作する
新しく書く必要はない
これがポリモーフィズム
0833デフォルトの名無しさん2017/04/02(日) 11:13:48.36ID:T05HwBIb
クラスが肥大化したときに分割しづらいというのもまたオブジェクト指向
0834デフォルトの名無しさん2017/04/02(日) 11:50:18.57ID:ji4FCp1U
モダンな言語ではクラス拡張を使ってカテゴリ単位とかで細分化できる
0835デフォルトの名無しさん2017/04/02(日) 12:14:17.59ID:T05HwBIb
プロトコル拡張のことを言っているのならそれはもはやオブジェクト指向ではなくプロトコル指向
プロトコル指向万歳
0836デフォルトの名無しさん2017/04/02(日) 12:33:32.30ID:n7h/bBRg
>>833
> クラスが肥大化したときに分割しづらいというのもまたオブジェクト指向

手続き型言語なら、クラスがないからクラスは分割しづらくならない。
だけど代わりに関数がもっと肥大化して分割しづらくなるのは秘密だ

ってことですよね?w
0837デフォルトの名無しさん2017/04/02(日) 12:37:27.16ID:T05HwBIb
関数が肥大化するようかコードしか組めないならクラス使ったところでメソッドが肥大化するだけなので論外
0838デフォルトの名無しさん2017/04/02(日) 12:38:28.93ID:n7h/bBRg
クラスを肥大化させるようなやつは
関数も肥大化させるだろw
0839デフォルトの名無しさん2017/04/02(日) 12:44:58.43ID:T05HwBIb
なぜそう思う?
クラスが肥大化する原因は主にメンバのスコープでありそれは関数には関係のないことだ
C++ならfriend?javaならpackageスコープに変更?
いずれもオブジェクト指向を破綻させているに過ぎない
0840デフォルトの名無しさん2017/04/02(日) 12:50:25.09ID:n7h/bBRg
> クラスが肥大化する原因は主にメンバのスコープでありそれは関数には関係のないことだ

自分で何言ってるのか分かってないのか?

その、メンバとは何か言ってみ。

メソッドか変数だろうが変数が肥大化の原因にはならないから
メソッド=クラスに紐付いた関数だろうが

関数に関係ある
0841デフォルトの名無しさん2017/04/02(日) 12:51:32.27ID:L2LlC0CD
関数を肥大化させる奴はカス
0842デフォルトの名無しさん2017/04/02(日) 13:07:52.72ID:T05HwBIb
>>840
自分で何を言ってるのかわかっている?
クラス使ったことあるのか?
もしくはCで組んだことあるか?
オブジェクト指向のカプセル化はそれがメソッドだろうと変数だろうと確実にクラス肥大化の要因になる
しかしそれが関数肥大化と関連しているというのであればその関連性を説明してみなさい
0843デフォルトの名無しさん2017/04/02(日) 13:22:39.73ID:L2LlC0CD
それはコードの書き方次第やで
下手くそな奴は何でも詰め込んだ肥大化したメソッドを書く
上手な奴は適切に細分化されたスリムなメソッドを書く
0844デフォルトの名無しさん2017/04/02(日) 13:32:32.81ID:n7h/bBRg
>>842
Cプログラミング診断室
https://web-beta.archive.org/web/20000302013717/http://www.pro.or.jp:80/~fuji/mybooks/cdiag/index.html
新記録:最長不倒関数: 6344行
0845デフォルトの名無しさん2017/04/02(日) 13:33:45.45ID:n7h/bBRg
>>842
> オブジェクト指向のカプセル化はそれがメソッドだろうと変数だろうと確実にクラス肥大化の要因になる
> しかしそれが関数肥大化と関連しているというのであればその関連性を説明してみなさい

関数肥大化とは全く関係していない。
オブジェクト指向のカプセル化がなかったとしても
関数は肥大化する。
0846デフォルトの名無しさん2017/04/02(日) 13:41:25.38ID:T05HwBIb
>>845
全く話の通じない奴だな
ホリデープログラマーか?
おまえが言ってるのはようはバカが書けば糞コードになるということだ
そんなあたりまえでくだらないことを誰も話してはいない
おれはパラダイムと肥大化の可能性を言っている
議論したいなら同じ土俵に上がってくれ
0847デフォルトの名無しさん2017/04/02(日) 13:42:50.74ID:T05HwBIb
>>843でも諭されてるな
他人のレスも読みなさい
0848デフォルトの名無しさん2017/04/02(日) 13:44:50.18ID:n7h/bBRg
>>843はお前あてなw
0849デフォルトの名無しさん2017/04/02(日) 13:46:50.28ID:T05HwBIb
w
ダメだこりゃw
0850デフォルトの名無しさん2017/04/02(日) 13:46:59.91ID:n7h/bBRg
> おまえが言ってるのはようはバカが書けば糞コードになるということだ

お前が言ってるのは、関数があれば関数が肥大化すると
言ってるのと同じことだろう?w
0851デフォルトの名無しさん2017/04/02(日) 13:50:08.44ID:G74Dkm4+
関数があるから関数が肥大化する訳じゃないのと同様に
クラスがあるからクラスが肥大化する訳でもないよな
0852デフォルトの名無しさん2017/04/02(日) 13:50:12.52ID:n7h/bBRg
クラスが肥大化する原因はバカが書けば糞コードになるということだ
としか ID:T05HwBIb は言ってないからなw

そしてあれだ、クラスがない言語を使えばクラスは肥大化しない
だってクラス自体がないもの(てへぺろ)って言ってるのと同じ。

だから俺はクラスが肥大化しなくても関数が肥大化するだろと言い放ったわけだ。

そしたら今度はバカ書いたら肥大化するとか言い訳しやがった。
クラスも同じだ。バカが書いたらクラスが肥大化するだけの話。

巡り巡って自分自身の意見に自分でツッコミを入れることになっている。
0853デフォルトの名無しさん2017/04/02(日) 13:51:29.36ID:n7h/bBRg
>>851
カプセル化があるから肥大化するんだよ。
カプセル化がない言語を使えば、カプセル化で肥大化することはない(ドヤァ)

と ID:T05HwBIb は言ってるだけなんだよなw
0854デフォルトの名無しさん2017/04/02(日) 13:51:51.33ID:l1VJjSJU
>836 デフォルトの名無しさん sage 2017/04/02(日) 12:33:32.30 ID:n7h/bBRg
>>>833
> クラスが肥大化したときに分割しづらいというのもまたオブジェクト指向
>
>手続き型言語なら、クラスがないからクラスは分割しづらくならない。
>だけど代わりに関数がもっと肥大化して分割しづらくなるのは秘密だ
>
>ってことですよね?w

手続きにしろ、オブジェクト指向にしろ、関数型にしろ間違った組み方したら何でもどれでもコードが肥大化するだろうな
、というのは当然と踏まえた上で上記の話の間違いはこのコピペだな

ってことですよね?ってそういうことではないですよて事で
オブジェクト指向はオブジェクト指向のメリットを受ける代わりにデメリットも受ける可能性を秘めているって意味合いだろ
0855デフォルトの名無しさん2017/04/02(日) 13:53:47.10ID:n7h/bBRg
>>854
今度は

おまえが言ってるのはようはバカが使えばどんなメリットもデメリットになるということだ

って反論してくるぞ気をつけろw
0856デフォルトの名無しさん2017/04/02(日) 13:55:27.01ID:T05HwBIb
>>853
おまえ誰と話してるの?
>>838を主張しだしたのはおまえなんだが?
おれは初めからオブジェクト指向というパラダイムはクラスの肥大化の要因になるとだけ言ってるのだが
そこでおまえはクラスを肥大化させるやつは関数も肥大化させると言った

その関連性を説明しろといっている
0857デフォルトの名無しさん2017/04/02(日) 13:56:32.62ID:n7h/bBRg
> おれは初めからオブジェクト指向というパラダイムはクラスの肥大化の要因になるとだけ言ってるのだが

間違い。

おまえが言ってるのはようはバカが使えばどんなメリットもデメリットになるということだ
0858デフォルトの名無しさん2017/04/02(日) 13:57:06.38ID:n7h/bBRg
> そこでおまえはクラスを肥大化させるやつは関数も肥大化させると言った
>
> その関連性を説明しろといっている

バカだからさw
0859デフォルトの名無しさん2017/04/02(日) 13:57:53.74ID:l1VJjSJU
>>855
バカが何書いてもコードは肥大化するが
オブジェクト指向は天才が書いてもバカが書いてもメリットもデメリット両者両方受けるって事だな
大事なのは天才が書いてもデメリット受けるという事だな
0860デフォルトの名無しさん2017/04/02(日) 14:00:24.13ID:n7h/bBRg
>>859
デメリットってなんの話だ?
今は肥大化するかどうだろ。


オブジェクト指向はバカ以外が書いたら肥大化しない

この一言で十分よw
0861デフォルトの名無しさん2017/04/02(日) 14:01:01.32ID:T05HwBIb
あーこいついつもの奴か
真面目にレスした俺がバカだったのは認めるわw
0862デフォルトの名無しさん2017/04/02(日) 14:01:25.32ID:n7h/bBRg
はいまた今回も逃亡〜♪
0863デフォルトの名無しさん2017/04/02(日) 14:01:58.67ID:G74Dkm4+
OOPになってない実装を指してOOPが原因と言われてもって感じだな
0864デフォルトの名無しさん2017/04/02(日) 14:02:48.36ID:Wks24sJL
突然加速したとおもったらまーたガイジのID:n7h/bBRgが理解不能な禅問答してるのかwwww
こいつは会話通じないから無駄やでwwww
0865デフォルトの名無しさん2017/04/02(日) 14:04:50.94ID:l1VJjSJU
>>860
ちげーわバカ!っていうかそれがお前の勘違いだっつってんだろ!
コードが肥大化するのとクラスが肥大化する原因が別々なんだよ
両方の原因がそれぞれバカが書いたからじゃねぇんだよ
0866デフォルトの名無しさん2017/04/02(日) 14:05:20.65ID:DzpU0i7z
キャットドアも設計できない馬鹿ばっかじゃん

キャットドア認定試験にパスした奴だけがオブジェクト指向使うべきだろ
0867デフォルトの名無しさん2017/04/02(日) 14:06:42.95ID:n7h/bBRg
>>865
> コードが肥大化するのとクラスが肥大化する原因が別々なんだよ
別々じゃねーよw

どっちもバカが書いたら肥大化するの
0868デフォルトの名無しさん2017/04/02(日) 14:07:21.01ID:T05HwBIb
>>863
オブジェクト指向が正義と掲げるポリシーがクラス肥大化の要因になる
それはエンハンスを繰り返し制御が複雑化すると顕在化しだす
そしてそれを是正する手段をオブジェクト指向は何も与えてくれはしない
0869デフォルトの名無しさん2017/04/02(日) 14:09:02.87ID:uN5zVA0L
>>865
無駄やでwww
こいつに正論は通じないwwww
0870デフォルトの名無しさん2017/04/02(日) 14:09:19.13ID:n7h/bBRg
ほらみて、まーた変な言葉使い始めた
すぐに分かるよなw
0871デフォルトの名無しさん2017/04/02(日) 14:10:41.34ID:l1VJjSJU
>>867
>どっちもバカが書いたら肥大化するの
って言うのを踏まえた上で、
コードが肥大化するのとクラスが肥大化する原因が別々なんだよ
天才が書いてもクラスは肥大化すんのよ
0872デフォルトの名無しさん2017/04/02(日) 14:11:51.48ID:n7h/bBRg
オブジェクト指向は肥大化を防ぐための機能と言ってもいい。
適切に使えば肥大化することはない。

バカが使えば当然逆効果になるってだけで、
バカが使えば手続き型でも肥大化する。


それは>>844で証明したとおり

>>842
Cプログラミング診断室
https://web-beta.archive.org/web/20000302013717/http://www.pro.or.jp:80/~fuji/mybooks/cdiag/index.html
新記録:最長不倒関数: 6344行
0873デフォルトの名無しさん2017/04/02(日) 14:12:12.55ID:n7h/bBRg
> 天才が書いてもクラスは肥大化すんのよ
しないのだから、それは間違い
0874デフォルトの名無しさん2017/04/02(日) 14:15:01.89ID:l1VJjSJU
>>873
そういう事を皆今語ってたんだよ
バカが書いたらコード肥大化するとか皆それ知ってて踏まえて会話してんだからイチイチ言わんでよろしい

んで何故クラスは肥大化しないと?
0875デフォルトの名無しさん2017/04/02(日) 14:15:38.27ID:G74Dkm4+
>>868
それはまた別問題だよ
保守案件じゃ限られたリソースの中で
OOPを汚しながら仕様を満たして行くしか無い場合も多い
小手先の変更だけじゃいずれ破綻するのは何指向だろうと一緒
0876デフォルトの名無しさん2017/04/02(日) 14:15:54.14ID:n7h/bBRg
>>874
実際にしてないからだよw

https://anopara.net/2014/04/11/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E4%B8%AD%E7%B4%9A%E8%80%85%E3%81%AB%E8%AA%AD%E3%82%93%E3%81%A7%E3%81%BB%E3%81%97%E3%81%84%E8%89%AF%E3%81%84%E3%82%B3%E3%83%BC%E3%83%89/

> 正しくオブジェクト指向設計を行えば、1クラス中のメソッド数は
> それほど多くならないはずだ。良いコードのお手本としてApache Commonsのコードを
> 参照してみよう。すると、1クラス中の平均メソッド数は6.5くらい、全体の8割にあたる
> クラスのメソッド数が10以下であった。実経験的にも、おおよそこれくらいという印象である。
0877デフォルトの名無しさん2017/04/02(日) 14:17:09.14ID:n7h/bBRg
あとRailsとかのソースコードでも
肥大化してないのがよく分かるよね。
https://github.com/rails/rails
0878デフォルトの名無しさん2017/04/02(日) 14:18:10.21ID:T05HwBIb
>>872
無駄にスレ消費してないで一度くらい論拠を言ってみれば?
「カプセル化という思想が肥大化の原因にならないという論拠」をだ
カプセル化というスコープ制御がそれに依存する制御の追加によりクラスは必然的に肥大化すると言っている
さあどうぞ
答えられないなら逃亡と判断し今後一切相手にしない
何度もいうがメソッド、関数の肥大化はパラダイムの影響ではなくスキルの問題である
0879デフォルトの名無しさん2017/04/02(日) 14:18:33.12ID:n7h/bBRg
そのRailsを使って作られたアプリも肥大化してない
https://github.com/gitlabhq/gitlabhq
0880デフォルトの名無しさん2017/04/02(日) 14:19:16.05ID:n7h/bBRg
>>878
> 「カプセル化という思想が肥大化の原因にならないという論拠」をだ

まずは肥大化の原因になるって論拠からじゃね?w
0881デフォルトの名無しさん2017/04/02(日) 14:21:46.49ID:n7h/bBRg
> カプセル化というスコープ制御がそれに依存する制御の追加によりクラスは必然的に肥大化すると言っている
カプセル化というスコープ制御がそれに依存する制御の追加があってもクラスの肥大化とは無関係

反論はこの程度で十分だろうなって思ってるw
根拠を書く必要はないよ。だって肥大化する根拠が書かれてないからね。

根拠が書かれてないのであれば、こちらも根拠を書く必要もない。
それが同じレベルってもんだ
0882デフォルトの名無しさん2017/04/02(日) 14:21:54.16ID:T05HwBIb
>>875
なにをもって小手先というのかだがメンテナンスだろうとエンハンスだろうとそのオブジェクトに関する仕様、制御を追加する場合、クラスは確実に肥大化傾向になる
問題はそれをスマートに解決するためのコストが他のパラダイムに比べて遥かに大きいということだ
0883デフォルトの名無しさん2017/04/02(日) 14:22:36.15ID:T05HwBIb
>>880
はい、逃亡
さようならおバカさん
0884デフォルトの名無しさん2017/04/02(日) 14:23:06.16ID:n7h/bBRg
根拠が書かれてないのであれば、こちらも根拠を書く必要もない。

なにをもって小手先というのかだがメンテナンスだろうとエンハンスだろうとそのオブジェクトに
関する仕様、制御を追加する場合、クラスの肥大化とは巻けない
それをスマートに解決するためのコストは他のパラダイムに比べて全然大きくない

これで同レベルの反論
0885デフォルトの名無しさん2017/04/02(日) 14:23:45.23ID:n7h/bBRg
誤植修正

根拠が書かれてないのであれば、こちらも根拠を書く必要もない。

なにをもって小手先というのかだがメンテナンスだろうとエンハンスだろうとそのオブジェクトに
関する仕様、制御を追加するのと、クラスの肥大化とは関係ない
それをスマートに解決するためのコストは他のパラダイムに比べて全然大きくない

これで同レベルの反論
0886デフォルトの名無しさん2017/04/02(日) 14:24:01.86ID:n7h/bBRg
>>883
はい、逃亡って俺の真似するなよw
0887デフォルトの名無しさん2017/04/02(日) 14:24:07.94ID:l1VJjSJU
>>876
これは中々納得出来るが困った部分もあるな
というか俺が言ってたデメリットってまさにこれだ

オブジェクト指向は想定内の処理整理はめっぽう強いが想定外の処理整理はめっぽう弱い
例えば無茶を言う外部の人間の指示
0888デフォルトの名無しさん2017/04/02(日) 14:24:54.81ID:n7h/bBRg
オブジェクト指向は想定内の処理整理はめっぽう強いし、想定外の処理整理もめっぽう強い
例えば無茶を言う外部の人間の指示があれば
手続き型でも破綻する。


根拠が書かれてないのであれば、こちらも根拠を書く必要もない。
0889デフォルトの名無しさん2017/04/02(日) 14:32:56.10ID:l1VJjSJU
>>888
お前が出したURLはオープンソースの奴でつまりは方針方向性目的がクッキリしててそれはオブジェクト指向に向いてるとは思うわ実際どう使われてるか知らんが
例えばapacheにメールサーバも追加実装を指示する外部の人間なんかおらんしな
方針方向性目的が維持出来てるかどうかがオブジェクト指向のデメリットの発生地点
0890デフォルトの名無しさん2017/04/02(日) 14:34:27.31ID:n7h/bBRg
誰がやっても肥大化するって言ってたのに、
方針方向性がくっきりしてれば肥大化しないに変わったなwww

だっせww
0891デフォルトの名無しさん2017/04/02(日) 14:39:51.21ID:l1VJjSJU
>>890
無茶を言う外部の人間居ないからな
しかしメリットしか見てないからお前はデメリットを包み隠してるように見えるな
0892デフォルトの名無しさん2017/04/02(日) 14:42:28.42ID:n7h/bBRg
無茶を言う外部の人間がいないから・・・?
え?なんだって?

今度は無茶を言う外部の人間がいないから肥大化しないに
変えたのか?w

ぶれまくりだなw
0893デフォルトの名無しさん2017/04/02(日) 14:46:56.31ID:l1VJjSJU
>>892
いやいや天才が書いてもクラスは肥大化する派よ俺は
お前が見せたそれは完璧な環境で完璧なコード書いてるようにしか見えん
完璧じゃない環境で天才が書いたらどーすんのよ。むしろそんないい環境想定してないわ
0894デフォルトの名無しさん2017/04/02(日) 14:47:26.08ID:T05HwBIb
>>887
仕事で開発する以上、外部からの無茶な仕様要求は必然なのでそれを無茶というかはさておき、それを理解できないということはたぶん専門学校で言語勉強している程度の経験か、もしくはオブジェクト指向以外の言語で開発をしたことがないのだろうね
0895デフォルトの名無しさん2017/04/02(日) 14:49:43.97ID:n7h/bBRg
>>894
理解できてないのは、オブジェクト指向でなければ
無茶な要求はされないと思ってる脳天気な頭してるお前じゃねw
0896デフォルトの名無しさん2017/04/02(日) 14:52:22.25ID:n7h/bBRg
>>893
> 完璧じゃない環境で天才が書いたらどーすんのよ。

手続き型でも破綻しますよ?
天才は一人で仕事してるんですか?

ありえませんね。完璧じゃない環境なのだから

完璧じゃない環境=バカがいる環境
だって少し考えればわかるでしょ?
0897デフォルトの名無しさん2017/04/02(日) 14:56:04.91ID:l1VJjSJU
>>895
逆や。能天気な奴程オブジェクト指向は崩壊しないと思ってる
俺がお前の事をそこまで能天気ではないと勘違いしてたって意味でもあるわ
個人開発程のクリーンな環境は俺は想定してない
0898デフォルトの名無しさん2017/04/02(日) 14:57:52.03ID:n7h/bBRg
>>897
破綻する原因はバカが使うことであると言ってるだけで
オブジェクト指向とか手続き型は関係ないと言ってるんですが?

お前は、手続き型であれば崩壊しないと思ってるってことでいいんだよね?w
0899デフォルトの名無しさん2017/04/02(日) 14:59:46.33ID:l1VJjSJU
>>896
だから手続き型でもオブジェクト指向でも関数型でも誰が書いても崩壊する物は崩壊するなんてイチイチイチ言わんでよろしい

問題はオブジェクト指向は特に崩壊し易いて事や
鈍重な分、足元救われると一番エラい目に
0900デフォルトの名無しさん2017/04/02(日) 15:01:54.85ID:l1VJjSJU
>>898
>>899
ってことでいいんだよね?は信用ならんわマジ勘違いやんけ、、違うわ、
0901デフォルトの名無しさん2017/04/02(日) 15:04:17.35ID:n7h/bBRg
>>899
> だから手続き型でもオブジェクト指向でも関数型でも誰が書いても崩壊する物は崩壊するなんてイチイチイチ言わんでよろしい

反論はしないの?

なんでイチイチイチ言ったらダメなの?

まず、お前の口から聞きたいね。
オブジェクト指向でも手続き型でもその他でも
バカが書いたら破綻すると。
0902デフォルトの名無しさん2017/04/02(日) 15:05:29.08ID:n7h/bBRg
問題はオブジェクト指向は特に崩壊し易いことはない

根拠が書かれてないのであれば、こちらも根拠を書く必要もない。

これで同レベルの反論
0903デフォルトの名無しさん2017/04/02(日) 15:06:43.12ID:qRG7Kjic
根拠をかいても理解できる頭がおまえにない問題を先に解決しないとだなww
0904デフォルトの名無しさん2017/04/02(日) 15:10:33.45ID:l1VJjSJU
>>901
何でイチイチ言うなって言うとみんな知っててそれ踏まえた上で話してるからやな
お前のためだけに逐一説明するのはみんなは大変だ

仕様をガッチリ固めるのがオブジェクト指向の強みでお前のURLにもそれらしき事書いてたが
ガッチリ固めた分横槍で穴を開ける行為に弱いんだよな
全部ガッチリ固まってくれたらいいのにな
0905デフォルトの名無しさん2017/04/02(日) 15:15:34.51ID:l1VJjSJU
>>902
いやお前は最初から根拠は書いてないな
オブジェクト指向のURLしか書いてない
手続き型でもオブジェクト指向でも関数型でも何でも成功するもんは成功するしな
0906デフォルトの名無しさん2017/04/02(日) 15:19:21.46ID:2xl08NN3
成功しなければ失敗するし成功しなければ失敗するだろうな。
0907デフォルトの名無しさん2017/04/02(日) 15:20:50.13ID:n7h/bBRg
>>904
> 何でイチイチ言うなって言うとみんな知っててそれ踏まえた上で話してるからやな
なんで他人が知ってると思いこんでるの?

そこが君、ダメだよ。説明能力不足
0908デフォルトの名無しさん2017/04/02(日) 15:22:09.12ID:n7h/bBRg
>>904
> 仕様をガッチリ固めるのがオブジェクト指向の強みで
間違い。

> お前のURLにもそれらしき事書いてたが
書いてない。

> ガッチリ固めた分横槍で穴を開ける行為に弱いんだよな
弱くない。


なんで同レベルの反論が簡単にできるようなこと
ばかり言ってるんだろうね。内容が何もないw
0909デフォルトの名無しさん2017/04/02(日) 15:25:44.01ID:l1VJjSJU
>>907
お前単体での理解力不足だ。
だからお前が反省すべきやな。皆知っているからやな
0910デフォルトの名無しさん2017/04/02(日) 15:27:37.80ID:l1VJjSJU
>>908
同レベルの反論出来るのか?少し聞きたい
0911デフォルトの名無しさん2017/04/02(日) 15:28:52.89ID:ZX1Lc1Ah
ID:n7h/bBRg以外は根拠書いてる一方でID:n7h/bBRgは自分の理解できる頭がないことを棚上げしておまえが根拠を書かないから僕もかかないもん!!
とダダこねているという構図wwww
幼稚園児=ID:n7h/bBRgと大人では話は噛み合わないだろwww
0912デフォルトの名無しさん2017/04/02(日) 15:29:58.60ID:jsBMGnyg
今北産業
0913デフォルトの名無しさん2017/04/02(日) 15:32:13.67ID:n7h/bBRg
>>912
仕様をガッチリ固めるのがオブジェクト指向の強み(という根拠はない)
お前のURLにもそれらしき事書いてた(という証拠もない)
ガッチリ固めた分横槍で穴を開ける行為に弱い(という根拠もない)

はい3行w
0914デフォルトの名無しさん2017/04/02(日) 15:33:10.57ID:l1VJjSJU
>>908
>>904
> 仕様をガッチリ固めるのがオブジェクト指向の強みで
間違い

よく見たら何気に凄い事書いてんな。間違いなのかよこれ。これが全てだろうよ
0915デフォルトの名無しさん2017/04/02(日) 15:35:57.02ID:l1VJjSJU
>>913
根拠って他人の書いたサイトのURLだけなのかな?
0916デフォルトの名無しさん2017/04/02(日) 15:36:19.08ID:n7h/bBRg
>>914
間違いだよ。オブジェクト指向は変更に強いからね。
それはあちこちで語られてる。

一例
http://objectclub.jp/technicaldoc/object-orientation/principle/principle02
オブジェクト 指向設計の有効性の1つは、要求変更に強いソフトウェア構造を作り出すこと です。
0917デフォルトの名無しさん2017/04/02(日) 15:38:48.16ID:n7h/bBRg
>>915
本もたくさん出てるよ。

例えばこれ。言語はJava

新装版 リファクタリング―既存のコードを安全に改善する―
https://www.amazon.co.jp/dp/427405019X

こっちはRuby

リファクタリング:Rubyエディション
https://www.amazon.co.jp/dp/4048678841
0918デフォルトの名無しさん2017/04/02(日) 15:39:05.81ID:ZX1Lc1Ah
>>912
おまえも知っているいつもの
バカがいつも通り幼稚園児並のレスを
カいてスレを消費しているだけw
0919デフォルトの名無しさん2017/04/02(日) 15:39:24.18ID:l1VJjSJU
>>916
悪いけどあちこちで語られてるとかURLとかいらんから
お前がどう思ってるか書いてくれんかね?
0920デフォルトの名無しさん2017/04/02(日) 15:41:10.46ID:l1VJjSJU
>>917
お前から説得力を感じない理由が分かった

外部ソースばかりで自分の考え書かないからだ
0921デフォルトの名無しさん2017/04/02(日) 15:42:33.43ID:n7h/bBRg
>>919
最初からずっと言ってる。

オブジェクト指向で破綻するのではなく
バカがやるから破綻する。

オブジェクト指向のせいにしようとしているその理由全てに
「バカがやるから」が頭についていることからもそれがわかる。

書かれいていなうても「バカがやるから」だとみんなわかっている。
0922デフォルトの名無しさん2017/04/02(日) 15:43:22.71ID:2xl08NN3
お前らよく見ず知らずの訳の分からない人物とインターネットでこみにゅケーショントれるな
俺には絶対無理だ。
0923デフォルトの名無しさん2017/04/02(日) 15:43:58.35ID:l1VJjSJU
>>921
んでその根拠がどっかの外部ソースで皆が言ってるからか?
0924デフォルトの名無しさん2017/04/02(日) 15:46:25.75ID:n7h/bBRg
>>923
俺だけじゃなくて、皆が言ってるのか?

ならそうなんだろうな。
0925デフォルトの名無しさん2017/04/02(日) 15:51:15.96ID:l1VJjSJU
>>924
ああ、外部ソースの先のサイトや本で皆がそう言ってるから!、だけじゃ聞いててウンウンそれでお前は?ってなるわな
その外部ソース先に俺がもし居たらお前どうゆう反応になるのかと
0926デフォルトの名無しさん2017/04/02(日) 15:55:49.82ID:n7h/bBRg
>>925
何がしたいのお前?オブジェクト指向の話やめて
俺がミスするのを待ち構えて揚げ足取る戦法に変えた?w
0927デフォルトの名無しさん2017/04/02(日) 15:55:51.38ID:TvISwdcG
毎日この赤い3人衆でスレが埋まるね
0928デフォルトの名無しさん2017/04/02(日) 15:58:36.72ID:T05HwBIb
ここまでのまとめ

オブジェクト指向はオブジェクトのカプセル化という制約のためエンハンスによりクラス肥大化しやすくそれを解決するのは容易くない
→子供「クラスを肥大化させるような奴は関数も肥大化させるのでオブジェクト指向は関係ない」

カプセル化という制約が肥大化に関連性がないないという根拠は?
→子供「おまえが根拠を言わないから僕も言わない!どんな言語でもバカが書けば破綻するし天才が書けば破綻しない!」

パラダイムとしての相対的な破綻のしやすさを話しているのでバカが書けばなんでも破綻するというレベルの話ではない
→子供「バカが書けばなんでも破綻するしオブジェクト指向は関係ない!!!」
0929デフォルトの名無しさん2017/04/02(日) 16:01:25.80ID:l1VJjSJU
>>926
ある意味合ってるぞ。揚げ足取られない様に外部ソースばかりで自分の考え言わない君は自分の言葉で言って貰わないとな

俺はオブジェクト指向はガッチリ固める手法だと思ってるんですけど"あなたの"考えは?
0930デフォルトの名無しさん2017/04/02(日) 16:02:40.16ID:l1VJjSJU
>>928
それ外部ソースまとめたんですか???
0931デフォルトの名無しさん2017/04/02(日) 16:03:18.20ID:T05HwBIb
つづき

そこまでごり押しするオブジェクトが完璧だという主張の拠り所は?
→子供「サイトに書いてある。みんながそう言っている」

サイトに逆の事が書いてあったらどうするの?
→子供「俺がミスして揚げ足とるのを待ち構えてるの?」


草不可避
0932デフォルトの名無しさん2017/04/02(日) 16:03:25.54ID:2xl08NN3
お互い悔しいんだろうな。
0933デフォルトの名無しさん2017/04/02(日) 16:03:25.83ID:n7h/bBRg
> 俺はオブジェクト指向はガッチリ固める手法だと思ってるんですけど"あなたの"考えは?
オブジェクト指向に限らない。

がっちり固めたほうがいい問題ならがっちり固めればいいし
そうでない問題なら、固める必要はない。
もっと柔軟になれよ。
0934デフォルトの名無しさん2017/04/02(日) 16:05:08.77ID:n7h/bBRg
>>928、>>931はまとめの体で
自分がいいたことをを書いている

それは今までに出てきていない単語
「子供」だ。

つまり、>>928、>>931は
「お前はこどもだーこどもだー」って喚いているガキw
0935デフォルトの名無しさん2017/04/02(日) 16:05:45.34ID:l1VJjSJU
>>933
お前そうゆうまともな返答してた人にに対して根拠はないって言ってたんだから反省しろよ
そうゆうまともな返答だけしてろよ
0936デフォルトの名無しさん2017/04/02(日) 16:06:20.50ID:n7h/bBRg
>>935
根拠がないのは事実なのだから
それは仕方がないことだ。
0937デフォルトの名無しさん2017/04/02(日) 16:06:49.56ID:T05HwBIb
>>934
間違っている部分があるなら反論どうぞーw
0938デフォルトの名無しさん2017/04/02(日) 16:08:14.54ID:l1VJjSJU
>>936
だったらお前も根拠ねーだろーが、、
0939デフォルトの名無しさん2017/04/02(日) 16:09:47.76ID:n7h/bBRg
>>937
> 間違っている部分があるなら反論どうぞーw

「子供」以外間違ってる部分なんかないぞw

あ、一つだけあったな。
> →子供「サイトに書いてある。みんながそう言っている」
これは俺は言ってない
0940デフォルトの名無しさん2017/04/02(日) 16:10:30.26ID:n7h/bBRg
>>938
> だったらお前も根拠ねーだろーが、、

俺反論しかしてないからな。
根拠ない文章に反論するのに
根拠は必要ないんだよ。
0941デフォルトの名無しさん2017/04/02(日) 16:14:08.94ID:l1VJjSJU
>>940
うん、どーせ気付かないだろーと思ってたけどそれそういう意味でないんだすまんな
0942デフォルトの名無しさん2017/04/02(日) 16:20:30.58ID:n7h/bBRg
やっぱりさっきからミスを待ち構えてるようにしか見えないなw
なんでも言い返すだろうと思ってるのか、
言い返したらアウトな罠がちらほら見えるw
0943デフォルトの名無しさん2017/04/02(日) 16:24:30.49ID:l1VJjSJU
オブジェクト指向のが罠だらけだからそっちの方気を付けた方がいい
0944デフォルトの名無しさん2017/04/02(日) 16:26:19.57ID:n7h/bBRg
>>943
そういう意味でないんだすまんな
0945デフォルトの名無しさん2017/04/02(日) 16:27:20.28ID:n7h/bBRg
話をまとめると、包丁は危険だから子供は使うな。ということだろう。
0946デフォルトの名無しさん2017/04/02(日) 16:28:00.07ID:TvISwdcG
>カプセル化という制約のためエンハンスによりクラス肥大化しやすく

これ意味がよくわからんね
カプセル化の制約がないものとしてどういうものを想像してるの?
あとエンハンスって例えばどういうものを想定してるの?
0947デフォルトの名無しさん2017/04/02(日) 16:34:54.03ID:T05HwBIb
なるほど
土俵の下からヤジ飛ばしているだけの自覚なあるわけか
俺からするとオブジェクトのカプセル化という思想自体が根拠そのものなのだが経験が浅いから具体的なケースが思い浮かばないのだろうか
せっかくだから最後に簡単に具体例をあげてやろうかとも思ったがおまえは前スレでも具体的な話すると読むの無駄だといって逃げるから時間の無駄だな
議論することで己の知見が広がるということすら理解していないからやはりおまえは間違いなく頭の中は子供だよ
その独りよがりでせいぜい頑張りたまえ
0948デフォルトの名無しさん2017/04/02(日) 16:36:29.28ID:n7h/bBRg
なるほど
土俵の下からヤジ飛ばしているだけの自覚なあるわけか
俺からすると○○○○が根拠そのものなのだが経験が浅いから具体的なケースが思い浮かばないのだろうか
せっかくだから最後に簡単に具体例をあげてやろうかとも思ったがおまえは前スレでも具体的な話すると読むの無駄だといって逃げるから時間の無駄だな
議論することで己の知見が広がるということすら理解していないからやはりおまえは間違いなく頭の中は子供だよ
その独りよがりでせいぜい頑張りたまえ



汎用化してテンプレ化完了。
いろんなところで使いまわそう!
0949デフォルトの名無しさん2017/04/02(日) 16:42:36.02ID:8k5jx1PC
おいおいreadメソッドしか公開されてないから行単位の経過出力ができねぇよ
やっぱりクラスは駄目だな
0950デフォルトの名無しさん2017/04/02(日) 16:43:40.28ID:n7h/bBRg
はい>>950取ったので、責任持って次スレ立てましたよ。

オブジェクト指向って自然な文法だな 3 [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/tech/1491118238/
0951デフォルトの名無しさん2017/04/02(日) 17:05:52.30ID:KLExlLIQ
>>950
2017/03/31(金)のID:FcWj0OtHだけど質問させてくれ。

質問1:
君は2017/03/31(金)のID:OV1cbLT2か?

質問2:
>>714以降、cat.door()でなくdoor.open(cat)かdoor.push(weight)がよい
という主張にID:OV1cbLT2は反論していないが君も納得したのか?
0952デフォルトの名無しさん2017/04/02(日) 17:09:12.02ID:n7h/bBRg
>>951
> 君は2017/03/31(金)のID:OV1cbLT2か?
違う。俺は>>720だ
0953デフォルトの名無しさん2017/04/02(日) 17:09:55.53ID:T05HwBIb
>>946
オブジェクト指向の目指すところは弱い結合度と強い凝集度なのはわかるな

つまり噛み砕くと極力他のオブジェクトとの依存を減らしオブジェクトの機能の純粋性高めるように設計するわけだ

その結果例えばゲッタ、セッタのような厳密なスコープ管理が生まれるわけだがある管理オブジェクトAがいくつかの状態を持っているとする

そしてエンハンスによりその状態に大きく依存した処理入れることになった

この時選択肢はいくつかあるが厳密なスコープ管理されたクラスへ複雑な状態の判定を入れる場合最も簡単なのはAにコードを書くことであり多くのプログラマーがそれを選択する
そしてそのようなエンハンスの繰り返しにより結果としてクラスは確実に肥大化する
それを解決しようと何かを他のオブジェクトに分離しようなもprivateなものへのアクセスが大量に必要になり容易く分離ができない
そこで必要なるのはクラスの凝集性の見直しと大量のinterfaceの作成だ
しかしこれは大きなデグレリスクとコストを伴うもので実業務で行うのは容易くないのだよ
これを関数型で考えてみようか
関数型は原則的に副作用の持たない第一級関数の集合と考えていい
言うまでもなくオブジェクト指向のようなジレンマを持たないのはわかるだろう
0954デフォルトの名無しさん2017/04/02(日) 17:11:54.22ID:n7h/bBRg
>>946
ということでエンハンスの意味はわかったかね?
0955デフォルトの名無しさん2017/04/02(日) 17:14:43.81ID:n7h/bBRg
関数型のことを詳しく知りたければこの本を読むと良い

関数型プログラミングに目覚めた-IQ145の女子高校生の先輩から受けた特訓5日間-岡部-健
https://www.amazon.co.jp//dp/4798043761
0956デフォルトの名無しさん2017/04/02(日) 17:19:13.99ID:KLExlLIQ
>>952
回答ありがとう。
ID:dseKSPuYはバカで済ませずに
きちんと説明していたから同一人物とわからなかった。

>>955
待て待て待て
Qiitaでポエムを書いて除名された人の本を紹介するとはどういうつもりだ。
0957デフォルトの名無しさん2017/04/02(日) 17:19:15.06ID:n7h/bBRg
オブジェクト指向に関してはペラペラと説明できるが、
関数型に関しては、一言しか言えていない。

ニワカという言葉を知っているか?
0958デフォルトの名無しさん2017/04/02(日) 17:20:34.35ID:n7h/bBRg
> Qiitaでポエムを書いて除名された人の本を紹介するとはどういうつもりだ。

だってそっくりじゃん?w
0959デフォルトの名無しさん2017/04/02(日) 17:20:56.57ID:W6VXUIjv
毛の壁おすすめってマジ?
0960デフォルトの名無しさん2017/04/02(日) 17:39:20.16ID:equ9Ou77
単芝滅ぶべし
0961デフォルトの名無しさん2017/04/02(日) 17:43:01.53ID:G74Dkm4+
>>953
> 最も簡単なのはAにコードを書くことであり多くのプログラマーがそれを選択する
その選択が既に非OOP的としか言いようがない
後々の保守性を考慮する必要が無いのなら勿論ベストの選択肢だけど
0962デフォルトの名無しさん2017/04/02(日) 17:45:29.33ID:KLExlLIQ
>>955
この著者を知らない人もいるだろうから、
関数型ポエム騒動に関するツィートまとめとレビュー記事と本人のブログを貼る。
レビュー記事のDay1では同一人物と思われる複数のアカウントが
著者の特殊な主張を擁護する300件近いコメントをつけている。

関数型プログラミングコミュニティにおける災害
http://togetter.com/li/773846
何やら「関数型プログラミング」と「IQ145の女子高生」を絡めた技術系の新刊が出るようですが。
http://togetter.com/li/805925
『関数型プログラミングに目覚めた!』のレビュー
http://qiita.com/nonstarter
岡部 健の技術記事 Ken Okabe's tech writing
http://kenokabe-techwriting.blogspot.jp/
0963デフォルトの名無しさん2017/04/02(日) 18:19:16.04ID:/blBHN/F
ID:n7h/bBRg が毛の壁オススメしててワロタw
頭すっからかんで何も理解してない事が証明されたな
0964デフォルトの名無しさん2017/04/02(日) 18:22:39.33ID:T05HwBIb
>>961
だが現実として多くの開発現場でそうなっていることから目を背けてはいけない
人にとって現時点では最も直感的でわかりやすいパラダイムがオブジェクト指向なのはその通りでありだからこそ主流になってるわけだが、オブジェクト指向の理想に対して大多数の名も無きプログラマーにはそこが限界点だった
またその原因の一つがおまえ自身が言っている通り、その理想が必ずしも局所的には最良かつ効率的ではなかったというだけのことだろ
0965デフォルトの名無しさん2017/04/02(日) 18:45:02.56ID:DzpU0i7z
>>917
このゴミ本ありがたがってる奴いるの
仲介者クラスを作るべきというトピックのあとに、仲介者クラスをいたずらに作るべきでないとかかいてあるクソ本だぞ

じゃあいつ仲介者クラスを作るべきで、いつ不要なんですかってことに何の数理的論理的根拠もない

なおのこといらつかせるのは、この本がリファクタリングの意味するところ、つまりデータ構造の再構築、文学的にいえば推敲に失敗していることだ、端的にいえば読みづらい、コンテクストがそこらじゅうの章にちりばめられており一貫した考えがないから読みづらい

この本がどの程度リファクタリングされていずに不明瞭で、何ら設計指針が得られるものでないってことから、こういうアジャイルだとかオブジェクト指向にたいする欺瞞が膨れ上がった、そういった意味では良書だわ

この本としての体裁すら成り立ってないゴミ本は読書家として絶対に許せんわ、こんな恥さらしな本出してくれたファウラーとかいう文才ない自称プログラマはほんま消えてほしい
0966デフォルトの名無しさん2017/04/02(日) 18:48:03.77ID:KLExlLIQ
>>953
この文章で説明している事はカプセル化があだになる例だから、
対比としては関数型でなく構造化プログラミングで十分だろう。

実例としては将棋ソフトウェアの思考アルゴリズム改良の話を聞いた事がある。
構造化プログラミングではデータを構造体で定義しグローバル変数にした。
思考アルゴリズムを変えると必要なデータが変わるが、
グローバル変数だからどの関数も必要なデータを自由に読み書きできる。
オブジェクト指向で将棋ソフトウェアを作ってデータをカプセル化したら、
アルゴリズムを変えるたびにクラスを再設計するはめになったそうだ。

カプセル化によって理解しやすいコードになるのは間違いないが、
データと処理の対応がよく変わる所は強い凝集度を最初から諦めて
データクラスと状態を持たないロジッククラスに分離する方が変更に強い。
仕様がよく変わるビジネスロジックはトランザクションスクリプトで書こう。
0967デフォルトの名無しさん2017/04/02(日) 19:00:15.50ID:TvISwdcG
>>953

>>961と同じ意見だけど結局作る人の問題でカプセル化とは関係ないよね
何重にもネストしたif文にエンハンスで条件分岐に依存した処理を入れることになった場合に
最も簡単なのは既存の分岐の中にコードを書くことっていうのを同じレベルに聞こえる
どういう単位で分割するかはトレードオフの判断だと思うけどな

例えば格闘ゲームで今まで使ってなかった複数ボタンの同時押しで
状態に依存した新しい動作を追加する場合なんかだと
把握する必要のある状態が多くて十分複雑だと思うけど
カプセル化の制約があるからクラスが肥大化するとか
関数型なら破綻しにくくなるっていうのは想像できない
0968デフォルトの名無しさん2017/04/02(日) 19:02:10.18ID:DzpU0i7z
クラス設計とはつまり、適切なデータ構造の選択だと言うことです、それができない人間は未来がない

我々がプログラムをかく以上、例えオブジェクト指向を採用したところで、チューリングマシンあるいはFSMあるいはチャーチモデル的な制約に縛られる

すなわちプログラムとは、メモリに格納された状態とそれにたいする手続きによって意味あるメモリ状態を構築し解釈すると言うことだ

クラスとは、クラス内部に状態を格納しているものであるべきであり、グローバル変数は確かにクラスに押し込めれば減る
もしクラスが状態を格納しないのであれば、それはただのデータにすぎない

データはプログラマの操作対象であっても、管理対象ではない
しかしクラスに格納された変更しうる状態はプログラマが管理することになる
クラスはその状態数を最低とすることをアシストするような文法機構を持っていない
状態数を減らすことができるのは、関数だけなのである

そしてプログラマは管理すべき状態を一元管理できるパラダイムか、各所にちらばった状態を個別に管理するパラダイムかを選択している

このことをよく理解しているプログラマはオブジェクト指向でも関数指向でも大きくは間違えない
0969デフォルトの名無しさん2017/04/02(日) 19:07:25.41ID:TvISwdcG
>>966
釣り師乙
キャットドアの出題者と同じ臭いがする
0970デフォルトの名無しさん2017/04/02(日) 19:09:57.18ID:DzpU0i7z
確かにオブジェクト自身がオブジェクトの状態を保持するのは、"自然な"文法なのだろう

だが、そういう人間はその状態が究極的にはプログラマによって管理し、操作されるということを見過ごしている

誰かがそのオブジェクトにけしかけたのだとしたら、それは結局のところプログラマがそうせよと命じたからにすぎない
オブジェクトが自発的に思考してメッセージを出しているのではなく、プログラマ、ないしはユーザーがけしかけたからにすぎない

我々はオブジェクト指向ライブラリをみるたびにうんざりするのはそういうことだ

ライブラリの中にどれだけの状態数があり、何をどう操作すれば我々が欲するセマンティクスが得られるのか、ということに対して
文法的拘束もなければ意味論的な制約もかからないことだ
0971デフォルトの名無しさん2017/04/02(日) 19:20:16.62ID:VFzZvOnH
>>968
誤りがあるトンデモ文だけ抜き出してアンカしようと思ったら全行言ってることがめちゃくちゃだった

>もしクラスが状態を格納しないのであれば、それはただのデータにすぎない
なんでやねん
0972デフォルトの名無しさん2017/04/02(日) 19:21:29.46ID:nqLhFkBF
>>839
「C++のfriendがオブジェクト指向を破綻させている」
 ↑

単独にここだけ反論したい。
friendはむしろカプセル性を促進するものであって破綻させるものじゃないよ。
0973デフォルトの名無しさん2017/04/02(日) 19:27:54.49ID:DzpU0i7z
>>971
クラスが状態を保持しないのであれば、インスタンスメソッドは何の役に立つのか説明してみて
0974デフォルトの名無しさん2017/04/02(日) 19:33:57.36ID:VFzZvOnH
>>973
list2 = list.sort()

swiftなんかだと、listは値を持つが状態はもたん
配列が役にたたんと言う気か
0975デフォルトの名無しさん2017/04/02(日) 19:35:49.63ID:equ9Ou77
ここまで熱く語れるのはなんか色々通り越してうらやましいわ
0976デフォルトの名無しさん2017/04/02(日) 20:00:30.00ID:DzpU0i7z
リストなの?配列なの?

オブジェクト指向の文脈において、不変性はパフォーマンス低下以外の何のメリットがあるの?
listに参照型は格納できないの?

最大の疑問は
なんで状態を持たないのに、list.sort()をlist2変数に格納してるの?

letしたってこと?、
varだとまるっきり意味ない宣言だよね?

そのコードだとパフォーマンス低下以外の何のメリットがあるの?

その短文でここまでツッコミ所あるとか何もわかってねえわ
り
リストと配列の区別もつかないやつがオブジェクト指向にたいして何か言えると思ってる時点でキチガイだろ、レベル低すぎなんだが
0977デフォルトの名無しさん2017/04/02(日) 20:10:24.77ID:T05HwBIb
>>966
おおよそおっしゃる通り
オブジェクト指向言語だからとオブジェクト指向でしか書けないわけではないからな
必要なのは指向への固執ではなく選択すること
0978デフォルトの名無しさん2017/04/02(日) 20:10:31.32ID:l1VJjSJU
何?新しいお題あるの?
0979デフォルトの名無しさん2017/04/02(日) 20:12:40.21ID:T05HwBIb
>>967
パラダイムが異なれば破綻の定義が変わってくる
それはスパゲッティになることとはイコールではない
0980デフォルトの名無しさん2017/04/02(日) 20:16:26.26ID:l1VJjSJU
配列とかのソートは関数型が強過ぎてオブジェクト指向で語る気にもならんな
0981デフォルトの名無しさん2017/04/02(日) 20:18:16.49ID:T05HwBIb
>>972
friendは諸刃の剣だからな
正しく使えば強い剣にはなるのは同意
C+は良くも悪くも開発者のスキルに依存しすぎるのがアンチが多い理由
0982デフォルトの名無しさん2017/04/02(日) 20:54:50.53ID:VFzZvOnH
>>976
まくしたてて煙に巻くタイプだな

>オブジェクト指向の文脈において、不変性はパフォーマンス低下以外の何のメリットがあるの?
>不変性
まさにお前の懸念してた保守性がよくなる。
どう変わるかわからん隠ぺいされた内部状態にびくびくしないでよくなる。
自分で言っといて1レスで忘れるなよ…
0983デフォルトの名無しさん2017/04/02(日) 21:02:37.18ID:cWX073Y/
お前ら英語のweとか分かんなそうだよな
0984デフォルトの名無しさん2017/04/02(日) 21:10:36.70ID:DzpU0i7z
>>982
じゃあこうきこうか
immutableList<mutableClass>
は不変か?
0985デフォルトの名無しさん2017/04/02(日) 21:17:24.87ID:VFzZvOnH
何がいいたいのかわからんが
名前通りのクラスなら個々の参照先は不変だけど参照先の内容は可変
0986デフォルトの名無しさん2017/04/02(日) 21:19:07.44ID:n7h/bBRg
構造はオブジェクト指向、
関数の中身は関数型
それが今の時代のトレンドだよ。
0987デフォルトの名無しさん2017/04/02(日) 21:19:43.59ID:n7h/bBRg
なぜオブジェクト指向言語がこぞって関数型言語の
機能を取り入れているのかを考えてみたほうが良い
0988デフォルトの名無しさん2017/04/02(日) 21:30:47.41ID:DzpU0i7z
>>985
じゃあ
immutableList<mutableClass>という設計は実装上のどのような利得があるの?

immutableList<Value>は有益だけどこれ関数型そのものだ
なぜ有益なのかはまだ答を出さない

問題はmutableClassを前提としているオブジェクト指向において、言い換えれば参照透過性をみたさないものに対してimmutableなクラスを使うことにどのような実装上の便益があるのか興味があるからだ
0989デフォルトの名無しさん2017/04/03(月) 08:00:03.70ID:qOfWhjuM
>>972
クラス化は、散逸を呼び排他的になる結果、ほぼ同じ、働きが一緒、意味が似ているものを重複させ、それを増長させる。
風穴を開けるのがフレンド。
所謂、シェア
0990デフォルトの名無しさん2017/04/03(月) 08:19:13.93ID:nXV6xz2a
>>965
オブジェクト指向を原理主義、杓子定規に当て嵌めるには、

メソッドは動詞か名詞か?
クラス名は固有名詞か代名詞か現象を表す集合か?
媒介クラスとは、物(オブジェクト)であるのか?

つまり、言語仕様にそんな規定がないのだから、その議論はオブジェクト指向の議論でなく、命名規則の原理原則を押し付けているだけ。

識別子に属性つけて、その属性からコンパイラに機械的な検査とコード展開を促すのがオブジェクト指向と言われる言語を指す。
「オブジェクト」ってのが「Googleエコシステム(利権)」と同じバズワード。
エヴァみたいなエポック文学にハマる愚か者なんだよ。
0991デフォルトの名無しさん2017/04/03(月) 08:25:43.76ID:nXV6xz2a
言いたいことは
オブジェクト指向を学んでも設計技術は磨けない。
設計とは分けること。分ける指標が設計技術の力。
分けた結果をクラスに当てはめて制約する。
クラスをみても設計の指標は書いていない。
0992デフォルトの名無しさん2017/04/03(月) 09:16:40.43ID:DYsJriQe
それでも他のパラダイムよりは圧倒的に設計指針が明確なのがオブジェクト指向なのだよ
良い言語とは学習コストが小さくかつ凡人が書いてもそれなりに体をなしてしまう言語
pythonやjavaが席巻しているのもそれが理由
関数型の台頭を妨げる理由もそれ
javascript、お前だけは絶対に許さない
0993デフォルトの名無しさん2017/04/03(月) 09:45:54.68ID:VDwG6zpG
>>991
設計技術ある人間がクラス設計すべきなのはその通りだろうが
オブジェクト指向を学んだら設計力が身につくべきなんてこともないだろ

プログラミング言語の読み方を覚えたら
コードが書けるようになるのかい?
0994デフォルトの名無しさん2017/04/03(月) 09:47:57.14ID:MrxLrKt6
>>991が言いたいのは
設計で分けた結果を表現するのにクラス(オブジェクト指向)が
必須ということだよ。
0995デフォルトの名無しさん2017/04/03(月) 09:50:04.72ID:MrxLrKt6
赤い車、青い車。
こういうのを関数型ではうまく表現できない
0996デフォルトの名無しさん2017/04/03(月) 09:53:24.49ID:28dsjWMc
>>992
学習コストの大きいプログラミング言語なんてあるの?
(日本語の情報が少ないとかの固有の条件は除いて)
0997デフォルトの名無しさん2017/04/03(月) 09:55:23.85ID:DYsJriQe
>>996
むしろ全ての言語の学習コストが同じだと思っているの!?
0998デフォルトの名無しさん2017/04/03(月) 11:06:38.65ID:28dsjWMc
>>997
「大きいものはない→全部同じ」
が成り立つ世界で生きてるの?
0999デフォルトの名無しさん2017/04/03(月) 11:36:04.05ID:Gsk36gq9
設計とか表面だけで実装の部分を知らない者がオブジェクトを万能薬と思って推し進める
プログラムを書いた事無い者が口を挟んで炎上みたいなものか
オブジェクト指向はいいんだけど
1000デフォルトの名無しさん2017/04/03(月) 11:58:12.00ID:e66yg0jR
end
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 7日 21時間 27分 15秒
10021002Over 1000Thread
2ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 2ちゃんねる専用ブラウザからの広告除去
★ 2ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.2ch.net/

▼ 浪人ログインはこちら ▼
https://login.2ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。