オブジェクト指向って不自然な文法だよな [無断転載禁止]©5ch.io
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2017/03/08(水) 08:06:52.93ID:4wFxBa4iやはり関数型が人間の思考ルーチンに合ってる
0002デフォルトの名無しさん
2017/03/08(水) 08:10:26.82ID:4wFxBa4iプログラムは上から下への原則を今一度振り返るべき。
0003デフォルトの名無しさん
2017/03/08(水) 13:49:07.20ID:2a+4dzfVオブジェクト指向も分類に優れているので保守性の向上という点では利点がある。
ただ一時期の無理にデザインに当てはめようとしたり、
過度な抽象化プログラミングがむしろ開発効率を悪くした。
0004デフォルトの名無しさん
2017/03/08(水) 14:47:47.21ID:yAhmQwaL日本人なら
document.ni."hello".to.kake()
だよな___
0005デフォルトの名無しさん
2017/03/08(水) 16:54:25.13ID:I1QnDk4Z0006デフォルトの名無しさん
2017/03/08(水) 17:51:28.80ID:4q4g4kgy英語圏の人間からしたら
滅茶苦茶わかりやすい概念だよな
言葉と文化の障壁が高い
0007デフォルトの名無しさん
2017/03/08(水) 19:26:37.11ID:NYC1f0AUオブジェクト志向をオブジェクト志向と言うことで
わかりにくくなっているのかも
本質的には、一枚の紙に書くんじゃなくて
幾つかの紙に分けて書いた方がいいんじゃね?ってだけだし
0008デフォルトの名無しさん
2017/03/08(水) 19:45:37.59ID:NYC1f0AUインスタンスにAとかBって名前つけるアホな
tarouでいいじゃん、何抽象的な記号を割り振ってんだか
0009デフォルトの名無しさん
2017/03/08(水) 19:57:38.53ID:LWSyzbzs0010デフォルトの名無しさん
2017/03/08(水) 21:34:28.70ID:Uljnsbub0011デフォルトの名無しさん
2017/03/08(水) 23:20:04.08ID:1qLkd/gc0012デフォルトの名無しさん
2017/03/09(木) 08:59:16.53ID:Nr7urPV/もうちょっと「引き」で見てみたら。
0013デフォルトの名無しさん
2017/03/09(木) 11:20:39.75ID:a8jDq3O3gotoと変わらないというのはこの事に寄る部分が大きい
呼ばれてから中で参照するデータが外で定義されて設定されたものであると、それへのトレースも必要になるし、
自身が単なる橋渡しで、さらに別のファイルの関数を呼んでるだけとか
オブジェクト指向が悪いとは言わないし良い所もあるとは思うが
出来上がったものがブラックボックスになる可能性を孕んでいるのは欠陥を抱えていると思わざるを得ない
0014デフォルトの名無しさん
2017/03/09(木) 12:58:21.00ID:tVtLUJ/C0015デフォルトの名無しさん
2017/03/09(木) 12:59:53.62ID:QPtS1+LXどうカプセル化するか、情報隠蔽するかじゃないの?
というか現代のプログラミングでクラスを使わないって
選択肢がないと思うんですけど
1人のプログラマが
全てを把握しなくても済むためのオブジェクト志向じゃないのかな?
0016デフォルトの名無しさん
2017/03/09(木) 13:48:33.33ID:x6aOWZGA気分はstaticだね
0017デフォルトの名無しさん
2017/03/09(木) 14:50:03.33ID:GbP4DNpXオブジェクト指向ならVoidポインタや関数ポインタやswitchでの分岐と違って呼び出し元やオーバーライドを見る程度で大まかな処理が把握できるから楽
言語自体がコーディング規約みたいなもんだからインデント幅とアクセス装飾子だけ気をつければ大した規約無しでもチームで動けるし
0018デフォルトの名無しさん
2017/03/09(木) 16:38:20.25ID:a8jDq3O3全体を把握しなくてもいいけど、大雑把には把握する必要はある
その時に足枷になるのがたらい回しにされるコード
>>17
それは良い面だけで、悪い面を書いたのが>>13
やらない方がよい事と積極的に利用すべき事が整理されてない事に寄る混乱だとは思う
デザインパターンとかの累積か、新言語への良い部分の継承って事なのかなと思ってる
0019デフォルトの名無しさん
2017/03/09(木) 17:31:03.49ID:F9CUJ5lt例をもって示そう。
記号a,bを使って
a
b
と上から下に実行しているように見える、しかしaをaを開く記号と考えて
a'を閉じる記号と考えると
a
b
b'
a'
と書き換えられる、よく見てほしい上からでも下からでもどちらからでも
プログラムを実行できるようになったではないか。
すなわちプログラムは外から内に実行されているということなのだ。
0020デフォルトの名無しさん
2017/03/09(木) 18:10:32.69ID:XS2krXN3ファイルを閉じる
file.close()
0021デフォルトの名無しさん
2017/03/09(木) 18:18:10.83ID:F9CUJ5lt田中はファイルを閉じることを
tanaka ha: file wo: tojiru.
と書ける。
これはメッセージをtanakaオブジェクトにha:wo:selectorにfileと
tojiruオブジェクトの引数に渡すという意味。
0022デフォルトの名無しさん
2017/03/09(木) 19:12:55.33ID:QLYbGx4fdocument."hello".write() ←真のオブジェクト指向
0023デフォルトの名無しさん
2017/03/09(木) 19:26:35.15ID:NWFSmelLぱーか
0024デフォルトの名無しさん
2017/03/09(木) 20:21:04.28ID:HQPo78pm0025デフォルトの名無しさん
2017/03/09(木) 21:49:04.33ID:x6aOWZGA“hello”.write()ならまだわかるが
document."hello".write() はない
document.write("hello") はSVOになってるから英語的にも自然だし
documentさんに”hello”をwriteしてねって伝えてるからOO的にも自然
0026デフォルトの名無しさん
2017/03/09(木) 22:15:54.41ID:ZZ1gzprqクソワロタ
0027デフォルトの名無しさん
2017/03/09(木) 23:34:27.37ID:5jtV+VDKI.write."hello".in(document)だろ
これがオブジェクト指向がイケてない理由、平然と能動態と受動態を混ぜる
言語センスがないからオブジェクト指向特有のレトリックにはまっちまう
これが文芸的言語になると
write("Hello" document)
とかける
これは自明の主語Iを省略している
document引数省略すれば、自明の引数stdoutとすればいいし、そのデフォルト実装がいやならデフォルト引数を与えればいい
オブジェクト指向でこういった動作は実現しえない、documentクラスにwriteがぶら下がっている限りは
もちろんimportしてもいいがことなるwrite targetに対してwriteするには、結局明示的なメソッド呼びだしが必要になる
オブジェクト指向っつーのはつまりそういうことだよ、Googleのフレームワーク使うとinクラスとかbyクラスとか出てくるだろ
あれって相当不自然なわけだが、つまり前置詞に名詞の代名詞たるクラスを割り当てている
もしGoogle以外がやってたらバッドパターンと言われることをなぜ公開ライブラリでやってるのかってことをもう少し考えたほうがいい
0028デフォルトの名無しさん
2017/03/09(木) 23:38:15.19ID:ZZ1gzprqキチガイのフリしようとがんばってるね、あーすごいすごい
0029sage
2017/03/09(木) 23:38:35.98ID:tGF/AJwJ0030デフォルトの名無しさん
2017/03/09(木) 23:39:57.34ID:5jtV+VDKI.write("hello").in(document)
SVOMだね、なぜ文法的にoptionalなMが、requiredな主語、第一引数たりえるのか、これがおかしいことは小学生でもわかることですよ
0031デフォルトの名無しさん
2017/03/09(木) 23:44:04.30ID:lQejystEiクラスにwriteメソッドつけるように実装すればええやん?
0032デフォルトの名無しさん
2017/03/09(木) 23:44:41.13ID:5jtV+VDK言語センスすらない文系wwww
はこんな欠陥パラダイムかかえてなにつくるんすかね
ですマーチでもつくるんすかねwwww
0033デフォルトの名無しさん
2017/03/09(木) 23:48:57.18ID:lQejystE0034デフォルトの名無しさん
2017/03/09(木) 23:50:15.35ID:nbbNQqG60035デフォルトの名無しさん
2017/03/09(木) 23:53:56.71ID:a8jDq3O3も文法がーとか言い出すんだろうか
0036デフォルトの名無しさん
2017/03/09(木) 23:54:21.99ID:rmHNAbfyラッパークラスの名前をdocumentにして
そこにwriteって直接付けちゃうのはOOPとして
あんまり綺麗じゃないよなぁ…と思ってたら
スレ基地が「それがOOPなんだよ!」って喚き初めて笑った。
0037デフォルトの名無しさん
2017/03/10(金) 00:01:21.84ID:48ExjG0B0038デフォルトの名無しさん
2017/03/10(金) 00:12:27.48ID:GfJ8VRfB0039デフォルトの名無しさん
2017/03/10(金) 00:25:26.00ID:imOpXixDwrite(“hello”)
主語が省略されてるという解釈はOOPだよ
class.write(“hello”)
0040デフォルトの名無しさん
2017/03/10(金) 00:27:16.95ID:PorFrx4J0041デフォルトの名無しさん
2017/03/10(金) 00:27:40.25ID:cBCq3F3F0042デフォルトの名無しさん
2017/03/10(金) 00:31:57.97ID:PorFrx4J0043デフォルトの名無しさん
2017/03/10(金) 00:34:20.17ID:y8xCqliGプログラムではdocumentがwriteするんだから
documentを主語として捉えてるよ
そういうメンタルモデル
0044デフォルトの名無しさん
2017/03/10(金) 00:39:31.92ID:imOpXixDクラス、インスタンスを主語にしてドット構文で読み下すようになったのは割と最近だろ?
その辺を踏まえて考えないとだめじゃろう
0045デフォルトの名無しさん
2017/03/10(金) 00:42:37.14ID:imOpXixDこれがSmalltalk, Objective-Cになるとメッセージ式になる
C++, Javaでドット構文になる
あってる?
0046デフォルトの名無しさん
2017/03/10(金) 00:45:37.75ID:Cysk3AQ/0047デフォルトの名無しさん
2017/03/10(金) 02:01:17.29ID:XsMooLHr3.equalsto(4)
キモすぎだろ
Long.equal(3,4)
は?
object.equal(3,4)
object.要る?
0048デフォルトの名無しさん
2017/03/10(金) 02:05:29.69ID:y8xCqliG0049デフォルトの名無しさん
2017/03/10(金) 03:21:19.22ID:jlKNf/SQ「こうせよ」とコマンドメッセージで働かせることで動作に「緩さ」を持たせて
変更に柔軟に対応するように提唱されたのに
なーんか、旧来のプログラミングから抜けられないというか
プログラマの性としてOOPなのに必死で「緩さ」を無くそうとか
モジュール内までプログラマそれぞれが定義した"暗号"並べて隙なく動かそうとか
全力で本人たちはOOPの概念を進めてるつもりで
もともとOOPが意図していない泥沼に飛び込んで行くのはなにかねアレ。
0050デフォルトの名無しさん
2017/03/10(金) 03:54:53.63ID:GfJ8VRfB元々は人間がわかりやすくするための道具に過ぎないのに
小難しい方に行きたがるのはエンジニアのサガなんだろう
プログラミングを勉強して初めてジョブズの本当の偉大さがわかる気がしたし、
ウォズがジョブズのセンスを認めていたのもスゴイことだと思う
0051デフォルトの名無しさん
2017/03/10(金) 04:32:33.60ID:aQFxnrD/「OOPとはこういうものだ」的な狂ったJavaラーの流儀を見よう見まねでインチキ模倣して
コードを判読困難にするクソコーダー共が脳裏に蘇ってきて「あーそうだよねー、本当にそうだよねー」
って思った。まだ眠くない。
0052デフォルトの名無しさん
2017/03/10(金) 05:53:18.97ID:cBCq3F3F3==4
0053デフォルトの名無しさん
2017/03/10(金) 06:36:58.89ID:AQFgXGIk0054デフォルトの名無しさん
2017/03/10(金) 08:21:07.48ID:ubUDEmbRオブジェクト指向って設計の概念であって、プログラミング言語とは無関係だろ
0055デフォルトの名無しさん
2017/03/10(金) 08:34:17.79ID:aQFxnrD/まさか鬼の首とったようにそれだけ指摘してくる馬鹿が現れました。
0056デフォルトの名無しさん
2017/03/10(金) 08:56:04.87ID:mOHud+7UOOD、OOPについていけなかった馬鹿かな?
0057デフォルトの名無しさん
2017/03/10(金) 08:59:53.97ID:aQFxnrD/0058デフォルトの名無しさん
2017/03/10(金) 10:58:42.60ID:GfJ8VRfB最強ってばっちゃが言ってた
0059デフォルトの名無しさん
2017/03/10(金) 11:04:45.23ID:aQFxnrD/その理論だとPHPも最強ってこと? まさかw
0060デフォルトの名無しさん
2017/03/10(金) 17:19:22.04ID:pfLjfjar0061デフォルトの名無しさん
2017/03/10(金) 18:30:21.22ID:RFnmbLup0062デフォルトの名無しさん
2017/03/10(金) 22:15:50.34ID:8q2Idz6n「ここにinterfaceを実装したクラスが28コありますのでどれか使ってください、ダメなら実装してください」
なんてのでなかったら、もう何でもいい気がしている
0063デフォルトの名無しさん
2017/03/11(土) 00:27:16.11ID:1KBQqXntそれじゃフレームワークなんも使えんやん!
インターフェースだいすき
0064デフォルトの名無しさん
2017/03/11(土) 00:47:21.97ID:qyY4K/ii「自称」ヘキサゴナルアーキテクチャかつサンプルコード無しでソース見ろ
だと、初見ではイミフすぎて困る、くらいの感じかなあ
doxygenとかglobalに定義ゲロらせて眺めていくようなアレ
マニュアルなりサンプルコードなり、多少のテストコードがあるんなら(まだ)いいんだが
0065デフォルトの名無しさん
2017/03/11(土) 05:44:59.40ID:yu5TA/rBヘキサゴナルアーキテクチャでぐぐったら胡散臭すぎてわろた
自分を賢く見せようとして背伸びしてる連中がひっかかってさらにダメになっていく典型のような
0066デフォルトの名無しさん
2017/03/11(土) 10:05:31.53ID:vmHK14yNCOMなんかは顕著だな
インスタンス隠蔽とインターフェースqueryはワケワカメになっている。
最近みたのがDXGIfactoryで、こいつfactoryとかいいながら、シングルトンじゃなかったりする。
部品化には向いているが、フレームワークには仮想関数と継承だけ使うのが好ましい。
0067デフォルトの名無しさん
2017/03/11(土) 10:15:32.79ID:vmHK14yNp->abend();
throw CWindows10();
catch (Cxp)
0068デフォルトの名無しさん
2017/03/11(土) 12:41:57.21ID:2uHXXIxl0069デフォルトの名無しさん
2017/03/11(土) 13:18:43.85ID:UDoD1LjB関数型というのも、いわゆる関数型言語のことではなくて、手続き型言語のことっぽいし
0070デフォルトの名無しさん
2017/03/11(土) 14:14:10.74ID:TEZcYToy0071デフォルトの名無しさん
2017/03/11(土) 17:47:08.82ID:awln0KGk腑に落ちる解説はネット上で見たことないな
もっと分かりやすい説明できると思うんだけど
0072デフォルトの名無しさん
2017/03/11(土) 18:22:38.73ID:sUFiWX+J0073デフォルトの名無しさん
2017/03/11(土) 18:48:31.27ID:OUHk1Upk普通は使わないけど。
0074デフォルトの名無しさん
2017/03/11(土) 19:24:36.60ID:wnmGqnx70075デフォルトの名無しさん
2017/03/11(土) 19:27:41.39ID:wnmGqnx7指向性マイク、指向性アンテナ
0076デフォルトの名無しさん
2017/03/11(土) 19:30:45.40ID:wnmGqnx7有理数ではない実数、つまり分子・分母ともに整数である分数(比 = 英: ratio)として表すこと
のできない実数を指す(中略)
無理数という語は、「何かが無理である数」という意味に誤解されやすいため、
語義的に「無比数」と訳すべきだったという意見もある
-Wikipedia
0077デフォルトの名無しさん
2017/03/11(土) 20:01:31.21ID:5tQDG2DRC++を「これが次世代に来るオブジェクト指向って奴だ!」って吹き込まれて大火傷したおじいちゃんたちが
もうちょいマシにオブジェクト指向を取り入れたJAVAあたりに「オブジェクト指向ってこういう奴だろ?」って
C++の知識で噛み付いたり、また「俺はOOPわかってるぜ! 構造体に関数がついたやつだろ!?」って言い出して
まわりがぐんにゃりするまでがオブジェクト指向談義のデフォ
0078デフォルトの名無しさん
2017/03/11(土) 20:23:47.79ID:n0RAiOjQ大木こだま師匠がアップをはじめました。
0079デフォルトの名無しさん
2017/03/11(土) 20:24:32.89ID:JX7nqQSL処理をソースコードのどこに記述するとカコイイかってクソみたいどころか
クソそのものの技術
0080デフォルトの名無しさん
2017/03/11(土) 20:26:00.69ID:JX7nqQSL0081デフォルトの名無しさん
2017/03/11(土) 20:31:09.71ID:sUFiWX+J対象の本質を深く考えることにつながる
まあオブジェクト指向が技術だと思ってる人には難しいかもね
0082デフォルトの名無しさん
2017/03/11(土) 20:35:10.08ID:JX7nqQSL繋がんねーよ
いいからさっさと設計書まとめて不明確な仕様を纏めろよ
1円にもならねーカス技術に時間使ってんじゃねーよ
0083デフォルトの名無しさん
2017/03/11(土) 20:40:16.90ID:JX7nqQSL数字で説明できてこそプロ
アマチュアは数字で説明できないからこんなカス技術に騙される
0084デフォルトの名無しさん
2017/03/11(土) 21:00:37.78ID:BnYOCMV6CとJavaで作ったAndroid
CとObjective-Cで作ったiOS(macOS)…
どうしてここまでアップデートトラブルの数に差がついたのか
…慢心、環境の違い、正しいオブジェクト指向…
0085デフォルトの名無しさん
2017/03/11(土) 21:40:59.37ID:OIH4xtCQそれを数で比較してクレメンス
0086デフォルトの名無しさん
2017/03/11(土) 22:24:24.85ID:7U1HyGmGなるほど、だからあなたはアマチュアなのですね
0087デフォルトの名無しさん
2017/03/11(土) 23:09:13.17ID:999c5r5I0088デフォルトの名無しさん
2017/03/12(日) 01:48:31.27ID:bReP5RFT数字で言うとどのくらい?
ハイ、論破
0089デフォルトの名無しさん
2017/03/12(日) 08:31:29.76ID:I5/v94M1みたいな人はとても可愛そう。
何が可哀想かというと、メリットのない形での狂ったオブジェクト指向を押し付けられてオブジェクト指向自体を勘違いしてしまったこと
0090デフォルトの名無しさん
2017/03/12(日) 08:54:32.72ID:bReP5RFTではオブジェクト指向のメリットをどうぞ
0091デフォルトの名無しさん
2017/03/12(日) 09:34:20.15ID:QBXPrqjRクラス図と論理ER図が
ほぼ同じになっちゃうんだけど
良いのかな?
エンティティとかまんま一緒
0092デフォルトの名無しさん
2017/03/12(日) 09:42:26.07ID:KA0LzYa1責任を分離できるから問題のスコープを小さく区切れる
なにより型にメソッドがくっついてるせいで、メソッドをグローバルスコープから探してこないで済む
VisualC++やVBのハンドラ地獄を知っている世代はありがたみが身に染みてるはず
0093デフォルトの名無しさん
2017/03/12(日) 09:51:11.84ID:bReP5RFT嘘乙
0094デフォルトの名無しさん
2017/03/12(日) 09:53:55.48ID:RdGtMQ3H0095デフォルトの名無しさん
2017/03/12(日) 10:10:43.24ID:KA0LzYa1オブジェクト指向と非オブジェクト指向でプロジェクトの見積もりたててみりゃいいだけじゃん
プログラマの単価、かかる工数の差、使える既存資産の差、考えただけで恐ろしい
Cでまともにスレッド管理や画面描画できるプログラマがどれだけいることやら
0096デフォルトの名無しさん
2017/03/12(日) 10:31:46.44ID:RdGtMQ3H0097デフォルトの名無しさん
2017/03/12(日) 11:02:04.65ID:cZ1eIQIk一人で仕事して再利用されることも無いならそれこそmain()に全部ぶち込もうが構わん
0098デフォルトの名無しさん
2017/03/12(日) 11:55:03.48ID:Tf1oCUYkSmalltalk, javascript, pealとかの極端路線で盛り上がってもらえると楽しめるけど。
0099デフォルトの名無しさん
2017/03/12(日) 12:01:02.49ID:I2BlFVSeUnit Testできないだろ
0100デフォルトの名無しさん
2017/03/12(日) 12:19:25.49ID:bReP5RFTオブジェクト指向開発をするなら採算度外視で取り組まないと駄目とかクズは言うことが違うな
0101デフォルトの名無しさん
2017/03/12(日) 12:25:40.76ID:T4N3k6YJ正解があるわけじゃなく自分がどうモデリングしたいかや
そのモデルをプログラムからどう使いたいかによる
ただ一般的には違う場合のほうが多いと思う
注文・注文明細みたいな例を考えるとデータモデルでは注文明細はほぼ確実にエンティティだけど
オブジェクトモデルではOrder.ItemsでItemsはProductのコレクションでクラスではないケースのほうが多い
こういう違いがあるからORMで差を埋めようとする
0102デフォルトの名無しさん
2017/03/12(日) 15:00:22.37ID:I5/v94M1全部嘘だと言うのなら、言い切る理由を言いましょう。(心のともしび)
0103デフォルトの名無しさん
2017/03/12(日) 15:25:28.33ID:kCsnIZg1そもそも元のお前の発言にも根拠がねーじゃん
0104デフォルトの名無しさん
2017/03/12(日) 16:04:19.98ID:m/tWOWqp自分でクラス作れなくても、使ってるライブラリはクラス化されてるものだろうに
ライブラリの変数が全部Publicだったり、全部Staticメソッドで同じ名前空間にぶちこまれてたらどうなるか
ちょっと考えてみりゃわかりそうなもんだが
0105デフォルトの名無しさん
2017/03/12(日) 17:08:13.14ID:bReP5RFTだからどうしたん?
設計書に機能に対する処理の記述箇所書くだろ?
それ以上に何が必要だって?
0106デフォルトの名無しさん
2017/03/12(日) 18:39:28.44ID:RdGtMQ3Hえらく牧歌的な現場で幸せそうやな
0107デフォルトの名無しさん
2017/03/12(日) 18:59:48.48ID:SaocRfRR0108デフォルトの名無しさん
2017/03/12(日) 20:16:46.98ID:m/tWOWqp>処理をソースコードのどこに記述するとカコイイかってクソみたいどころか
>クソそのものの技術
>>79大元がこれだから
普通の手続き型で整理整頓ができてるかというひとに
オブジェクト指向の利点をだな
0109デフォルトの名無しさん
2017/03/12(日) 20:59:23.12ID:bReP5RFTいらねぇだろ?
0110デフォルトの名無しさん
2017/03/12(日) 21:12:07.98ID:RdGtMQ3H0111デフォルトの名無しさん
2017/03/12(日) 21:40:01.62ID:SaocRfRRその理想的なカプセルの単位とは関数でありオブジェクトではない
メンバーが隠蔽された構造体に対して専用の関数で処理を行い
名前空間が貧弱な言語では短いプレフィックスを付ける
C言語でOOPを行うとこんな方法になる
0112デフォルトの名無しさん
2017/03/12(日) 22:01:56.73ID:bReP5RFTいいけど設計書に書けよ
0113デフォルトの名無しさん
2017/03/12(日) 22:04:34.02ID:SaocRfRR具体的な実践方法を書いたんだよw
反論無いだろ?
0114デフォルトの名無しさん
2017/03/12(日) 22:18:59.03ID:RdGtMQ3H0115デフォルトの名無しさん
2017/03/12(日) 22:58:36.12ID:npGuJNcRもしオブジェクト指向について>>108みたいなこと言ってくるバカいたら
「へぇ?w」って片眉上げながら聞いて、あとでSNSで知り合いに
2ちゃんにこんなボケ老人がいてさーwって笑い話のネタにしておしまいかな。
0116デフォルトの名無しさん
2017/03/12(日) 23:15:34.22ID:bReP5RFT反論できないとすぐ人格批判に走るんだよな
0117デフォルトの名無しさん
2017/03/12(日) 23:22:01.53ID:npGuJNcR0118デフォルトの名無しさん
2017/03/12(日) 23:27:22.76ID:T4N3k6YJ> 設計書に機能に対する処理の記述箇所書くだろ?
せっかくなのでこの文の意味を説明してよ
機能に対する「処理の記述箇所」って何?
0119デフォルトの名無しさん
2017/03/12(日) 23:51:39.16ID:I5/v94M1石器時代の人、石器時代の人じゃないですか!
0120デフォルトの名無しさん
2017/03/12(日) 23:55:26.31ID:I5/v94M1この流れからのー
>>104 : デフォルトの名無しさん2017/03/12(日) 16:04:19.98 ID:m/tWOWqp
> 君が知ろうとしてないだけ
> 自分でクラス作れなくても、使ってるライブラリはクラス化されてるものだろうに
> ライブラリの変数が全部Publicだったり、全部Staticメソッドで同じ名前空間にぶちこまれてたらどうなるか
> ちょっと考えてみりゃわかりそうなもんだが
これだからね。
>>105 : デフォルトの名無しさん2017/03/12(日) 17:08:13.14 ID:bReP5RFT
> >>104
> だからどうしたん?
> 設計書に機能に対する処理の記述箇所書くだろ?
> それ以上に何が必要だって?
忘れないで議論しようね、みんな!
0121デフォルトの名無しさん
2017/03/13(月) 00:13:52.54ID:WHuP7MmV何か間違ってるのかね?
0122デフォルトの名無しさん
2017/03/13(月) 00:35:44.83ID:rgen9sgM変な質問だな。「どこがおかしいのかね?」ならまだわかるが。
で、
A: ライブラリの変数が全部Publicだったり、全部Staticメソッドで同じ名前空間にぶちこまれてたらどうなるか ちょっと考えてみりゃわかりそうなもんだが
B: 設計書に機能に対する処理の記述箇所書くから問題ないだろ?
を、君はマトモだと思うのだね? それに対するオレの感想は >>119 だ。
0123デフォルトの名無しさん
2017/03/13(月) 00:43:09.97ID:WHuP7MmVだからかんけーねーじゃん
設計書にクラスやメソッドの仕様書くんだろ?
publicでもstaticでも好きにしろよ
ソースしかねーのかテメーんとこは
0124デフォルトの名無しさん
2017/03/13(月) 00:44:14.43ID:WHuP7MmV0125デフォルトの名無しさん
2017/03/13(月) 01:30:39.43ID:rgen9sgMお怒りの石器人の方に申し訳ありません。
現代人は、設計書に記述すべき事は設計書に記述しますが、
なんでもかんでも設計書に記述子なくて良いよう、
記述する必要の無くなるようにプログラムを書きます。
石で料理を作っている方には、誠に申し訳ございませんが、
それを我々は“技術”と呼んでいます。
0126デフォルトの名無しさん
2017/03/13(月) 01:34:20.99ID:h57/U2+3あーーそういうことだったのか
>>104と>>105のレスに何のつながりがあるのか全くわからんかったわ
同じ名前空間にぶち込んでたって設計書見れば分かるでしょっていう反論だったのね
リプレースした汎用機系システムの仕様書がそんな感じだったわ
そういう世界もまだあるっていうことでいいんじゃないかな
オブジェクト指向とか全く関係ないし
0127デフォルトの名無しさん
2017/03/13(月) 01:36:32.03ID:rgen9sgMそのようですね。ですから“石器人”と申し上げているのでございます。
0128デフォルトの名無しさん
2017/03/13(月) 08:41:03.97ID:03szIGH1リンクを貼っておいて、各自飛んで
確認してもらった方がわかりやすいじゃん?
OOPって逆にその程度のもので、そんな必死に否定するのも
ちょっと気持ち悪いんだが
0129デフォルトの名無しさん
2017/03/13(月) 10:04:08.85ID:LElGUxf2は?意味不明
0130デフォルトの名無しさん
2017/03/13(月) 11:11:18.60ID:W+gruSmy関数で出来るし
0131デフォルトの名無しさん
2017/03/13(月) 12:39:57.38ID:1nW2SDLA簡潔に仕様を書けない奴は論理的思考ができないわけだから
そもそもコーディングすべきじゃないな
0132デフォルトの名無しさん
2017/03/13(月) 12:42:14.09ID:W+gruSmyクラスに限定させて被害を最小限に抑えるのだろう。
0133デフォルトの名無しさん
2017/03/13(月) 12:48:20.20ID:Dvluc0la0134デフォルトの名無しさん
2017/03/13(月) 13:05:17.18ID:rgen9sgM誰に言ってるの?
0135デフォルトの名無しさん
2017/03/13(月) 13:10:58.01ID:W+gruSmyオブジェクト指向ではそういうときは自分に言っていることになっている
0136デフォルトの名無しさん
2017/03/13(月) 14:21:07.80ID:ba0kSSAR0137デフォルトの名無しさん
2017/03/13(月) 14:30:12.46ID:ba0kSSAR自己紹介という解釈が妥当か。
0138デフォルトの名無しさん
2017/03/13(月) 18:11:51.25ID:tYEoMH0Greferenceがdoxygen生成した奴とか最悪
0139デフォルトの名無しさん
2017/03/13(月) 20:28:35.84ID:03szIGH1文章に例えるなら、後ろの方に解説を書くってことになるね
その文章のテーマとの関わりが深い用語に対してはそうすべきだろうよ
じゃあその文章のテーマの分野外から持ち込まれた
用語や概念について、その文章で解説すべきだろうか?
もし、それらがたくさんあったらどうする?
わかりやすい文章を書くためには、テーマであるとか
分野は絞って書くべきだよね
もし違う概念を持ち込むなら、参考文献を示す程度にすべきだと思う
0140デフォルトの名無しさん
2017/03/13(月) 21:42:07.72ID:eDG5d03Q時間と労働力を分割できるということ
0141デフォルトの名無しさん
2017/03/14(火) 07:11:04.39ID:3iOx7E8Oもういらなくね?
0142デフォルトの名無しさん
2017/03/14(火) 07:18:39.67ID:3iOx7E8O遭遇したことあるけど、
そこの社内SEがメソッドが
全部publicだから外部から呼んでなのは
privateにしてと派遣の俺に言ってきた
なんで奴が社員で俺が派遣なんだろうと思った
0143デフォルトの名無しさん
2017/03/14(火) 07:19:38.94ID:QkuzfpGtせっかくメンバ変数へのアクセスをメッセージに封じ込めたのに
ゲッターセッターを作る奴はカプセル化をどう考えているのかと?
設計しないのかと
0144デフォルトの名無しさん
2017/03/14(火) 07:25:15.67ID:rwUcqsi8悪いんだよ。
0145デフォルトの名無しさん
2017/03/14(火) 07:25:33.15ID:eK6p+eN2ただ、必要なゲッターセッターはもちろんあるし、元々そういう用途で使うものだった。
もっというと、いちいちゲッターセッター書かなきゃいけないみたいなのはいい加減要らない。
PHPの__get()、__set()マジックメソッドみたいなお手軽さがいい。
0146デフォルトの名無しさん
2017/03/14(火) 07:28:48.06ID:eK6p+eN2DTOに関しては、ゲッターとかセッターとか、絶対要らない。
0147デフォルトの名無しさん
2017/03/14(火) 07:31:55.74ID:Zq0qXnQu0148デフォルトの名無しさん
2017/03/14(火) 07:47:55.22ID:eK6p+eN2どうせクラス間たらい回しにされて、どこからでもセッターにアクセスできるんだからね
作る意味がない
0149デフォルトの名無しさん
2017/03/14(火) 08:09:29.88ID:XJAU0chF要素の上書きをフックして処理仕込むために作るんやで…
0150デフォルトの名無しさん
2017/03/14(火) 08:21:28.00ID:eK6p+eN2オレに言ってんなら、そんな処理はDTOには必要ないでしょ。
データをどう使うか決めるのは受け取った側だから処理をするのはそのデータを引っ張り出した側
運搬役のDTOのデータはプレーンなほどいい。
0151デフォルトの名無しさん
2017/03/14(火) 08:36:11.74ID:Rw/oIE+80152デフォルトの名無しさん
2017/03/14(火) 09:19:16.53ID:rwUcqsi8整数から値を入れだり出したりしていることも無意識にセッターとゲッターを
使っていることになってる。
0153デフォルトの名無しさん
2017/03/14(火) 10:09:44.56ID:Rw/oIE+8データの書き換えは一元的に制御しないとダメだよ
その一元的なチェック機能がセッターの役割だ
あちこちで自由に書き換え可能ならグローバル変数と変わらんからな
0154デフォルトの名無しさん
2017/03/14(火) 10:50:48.21ID:eK6p+eN2DTOって、何するためのオブジェクトか知ってて言ってるの?
0155デフォルトの名無しさん
2017/03/14(火) 10:56:12.46ID:Rw/oIE+8セッターは書き換えに対する一元的なチェックを受け持つ
言ってること間違ってるか?
0156デフォルトの名無しさん
2017/03/14(火) 12:21:52.84ID:2reN9Kzg0157デフォルトの名無しさん
2017/03/14(火) 14:11:40.62ID:jZmuOqUS言ってる事云々の前に、頭おかしい。
DTOについて聞かれてるのに、なんで主語をセッターに変えちゃうの?
0158デフォルトの名無しさん
2017/03/14(火) 14:43:37.41ID:rwUcqsi8ブリッジパターンであるよ。
インターフェイスをそのままに実装だけ変えられるというやつだ。
言語のパワーが高いとブリッジパターンを使わなくても後から実装だけ
変えることも出来るようになるからアクセッサーは必要ある言語と無い言語がある。
0159デフォルトの名無しさん
2017/03/14(火) 15:14:53.76ID:Rw/oIE+8書き換えはセッターを経由すべきだからセッターの話なんだよ
クラス間たらい回しにされるデータをチェックなしで書き換えられる方がおかしくないか?
DTOが専用のアクセサを持つなりすべきだろう
めちゃくちゃなデータ突っ込んでサーバーに渡すのか?
0160デフォルトの名無しさん
2017/03/14(火) 15:46:24.19ID:Rw/oIE+8こうしないと値チェックが一元化できないし、スレッドセーフにもできない
一般論としては間違ってないよな?
0161デフォルトの名無しさん
2017/03/14(火) 15:53:51.75ID:Rw/oIE+8それ自動的にアクセサが生成される言語の事言ってない?
アクセサが必要無いじゃなくて実際は有るでしょ
0162デフォルトの名無しさん
2017/03/14(火) 16:47:34.63ID:vIMzEjCFDTOじゃなくてDTOを書き換える専用のクラスにチェックロジックを持たせるべきってことでしょ
DTOはjsonみたいなもん
0163デフォルトの名無しさん
2017/03/14(火) 18:46:39.63ID:rwUcqsi8例えばインスタンス変数がint型だったら後から
intをオブジェクトに包んで返そうにも型が違ってできないだろ。
0164デフォルトの名無しさん
2017/03/14(火) 19:13:31.07ID:QkuzfpGtゲッターだって駄目だよ
「そのタイミングで見ちゃ駄目!」
を制御できないじゃん
例えば更新途中のデータとかな
そういうのをメッセージで縛れるのがカプセル化のメリットだろ?
ゲッターなんて作ったらトランザクションが必要になっちゃう
0165デフォルトの名無しさん
2017/03/14(火) 21:02:34.36ID:wufErvjHスレッドセーフかは生成と排他次第。
0166デフォルトの名無しさん
2017/03/14(火) 21:08:30.93ID:wufErvjH原則論で思考停止し、そこを極論で逃避することは、やってることが同じ
自分達に都合がよく、合理的なのを選ぶべし。
人数が10人越えていたら、迷わず原則に従うべき
議論するより作った方が早く、メンテナンスが楽になりやすい
0167デフォルトの名無しさん
2017/03/14(火) 21:14:46.78ID:QkuzfpGt本来は設計で出たメッセージだけでやり取りするのがカプセル化でしょう
セッターゲッターなんて作ったら駄々漏れじゃないスか
0168デフォルトの名無しさん
2017/03/14(火) 21:17:04.12ID:wufErvjH見ちゃいけないタイミングを作らない方法もあるかな
参照して更新するから排他するが、予め答えの置き場所を一元管理せずに複数用意する。
で、最後にマージするアルゴリズムだと、並列化してコアとスレッドを活用しやすくなる。
メモリとストレージを余分に使うが速度を早める可能性がある。
大抵の場合、デバイス制御には適用できない。
0169デフォルトの名無しさん
2017/03/14(火) 21:29:20.82ID:fkuxS8fr型に嵌まれば嵌まるほど非合理な実行ファイルになりやすい。
コードも関係構造を追いにくくなる。
生産性の向上を拡張性に求め、使い方をフレームワークに納める設計に固執すると、
「このオブジェクトのインスタンスは、どのクラスだ?」
「このインターフェースの裏にあるインスタンスはシングルトンか?マルチか?」
みたいな挙動を追いづらくなる。動かして試してみるのが早いとなるが、動かしても判断つかないから、デバッガのウォッチをみるはめになったりする。
そうなっていない場合、そのクラス設計は生産性や再利用性が低い。
0170デフォルトの名無しさん
2017/03/14(火) 21:31:02.64ID:Rw/oIE+8そういうのはコールバックかクロージャで更新が終わってから返すしかないだろ
0171デフォルトの名無しさん
2017/03/14(火) 21:31:02.71ID:fkuxS8fr0172デフォルトの名無しさん
2017/03/14(火) 21:45:19.24ID:DGwmYEVU仮想関数のないクラスは、たんなるモジュール分割をクラスで強制しているだけ。
シーケンスを強制するフレームワークは、シーケンス専用のクラスがシーケンスを規定して派生クラスをその基底クラスで操作したがる。
シーケンスの再利用とクラスの使い方をハードコードしてバグを予防するために。
ゲッタ、雪駄は必要なときだけ作ればよい。
そこがわからないから作りたがるが、
そんなん命名規則を統一しとけば、グローバル検索でリストアップして、手を入れればいい。
0173デフォルトの名無しさん
2017/03/14(火) 22:41:03.29ID:rdGcafzjpublic class Person {
public String name {get; set;}
}
Person p;
p.set.name = "Tony";
String c = p.get.name;
みたいに名詞+動詞+目的語みたいにしてくれないかなあ
いちいち定義めんどくせ
0174デフォルトの名無しさん
2017/03/14(火) 22:50:11.36ID:RBmfhHqQプロパティ
0175デフォルトの名無しさん
2017/03/14(火) 23:45:04.06ID:gTsTzBY00176デフォルトの名無しさん
2017/03/15(水) 00:26:30.59ID:28pdxpj/あいつがまともなプログラムを書いてるとこなんて想像つかないだろ
OOPの失敗パターンに言及してるけど、実際はoopが失敗しているパラダイムだと言及しているわけだ
そのことに気付かない限り、OOPの理想を諦めない限りoopを使いこなすことはない
0177デフォルトの名無しさん
2017/03/15(水) 00:27:39.46ID:28pdxpj/0178デフォルトの名無しさん
2017/03/15(水) 00:41:18.97ID:ljHZsRch若いのが開発に背を向けてリファクタばかりするようになる
世界中のソフトウェア開発の生産性を下げた男
0179デフォルトの名無しさん
2017/03/15(水) 01:33:40.72ID:28pdxpj/いくらパターンを提示したところで、その適用範囲、パフォーマンス、安全性についてなんら定量的に洞察しえない
お偉い人間がこういったからというのは設計の根拠足り得ないんだってことがわからない
オブジェクト指向が悪いんじゃない、オブジェクト指向しかしらないのが悪いんだ
いったいオブジェクト指向の本のどこに、オブジェクトの空間使用量、計算オーダー、ライフサイクル、スコープについてまともに取り合っている本があるのだ
設計におけるprosとconsを提示してもいずれも設計根拠足りえない単なる所感の羅列
挙げ句の果てには、パタンAとは真逆のパタンBが有効なパタンとして含まれている
例えば、仲介者パタンを利用せよの次の次のページには仲介者パタンを使いすぎてはいけないなど
使うべきとこ、使わないべきところが全くもって不明瞭だ
これは単なる間接参照(indirection)の話にすぎない
データベースでいうところの正規化をどこまでやるのか理想的には完全に正規化すべきだが、パフォーマンスがそれを許さないことがあるんだという問題と全く同じ構造をしている
つまりこのことはパフォーマンスというコストを指標として語るべきであるにもかかわらず彼らはコストを議論しない
オブジェクト設計においてはパフォーマンスは議論するのは恥であるかのようだ
indirecrionはもっとも重要な問題であり、オブジェクト指向の文脈でなくても出てくる、そしてindirecrionをするかしないかはパフォーマンスでしか決定しえない
彼らはパフォーマンスの計測をしない、よってまともなプログラムもかいていないんだろう
拡張性を第一に考えるのであれば、静的言語など選ばない
第一選択から誤っている人間の設計理論など役に立たない
他の分野の設計者ならファーストチョイスを誤らない
0180デフォルトの名無しさん
2017/03/15(水) 01:49:04.06ID:28pdxpj/極端なことをいえば、彼らはデータ構造は配列しか知らない
ネストされた連想配列など知るよしもない
彼らは継承よりコンポジションを選ぶべきだとgofに聞いて入るが、いざ実際に継承をコンポジションに置き換えると今度はDRY原則が破綻することにいつも頭を抱えている、彼らはいつもこの選択にたちどまり答が出せない
彼らはカプセル化がプログラムのモジュール化を促進したと考えているが、彼らはおそらくレキシカルスコープという概念を知らなかったのだろう
ポリモーフィズムが単に第一引数に対する関数ディスパッチにすぎないということを知らなかったのだろう
断言できるが、彼らの教えを理解したとしても設計判断を下せるようにはならない、思考回路が常に明快ではなくいつもくだらないことに悩まされるからだ
0181デフォルトの名無しさん
2017/03/15(水) 01:55:13.83ID:v8VJWf950182デフォルトの名無しさん
2017/03/15(水) 02:09:59.82ID:FiGu7lnE安心してNGできます
0183デフォルトの名無しさん
2017/03/15(水) 02:18:08.27ID:28pdxpj/そうして縛られたインタフェースを(再利用するために)、クラス変数を増やし、セッタゲッタを増やし、コンストラクタをバカにするか、繁雑で不要なメソッドが立ち並ぶべきインタフェースを実装するかを迫るわけだ
確かに同一インタフェースで再利用するという目標は実現できるかもしれない
だがインタフェース設計としてゴミだということは明らかだ
スクリプト言語のライブラリのインタフェースの簡素さを見たらなんでこんなにくそなのかとしか思えなくなる
IDEが助けてくれる、長いライブラリ名も自動入力してくれる?
それは読む人の都合を無視しているよね
シンタックスハイライトはしてくれても、情報の圧縮はしてくれないわけだ
俺は本当に素晴らしいものができるんだろうと思ってたからこそオブジェクト指向のことをよく知ってるし、二度と立ち上がれないようにぶったたくことも、素直にラッパーオブジェクトを作って既存ライブラリを利用することもできるわけだ
なんでこんな不要なindirectionが必要なのか昔はわからなかったが、今はよくわかる、出来損ないのパラダイムの副産物だってことがよーくわかる
0184デフォルトの名無しさん
2017/03/15(水) 02:29:59.88ID:Kz3kbyRR元の設計は維持されるだろうが
可読性がマッハでヤバくなる
くらいでいいんじゃないだろうか?
0185デフォルトの名無しさん
2017/03/15(水) 07:30:13.80ID:UUTvLbR9仕様書にない汎用性とか他の人間から「そんなことやるって書いてないよね?」って指摘されて初めて自分が無意味なものを作ってることに気づく
設計書を書かないから無価値なクラスを作成することに無頓着になる
やたら産廃を作ることに食傷気味な客に当たらないとこの辺の能力が低いままになってしまう
0186デフォルトの名無しさん
2017/03/15(水) 11:36:52.41ID:9YK1Il+U0187デフォルトの名無しさん
2017/03/15(水) 15:15:31.53ID:Vrp0NxQ2やるならどれがいい?
CとHaskellを習得してる。ちょうど間があいてる感じ。
0188デフォルトの名無しさん
2017/03/15(水) 15:36:58.80ID:hyGfqw02Javaを習得すればいいと思う
JVM系言語はどれか覚えていて損はないし、JVM系だと最終的にはクラスファイル(バイトコード)レベルでデバッグできる知識が必要なので結果的にJavaとJVMの仕様は知らないと詰む
0189デフォルトの名無しさん
2017/03/15(水) 16:11:56.19ID:FaNpUuPt読ませる文章だ。そしてかなり正しい
0190デフォルトの名無しさん
2017/03/15(水) 16:24:44.05ID:rJTRechn0191デフォルトの名無しさん
2017/03/15(水) 16:49:11.82ID:LExN6Gy2C++は複雑すぎるから止めたほうがいい。
0192デフォルトの名無しさん
2017/03/15(水) 18:12:40.42ID:9V99gGHaあほか
0193デフォルトの名無しさん
2017/03/15(水) 18:57:51.14ID:LExN6Gy2互換性の問題で手直ししようもない手遅れ系な状態。
0194デフォルトの名無しさん
2017/03/15(水) 19:04:46.01ID:F/QFGIuk0195デフォルトの名無しさん
2017/03/15(水) 19:11:20.30ID:3gs75GR6あれは「おい、これでパン買ってこい!焼きそばパンな!」って仕事を任せられる単位をオブジェクトとして任せることで責任や問題をそこに集約するスタイルであって
「パンの種類を網羅しなきゃ!」とか「もし通貨がドルになった時は!」とかどうでもいいことなんだけどそこからわかってないバカ同士でオブジェクト指向〜ってやってんのねw
オブジェクト指向本来の"ゆるい"考え方なら「これ保存しとけ、GIFでな!」を「これ保存しとけPNGでな!」にするのは簡単なのに
なんか普段からバカみてぇにガチガチのキツキツでプログラムするのが常態化してるせいで
「GIFで決め打ちしたのをPNGにも対応しなきゃいけない!」だの「JPG2000とか無駄なものにも対応するハメになる!」みたいな
バカが間違ったオブジェクト指向やってるのを自分で告白するような長文になってて大草原不可避www
もひとつwww
0196デフォルトの名無しさん
2017/03/15(水) 19:18:02.26ID:icJo0wIeJavaは凝り固まりすぎで、スクリプトにみえる。
0197デフォルトの名無しさん
2017/03/15(水) 19:32:53.96ID:6uwYc/Z/0198デフォルトの名無しさん
2017/03/15(水) 19:39:20.72ID:6uwYc/Z/0199デフォルトの名無しさん
2017/03/15(水) 19:42:27.34ID:ku719VJ5スパコンもコードを最適化してそれに最適化した演算機作ってるし
0200デフォルトの名無しさん
2017/03/15(水) 19:43:52.51ID:hjLLE/iz他に抜きん出て追随を許さない至高の特徴、利点?
クラス、派生、継承、vt?
いや、それはoopの基礎要素で言語の違いなんかないじゃん
生産性に寄与する言語の特徴は、目的に最適化した機能のありなし。
COMクラスを変数宣言したら、暗黙にCreateinstanceにいんライン展開されたり。くえりインターフェースがよばれたり
0201デフォルトの名無しさん
2017/03/15(水) 20:04:54.16ID:HiQDR7mt0202デフォルトの名無しさん
2017/03/15(水) 20:09:31.38ID:OEf0Oo8i0203デフォルトの名無しさん
2017/03/15(水) 20:34:46.91ID:PPHlbHvE継承は「jpg扱うクラスを継承してjpg2k扱うクラス作って
png扱うクラスはえーと継承どうなってたっけ?」になるので
最近は継承という概念自体が嫌がられがちで廃れてるし
(代わりに単純にライブラリのようにただクラスにコンポジットして使う)
ポリモーフィズムは基礎概念になりすぎて
むしろ同じ命令に異なる相手が異なる反応するのあたりまえだろ
むかしはどうしてたの?状態だわでC++で教育された人が
金科玉条としてた部分がむかしのプログラミングの前提が崩れて
「オブジェクト指向ってこういう奴だろ!」と言われても
「そういう部分もあるけどいまはそこじゃないなぁ…C++で勉強した?」みたいに
0204デフォルトの名無しさん
2017/03/15(水) 20:36:49.36ID:bnECF0AM開発開始時点で
全体を見渡せる人がいて、その人が作る骨子に基づいて
クラス設計出来るなら、オブジェクト指向最強なんでしょうけど
現実にはそうはいかないから問題が起きるんでしょうね
でもそれはオブジェクト指向のせいなのか?っていう
0205デフォルトの名無しさん
2017/03/15(水) 20:39:02.19ID:LExN6Gy2イメージとしてはオブジェクトの設計図を持ったオブジェクトが
オブジェクトを作って増殖する系の出来事だね。
0206デフォルトの名無しさん
2017/03/15(水) 20:50:59.10ID:lB9RRSvwクラスとインスタンスが真髄に見えるかもしれないけど
オブジェクトが中心にあれば(クラスが無くても)オブジェクト指向でしょ
0207デフォルトの名無しさん
2017/03/15(水) 22:30:57.68ID:UUTvLbR9ボタンクリックした時の処理はコードをどうこねくり回したところで書かなきゃならないし
0208デフォルトの名無しさん
2017/03/15(水) 22:34:17.35ID:WjEGzhMPオブジェクト指向をしやすい言語仕様を
オブジェクト指向言語って言ってるだけだしな。
例えばJavaScriptなんてクラスがなくてもプロトタイプベースによって
比較的簡単にオブジェクト指向ができていた。
そして比較的最近言語仕様にクラスが追加されて、もっとオブジェクト指向が
しやすくなった。できるようになったのではなく、しやすくなった。
0209デフォルトの名無しさん
2017/03/15(水) 22:35:16.40ID:WjEGzhMP> ボタンクリックした時の処理はコードをどうこねくり回したところで書かなきゃならないし
「ボタンクリックした時の処理は」という風に条件をつけて言うってことは、
その条件に当てはまらないものは違うって、ちゃんと理解してるのかな?
0210デフォルトの名無しさん
2017/03/15(水) 22:46:48.28ID:HiQDR7mt0211デフォルトの名無しさん
2017/03/15(水) 23:06:35.44ID:e0daCQaw逆に興味ある
0212デフォルトの名無しさん
2017/03/16(木) 01:49:28.09ID:KNckw5Bn必要に応じてプログラム中から現在のボタンの状態をポールしに行ってたな。
というか、そもそも「オブジェクト指向とボタン実装」がどう関係してるのか
さっぱりわからないので、相手にしようがないけれど。
0213デフォルトの名無しさん
2017/03/16(木) 10:26:16.88ID:DTZ8WI+N推奨:疑問点の説明を詳しく
俺も興味ある。フレームワークをオプジェクト至高の前提と捉えているように推察した。
フレームワークをスケルトンと名前を変えたらオブジェクト指向はなんらボタン実装とは関係しないが、何か新しい着想を持っているように見えた。
0214デフォルトの名無しさん
2017/03/16(木) 16:20:24.02ID:wScV8c4Iあれはあれで合理的に出来ている
フロントエンドやると何でこういう仕様なのかよく分かる
サーバーサイドだけだとイミフだろうけど
0215デフォルトの名無しさん
2017/03/16(木) 18:57:14.30ID:Fq8WU0f8> smalltalkってなんか役に立つの?
徹底した動的結合(メッセージングのオブジェクト指向)を実践したときのメリットを実感できるほぼ唯一の環境だろうね
0216デフォルトの名無しさん
2017/03/16(木) 19:53:08.73ID:XMUiZjZhメソッドがオブジェクトの参照を返すからそこらじゅうのインスタンス変数が
同じオブジェクトを参照するからね。
もしそうならコピーして渡すことしか出来ないはずだよ。
0217デフォルトの名無しさん
2017/03/16(木) 20:55:54.23ID:KNckw5Bn先輩の財布から足りないぶんもらいました!☆」は別に正しい動作だからなぁ。
オブジェクトは正しく自分の責任で自律的に動いてるからむしろオーケーで
使いっぱに「それはやるな」か、サイフにアクセス属性を設定で個別に回避しとけなのに
なぜか、最近の関数型みたいなのは「ほっら!だからこの世の総ては盗まれないよう定義とロックする世界が正解なのよ!」と
斜め45度の方向で"最初から世界を隙なくガチガチにしとけばいい"論行くのがね…絶対不便だって、その世界…
0218デフォルトの名無しさん
2017/03/16(木) 21:07:21.85ID:jTveE5hgオブジェクトがアクセサ持ってるんじゃないの?
Objective-Cだと必ずそうなるけど?
0219デフォルトの名無しさん
2017/03/16(木) 21:25:46.39ID:XMUiZjZhセッターはインスタンス変数を別のオブジェクトの参照に上書きする。
0220デフォルトの名無しさん
2017/03/16(木) 21:30:43.40ID:XxXcpV9qgetterって書いて
0221デフォルトの名無しさん
2017/03/16(木) 22:48:38.28ID:sHtqjJu8本当にそう書く間抜けも居たけどな。
public function getterHogeHage(){}
public function setterHogeHage(){}
だとさ。脳みそ腐ってんだろうな。
0222デフォルトの名無しさん
2017/03/17(金) 08:49:15.85ID:qulsSpqdobj.data = another_data
objもdataもインスタンスだが、another_dataを代入するときにobj.setDataを経由している
これまでのアクセサによるカプセル化論と同じ
0223デフォルトの名無しさん
2017/03/17(金) 08:54:17.58ID:qulsSpqdスカラーかポインタ値(参照)かの違いでしかない
0224デフォルトの名無しさん
2017/03/18(土) 04:33:24.33ID:XJoec04W抽象的思考能力がない、ってことだろ。普通に
0225デフォルトの名無しさん
2017/03/18(土) 14:38:48.24ID:uIlWgAokそれじゃ何の役にも立たないことが分かるよ
0226デフォルトの名無しさん
2017/03/18(土) 18:21:35.67ID:sRg8Z/zS0227デフォルトの名無しさん
2017/03/18(土) 18:56:37.72ID:QqNckjgU0228デフォルトの名無しさん
2017/03/18(土) 19:15:26.06ID:yK4g9b1zパラダイムが変われば、そんな基準なんて変わるのに。
0229デフォルトの名無しさん
2017/03/18(土) 19:31:44.78ID:+lFcCe0u0230デフォルトの名無しさん
2017/03/18(土) 20:42:34.84ID:ybox44GA2進数か?
0231デフォルトの名無しさん
2017/03/18(土) 21:29:59.61ID:+lFcCe0uこういうやつ
if(hoge){
_if(moge){
__1+1;
__2*3;
__try{
___doHoge();
__} catch(Exception e){
___ok_flg = false;
__}
_} else if(a=b && c=d || (e=f && d=g)){
__5/6;
__ok_flg = true;
_}
} else if (checkHogehage() && x=y*3/2*5+1){
_if(hoge_flg = 5){
__try{
___doHoge2();
__} catch(Exception e){
___// nankab;
__}
} else if(…
___:
if(ok_flg){
_syori1();
} else {
_syori2();
}
0232デフォルトの名無しさん
2017/03/18(土) 21:30:40.08ID:+lFcCe0u0233デフォルトの名無しさん
2017/03/18(土) 21:32:28.62ID:+lFcCe0u>逆に自然な文法ってなんだろう?
自然な方だったのか…
0234デフォルトの名無しさん
2017/03/19(日) 15:25:04.40ID:N+O/v//a0235デフォルトの名無しさん
2017/03/19(日) 15:36:36.03ID:raX1f6fl芸術的に汚いソースだな
0236デフォルトの名無しさん
2017/03/19(日) 15:41:17.57ID:raX1f6fl例外クラスがおなじなのに、外に分岐とかキャッチの後にフラグ変数メンバーを参照して分岐を容れるコードになるのが想像できる。
0237デフォルトの名無しさん
2017/03/19(日) 15:50:29.65ID:raX1f6fl美術の実存と抽象画や、近代数学と現代数学と似た話じゃないかな
どちらがより価値があるか?という話。
前者は好みにより、後者は学術の目的と遂行合理性に価値がある、という考え方に落ち着く。
具象で語った方がわかりやすい。
抽象で語ると応用(具象化)しやすい。
そういう観点で、今の議論を語るときに、どちらがより合理的か?という思考が漏れているだけじゃないかな
0238デフォルトの名無しさん
2017/03/19(日) 17:25:11.95ID:cBsMWJ0a0239デフォルトの名無しさん
2017/03/19(日) 17:29:05.99ID:cZv/h/BX断じてシンタックスシュガーではない
機能だ
0240デフォルトの名無しさん
2017/03/19(日) 17:31:17.62ID:cBsMWJ0a0241デフォルトの名無しさん
2017/03/19(日) 18:25:06.46ID:cZv/h/BXシンタックスシュガーとはいわないだろおおお?!?
0242デフォルトの名無しさん
2017/03/19(日) 21:50:27.27ID:cBsMWJ0aつまりわかりにくい言語は意味がない
パズルとしての目的以外
0243デフォルトの名無しさん
2017/03/19(日) 23:01:25.25ID:CwtOi7dGなぜなのか?
0244デフォルトの名無しさん
2017/03/19(日) 23:53:17.26ID:T+JU6hX2ソースコードをソースファイルのどこに記述するか?ということを決める技術なのでなんの生産性もない
別にどこだって動くし、大失敗してもかけた工数が無駄になるだけで
動かないわけじゃないというある意味優秀な初心者ホイホイ
0245デフォルトの名無しさん
2017/03/20(月) 03:34:58.33ID:5McFn4oo人間の一時記憶は平均で7個とか言われるけど、これで複雑な処理を把握するために、どれだけ複雑な概念を名前を付けて扱えるかだ。
オブジェクト志向はまあまあだと思うけど、「デザインパターンはバッドノウハウ」と言われた時は衝撃的だった。
やりたい事がズバリできず、なんか色々クラスを作らされるのは確かにイライラする。
0246デフォルトの名無しさん
2017/03/20(月) 04:02:56.96ID:UB8UMXblある程度複雑なプロジェクトは構造化しなければ完成することが不可能
その構造化の一方法論がOOP
0247デフォルトの名無しさん
2017/03/20(月) 04:55:33.25ID:Kbki2X9l何かうまいやり方は無いかなって苦労して行き着いた“事案“はまさにオブジェクト指向にピッタリだったんだろう。
ところが、その後それに飛び付いた奴らは何でもオブジェクト指向になってしまった。
結果、無理して不自然なものとなってる気がする。
0248デフォルトの名無しさん
2017/03/20(月) 08:50:06.85ID:+yYy+wGohttps://ubiteku.oinker.me/2016/05/09/what-is-oo-all-about/
オブジェクト指向はその出自から考えても分かるように、
より上流の考えを重視する目的指向のパラダイム
0249デフォルトの名無しさん
2017/03/20(月) 09:10:40.65ID:GWfrNwZRオブジェクト指向じゃなきゃ作れないものなんて
この世にひとつもない
0250デフォルトの名無しさん
2017/03/20(月) 09:35:31.43ID:UB8UMXblだから構造化すなわち分割の一方法論だっつの
0251デフォルトの名無しさん
2017/03/20(月) 09:40:15.43ID:ub4me4bd言語機能の支援を受けられるかどうかは全く別問題
0252デフォルトの名無しさん
2017/03/20(月) 09:49:55.73ID:LXO+ChBLちょっとしたデータ加工なら、関数型の方が小回りが利くし直観的で分かりやすい気がするけど、どうでしょう?関数でデータを加工していくって分かりやすい。
簡単な自然言語処理をスクラッチでHaskellでやったらやりやすかった。
でも、Winとかにある巨大アプリケーションは関数型じゃ無理だと、本格的なOOPはよく知らないが漠然と分かる。
0253デフォルトの名無しさん
2017/03/20(月) 09:52:16.44ID:LXO+ChBL0254デフォルトの名無しさん
2017/03/20(月) 10:15:06.98ID:hQstaLGUつまりは歴史なのだけど、そこらへんのところ解説してる本を知らない
0255デフォルトの名無しさん
2017/03/20(月) 15:43:06.47ID:Dwi+wvJ0Erlangこそメッセージングを体現していて、Smalltalkはニセモノのウンコってことか
0256デフォルトの名無しさん
2017/03/20(月) 16:04:38.37ID:EOJWC60m総合格闘技とかいうスポーツの観るだけファンが
伝統格闘技に相手のスタイルも知らずに絡んでるアレだw
そもそもオブジェクト指向はもともとわりと巨大なスケールを想定していて
ぶっちゃけネットワークで接続されたコンピューターに処理を投げて動作するぐらいを考えて提唱されてるから
相手の処理終了も不明だし、いちいち処理待ちなんてしてたらネットワークが止まるから
『命令を投げたら単位が自律的に処理を行う"オブジェクト"を区切りにしよう』というものなのに
C++おじさんは思考がぜんぶ「シングルCPUで俺がすべてわかってるからいちいち命令とかいらねぇよ」って
自分の世界の話しかしない(できない)…w
0257デフォルトの名無しさん
2017/03/20(月) 16:21:55.31ID:trp03LGJメッセージ指向とかいってたらこんなに流行ってないよね
0258デフォルトの名無しさん
2017/03/20(月) 17:12:26.23ID:GbEM94zjそのうえにクラスという概念をもってきたから、くそなんだよね
クラスっていうのはミニグローバル変数みたいなもんなんだよ
つまり普通のモジュールよりも正確にドキュメントを残す必要がある
結局内部状態を隠蔽するのはいいけど、正確にそれをドキュメントに記述する義務がないからオブジェクト指向はくそなんだよ
ドキュメントを書かないくせに、内部状態を隠蔽されたらそのライブラリをどうやってテストするんだよ
0259デフォルトの名無しさん
2017/03/20(月) 17:20:00.82ID:G9+XvfW+>隠蔽なんてネームスペースやパッケージで実現できるよね
データと処理の結びつきの程度の違いなんだよ
オブジェクト指向で作るかどうかは用途に合わせた道具の選択の問題
Photoshopみたいなグラフィック系アプリのGUIを関数型で作ったりしないだろ?
0260デフォルトの名無しさん
2017/03/20(月) 17:30:51.74ID:GbEM94zj昔write(console,"A")
とかいていたものを
console.write("A")と倒置して書くことにした
それ以上の理由はないし、これはむしろ退化なわけで
例えばwriteのシンタックスなら、第一引数にlistを指定してブロードキャストに拡張することは容易だろう
write([console,file,webstream],"a")
consoleを絶対的な主語としたことによってこれは自然な手続きではなくなった
まずlistをローカル変数として定義し、foreachでそれをまわすということになるだろう
つまりオブジェクト指向によってコレクションタイプに対する関数の拡張性が制限されるためにforeachが必要になるわけだ
0261デフォルトの名無しさん
2017/03/20(月) 17:38:42.83ID:GbEM94zjそれは正確じゃないよね
ハイパフォーマンスを要するGUIをJavaやC#みたいな言語で作らないよね
もちろんsun.misc.unsafeみたいなのを使うなら作れるだろうけど
関数型の前提と、directXのようなライブラリの前提を理解した方がいい、メモリに対する考え方が違うだけで、mutabilityとポインタアクセスを許す書き方をしていいな
ら関数型言語を使ってもかける
一般的なオブジェクト指向ってのは行数においても、パフォーマンスにおいてもメリットがないよ
0262デフォルトの名無しさん
2017/03/20(月) 18:07:38.45ID:G9+XvfW+おまい文脈理解しろよ
データと処理の結びつきの程度の違いって言ってんだろ
0263デフォルトの名無しさん
2017/03/20(月) 18:32:40.96ID:GbEM94zjオブジェクト指向の本でこの極めて単純で自明なことをかいてある本なんてどこにもなかったよ
いまや沢山のオブジェクト指向の本があるけど、それが示していることは、オブジェクト指向は単純でもなければ、誤った公理から始まった仮構にすぎないということだ
スタートが誤っているからこそ議論がたえない
君はデータ型とメソッドの結び付きがどうだといっているが、君は当然SOLID原則が意味するところをしっているよね
それで例えるならクラスというのは、データであると同時にメソッドまでをパッケージングしている
つまりSRPにもSoCにも反するものだってことなんだよ
クラスの数だけ世界があり、クラスの数だけメソッドを実装しないといけない、それがどれだけ利用性に役に立つのか
javadocをみて山のように立ち並ぶクラス群をみて、うんざりしたことはないのか
windowsAPIが関数で構成されているということの意味をもう少し理解したらどうだ
オブジェクト指向に神秘性を感じている奴は、どのようにオブジェクト指向が実装されているのか理解したほうがいい、でないと議論する時間の無駄だから
0264デフォルトの名無しさん
2017/03/20(月) 18:33:19.29ID:GbEM94zj0265デフォルトの名無しさん
2017/03/20(月) 19:59:52.99ID:KXLYvEOGライブラリをテストする人に対しては隠蔽しない
ライブラリを使う人には内部仕様は隠蔽する
これはオブジェクト指向とは関係ない話
0266デフォルトの名無しさん
2017/03/20(月) 20:29:21.80ID:W87CYmkAプログラミング、および言語の歴史をちゃんと調べると
いろいろ腑に落ちるんだよな
いきなりOOPだけやっても狂信者とアンチを
生み出すだけなんだろう
0267デフォルトの名無しさん
2017/03/20(月) 20:31:50.45ID:G9+XvfW+長文ご苦労さん
君がオブジェクト指向も関数型もどちらも理解してないことは良くわかったよ
0268デフォルトの名無しさん
2017/03/20(月) 23:16:21.60ID:EOJWC60m「SFってUFOが出てくる奴だろ!?」ぐらいのレベルを長文連投してくると
さすがに何も理解できない素であたまわるいひとなのだな…と認定せざるおえないw
0269デフォルトの名無しさん
2017/03/20(月) 23:22:53.30ID:UB8UMXbl>オブジェクト指向の発明は、
>昔write(console,"A")
>とかいていたものを
>console.write("A")と倒置して書くことにした
>>44,45
0270デフォルトの名無しさん
2017/03/20(月) 23:51:03.70ID:GWfrNwZR>つまりSRPにもSoCにも反するものだってことなんだよ
>windowsAPIが関数で構成されているということの意味をもう少し理解したらどうだ
自分であんまりわかってないから、結論を自分の口ではっきり言わない人いるよね
つまり何が問題なのか、WindowsAPIが関数であることでどんなメリットがあるのか
おせーて
0271デフォルトの名無しさん
2017/03/20(月) 23:54:24.79ID:ub4me4bd0272デフォルトの名無しさん
2017/03/21(火) 00:10:03.52ID:RJ2XVIqX0273デフォルトの名無しさん
2017/03/21(火) 01:30:07.94ID:jV0Y+t/Y0274デフォルトの名無しさん
2017/03/21(火) 01:48:03.35ID:UqOt5XZ1オブジェクト指向言語にそんな仕組みはないよね?
0275デフォルトの名無しさん
2017/03/21(火) 02:32:28.81ID:u6uP4x230276デフォルトの名無しさん
2017/03/21(火) 03:40:12.12ID:kYeHwX6TWindows3.1とかさ
一時期のVC++ 6.0なんぞ、C++の仕様に従ってない例外の投げ方してたし(VC++の構造化例外が足を引っ張った)
COMなんぞ、Callerの指定に応じてカーネルが介入して適切なバージョンのDLL読んでインスタンス作って投げるという
エクストリームでDll Hellにもなり得るなんかだったが
バイナリ互換性って意味ではなんとかなったものだし(ユーザーにDLLインストしてもらえばなんとかなる)
なんて歴史もイロイロあろうが、割と泥臭い話ばっかりッスわね
0277デフォルトの名無しさん
2017/03/21(火) 03:42:53.33ID:kYeHwX6T今だったらmix-in/trait/AOPだぁね
特定のクラスにメソッドだけ植え込む奴
0278デフォルトの名無しさん
2017/03/21(火) 03:47:06.63ID:kYeHwX6Tたぶん「複数のクラスに同じメソッドを二重に書くとかありえんわ」の話でそ
mix-in系の機能があるならやるだけ
ないならヘルパークラスをメンバフィールドに持たす程度
0279デフォルトの名無しさん
2017/03/21(火) 07:10:22.43ID:bH1u/9cj>おせーて
Cでも書ける
あとからでもC++でクラスに出来る
0280デフォルトの名無しさん
2017/03/21(火) 21:30:13.50ID:rKUIj2Ewオブジェクト指向とは関係ないって言ってるだろ
0281デフォルトの名無しさん
2017/03/21(火) 21:31:25.48ID:6SfdpXKyあほか
0282デフォルトの名無しさん
2017/03/21(火) 22:22:55.65ID:RJ2XVIqX君達は本来privateであるべきクラスフィールドや、メソッド群をどうやってテストしてるの
オブジェクト指向やってる以上カプセル化は重要なわけでね
君達も本来privateであるべきものをpublicにしたりして、デバッグした経験あるんじゃないの?
実際にはdev段階においては、リフレクションを使って、privateな対象をpublicにする黒魔術的なテストライブラリはあるけどね
君達はこの問題にどう対処してるか非常に興味があるんだけど、教えてくれないかな
0283デフォルトの名無しさん
2017/03/21(火) 22:55:23.66ID:KGQ11aI9設計が間違っている。
役割ごとにクラスに分けるなどきちんと設計すれば
privateなものをテストしたいってことにはならない
0284デフォルトの名無しさん
2017/03/21(火) 23:02:59.62ID:UqOt5XZ1でもできないじゃん
0285デフォルトの名無しさん
2017/03/21(火) 23:26:33.63ID:RJ2XVIqX何言ってるのかわかんないね
オブジェクトデバッグにおいてもっとも重要なのは、内部状態でしょ
内部状態をもつからこそ、staticクラスじゃなくてインスタンスクラスとして定義してるんじゃないの
もしオブジェクトデバッグするとなったら、ダイレクトにアクセスできたほうがいいよね
例えば君が単純なカウンタを実装したとき、long型の限界付近でこのカウンタはどのような挙動を示すか興味があったとする
public methodはincrementとresetしかない、極めて初歩的かつ一般的なカウンタの実装だ
このとき君はどうするの?
本来の設計意図を無視して勝手にコンストラクタを増やす?セッタを勝手に増やす?それともカウンターを再設計するの
0286デフォルトの名無しさん
2017/03/21(火) 23:29:43.92ID:rKUIj2Ewライブラリの内部仕様はユーザーに隠蔽するのだから、どんな言語でも知る事は出来ない
こっそりソースを覗き見たところで非公開なのだから次の日には変わってても仕方ない
オブジェクト指向かどうかは関係ない
privateもpublicも関係ない
0287デフォルトの名無しさん
2017/03/21(火) 23:57:02.87ID:RJ2XVIqX正確にいえばライブラリを使ったこともないよね
オープンソースのライブラリみてソース読んで、ライブラリの挙動を調べるときに内部状態見るのが理解にとって一番手っ取り早いのは当たり前だよね
このときゲッタすら実装されてなかったら(それは極めて実直なオブジェクト指向にありがちだが)そのライブラリをテストすることに辟易とする
ただ単にライブラリをテストするにもリフレクション使えってこと?
断言するけど、アクセス修飾子はテスタビリティをそこねているし君達が黒魔術に手を出さないといけない理由も思想的な誤りによるものだ
0288デフォルトの名無しさん
2017/03/22(水) 00:05:05.30ID:ZXxN+M5fもし君がlong型の限界値付近の挙動を気にするべきカウンタを作ったとしたら、それは初歩的でも単純でもないカウンタだったという事だ。
巨大な値を扱う可能性があり、その品質を保証するためには、単純なpublicメソッドでは不足だったという事。
つまりカウンタの再設計が必要だ。
0289デフォルトの名無しさん
2017/03/22(水) 00:11:44.46ID:+9rAaXccprivateなメンバはpublicなメンバを通してテストし問題なければそれ以上でもそれ以下でもないと思うんだが
0290デフォルトの名無しさん
2017/03/22(水) 00:16:27.40ID:ZXxN+M5fライブラリが君の興味に対してアクセスを許してなかったら、それは君に見て欲しくないし、知って欲しくないし、触って欲しくないってことを表明してるんだよ
それを自分の都合で無理やり、見て、触って、知りたいというなら自己責任でお好きにどうぞ。
そこまでする必要を感じないというならそのライブラリを使わなければならない決まりはない。
もっと君の好みにあった都合が良い子を探すか自分で作れば良い。
0291デフォルトの名無しさん
2017/03/22(水) 00:17:33.79ID:MyrW3Mfdあほか
0292デフォルトの名無しさん
2017/03/22(水) 00:18:40.07ID:+9rAaXcc内部状態というのをどういう意味で言ってるのか知らないけど
staticメンバもクラスオブジェクトの内部状態なんだけどね...
0293デフォルトの名無しさん
2017/03/22(水) 00:21:31.43ID:Ac91TQ9I普通をprivateじゃなくてアクセス修飾子つけずにinternalにしてほしかったんだ
そしたら別のフォルダ切って同じパッケージから内部状態のテストできる
でもクラスの外から「絶対に」アクセスできないprivateのほうがはるかに安心感があり使い勝手がよかった
誤りなどではない
メリットがデメリットを上回ったんだ
0294デフォルトの名無しさん
2017/03/22(水) 00:33:22.43ID:0HwU5Emk> オブジェクトデバッグにおいてもっとも重要なのは、内部状態でしょ
何を言ってるのかわからないのはこっちだ
今はテストの話をしている
内部状態はテストとは無関係だ。
内部の実装がどうなっているかは
テストとは無関係
0295デフォルトの名無しさん
2017/03/22(水) 00:39:08.92ID:+9rAaXcc0296デフォルトの名無しさん
2017/03/22(水) 00:44:09.42ID:hKnvzbpj0297デフォルトの名無しさん
2017/03/22(水) 01:00:09.04ID:+9rAaXccそして、そのクラスの設計者はprivateメンバを内部的に利用するpublicメンバに対して
外部から発生し得るアクセス方法や値を使って網羅的に検証を行い問題のないことを
確認すればよい
privateメンバに対してそれ単体として取りうるすべての値や処理についてまで網羅的に
検証する必要性はない
なぜならprivateメンバは外部から直接アクセスされることはないからである
0298デフォルトの名無しさん
2017/03/22(水) 01:21:57.10ID:gvAZwZV80299デフォルトの名無しさん
2017/03/22(水) 01:29:40.10ID:hKnvzbpj言うと思った
0300デフォルトの名無しさん
2017/03/22(水) 01:29:53.18ID:+9rAaXccそもそも>>297の認識なので、リフレクションつかってsetAccessible(true)
してまでprivateメソッド単体のテストをする理由が思いつかない...
0301デフォルトの名無しさん
2017/03/22(水) 01:30:33.09ID:VqeOZxmBJavaは修飾子を付けないデフォルトはPackage-Privateだろ
これは同一パッケージ内ではPublicと同じ
0302デフォルトの名無しさん
2017/03/22(水) 01:31:10.22ID:axBWr/Dz隠蔽してあるならテストしなくていいの?
ってわけにもいかないし
そもそもクラスの使用側作成側っていう明確な切り分けがプロジェクトでなされていない
誰かのこさえたクラスが自分にとって都合の悪い作りになってたら
簡単に変更できちゃう環境なわけで
インターフェースクラスなんか見つけたら邪魔なので問答無用で削除
0303デフォルトの名無しさん
2017/03/22(水) 01:31:40.10ID:gvAZwZV8気の利いたカウンターだとセッタが公開されてたりするけど、カウントの途中でセッタ使って変更したらカプセル化の観点からするとアウトだよな
これはプリミティブなlong型だから、まだ挙動は予測できるけど、実際のライブラリはオブジェクトを引数にオブジェクトが呼び出され別オブジェクトがってなってるわけで、内部状態を把握するのは当たり前だよな
たぶんeffectiveJavaにもこうかいてあったでしょ
toStringをオーバーライドしろと
そしてJ2SEは内部状態を示すようにオーバーライドされていることが多い
問題なのはこれが言語標準じゃないってことだ、良識がないライブラリだとこれすらされてないわけでね
さらにいえば、セッタは以前として公開されていないわけで
0304デフォルトの名無しさん
2017/03/22(水) 01:32:22.90ID:MyrW3Mfdインターフェイス使えないやつwww
0305デフォルトの名無しさん
2017/03/22(水) 01:34:03.18ID:+9rAaXcc0306デフォルトの名無しさん
2017/03/22(水) 01:35:22.01ID:MyrW3Mfdたとえばどのライブラリ?オープンソースのライブラリなんて腐るほどあるから、具体例で示して
0307デフォルトの名無しさん
2017/03/22(水) 01:35:46.32ID:+9rAaXcc決してprivateメンバのテストをしなくていいというわけではなく、
privateメンバに対して直接単体テストをする必要性はないと思う
ってことなんだけどね
そもそも隠蔽の目的ってそういうことだし
0308デフォルトの名無しさん
2017/03/22(水) 01:43:11.26ID:gvAZwZV8オープンソースじゃないし、.netだけどfiddlercoreね
メッセージキューがどうなってるか
定期的にキューが削除されているのか、キューはoutofmemoryをはくまで肥大化しつづけるのか
もしそうだとしたら、キューを初期化できないのか
内部状態にアクセスできれば一発でコントロールできたことなのにね、アクセス修飾しってのは再利用性も阻害するってこった
0309デフォルトの名無しさん
2017/03/22(水) 01:47:05.68ID:vhfzvoEm0310デフォルトの名無しさん
2017/03/22(水) 01:48:08.38ID:+9rAaXccポリシーに従う他ない
それがいやなら自前でクラスをこしらえるのみ
0311デフォルトの名無しさん
2017/03/22(水) 01:49:04.66ID:gvAZwZV8でもprivateフィールドがどのように実装されているかって結局パフォーマンス特性そのものを示すものなんだよね
それ隠蔽されたら、正直使い物にならないよね
容量が決まっているバッファなのか、全てのログにアクセスできるlistなのか、それすらも隠蔽されたらね
どちらの選択も合理性があるんだよ、これはテストの問題ではなく設計思想の問題なんだよ
これにアクセスできれば、自分好みのパフォーマンス特性がえられるのにって経験がないならそれまでなんだよね
それは再利用性がないってことを言ってるのとほぼ同じなんだけどね
0312デフォルトの名無しさん
2017/03/22(水) 01:49:52.24ID:gvAZwZV80313デフォルトの名無しさん
2017/03/22(水) 01:51:16.25ID:axBWr/Dzプロジェクトにとって邪魔なんだから削除するだろ
なんでこんな仕様にしたのか軍法会議にかけるところだ
汎用性を重視した割に次の改修でかすりもしねーカスは銃殺
0314デフォルトの名無しさん
2017/03/22(水) 01:54:59.18ID:+9rAaXcc社内で作られたクラスの問題なら大いに議論して変えていけばいい
社外で作られたクラスの問題なら諦めて自前で用意するしかないだろう
0315デフォルトの名無しさん
2017/03/22(水) 01:56:02.90ID:+9rAaXccそれはあなた次第
0316デフォルトの名無しさん
2017/03/22(水) 01:57:32.65ID:gvAZwZV8君達マジでテストコード書かないでサードパーティライブラリをプロダクションコードにぶちこむんか?
お前が設計したわけでもなく、お前の期待通りに動いてくれるかなんてわからんのに?
たかがlongmaxに+1しただけでも
1.longminになる
2.exceptionをはく
3.bigintegerに切り替わる
ライブラリによっては
この3つの挙動が考えられるのに?
ライブラリによってはJNIつかってネイティブ叩いてたりするわけでその制約をライブラリつかってりゃ受けないとでも思ってんだろうか
0317デフォルトの名無しさん
2017/03/22(水) 02:00:24.54ID:axBWr/Dzでもお客さんはタブなんかいらないからスクロールできるようにして上から順番に表示して欲しいってさ
オブジェクト指向オブジェクト指向叫ぶアホの仕事ってプログラミング
云々以前にこんなことやってるアホばっか
0318デフォルトの名無しさん
2017/03/22(水) 02:03:38.09ID:+9rAaXcc根本的な考え方が私とは違うようだ
例えば使いたいライブラリを開発してもらう段階から話に入れていたのなら
自分が期待する動作になるようにライブラリを作ってもらうことはできるだろうし
あなたのコードのためのライブラリを作ってもらっているなら大いに要望を
出していいだろう
でもあなたの場合は違うんでしょ?
すでに完成しているありもののライブラリを使って何とか自分の期待通りの
動作をするコードを書き上げたい
でも上手くいかない
で、このライブラリはクソだと大声で叫ぶ
それって話の論理としてどうなのかなと思うわ
0319デフォルトの名無しさん
2017/03/22(水) 02:13:06.37ID:gvAZwZV8それはライブラリの再利用性が低いってことに同意してくれたってことだよね
要はライブラリ実装にユーザーが左右されるから、ライブラリ使うならライブラリ実装段階からコントロールしないといけないと
その認識だとモジュールプログラミングの基礎であるレイヤー分離もできていないってことなんだけど大丈夫なんですかね
0320デフォルトの名無しさん
2017/03/22(水) 02:27:49.38ID:+9rAaXccライブラリの再利用性が低いのは、そのライブラリの設計の善し悪しの問題かと
レイヤー分離がされた汎用性の高いライブラリを設計するにはそれ相応の考慮とスキルが必要
一般に、再利用性を高めるために汎用的な仕様にするわけだが、これは裏を返せば
ある特定の用途では全く使い物にならない可能性も高めることになり、そういった用途で
使おうとしたあなたのような人の視点で見れば再利用性が低いと評価されることもあるだろう
その場合、プロジェクトを始める前にそう言ったリスクを想定し、ライブラリの開発や再設計も
視野に入れてスタートするべきだろう
現実はライブラリの実装段階からのコントロールとか新規開発とか、そんなことやってる
時間も金もないんだよというのが正直な所なんだろうが、どうにもならないことは
どうにもならないわけで、そこは仕事を断る判断含め大人の対応が必要なんでしょう社会人として
0321デフォルトの名無しさん
2017/03/22(水) 02:42:57.73ID:gvAZwZV8そして汎化の仕方としてもやはり不自然なんだよなあ
>>320
つまりオブジェクト指向ライブラリは、部分的な切りだしもできなうということも認めるわけだ
それは改めて再利用性がないと指摘しているにすぎない
データと関数が分離されていれば、データをすり替え、使えない関数を書き換えるだけで済む話なのに、データと振るまいが結び付いていると両方一緒にぽしゃるってことなんだよね
30みればわかるとおり、関数主体ならばデータ型が気に食わなければすり替えられるわけだ
でもオブジェクト指向はそうじゃない、データが主部である以上それを省略することもできないし、入れ替えるってことはクラスそのものを書き換えることになる
関数が気に食わないときは結構手を加えなければならないが、シグニチャが同じであればそれは容易に内部構造をすり替えられる
君の意見だとオープンソースライブラリは一つも採用できないよね
設計の問題ではなく言語的欠陥なんだよ
まずsunやmicrosoftが20年ぐらい前に出していた、オブジェクト指向は再利用に有効であるってのが営業上のセールストークに過ぎないってことまず認めような
0322デフォルトの名無しさん
2017/03/22(水) 02:50:56.36ID:gvAZwZV8しかし、オブジェクト指向はその設計の手助けをするどころか、設計者の背中をぶった切り、返す刀でユーザーの肩もぶったぎってるよな
君達もライブラリを使おうとする時、また勉強すんの、まーたjavadoc巡りかよって思ってるだろ
設計者もどうやって設計しようかっていっつも悩んでいる
でもっていっつも失敗して>>317みたいな奴に叱られると
プログラムを設計するのに新規クラスを作る必要は実際のところないってことがわかんないんだろうな
0323デフォルトの名無しさん
2017/03/22(水) 02:52:07.81ID:zM0bMLWs0324デフォルトの名無しさん
2017/03/22(水) 03:12:25.11ID:0HwU5Emk> ライブラリが期待通りに動いてくれるって何のファンタジーなんだよ
> 君達マジでテストコード書かないでサードパーティライブラリをプロダクションコードにぶちこむんか?
俺はライブラリだけじゃなくて、OSがちゃんと動くか、
CPUがちゃんと動くか、半導体がちゃんと動くかまでちゃんとテストしてる。
この間は電圧が100Vかどうかのテストを書いたよ
今度はニュートン力学が正しいかどうかのテストが必要
0325デフォルトの名無しさん
2017/03/22(水) 05:52:21.48ID:gTzPAvUYこれぐらいやらないといけないから俺の脳の構造は間違ってる。
とか言ってる基地外とかレスのしようがないわな。
0326デフォルトの名無しさん
2017/03/22(水) 06:15:25.21ID:qEl3ed9E普段の仕事でオブジェクト指向がそぐわないと感じるのは、
フレームワーク作る人たちががんばって
もうパンピーがクラスの構成考える必要がないぐらい、枠組みをきっちりクラス化しちゃってるせいだ。
インターフェースがあり、画面オブジェクトがあり、コントローラーがあり、DAOがあり
ほかに何がいるってんだ
0327デフォルトの名無しさん
2017/03/22(水) 06:45:15.48ID:qEl3ed9E結局両方変えてんじゃねーか
気づけよ
0328デフォルトの名無しさん
2017/03/22(水) 07:05:50.09ID:2wDJFxh2色んな意味で責任範囲を明確にするのが構造化の役割だと思うけれど
0329デフォルトの名無しさん
2017/03/22(水) 07:14:19.84ID:ZXxN+M5fそもそもオブジェクト指向かどうかと関係ない話
0330デフォルトの名無しさん
2017/03/22(水) 08:03:23.54ID:gvAZwZV80331デフォルトの名無しさん
2017/03/22(水) 08:12:45.22ID:KD82SvgF実はおれもそれ思ってたんだが
オブジェクト指向と関係ないんだよね
0332デフォルトの名無しさん
2017/03/22(水) 08:46:38.85ID:IQHE94uk長文で空行を空けるとカッコいいと思ってるの?
それカッコ悪いよ?
0333デフォルトの名無しさん
2017/03/22(水) 08:50:28.26ID:SJ0uehvL君らこそオブジェクト指向の気に入らないダメな部分を身勝手に切り出してるんだよな
0334デフォルトの名無しさん
2017/03/22(水) 08:51:09.13ID:tZY6T4Dkプログラミングや思考そのものに最適化されてるわけじゃない。あくまで社会的な存在
0335デフォルトの名無しさん
2017/03/22(水) 09:01:27.11ID:BgFwftkCそうじゃないとエンジニア(笑)として失格だからなw
0336デフォルトの名無しさん
2017/03/22(水) 09:13:59.32ID:sIngn7vO0337デフォルトの名無しさん
2017/03/22(水) 09:17:57.15ID:IQHE94uk0338デフォルトの名無しさん
2017/03/22(水) 09:20:43.93ID:KD82SvgFオープンソースならオブジェクト指向とか関係なく中身はわかるし、変更もできるだろ
ちょっと何言ってっかわかんないっすね
>>322
オブジェクト指向を使って楽をしようとしてる一方でオブジェクト指向のせいでライブラリの見えない部分が出てきてると言ってるわがままさん
0339デフォルトの名無しさん
2017/03/22(水) 09:23:23.61ID:KD82SvgFデータやメソッドが気に入らなければサブクラスでも作ってオーバーライドするなりフィールド追加するなりすればいいじゃない
0340デフォルトの名無しさん
2017/03/22(水) 09:25:17.66ID:0HwU5Emk> 要約すればアクセス修飾子をつけ間違うだけで、神ライブラリがくそライブラリになるという話のどこがオブジェクト指向に関係ないんだろうね
アクセス修飾子はオブジェクト指向特有のものじゃないんだから
オブジェクト指向関係ないじゃないかw
ローカル変数の中身をテストしたいと言ってるのと同じことなんだから
(もちろんそんなものをテストしたいと思ったら設計が間違ってる証拠)
0341デフォルトの名無しさん
2017/03/22(水) 09:40:46.31ID:NwGDCto4最近は例外を関数の外に投げるバカ設計が少なくなった。
少なくともC++では。ジャバはしらん。
0342デフォルトの名無しさん
2017/03/22(水) 12:18:27.42ID:80t99VTH君にとってはくそライブラリなのかもしれないが、ライブラリ設計者にとっては精一杯の最適解だと考えよう。
そこがprivateになっているのは何か意味があるんだよ。
それを読み取ろうともせずに、俺が見たいものが見れないのはクソだ、って主張したところで何にもならないよ。
一方的に想いを寄せて粘着することをストーキングって呼ぶんです。
0343デフォルトの名無しさん
2017/03/22(水) 13:00:45.31ID:sIngn7vO0344デフォルトの名無しさん
2017/03/22(水) 13:05:04.22ID:7ZDZimGe0345デフォルトの名無しさん
2017/03/22(水) 13:35:14.90ID:Uj/VLma9ついでにオプソに対しても否定的だったのに今じゃすっかり熱心な信者だわ
0346デフォルトの名無しさん
2017/03/22(水) 14:42:37.60ID:T50yqk9Qハンガリアン記法を勧めてくるような企業はNG
0347デフォルトの名無しさん
2017/03/22(水) 15:02:02.31ID:sj71GTBZ今は勧めてないじゃん
0348デフォルトの名無しさん
2017/03/22(水) 15:02:54.10ID:OQp+/lgMんー、本気で言ってるのかな?
あんま、高度な設計経験無さそうだな。
0349デフォルトの名無しさん
2017/03/22(水) 15:27:39.38ID:CS3xBlnx0350デフォルトの名無しさん
2017/03/22(水) 15:51:49.52ID:IQHE94uk関数+オブジェクト指向=haskell
は誰もが認める事なんだからオブジェクト指向が優れているのは明らか
0351デフォルトの名無しさん
2017/03/22(水) 18:25:59.49ID:oceP6qOv0352デフォルトの名無しさん
2017/03/22(水) 18:38:21.14ID:LIjct5Kq例外構文とは、大域条件分岐goto文だよ
巻き戻しできる構文ならば、まだ高度な設計も可能かもね
てか、例外に食いつくとか、例外が肝とでも?
0353デフォルトの名無しさん
2017/03/22(水) 18:44:06.70ID:Uj/VLma90354デフォルトの名無しさん
2017/03/22(水) 18:54:44.58ID:ODseOUsjFAKE
0355デフォルトの名無しさん
2017/03/22(水) 20:36:56.68ID:+9rAaXccオブジェクト指向が原因ではないと思うけど
不満な部分があるならその部分をサブクラスでメソッドオーバーライドなりフィールド追加なり
すればいいと思うの
0356デフォルトの名無しさん
2017/03/22(水) 21:38:38.70ID:hKnvzbpjいいよ、一生そうやってなよ
オレはお前には絡まないから困らないし
>例外構文とは、大域条件分岐goto文だよ
一生そういうわけわからん事言ってなよ
>例外に食いつくとか、例外が肝とでも?
例外のまともな使い方が分からん奴が何言ってんだって話をしてんのに、肝とか筋とかしらねーよ
0357デフォルトの名無しさん
2017/03/22(水) 22:05:58.78ID:0HwU5Emk> 少なくともC++では。ジャバはしらん。
具体的にはどのライブラリ?
いや一個もないっていうのなら
それでもいいけどさw
0358デフォルトの名無しさん
2017/03/22(水) 23:55:15.16ID:BSHK66m+バカにはオブジェクト指向設計・オブジェクト指向プログラミングはできない
0359デフォルトの名無しさん
2017/03/23(木) 00:14:59.60ID:HuteCzcGそうやって雑誌の提灯記事なんか鵜呑みにしてると馬鹿になっちゃうぞ
雑誌の記事なんか書いてる奴が開発の経験なんか俺等に教えられるほどあると思ってるの?
0360デフォルトの名無しさん
2017/03/23(木) 00:18:57.58ID:4dz6QBHmマーチレベルの賢さアピールしたい層にはバカウケ
東大レベルは使えないパラダイムにはのっからない、ただおいしいところ、ライブラリだけを切り取る
マーチレベルはオリジナルクラスの設計で満足、kafkaやstormのようなフレームワークがなぜあるのかわからない
せっかく作ったクラスをあてはめようとしても、フレームワークはクラスをただの構造体としかみていないようだ、せっかく作ったオリジナルメソッドは意味をなさず、クラスをただの数値の塊として扱うかのようだ
これではオブジェクト指向とは言えない
シュトラウストラップインタビューが皮肉るように、オブジェクト指向は仮構、現代にはびこるリフレ派経済学とおなじ、仮構は少し賢い馬鹿のための肴であり、語りぐさであり、精神的な逃げ所である
理想的なオブジェクト指向とは、肥大化したC++やJavaのメンテナンスを行う人が絶望せず生きていくために不可欠な幻想である
そして今日もまたjavaのメンテナンスのおかげでなけなしの給料を得られるのであった
汝オブジェクト指向の慈雨に感謝せよ
0361デフォルトの名無しさん
2017/03/23(木) 00:28:30.60ID:/81kHKqc0362デフォルトの名無しさん
2017/03/23(木) 00:46:33.44ID:iwKD8Hm6よりマシなVisualBasicだった、というところが大きい
クラサバからWeb系への移行期に降臨したjava、ってタイミングもあろうか
デリゲートとかlambdaとか、ああいう「ファーストクラスメソッド」の扱いがいい加減だったので
いろいろとめんどいデザパタをやる羽目になるわけで
もともとのjavaの言語仕様が「組み込み言語」だったのが災いしたんだろうが
数メガバイトのメモリに詰め込むのを想定した設計だと仕様がねぇわな
0363デフォルトの名無しさん
2017/03/23(木) 01:15:54.92ID:K0r5mLIwhttps://www.amazon.co.jp/dp/4894712857A: [0.092515 sec.]B: [0.468284 sec.]
0364デフォルトの名無しさん
2017/03/23(木) 01:17:44.75ID:K0r5mLIwhttps://www.amazon.co.jp/dp/0201184621A: [0.091543 sec.]B: [1.170700 sec.]
0365デフォルトの名無しさん
2017/03/23(木) 01:19:01.28ID:K0r5mLIw> デリゲートとかlambdaとか、ああいう「ファーストクラスメソッド」の扱いがいい加減だったので
> いろいろとめんどいデザパタをやる羽目になるわけで
どういうこと?A: [0.094936 sec.]B: [1.172236 sec.]
0366デフォルトの名無しさん
2017/03/23(木) 01:31:41.23ID:iwKD8Hm6デザパタのうち、ある程度は、「lambda」をサポートしてくれてたら
必要なかったろーな、ってくらい
技術的な制限があって、回りくどいことをせにゃならんかったって印象が結構あるわけ
0367デフォルトの名無しさん
2017/03/23(木) 01:49:08.28ID:iwKD8Hm60368デフォルトの名無しさん
2017/03/23(木) 02:55:56.41ID:CXlfEqjt大半はクロージャで済む
0369デフォルトの名無しさん
2017/03/23(木) 19:31:20.89ID:1zGX1Z71今一つ解らない
クラス設計書でメソッド規定したら
ポロモーフィズムとか保障出来るし
0370デフォルトの名無しさん
2017/03/23(木) 19:55:05.82ID:wPivPPTzコンパイラにこのクラスはこのメソッドを実装してますよって伝える程度の意味でしかない
実際ダックタイプを許容する言語ではインターフェースを宣言する必要がない
ところがオブジェクト指向礼賛主義者はオブジェクト指向の全てのシンタックスに崇高な意義を見出だそうとするから、こんな単純な教え方をしてはくれない
オブジェクトが、何かコンパイラや演算の枠組みを超える何かを生み出してくれると思っているのだろうが、そういう人間がくそみたいなプロダクトを現在進行形で生み出している
オブジェクト指向を使いこなしたいならまずこう唱えなさい
オブジェクト指向って不自然な文法だよな
0371デフォルトの名無しさん
2017/03/23(木) 20:21:57.72ID:1JS1LHzY最後の行以外は概ね同意
オブジェクト指向言語の教本はどれも
オブジェクト指向をさも一種の思想かのごとく扱って、
オブジェクト指向を使わなければプログラミングは出来ない、かのような
思考を植え付けてくるわけで
オブジェクト指向を正しく理解していないプログラマは
強迫観念的にクラスを作ることになる
そのように書かれたコードは不自然だろうが
だからといってオブジェクト指向が不自然な文法というのは
論理の飛躍が過ぎるだろ
0372デフォルトの名無しさん
2017/03/23(木) 20:23:41.25ID:wPivPPTzまたメインテーゼが正しい証拠を見つけてしまったわけで
0373デフォルトの名無しさん
2017/03/23(木) 20:30:26.88ID:1JS1LHzY間違ったオブジェクト指向によるコードは不自然になる。
正しいオブジェクト指向によるコードは
より簡潔に、保守性に優れたものになる。
論理のすり替えと言うべきだったかな?
0374デフォルトの名無しさん
2017/03/23(木) 20:34:58.25ID:wPivPPTz0375デフォルトの名無しさん
2017/03/23(木) 20:53:14.61ID:1JS1LHzY機能ごとに分割し、オブジェクトで連携させる。
これだけのことだろ
ただし正しく分割するのは難しいから
手に余るってならわかるけど
数理国社英のテストを一枚の紙に全部書いてたらどうよ?
0376デフォルトの名無しさん
2017/03/23(木) 20:54:00.08ID:mxf1LURCポロモーフィズムはToLOVEるのもと
0377デフォルトの名無しさん
2017/03/23(木) 21:08:50.04ID:2vTEAQn7> ダックタイプを許容する言語ではインターフェースを宣言する必要がない
逆だろ。静的型言語でダックタイピング様のことを型安全に実現するために考案されたエンティティがインターフェイス
http://dl.acm.org/citation.cfm?id=74878.74924
0378デフォルトの名無しさん
2017/03/23(木) 21:14:24.68ID:SzpAfZmQ0379デフォルトの名無しさん
2017/03/23(木) 21:19:04.20ID:cbUpLCW6javaではインターフェイス
smalltalkではメソッドプロトコル
haskellではタイプクラス
0380デフォルトの名無しさん
2017/03/23(木) 21:21:07.51ID:HuteCzcG何がいいの?
0381デフォルトの名無しさん
2017/03/23(木) 21:37:21.61ID:SzpAfZmQアプリケーションの部品、って感じで扱う方が自然じゃん
0382デフォルトの名無しさん
2017/03/23(木) 22:02:30.72ID:X7DkuaCz0383デフォルトの名無しさん
2017/03/23(木) 22:07:57.67ID:DMbSvcf+0384デフォルトの名無しさん
2017/03/23(木) 22:54:58.34ID:stRo9XXA再利用性(使い回し)の方を重視したのが長文おじさんが火傷したC++
「オブジェクト指向って継承と再利用って奴だろ!ナーンセンス!」が
いまだにオブジェクト指向を理解していない初老グラマーの繰り言w
パーツ単位で分離してあって、コマンドで間接的に抽象レイヤ挟んで命令してるから
「命令への対応変えれば簡単に修正できるし、パーツとして他で使ったりできるよね」というのがオブジェクト指向なのに理解の主従が逆転してるから、彼らの脳内w
0385デフォルトの名無しさん
2017/03/23(木) 23:10:34.05ID:wPivPPTz君達のオリジナルクラスが何の役に立つん
ん?
0386デフォルトの名無しさん
2017/03/23(木) 23:21:56.49ID:K0r5mLIw> インタフェースの有り難みが
> 今一つ解らない
ダックタイプなんて言ってるやつがいる通り、別々のクラスで同じ名前の関数を定義して
どちらのクラスを変数に入れているかで処理を変えるってことはあるわけだよ。
ダックタイプ=インターフェース な
あとは、コードでその仕様を明確に記述するか
コメントで書くかの違い。
インターフェースっていうのはどちらにしろ便利に使われるわけで
コメントで書くよりもコンパイルチェックが行われる方がいいでしょう?
0387デフォルトの名無しさん
2017/03/24(金) 00:15:59.58ID:jbm4ygUmいやほんと、修正が用意ってのはあると思うよ
設計ありきだけど、それを意識できるというか
0388デフォルトの名無しさん
2017/03/24(金) 00:44:27.45ID:N3+t7Pywオブジェクト指向をベースに関数型ロジックを取り入れるのがベストプラクティス
0389デフォルトの名無しさん
2017/03/24(金) 00:52:07.25ID:Xu2YN0Qp構造体を関数の引数に入れる形と何が違うの?
0390デフォルトの名無しさん
2017/03/24(金) 01:28:49.41ID:/8+eN8z3「理解」
そして、それに伴う扱う側の取り回しの違い。
ぶっちゃけ君はずっと「自動車って馬なし馬車だろ?」とほざき続けている状態。
0391デフォルトの名無しさん
2017/03/24(金) 01:38:59.12ID:mhvKnnIM例えばビッグデータとか、ストリーミングはほっとな話題だが、クラス、特にJavaのクラスはいくつか問題を抱えている
一つ、クラスはメモリ効率が悪い
オンメモリ処理か、outofmemoryかは運命の分岐点
メモリを気にしなくていいしょっぱいアプリの話はしていない
一つ、ジェネリクスコンテナクラスにプリミティブを使えないことだ
これは言い換えれば、大量の値の変更や書き換えにたいして、参照がさししめす値オブジェクトを破棄し、値オブジェクトを生成し、参照されなくなった値オブジェクトはGCにかけられるってこった
これは、直接メモリアドレスを書き換えるよりもはるかに効率が悪い
はっきりいえば構造体をサポートしないJavaはUIのレンダリングに適していない
君達はオブジェクト指向はUIにてきしているというが、実際はこうだ
C C++はUIに適していると
君達がlinqがいい、Streamがいいといったところで、それがGUIのコンポーネントとして使用された時、どのようなパフォーマンス低下が起こるかなんて議論できるんだろうか
0392デフォルトの名無しさん
2017/03/24(金) 02:30:00.31ID:q2VVYKKnパフォーマンスでは構造体にまけ
柔軟性では連想配列にまける
全てが中途半端なデータ構造をありがたがるのは、CSを真面目に勉強していないという証明だから
クラスは確かに便利だけどね
なにもかもが中途半端だ
0393デフォルトの名無しさん
2017/03/24(金) 02:38:26.79ID:q2VVYKKnないものねだりをした結果、パフォーマンスで議論することはあきらめ教義である再利用性を達成すべく柔軟性を主軸に頑張っているが、結局のところ柔軟にキーを追加できる連想配列になにもかもが負けている
彼らは柔軟性を求めてイケてるUMLを求めつづけているが、
究極的にはインターフェース設計が誤ったら夢の大部分が崩壊することに気づいていない
引数として、ある名前が付いたクラスより、名前を持たない連想配列を使った方が汎化としても柔軟性としても高等だと言うことに気付かない
0394デフォルトの名無しさん
2017/03/24(金) 02:55:32.45ID:suDsBIm1ほんとコレ
0395デフォルトの名無しさん
2017/03/24(金) 02:58:26.78ID:suDsBIm1「ビッグデータやストリーミングはほっとな話題だがクラスは効率が悪い」
頭イカれてないとこんな文章書けないわ
0396デフォルトの名無しさん
2017/03/24(金) 03:01:01.28ID:suDsBIm1>「自動車って馬なし馬車だろ?」
これ名言だな
今度使わせてもらうわ
0397デフォルトの名無しさん
2017/03/24(金) 05:18:26.11ID:GmPbzKJ/それが再利用性だよ>パーツ単位で分離
抽象度を高めるとライブラリとなる
0398デフォルトの名無しさん
2017/03/24(金) 06:21:40.85ID:yX4WlQKKそれGCやLinqの問題でオブジェクト指向とぜんぜん関係ないような
0399デフォルトの名無しさん
2017/03/24(金) 07:10:59.63ID:oGf6+GqVコードで仕様を縛る仕組み
ということなんだ
多態性を実現する上で便利とか
見たから、仕様書に同名メソッドで
書いてれば同じじゃんと思ってた
0400デフォルトの名無しさん
2017/03/24(金) 07:11:17.38ID:ZL1TPElf「ある物に対し何ができるか、何をすべきかはその対象自身が知っているはず」
「だからメッセージという形でに対して何をすべきか伝えれば、適切な処理をしてくれるようにしよう」
「対象の状態に応じて振舞いは変化するのが自然だし、どう変化するかは自由なのだから、コンパイルの時点で振舞いが固定されないようにしよう」
こういう発想を透徹したら結構面白いし表現力もある言語になったのがsmalltalkで、それをつまみ食いしているのが他のOOPL
型理論みたいな数学的にしっかりした足場じゃないんで、
これがオブジェクト指向の本質!お前は分かってない!みたいな煽りはオブジェクト指向を知れば知るほど言いづらくなる
もっとゆるーい話だよ
0401デフォルトの名無しさん
2017/03/24(金) 07:16:36.62ID:oGf6+GqV例えば帳票を改造するとき
帳票クラスを見れば良いから
便利な分類方法だなと思うけど
一世代前の構造化プログラムでも
帳票の関数を見れば良いんだろうけど
色んな関数にまみれて
追いにくいイメージ
0402デフォルトの名無しさん
2017/03/24(金) 07:26:47.55ID:Xu2YN0Qp>例えば帳票を改造するとき
帳票クラスを見れば良いから
そんなプログラム見たことないなw
0403デフォルトの名無しさん
2017/03/24(金) 07:51:22.47ID:q2VVYKKn結局のところクラスというものをどう構成したらいいからわからないから中二ノートのように肥大化した願望がかかれているのだ
構造体や連想配列の使い方がわからない人間はおそらくいないだろう、明確なパフォーマンス特性があり、明確な採用意図、設計意図がある、コードには明確かつ鮮明に表明される
だがクラスは違う
オブジェクトは時として、構造体として振るまい関数テーブルとしてふるまい、順序機械として振る舞う、時にはサーバーとして振るまい、時にはシーケンスとして振る舞う
オブジェクトという名の概念の総称体で満足する人間はオブジェクト指向を使いこなせない
javadocから、オブジェクトの正体を類推することができなければならない
オブジェクト指向は設計やライブラリのドキュメント解読に必要な知識さえ、オブジェクトという名の総称体でプログラマから隠蔽する、
そうしてプログラマはブラックボックスをてざわりだけで解読することになる
オブジェクトはチューリング完全である、従ってオブジェクトは万能である
であるが故にしょうもないクラスライブラリでもjavadocを見るはめになる
そしてその唯一の例外はstaticメソッドライブラリである
オブジェクト指向って不自然な文法だよな
0404デフォルトの名無しさん
2017/03/24(金) 07:58:44.27ID:yX4WlQKK0405デフォルトの名無しさん
2017/03/24(金) 08:11:26.68ID:hP6bxnNh0406デフォルトの名無しさん
2017/03/24(金) 08:11:39.92ID:lxkR7uxCいいとこ取りすりゃいいじゃん
オブジェクト指向はなんやらごちゃごちゃうるさいがざっくり見れば直感的なところがいいんじゃねえの
0407デフォルトの名無しさん
2017/03/24(金) 08:13:26.26ID:tURnHGT3素晴らしい
0408デフォルトの名無しさん
2017/03/24(金) 08:32:15.17ID:DlmXd06I0409デフォルトの名無しさん
2017/03/24(金) 08:36:11.50ID:V5EOCPOQ0410デフォルトの名無しさん
2017/03/24(金) 08:39:27.38ID:q2VVYKKn0411デフォルトの名無しさん
2017/03/24(金) 08:45:02.55ID:DlmXd06I元祖staticおじさんとのやり取り見てたら無意味だと学ぶよ
0412デフォルトの名無しさん
2017/03/24(金) 08:45:08.93ID:yX4WlQKKどこで困ったのか具体例かけコード
0413デフォルトの名無しさん
2017/03/24(金) 08:46:31.14ID:nTl1EThi同じだよ
実行時エラーとコンパイル時エラーのどちらを好むかの違い
0414デフォルトの名無しさん
2017/03/24(金) 08:51:48.94ID:nTl1EThi構ってちゃんクラスかどうかが判定できれば良いのにな
0415デフォルトの名無しさん
2017/03/24(金) 08:52:19.42ID:5/+y7FnD>>1
0416デフォルトの名無しさん
2017/03/24(金) 08:55:03.02ID:nTl1EThi試しにNG IDに入れて見て、楽しくスレを進められるかやってみよう
もし、楽しくなくなったとしたら、このスレはアレをつついて遊ぶスレだったってことだ
真面目に議論してる風に見えるのは全部釣りだ
0417デフォルトの名無しさん
2017/03/24(金) 09:05:40.31ID:LoToasEtでアラン・ケイは次のように述べている(この文書はもともと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 にかけての開発にさかのぼるアイデアを起源とする)。
0418デフォルトの名無しさん
2017/03/24(金) 09:37:55.93ID:poXmNItAどこからつっこんでいいのか
ようするにオブジェクトは自由度が高いからボクちんはいい設計が出来ないと言ってるようだが、それはパラダイムの問題ではなくおまえの理解度の問題
オブジェクト指向の真髄はオブジェクトはデータとそれに副作用をもたらすメソッドの集合であるということ
これはリアルでいうとドアというオブジェクトはドアノブというオブジェクを持ち、ノブを回すというメソッドによりドアが開くというドアオブジェクトへの副作用をもたらすというように説明できる
現実の構造をそのままプログラミングに適用できるというパラダイムがオブジェクト指向でありUIというパーツの複合物を組み上げるうえでオブジェクト指向ほど自然に設計できるものは他にない
関数型プログラミングはそれらの設計指針へ何も寄与しないよ
0419デフォルトの名無しさん
2017/03/24(金) 09:40:50.81ID:LoToasEt> 正しいオブジェクト指向
数理科学的な定式化が知りたいならルカ・カルデリ(Luka Cardelli)のオブジェクト算法
http://lucacardelli.name/Papers/PrimObjImpSIPL.A4.pdf
等をひもとけばよいと思うけど、そうではなく「オブジェクト指向」の実際的な定義が欲しいのなら
まず、ビヨーン・ストラウストラップ(Bjarne Stroustrup)らが同時期に提唱し現在主流となっている
「抽象データ型のオブジェクト指向」(端的には、SIMULAのクラスというエンティティを使った抽象データ型の実践。
古典的には「「カプセル化、継承、ポリモーフィズム」に象徴される)
http://www.stroustrup.com/whatis.pdf
それと、この考え方とは趣を異にするけれどしょっちゅう引き合いにだされる「メッセージ」といった表現に象徴される
アラン・ケイの「メッセージングのオブジェクト指向」(端的には設計・実装・運用のあらゆる面で遅延結合を徹底する)
>>417 で既に引用したhttp://metatoys.org/oxymoron/oxymoron.html
この二つの「オブジェクト指向」の特徴と違いは最低限押さえておくべきだろうね
これらのどちらに軸足を置くかで進むべき方向が変わるし、混同すると訳のわからないことになるから
両者のバックグラウンドやその主張は目を通すくらいはして、自分なりに整理して区別できるようにしておくとよいと思うよ
0420デフォルトの名無しさん
2017/03/24(金) 09:53:11.90ID:lxkR7uxC使えるネジがあったら使おうぜ的な
カレーもスパイスから作ってたら大変だが大抵ルーを使うしなんならレトルトでもいいわけで
0421デフォルトの名無しさん
2017/03/24(金) 10:50:43.93ID:LoToasEtあともひとつ念のため、ストラウストラップらの「抽象データ型のオブジェクト指向」の方について
これはクラスを用いること自体が主なアイデアあるけれどあくまで肝心なのはその先の「抽象データ型の実践」なので
当然のことながら「抽象データ型」については最低限知っておく必要はあると思う
(そうでないと「(抽象データ型による)カプセル化、(クラスの機能である)継承、(両者を使った)ポリモーフィズム」
といった件の古典的三点セットの各々が意図するところの解釈すら怪しくなるので…)
ストラウストラップが書いているようにこれを端的に「ユーザー定義の型」というふうにみなしてしまうのも手だけれども
Such a type is often called an abstract data type. I prefer the term "user-defined type."
できれば提唱者のバーバラ・リスコフ(Barbara Liskov)が書いたものを参考にしたほうがよりよいと思います
抽象データ型(データ抽象ともいう)の成立過程やその意義、ついでにそれをクラスでやる場合のメリット・デメリット(彼女はあえて
SIMULAのクラスは使わず、クラスターという新しいエンティティを使ったCLUという言語を設計している)について
端的によくまとまっているこの文献が個人的にはお薦めです
http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.46.9499
2. Data Abstraction、3.4. Implementing Abstract Types あたり
なかでも、クラスを使った場合の抽象データ型のメリット・デメリットについては
ウィリアム・クック(William R. Cook)の「OOP vs ADT」の例が具体的に整理されていてわかりやすいです
(くしくも>>321が指摘するのとちょっと似てる「クラスを使うとインターフェイス拡張時に面倒」も書いてあって興味深い)
https://www.cs.utexas.edu/users/wcook/papers/OOPvsADT/CookOOPvsADT90.pdf
0422デフォルトの名無しさん
2017/03/24(金) 13:02:26.33ID:3PUwYYlD君がいったドアの例の延長で行くぞ
現実世界で使えるレベルのモデリングを提起する
ドアにはドアストッパーやドアクローザーがついていることもあるドアはガラスが使用されていて、外部から内部を目視できるかもしれないし
のぞき穴がついていて内部から外部の一方通行のみ目視可能かもしれない
1.ここまでの話をきいてドアを設計せよ
顧客の関心事はいっそう深化した
ドアは建築基準法によって耐火性が議論になることも有るし、材質やサイズによって重量や開閉性がことなる
このドアは当然ながら鍵がついており、サムターンであることもあれば電子錠であることもある
ドアの遮音性も顧客は関心があるようだ
ドアは右開き左開き、そして内開き外開きの組み合わせだけでなく、そもそもスライディングで開閉するタイプかもしれない
君が提示したドアノブはついていないこともありうる
2. 1.で行ったクラス設計を破壊せずにドア機能を拡張せよ
1.2.を行ったうえで現実世界のモデリングにオブジェクト指向は役に立ちましたか
0423デフォルトの名無しさん
2017/03/24(金) 13:08:28.55ID:3PUwYYlDここまでだとドアは他のオブジェクトとメッセージパッシングをしない
さていぬ猫にはドアノブを開店させることはできないが、プッシュで動くドアなら、ある一定の重量以下で押すことができるだろう
3.この事実を2.のクラス設計を破壊せずにに実装せよ
ここまでで何個の抽象クラスができるんでしょうね
こんな単純なことをモデリングするのに
0424デフォルトの名無しさん
2017/03/24(金) 13:17:25.71ID:lxkR7uxC中の設計はドア屋さんが頑張るけど、クライアントはopen,close,lock,unlockだけ理解してればいい
ってのがオブジェクト指向じゃねえの
そこまで要件が多岐にわたるなら明らかに新規設計の案件だろ
0425デフォルトの名無しさん
2017/03/24(金) 13:37:02.73ID:poXmNItAそのドアストッパーやドアクローザーを外注し簡単に自作のドア取り付けられるのがオブジェクト指向
抽象部=規格が合えば取り替えは自由自在
さらに外注したドアストッパーへ容易に自作のオプションが付けられる
素晴らしきかなオブジェクト指向
大好きな連想配列にするとこれがどう改善されるのか言ってみ?
0426デフォルトの名無しさん
2017/03/24(金) 15:11:21.95ID:yX4WlQKK2.Doorクラスにさらに属性を追加する。
3.猫がドアを開けられるかどうかは、ドア属性から猫に判断させるcat.canOpen(door)
なにを悩む
0427デフォルトの名無しさん
2017/03/24(金) 16:18:53.60ID:LoToasEt> 現実の構造を表現するなら、連想配列のほうが表現力は上だよね
そう思うならまずID:3PUwYYlDが>>422,423の要求仕様を連想配列+関数でエレガントに実装してみせてよ
それをうけてオブジェクトで等価のことがよりスマートにできればID:3PUwYYlDの認識不足
できなければオブジェクト勢ぐぬぬ…ID:3PUwYYlD大勝利!って流れの方がわかりやすいかと
0428デフォルトの名無しさん
2017/03/24(金) 17:21:15.05ID:suDsBIm1状況にもよるけど
door.canbe_opened_by(cat) 的なほうがいい気がする
0429デフォルトの名無しさん
2017/03/24(金) 17:45:03.47ID:bOcyBkqZ非構造プログラムも構造化プログラムも
今さら覚える気ないなぁ
つか関数型プログラミングって
設計はモデリングとかエンティティ抽出とかoopと同じことするんですか?
0430デフォルトの名無しさん
2017/03/24(金) 17:59:56.55ID:bOcyBkqZ別のクラスから呼んでない
メソッドはprivateにしておいて
と言われた
もちろんクラス設計書はない
不自然でも良いから
オブジェクト指向にして欲しかった
0431デフォルトの名無しさん
2017/03/24(金) 18:42:15.61ID:yX4WlQKKなんでそっちにつけるし…
0432デフォルトの名無しさん
2017/03/24(金) 18:56:43.52ID:SmL+2Elk長文のJava叩きは別スレでやればいいのでは
0433デフォルトの名無しさん
2017/03/24(金) 18:59:25.76ID:xjxxxvcA関数型厨ってそういうのばっかだし永遠に主流になることはないだろう
実際実務では関数型言語なんて選択肢にも入ることはないしこれからも永遠にそうだろう
0434デフォルトの名無しさん
2017/03/24(金) 19:07:23.82ID:f+Qzn7eiJAVAをスカラにした所も
スカラでOOPしてそうだよね
コレクション操作にラムダ使うくらいで
想像だけど
0435デフォルトの名無しさん
2017/03/24(金) 19:51:37.37ID:f+Qzn7eiえ?俺は帳票クラスとか伝票クラスとか
作るけど世間は違うの?
俺はオブジェクト指向してないのかも
知れない不安がよぎった
0436デフォルトの名無しさん
2017/03/24(金) 20:10:48.99ID:q2VVYKKn0437デフォルトの名無しさん
2017/03/24(金) 20:18:06.28ID:Xu2YN0Qp現実にはできないだろうなってこと
帳票クラス、まあそれもいいだろうね
でも、帳票出すときって
○○表示画面があって横に○○帳票出力ボタンがあって
次の画面は○○帳票プレビュー画面があって
横に○○帳票印刷ボタンがあるだろうね
んで?
帳票直すときってどこ触れば直るって?(笑)
0438デフォルトの名無しさん
2017/03/24(金) 20:24:41.67ID:DOPHTZLz焦るなよお前ら
0439デフォルトの名無しさん
2017/03/24(金) 20:27:08.03ID:Xu2YN0Qpってこと
帳票のレイアウトがちょっと気に食わない程度なら行けるかもしれんけど
そもそも表示項目にデータとして持っていない項目を帳票クラスをいじって出力することはできんでしょ?
つまり帳票が気に入らなくても帳票クラスをいじって解決はしないんだよ
んで俺、帳票クラスってあんま見ねーわ
表示機能→プレビュー→印刷設定→印刷
って一連の流れで帳票が形を成すことがない
言ってる意味わかるかにゃ?
クリレポだよクリレポ
0440デフォルトの名無しさん
2017/03/24(金) 20:31:02.24ID:AiSXPZSJ>>436
ネタなんだろ?
動物が1万種類いたらDoorクラスで1万件の開く条件分岐しやがるのか、てめーは
Catクラスでやることは、押してみて開いたら中に入る、開かなかったらあきらめる、これだけだ
0441デフォルトの名無しさん
2017/03/24(金) 20:37:59.37ID:Xu2YN0Qp0442デフォルトの名無しさん
2017/03/24(金) 20:46:48.38ID:/8+eN8z3ネタが高度すぎて3回ぐらい読んでもなに言ってるのかがわからないw
なにか概念の置き換えとか単語の置換でわけのわからない文章創作したのかな?と
元のネタを推測してみたけど、それが効かないぐらい支離滅裂でワロタ
0443デフォルトの名無しさん
2017/03/24(金) 20:49:20.98ID:AiSXPZSJノータリンなのか? その場合は、
class CatDoor extends Door {}
で、別のクラスだ
0444デフォルトの名無しさん
2017/03/24(金) 20:53:02.90ID:AiSXPZSJ確かにここは焦るべきじゃない。もっと盛大に泳がすべきだ。
0445デフォルトの名無しさん
2017/03/24(金) 20:58:46.44ID:AiSXPZSJク リ レ ポ ♪
0446デフォルトの名無しさん
2017/03/24(金) 21:00:32.42ID:yX4WlQKK0447デフォルトの名無しさん
2017/03/24(金) 21:05:39.67ID:AiSXPZSJ0448デフォルトの名無しさん
2017/03/24(金) 21:47:01.05ID:AiSXPZSJ0449デフォルトの名無しさん
2017/03/24(金) 22:17:31.73ID:suDsBIm1ユースケース次第でどっちのほうが適切か選ぶんだけどさ
1万種類いたら1万件の条件分岐をが必要とか本気で言ってるならまじでやべーぞ
0450デフォルトの名無しさん
2017/03/24(金) 22:28:12.89ID:yX4WlQKK0451デフォルトの名無しさん
2017/03/24(金) 22:55:54.11ID:6RKef8DS0452デフォルトの名無しさん
2017/03/24(金) 23:48:51.04ID:AiSXPZSJなんでやべーと思うの? 説明してくれる?
言うことわかってるからぶっ叩くこと前提だけど
0453デフォルトの名無しさん
2017/03/24(金) 23:49:00.51ID:yX4WlQKKみんなそのへんで躓いてる気がしてきた
現実世界じゃあらゆるものが相互に依存してるけど
相互に関係するオブジェクトのふるまい記述とか相当難易度高いよな…
普通のプログラムじゃ主語はユーザーというかメインスレッドだし
0454デフォルトの名無しさん
2017/03/24(金) 23:50:19.73ID:AiSXPZSJそうなるなってどうなるんだよ? それを説明しろよ
お前、議論できね―だろ?
0455デフォルトの名無しさん
2017/03/24(金) 23:51:43.29ID:AiSXPZSJぐうの音がでないのは、お前個人の脳みその欠陥だから、
そんなことを理由に話されてもしらねーよ
0456デフォルトの名無しさん
2017/03/24(金) 23:53:04.72ID:AiSXPZSJ449 : デフォルトの名無しさん2017/03/24(金) 22:17:31.73 ID:suDsBIm1
>>440
ユースケース次第でどっちのほうが適切か選ぶんだけどさ
1万種類いたら1万件の条件分岐をが必要とか本気で言ってるならまじでやべーぞ
∩_
〈〈〈 ヽ
〈⊃ }
∩___∩ | |
| ノ ヽ ! !
/ ● ● | /
| ( _●_) ミ/ こいつ、底なしのアホ!
彡、 |∪| /
/ __ ヽノ /
(___) /
0457デフォルトの名無しさん
2017/03/24(金) 23:55:06.79ID:poXmNItAそれをオブジェクト指向の抽象化という至高の世界にブレイクダウンするとドアが持つopenというメソッドが取る引数はcatではなくcatのスーパークラスである生物になり生物がもつ生物としてのパラメータ、能力値によりドアがacceptかrejectかを判定することで可能だな
ドアを開けるのは生物だけだという条件下ではcatにdoorを認識させてopendoorさせるよりも遥かに合理的だろう
素晴らしきかなオブジェクト指向
0458デフォルトの名無しさん
2017/03/24(金) 23:58:59.22ID:AiSXPZSJうん、何言ってるのか読むのめんどくさい
お前、よくキモいって言われるだろ?
0459デフォルトの名無しさん
2017/03/25(土) 00:01:00.51ID:Bl9nCmA6現実世界をOOPで表現するのは無理があるとかいう論調だったり、
ドアがacceptかrejectかを判定することで可能
とか言い出したり。おまえらアホは一貫性ねーよ
0460デフォルトの名無しさん
2017/03/25(土) 00:02:49.19ID:Bl9nCmA6>>457 みると、「あー、グラマって本当にバカなんだな」って思う
0461デフォルトの名無しさん
2017/03/25(土) 00:06:43.71ID:WyZVpsBFまずお前がどういう実装するのか説明しろよボケ
0462デフォルトの名無しさん
2017/03/25(土) 00:09:13.43ID:z4z14A9t自分としては、以下の点から猫につけたい
1.基本的に、ドアが開くかどうかは相手に一切依存しない。特定の操作がなされたら開く。
2.猫がドアを開けるかどうかは、人間には伺い知れないお猫様の内部状態によっている。
とくに内部状態による分岐はどうしょうもない
0463デフォルトの名無しさん
2017/03/25(土) 00:12:33.58ID:Bl9nCmA6文句つけた方が先にいうと決まってるのわかんねーの? ボケナス
0464デフォルトの名無しさん
2017/03/25(土) 00:13:07.19ID:Bl9nCmA60465デフォルトの名無しさん
2017/03/25(土) 00:14:36.00ID:Bl9nCmA6“たい”ってなんだよ?
おまえんちのドア、お前を認識して開くのかよ?
本当に糞マヌケばっかだな。当たっててもたまたま正解だったレベルのマヌケばっかじゃねぇか
0466デフォルトの名無しさん
2017/03/25(土) 00:15:00.37ID:Bl9nCmA60467デフォルトの名無しさん
2017/03/25(土) 00:15:35.00ID:z4z14A9tなんか病気なのか
0468デフォルトの名無しさん
2017/03/25(土) 00:16:14.45ID:Bl9nCmA60469デフォルトの名無しさん
2017/03/25(土) 00:16:51.59ID:Bl9nCmA6ささいなことすら満足に理解できないお前が言うなよ…
本当に頭の病気だろ
0470デフォルトの名無しさん
2017/03/25(土) 00:18:26.58ID:Bl9nCmA6おまえ、同実装するか書けよ?
もう、お前もわかってるだろうけどな、どうぶっ叩かれるかってこと
0471デフォルトの名無しさん
2017/03/25(土) 00:19:12.91ID:57uljf+v0472デフォルトの名無しさん
2017/03/25(土) 00:21:18.65ID:Bl9nCmA6毎度毎度、自己紹介うまいっすねー、先輩
0473デフォルトの名無しさん
2017/03/25(土) 00:27:59.27ID:WyZVpsBFじゃおまえが先じゃねーかw
0474デフォルトの名無しさん
2017/03/25(土) 00:31:21.08ID:57uljf+v0475デフォルトの名無しさん
2017/03/25(土) 00:32:04.40ID:aZYLECYg自然界の原理に従えばそうなるのはわかるがここで俺が言いたかったのはドアを開けるという行為に対して対象を抽象化することでどちらのアプローチも可能ということで
そこに違和感を感じるのは無生物主語を日本人が使えないような感覚と同じではないかと
0476デフォルトの名無しさん
2017/03/25(土) 00:34:10.58ID:Bl9nCmA6それ、どういう理論? ちょっと説明してくれる? ばーーーか
0477デフォルトの名無しさん
2017/03/25(土) 00:35:32.79ID:WyZVpsBFなんだよかまってちゃんかよ
お前はドアが1万種類あったらCatクラスで1万件の条件分岐すんだろw
キレた猫にちんこ噛み切られるよ
0478デフォルトの名無しさん
2017/03/25(土) 00:36:47.91ID:Bl9nCmA6>どちらのアプローチも可能ということで そこに違和感を感じるのは無生物主語を日本人が使えないような感覚と同じではないかと
本物のアホなのかな?
別のアプローチしたらメリットある場合はするよ? あんの?
このバカ >>473 ID:WyZVpsBF が一生懸命食らいついてきてるけどさ、
ドアにアプローチさせたらどうなるか、わかんじゃん? お前なら
0479デフォルトの名無しさん
2017/03/25(土) 00:37:00.34ID:WyZVpsBF>>440 おまえがばーーーか
0480デフォルトの名無しさん
2017/03/25(土) 00:37:50.16ID:Bl9nCmA6はい、文盲♪
440 : デフォルトの名無しさん2017/03/24(金) 20:31:02.24 ID:AiSXPZSJ
>>428
>>436
ネタなんだろ?
動物が1万種類いたらDoorクラスで1万件の開く条件分岐しやがるのか、てめーは
Catクラスでやることは、押してみて開いたら中に入る、開かなかったらあきらめる、これだけだ
0481デフォルトの名無しさん
2017/03/25(土) 00:38:32.61ID:Bl9nCmA6本当に脳みそねーwwwwwwwwwwwwwwwwwww
0482デフォルトの名無しさん
2017/03/25(土) 00:40:04.43ID:Bl9nCmA6> >426
> 状況にもよるけど
> door.canbe_opened_by(cat) 的なほうがいい気がする
こっからはじまってること、まだわかってないバカがなんか一生懸命すぎwwwwwwwwwwwwwwww
0483デフォルトの名無しさん
2017/03/25(土) 00:41:42.68ID:Bl9nCmA6>>477 : デフォルトの名無しさん2017/03/25(土) 00:35:32.79 ID:WyZVpsBF
> >470
>なんだよかまってちゃんかよ
> お前はドアが1万種類あったらCatクラスで1万件の条件分岐すんだろw
> キレた猫にちんこ噛み切られるよ
これと同類って自覚、 あ ん の ? ? ? www
やべーよ、マジで脳味噌、やべーよwwww
0484デフォルトの名無しさん
2017/03/25(土) 00:42:46.60ID:WyZVpsBFミジンコ脳だと猫が引き戸を開ける想像ができないのな
0485デフォルトの名無しさん
2017/03/25(土) 00:43:59.94ID:Bl9nCmA6>>461 : デフォルトの名無しさん2017/03/25(土) 00:06:43.71 ID:WyZVpsBF
> >452
> まずお前がどういう実装するのか説明しろよボケ
ドアがユーザー認識して自分で開くシステムのコードがどうなるか
そろそろお前がどんなにアホでも、お前のほうがヤバイって気づき始めてんだろ?
0486デフォルトの名無しさん
2017/03/25(土) 00:46:16.08ID:h4sfGwdyこのドアが開くかを誰が判断するのかという命題にたいして判断なんかしねーよ!猫は押すだけで開いたら入るし開かなかったら諦めるだけだ!という主張が通用する世界で生きているならそれはそれでいいと思う
0487デフォルトの名無しさん
2017/03/25(土) 00:46:26.89ID:Bl9nCmA6おまえの猫が引き戸を開けられるかどうかは別とするけどさw
>>423 : デフォルトの名無しさん2017/03/24(金) 13:08:28.55 ID:3PUwYYlD
> 追加
> ここまでだとドアは他のオブジェクトとメッセージパッシングをしない
> さていぬ猫にはドアノブを開店させることはできないが、プッシュで動くドアなら、ある一定の重量以下で押すことができるだろう
本当におまえ、日本語読めないのなw
前提条件、全くわかってないのなww
本当に人間なの? ロボじゃないの?www
0488デフォルトの名無しさん
2017/03/25(土) 00:47:15.78ID:Bl9nCmA6そういう世界の話ししてんだけど、わかんなかったの? >>423
0489デフォルトの名無しさん
2017/03/25(土) 00:47:37.59ID:Bl9nCmA60490デフォルトの名無しさん
2017/03/25(土) 00:48:49.00ID:Bl9nCmA6だって、クソグラマ共は仕様も要件も理解できねーんだもんwwww
0491デフォルトの名無しさん
2017/03/25(土) 00:49:01.46ID:WyZVpsBF猫とドアをコード化しなきゃいけないプログラムって何よ?
そこを考えてないから一つの視点でしか見れないんだろゴミカス
0492デフォルトの名無しさん
2017/03/25(土) 00:50:42.14ID:Bl9nCmA6>>486 : デフォルトの名無しさん2017/03/25(土) 00:46:16.08 ID:h4sfGwdy
>このドアが開くかを誰が判断するのかという命題にたいして判断なんかしねーよ!猫は押すだけで開いたら入るし開かなかったら諦めるだけだ!という主張が通用する世界で生きているならそれはそれでいいと思う
猫がドア押して開かなかったら諦められねーで問題が発生する世界ってどんな世界?
あらかじめいっとくけど、猫がドアひっかくとかいうなよ? それをするのはCatクラスの仕事だからな?
0493デフォルトの名無しさん
2017/03/25(土) 00:51:52.55ID:Bl9nCmA6おまえ、その文句をオレに言うことがまっとうだと、本気で思ってる?
やべぇ、まじくそグラマの脳、やべえぇwwww
そりゃ、巷のプロジェクトがことごとく炎上するわけだ
だって、クソグラマ共は仕様も要件も発注元も理解できねーんだもんwwww
0494デフォルトの名無しさん
2017/03/25(土) 00:53:07.91ID:Bl9nCmA6↑こいつ、マジこれまで生きてきたのが嘘みたいなレベルの大間抜けwwwwwwwwwwwww
0495デフォルトの名無しさん
2017/03/25(土) 00:54:05.64ID:Bl9nCmA60496デフォルトの名無しさん
2017/03/25(土) 00:54:46.25ID:WyZVpsBFあー423はNGだったからそれは読んでない
そいつの設定はドアノブは回せないってことだが回転ドアだって自動ドアだってある
動物が1万種類に増えるのとドアの種類が1万種類に増えるのと何の違いがあるんだよアホ
0497デフォルトの名無しさん
2017/03/25(土) 00:56:46.78ID:uvbjAxXd最初から守衛を実装した方がいいねー
あとネコは単純データじゃなくてオブジェクトなら
自分で働きかけと反応ができないとねー
ドアの前で寝て待つでもいいけど、エラーでプロセス死ぬようじゃダメだねー
0498デフォルトの名無しさん
2017/03/25(土) 00:56:57.59ID:Bl9nCmA6>動物が1万種類に増えるのとドアの種類が1万種類に増えるのと何の違いがあるんだよ
誰かそんなこと言ったの? どこのどのレス?wwwwww
やっべ、マジクソグラマやべぇw
日本語、マジ読めないwwwww
0499デフォルトの名無しさん
2017/03/25(土) 00:57:07.30ID:WyZVpsBF>>492
>猫がドア押して開かなかったら諦められねーで問題が発生する世界ってどんな世界?
493 名前:デフォルトの名無しさん Mail:sage 投稿日:2017/03/25(土) 00:51:52.55 ID:Bl9nCmA6
>>491
おまえ、その文句をオレに言うことがまっとうだと、本気で思ってる?
アホやろ
0500デフォルトの名無しさん
2017/03/25(土) 00:57:54.76ID:Bl9nCmA60501デフォルトの名無しさん
2017/03/25(土) 00:58:46.60ID:WyZVpsBFここまで来て逃げ恥モードかよおい
0502デフォルトの名無しさん
2017/03/25(土) 00:58:56.34ID:Bl9nCmA6本物のバカのようです。
引用する時は引用する意図をわかるようにしましょうね♪
0503デフォルトの名無しさん
2017/03/25(土) 00:59:31.06ID:Bl9nCmA6おまえがな
てか、本当にお前、自分の言ってること狂ってるってまだわかんないの?
0504デフォルトの名無しさん
2017/03/25(土) 01:00:36.99ID:Bl9nCmA6おまえさ、>>497 の言ってることの意味、わかる?
0505デフォルトの名無しさん
2017/03/25(土) 01:01:47.41ID:Bl9nCmA6∩_
〈〈〈 ヽ
〈⊃ }
∩___∩ | |
| ノ ヽ ! !
/ ● ● | /
| ( _●_) ミ/ こいつ、マジ知的障害!
/ __ ヽノ /
(___) /
0506デフォルトの名無しさん
2017/03/25(土) 01:02:06.33ID:SyeigmGm「ある物に対し何ができるか、何をすべきかはその対象自身が知っているはず」
というが、持っている構造や知っていることを増やすの?捨てるの?
自分はクラスは「捨てる」方向性で設計するものだと思っていた。
0507デフォルトの名無しさん
2017/03/25(土) 01:04:46.95ID:Bl9nCmA6それを判断するのが俺たちの仕事なんじゃん
バカは、「本にこう書いてあった」って盲目白痴にクソコードを書きまくるみたいだけどさ。
0508デフォルトの名無しさん
2017/03/25(土) 01:05:12.02ID:Bl9nCmA6∩_
〈〈〈 ヽ
〈⊃ }
∩___∩ | |
| ノ ヽ ! !
/ ● ● | /
| ( _●_) ミ/ こいつ、マジ知的障害!
/ __ ヽノ /
(___) /
0509デフォルトの名無しさん
2017/03/25(土) 01:10:09.35ID:WyZVpsBFお前の読解力を考慮してなかったわ
猫とドアをコード化しなきゃいけないプログラムって何よ?ってのは文句じゃなく
お前がどういうシステムを想定したのか説明しろよって言ってる
もう一つ動物が1万種類に増える可能性もあればドアの種類が1万種類に増える可能性もある
どういう変化の方向に対して柔軟性を確保するのかは状況による
ミジンコ脳では想像できんか?
0510デフォルトの名無しさん
2017/03/25(土) 01:11:44.30ID:WyZVpsBF0511デフォルトの名無しさん
2017/03/25(土) 01:14:07.43ID:SyeigmGm「それ」とは?
0512デフォルトの名無しさん
2017/03/25(土) 01:15:46.82ID:mLMz1o9wめっちゃ早口
0513デフォルトの名無しさん
2017/03/25(土) 01:16:27.65ID:Bl9nCmA6うっひゃっひゃっひゃwwwww
>もう一つ動物が1万種類に増える可能性もあればドアの種類が1万種類に増える可能性もある
な ん で ??????
こいつ、やばすぎるwwwwwwwwwwwwwwww
0514デフォルトの名無しさん
2017/03/25(土) 01:16:32.20ID:UB3e1JZS0515デフォルトの名無しさん
2017/03/25(土) 01:17:57.78ID:Bl9nCmA6え?
>持っている構造や知っていることを増やすの?捨てるの?
にきまってんじゃん。お前もマヌケなの?
マヌケなら、「僕、マヌケですが」って接頭詞置いてくれる?
0516デフォルトの名無しさん
2017/03/25(土) 01:18:57.61ID:Bl9nCmA6寝たほうがいいよ? あちらさん、本当のアホみたいだから
0517デフォルトの名無しさん
2017/03/25(土) 01:19:43.37ID:Bl9nCmA6寝なよ、お前に議論は無理だから
0518デフォルトの名無しさん
2017/03/25(土) 01:21:07.35ID:Bl9nCmA6> 中身で反論できないんならオレもう寝るよ
このバカ、自分が中身で議論できてると、本当に思っていたのか…
恐ろしいな、クソグラマ…
0519デフォルトの名無しさん
2017/03/25(土) 01:22:27.03ID:SyeigmGm「増やすのか捨てるのかを判断する」というのが「おれたちの仕事」だということか?
>>506に書いたように自分はクラスは「捨てる」方向性で設計するものと考えているので
そこはすでに判断するポイントじゃない。
0520デフォルトの名無しさん
2017/03/25(土) 01:22:35.11ID:Bl9nCmA6>>511 : デフォルトの名無しさん2017/03/25(土) 01:14:07.43 ID:SyeigmGm
> >507
> 「それ」とは?
マジでアホしかいないの? この業界って
0521デフォルトの名無しさん
2017/03/25(土) 01:23:28.67ID:kaPA30KF0522デフォルトの名無しさん
2017/03/25(土) 01:23:44.42ID:Bl9nCmA6>そこはすでに判断するポイントじゃない。
へー。自分が「勝手に」決めたポイントが絶対ですか
こりゃ、プロジェクト炎上するわー おつかれさま♪
0523デフォルトの名無しさん
2017/03/25(土) 01:23:51.10ID:BvzmuLQE0524デフォルトの名無しさん
2017/03/25(土) 01:24:29.96ID:Bl9nCmA6と、いう、どうでもいい単発レスをしてスレを伸ばすガイジ
死ねばいいのにねw
0525デフォルトの名無しさん
2017/03/25(土) 01:25:33.57ID:kaPA30KF0526デフォルトの名無しさん
2017/03/25(土) 01:25:45.05ID:Bl9nCmA60527デフォルトの名無しさん
2017/03/25(土) 01:26:23.67ID:Bl9nCmA6オレが独り言言ってると思ってる時点で、お前は死んだほうがいいからまちがってなくね?
0528デフォルトの名無しさん
2017/03/25(土) 01:26:40.21ID:SyeigmGm>へー。自分が「勝手に」決めたポイントが絶対ですか
>>506 を読んでそういう感想を抱くのだとしたら確かにどうかしている
0529デフォルトの名無しさん
2017/03/25(土) 01:26:49.06ID:Bl9nCmA6オレが独り言言ってると思ってる時点で、お前は死んだほうがいいからまちがってなくね?
0530デフォルトの名無しさん
2017/03/25(土) 01:27:24.63ID:Bl9nCmA6論拠を述べろって、何度言わせんの? 脳味噌無いの?
0531デフォルトの名無しさん
2017/03/25(土) 01:28:08.86ID:Bl9nCmA6脊椎で反射してくるバカ多すぎ
0532デフォルトの名無しさん
2017/03/25(土) 01:28:32.70ID:Bl9nCmA60533デフォルトの名無しさん
2017/03/25(土) 01:30:24.22ID:92weDEMC「一人で41レス」の意味履き違えてない?
俺は独り言なんて言ってないぞ。頭冷やして寝ろ
0534デフォルトの名無しさん
2017/03/25(土) 01:31:08.06ID:SyeigmGm>論拠を述べろって、何度言わせんの?
自分はもともとお前に語りかけたわけでも何でもないし、初めてこのスレで発言したわけだが
俺が>>506で呟いたことに唐突に>>507で反応されて何とも論拠の出しようがない。
0535デフォルトの名無しさん
2017/03/25(土) 01:31:58.80ID:Bl9nCmA6てめーで、てめーの勝手な理解ですよって宣言してるのに何言ってんだよ >>528
脳味噌あんのか?
0536デフォルトの名無しさん
2017/03/25(土) 01:32:12.81ID:h4sfGwdy現実の世界では物理的な法則によりcatが押せばドアは開くかもしれないがプログラミング=コンピュータの世界でそれを実現する場合catがドアが開くかを判断しないのであれば、catの能力でドアが開くかを決めるのはドア側ということになる
そこでおまえは1万種類いたら1万の分岐をさせるのか!と言ったわけだがこれはオブジェクト指向抽象化を理解していないことを自ら証明したということ
0537デフォルトの名無しさん
2017/03/25(土) 01:33:13.17ID:Bl9nCmA6>俺は独り言なんて言ってないぞ。
だれがそんなこといったの?
おまえはほんとうににほんごがりかいできないの???
>頭冷やして寝ろ
おまえは本当に永眠した方がいい。おまえに人生は無理だ
0538デフォルトの名無しさん
2017/03/25(土) 01:33:27.29ID:SyeigmGm知らん。
そもそも>>507に根拠を示したのか?お前が勝手に絡んできたんだぞ。
0539デフォルトの名無しさん
2017/03/25(土) 01:34:00.99ID:SyeigmGm0540デフォルトの名無しさん
2017/03/25(土) 01:34:46.37ID:92weDEMC俺は「おまえが独り言言ってるなんて」言ってないぞ
なら通じる?
0541デフォルトの名無しさん
2017/03/25(土) 01:35:28.74ID:Bl9nCmA6> 492
> 現実の世界では物理的な法則によりcatが押せばドアは開くかもしれないがプログラミング=コンピュータの世界でそれを実現する場合catがドアが開くかを判断しないのであれば、catの能力でドアが開くかを決めるのはドア側ということになる
> そこでおまえは1万種類いたら1万の分岐をさせるのか!と言ったわけだがこれはオブジェクト指向抽象化を理解していないことを自ら証明したということ
うん、ごめん、アホらしくてまともに読んでないけど
>これはオブジェクト指向抽象化を理解していない
まさか、本当におまえ、まだOOP理解してるとおもってる?
やべぇ、糞馬鹿グラマ、マジ、やべえwwwwww
0542デフォルトの名無しさん
2017/03/25(土) 01:35:36.00ID:uvbjAxXd増やすとか捨てるじゃなくて「どちらの責任にするか」だねぇ。
オブジェクト指向の重要なポイントは隠蔽がどーとか下衆なプログラム用語側に落ち込みがちだけど
要するに資料室に資料取って来させるのに
上司が「三階までエレベーターで上がってこの鍵で資料室のドアを開けて〜」って
いちいち指示が上に伝播していくと"エレベーター壊れてましたエラー"処理まで上司に記述しなきゃいけなくなってきりがないから
「資料室で資料取ってきてくれ アイテム:鍵」で以下の責任は部下に移譲。
オブジェクト各レベル間で責任範囲とやりとりを限定して、
これについて責任を持つのは「ここ」と決めることで作る側が楽をするための手法だから。
そうやって、外に影響が伝播せず、また特定のとこに処理が偏らずとシステム設計するのが重要なのだけど
いちゃモンさんは無理やり曲解して外に影響が出るような例を作ってみたり
特定のとこに処理が集中する例を作ってみたりして批判(笑)するから…w
こちらはそのために提唱されてるから問題を抑え込めるのに
野放し野人プログラムが首まで泥に浸かって「お前らも問題が出ることがあるから〜」じゃねぇっつの。
0543デフォルトの名無しさん
2017/03/25(土) 01:43:40.49ID:Bl9nCmA6何なの?これ
------------------------------------------------------------------
>自分はクラスは「捨てる」方向性で設計するものだと思っていた。
>それを判断するのが俺たちの仕事なんじゃん
> 「それ」とは?
>持っている構造や知っていることを増やすの?捨てるの? にきまってんじゃん。お前もマヌケなの?
>自分はクラスは「捨てる」方向性で設計するものと考えているので そこはすでに判断するポイントじゃない。
>てめーで、てめーの勝手な理解ですよって宣言してるのに何言ってんだよ
>知らん。 ←
------------------------------------------------------------------
0544デフォルトの名無しさん
2017/03/25(土) 01:45:11.21ID:h4sfGwdy俺ではなくお前自身がその本質を理解するかどうかということこそが重要
0545デフォルトの名無しさん
2017/03/25(土) 01:45:31.43ID:Bl9nCmA6> ストーカーかよ
いや、お前がアスペなだけだ
0546デフォルトの名無しさん
2017/03/25(土) 01:46:15.90ID:Bl9nCmA6> >541
> 俺ではなくお前自身がその本質を理解するかどうかということこそが重要
お前みたいなアホが何言っても無駄
0547デフォルトの名無しさん
2017/03/25(土) 01:47:26.77ID:Bl9nCmA6> 537
> 俺は「おまえが独り言言ってるなんて」言ってないぞ
> なら通じる?
全く通じないからとりあえず、小学校の国語からやる直せ。な?
0548デフォルトの名無しさん
2017/03/25(土) 01:48:23.25ID:Bl9nCmA6そんなことも理解できないマヌケは本当に死ぬべきだろうな
0549デフォルトの名無しさん
2017/03/25(土) 01:49:23.38ID:Bl9nCmA6クソグラマは、仕様も要件も発注者もわからないどころか、
日本語も道理もわかんねーんだもんな
0550デフォルトの名無しさん
2017/03/25(土) 01:51:24.06ID:92weDEMC0551デフォルトの名無しさん
2017/03/25(土) 01:52:41.00ID:Bl9nCmA6door.canbe_opened_by(cat)
こんなの考えるバカは救いようねぇなーwww
0552デフォルトの名無しさん
2017/03/25(土) 01:53:53.28ID:Bl9nCmA6誰も独り言言ってるなんて言ってないんだよなあ
またアホ宣言
つまり、わかってるのに「一人で41レス伸ばしてる奴」とか印象操作するマヌケだと自白するわけですねwwww
0553デフォルトの名無しさん
2017/03/25(土) 01:54:14.50ID:Bl9nCmA60554デフォルトの名無しさん
2017/03/25(土) 01:55:07.32ID:Bl9nCmA6door.canbe_opened_by(cat)
とか、するよねぇwwww
0555デフォルトの名無しさん
2017/03/25(土) 01:55:49.67ID:92weDEMC0556デフォルトの名無しさん
2017/03/25(土) 01:56:42.02ID:Bl9nCmA6>動物が1万種類いたらDoorクラスで1万件の開く条件分岐しやがるのか、てめーは
>お前はドアが1万種類あったらCatクラスで1万件の条件分岐すんだろw
アホの極みwwwww
0557デフォルトの名無しさん
2017/03/25(土) 01:57:23.76ID:Bl9nCmA60558デフォルトの名無しさん
2017/03/25(土) 01:58:11.60ID:h4sfGwdydoor.canbe_opened_by(cat)
を見て1万種類いたら1万の分岐をするのか!と思ってしまう思考レベルの持ち主だから仕方のないことだ
許してやれ
0559デフォルトの名無しさん
2017/03/25(土) 01:58:19.22ID:Bl9nCmA6んで、まだそこが論点だと思ってるの?wwwww
おまえ、本物のあほだろwwwwwwwww
死んだほうが良いよw
0560デフォルトの名無しさん
2017/03/25(土) 01:58:48.33ID:uvbjAxXd0561デフォルトの名無しさん
2017/03/25(土) 01:59:27.49ID:Bl9nCmA6自分に自分で説得わろた
で、そんなことはどうでもいいけど、おまえ、そろそろ
door.canbe_opened_by(cat)
の実装かけよwwww
0562デフォルトの名無しさん
2017/03/25(土) 01:59:43.44ID:92weDEMC俺は最初からその話しかしてない
0563デフォルトの名無しさん
2017/03/25(土) 01:59:51.48ID:Bl9nCmA60564デフォルトの名無しさん
2017/03/25(土) 02:00:26.56ID:Bl9nCmA6あっそ、ならお前はこのスレタイ読めないマヌケだから寝ていいよwwww
0565デフォルトの名無しさん
2017/03/25(土) 02:01:47.75ID:92weDEMC俺の論点は「一晩で66もスレ伸ばすなうざい」だ
俺も寝るからおまえも寝ろ
おやすみ
0566デフォルトの名無しさん
2017/03/25(土) 02:03:06.76ID:Bl9nCmA6>>542 : デフォルトの名無しさん2017/03/25(土) 01:35:36.00 ID:uvbjAxXd
> いちゃモンさんは無理やり曲解して外に影響が出るような例を作ってみたり
> 特定のとこに処理が集中する例を作ってみたりして批判(笑)するから…
この「いちゃモンさん」ってだれのこと?
0567デフォルトの名無しさん
2017/03/25(土) 02:04:28.91ID:Bl9nCmA6> 俺の論点は「一晩で66もスレ伸ばすなうざい」だ
は? おまえ、誰よ?
お前の意見がどうしてなんらかの意味があると思ったの? ゴミクズ
せめて意味をもたせたいならスレタイにそったこと言えよ
死ねよゴミカス そのまま永眠しろ
0568デフォルトの名無しさん
2017/03/25(土) 02:07:42.35ID:Bl9nCmA6> 現実の世界では物理的な法則によりcatが押せばドアは開くかもしれないが
> プログラミング=コンピュータの世界でそれを実現する場合
>“catがドアが開くかを判断しないのであれば”、
> catの能力でドアが開くかを決めるのはドア側ということになる
> そこでおまえは1万種類いたら1万の分岐をさせるのか!と言ったわけだがこれはオブジェクト指向抽象化を理解していないことを自ら証明したということ
なんでcatが出来ないって決めちゃったのwwwwwww
そんなルールなかったよねwwwwwwwww
やべぇ、クソグラマ、やべぇwwwwww
勝手に仕様捻じ曲げやがるwwwwwww
0569デフォルトの名無しさん
2017/03/25(土) 02:08:39.91ID:Bl9nCmA60570デフォルトの名無しさん
2017/03/25(土) 02:11:51.93ID:NcogM1MV0571デフォルトの名無しさん
2017/03/25(土) 02:22:11.83ID:Hepb4FxQcat.opendoor()か、door.is openedby()のどっちがいいか結論はでましたか
0572デフォルトの名無しさん
2017/03/25(土) 02:27:23.12ID:Hepb4FxQ0573デフォルトの名無しさん
2017/03/25(土) 02:29:32.72ID:Bl9nCmA6おまえ、馬鹿なのか?
そんなレベルで話進んでなかったってことくらいわかんだろ
やっとマトモな話しよーって時にしゃしゃり出てくんな、マヌケ
0574デフォルトの名無しさん
2017/03/25(土) 02:31:05.68ID:Bl9nCmA6あったからなんだってんだ!
本物のノータリンか?
論旨をかけ、ゴミクズ
0575デフォルトの名無しさん
2017/03/25(土) 02:34:11.52ID:Bl9nCmA6こいつ、別の意味で今日採れたてのアホだろ
0576デフォルトの名無しさん
2017/03/25(土) 02:42:26.75ID:Bl9nCmA60577デフォルトの名無しさん
2017/03/25(土) 02:49:03.40ID:Hepb4FxQ単体の猫では、開かないドアだったとしても3人のドアなら開くかもしれない
catにopendoorメソッドを追加する奴はちんかすじゃないの
0578デフォルトの名無しさん
2017/03/25(土) 02:52:28.20ID:Hepb4FxQ3匹の猫で同時にプッシュしたらドアが開くシチュは再現できない
このときcatにopendoorクラスを定義するとこうしたモデリングの拡張は自然に行えないよね
ここでもう一度スレタイを読み直してみよう
0579デフォルトの名無しさん
2017/03/25(土) 07:55:17.41ID:92weDEMC0580デフォルトの名無しさん
2017/03/25(土) 08:37:02.21ID:OsPiTP2tお前らのオブジェクト指向では猫も幸せにはできない
0581デフォルトの名無しさん
2017/03/25(土) 08:37:14.06ID:yvUY9DOL0582デフォルトの名無しさん
2017/03/25(土) 08:38:38.68ID:OsPiTP2t全員自害しろ
0583デフォルトの名無しさん
2017/03/25(土) 10:43:54.79ID:VqgCatE50584デフォルトの名無しさん
2017/03/25(土) 11:32:15.81ID:Hepb4FxQ彼のキャットドア実装に耳を傾けてみよう
0585デフォルトの名無しさん
2017/03/25(土) 11:45:36.31ID:RRHIuX+r0586デフォルトの名無しさん
2017/03/25(土) 11:48:14.06ID:P+Eymz64学生じゃないと名乗ってからレスしろよ
何も書かない人は以下学生ということで処理するから
0587デフォルトの名無しさん
2017/03/25(土) 11:51:21.85ID:nonH57ah0588デフォルトの名無しさん
2017/03/25(土) 11:56:15.09ID:Bl9nCmA6わかってるふうだったBl9nCmA6がいきなり黙ってわろたw
∩_
〈〈〈 ヽ
〈⊃ }
∩___∩ | |
| ノ ヽ ! !
/ ● ● | /
| ( _●_) ミ/ 睡眠という概念をしらない腐れニートが有頂天になってバカをさらしておりますw
彡、 |∪| /
/ __ ヽノ /
(___) /
0589デフォルトの名無しさん
2017/03/25(土) 11:59:09.82ID:Bl9nCmA6> 良く考えてみ
> 単体の猫では、開かないドアだったとしても3人のドアなら開くかもしれない
> catにopendoorメソッドを追加する奴はちんかすじゃないの
> 3人のドアってなんやねん
> 3匹の猫で同時にプッシュしたらドアが開くシチュは再現できない
> このときcatにopendoorクラスを定義するとこうしたモデリングの拡張は自然に行えないよね
おまえ、ほんとバカだよなw
つまりこういうこと?
door.canbe_opened_by(cat, cat, cat);
または
door.canbe_opened_by([cat, cat, cat]);
みたいな????wwwwwwww
それ、現実世界に照らし合わせると致命的な欠陥があることくらい、わかるよな?wwww
>>428 : デフォルトの名無しさん2017/03/24(金) 17:21:15.05 ID:suDsBIm1
> >426
> 状況にもよるけど
> door.canbe_opened_by(cat) 的なほうがいい気がする
0590デフォルトの名無しさん
2017/03/25(土) 12:00:44.51ID:Bl9nCmA60591デフォルトの名無しさん
2017/03/25(土) 12:03:04.33ID:Bl9nCmA6おまえが勝手にお前の中で誰をどのように処理しようとしらねーよ
なんでお前というオブジェクトの中の事について、オレが関知しなきゃなんねーんだ
このスレ、何のスレか100回考えて死ね
0592デフォルトの名無しさん
2017/03/25(土) 12:08:43.80ID:Hepb4FxQオブジェクト同士が協調して一つのものに立ち向かう
まさしく現実世界そのものが表現できないんだけど
現実世界って君達のようにぼっちの世界じゃないんだよ?
door.openedby(cats)
これは容易に実装可能
cat1.opendoor()
cat2.opendoor()
cat3.opendoor()
これは3体が協調したことにはならないよね
これで開くような単純なopendoorだったら
cat1.opendoor()
cat1.opendoor()
cat1.opendoor()でも開いちゃうからね
opendoorしてるオブジェクト数をdoor側が数えてようやく協調動作が実現できる、でもこれってdoorがopenしようとしているオブジェクトクラスに依存している
よってdoor.openedby実装が正解にちかいわけだ
cat.opendoor実装した奴はレイオフされたほうが社会のためだぞ
0593デフォルトの名無しさん
2017/03/25(土) 12:09:02.97ID:Bl9nCmA6> 猫がドアを開くとかしょーもなさ過ぎて草
言い出した奴に言ったら? そのしょーもない話題ですらdoor.canbe_opened_by(cat) とか言い出すバカは死んだほうがいいよな、確かに
>>580 : デフォルトの名無しさん2017/03/25(土) 08:37:02.21 ID:OsPiTP2t
> キャットドアの実装でオブジェクト指向破綻かw
> お前らのオブジェクト指向では猫も幸せにはできない
破綻してるのはdoor.canbe_opened_by(cat) の脳味噌だけだよ
>>582 : デフォルトの名無しさん2017/03/25(土) 08:38:38.68 ID:OsPiTP2t
> 役に立たないPGばっかりだな
> 全員自害しろ
俺様以外、お前も含めて全員な。本当にそうだ。
0594デフォルトの名無しさん
2017/03/25(土) 12:09:29.06ID:Bl9nCmA6>自分の無能さをオブジェクト指向に転嫁して済ませたくて仕方がない人が荒らしているスレですか?
ID:WyZVpsBF
ID:h4sfGwdy
こいつらの事なw
>>584 : デフォルトの名無しさん2017/03/25(土) 11:32:15.81 ID:Hepb4FxQ
> 有能なオブジェクト指向設計者様の到来だ
> 彼のキャットドア実装に耳を傾けてみよう
そうだな、俺様の話をよく聞いておくのがお前らゴミクズのためだぞ。
>>585 : デフォルトの名無しさん2017/03/25(土) 11:45:36.31 ID:RRHIuX+r
> そんなにオブジェクト指向が嫌なら頑張って関数型はやらせてよ
だれか、嫌だといってるやついるか? オブジェクト指向を理解していないdoor.canbe_opened_by(cat)なバカはいるが。
>>587 : デフォルトの名無しさん2017/03/25(土) 11:51:21.85 ID:nonH57ah
> おまえら暇人かつ馬鹿だよな
俺様以外、お前も含めて全員な。本当にそうだ。
0595デフォルトの名無しさん
2017/03/25(土) 12:10:40.37ID:Hepb4FxQこの実装めんどくさすぎね
0596デフォルトの名無しさん
2017/03/25(土) 12:12:11.27ID:Bl9nCmA6バカだからだとおもうんだけどさ、
何ですぐ答えかくの? だからトンチンカンで間違ってんじゃん
本当に脊椎で反射して書いてるだろw
(脊髄ではない、もはや、骨)
おまえが現実世界を語るのは無理だよ。脳味噌の中のお花畑ですごしてるんだもん
0597デフォルトの名無しさん
2017/03/25(土) 12:12:57.77ID:Bl9nCmA6うん、それ以前の問題。おまえ、アホ過ぎ
0598デフォルトの名無しさん
2017/03/25(土) 12:13:38.34ID:Hepb4FxQどうせ才能ないんだから、使えるライブラリだけパクってクラスは構造体としてつかうのが正解だよ
0599デフォルトの名無しさん
2017/03/25(土) 12:14:47.10ID:Bl9nCmA6おまえさ、現実世界ってどうなってるか、
ちょっとノートに書き出してみ?
それ、本当にこんな世界か?
door.canbe_opened_by(cat, cat, cat);
door.canbe_opened_by([cat, cat, cat]);
0600デフォルトの名無しさん
2017/03/25(土) 12:15:32.22ID:Bl9nCmA6> どうせ才能ないんだから
自己紹介を始めましたw
0601デフォルトの名無しさん
2017/03/25(土) 12:17:50.30ID:Bl9nCmA6> > そんなにオブジェクト指向が嫌なら頑張って関数型はやらせてよ
>だれか、嫌だといってるやついるか? オブジェクト指向を理解していないdoor.canbe_opened_by(cat)なバカはいるが。
ごめん、居た。とびっきりの本物バカが
>>598 : デフォルトの名無しさん2017/03/25(土) 12:13:38.34 ID:Hepb4FxQ
> 使えるライブラリだけパクってクラスは構造体としてつかうのが正解だよ
0602デフォルトの名無しさん
2017/03/25(土) 12:18:41.27ID:Hepb4FxQそうだよ
君はcat.opendoorクラスを軸としてcatを協調させるやり方を示さないとね
0603デフォルトの名無しさん
2017/03/25(土) 12:20:53.94ID:P+Eymz64>>601
学生かい?返事してよ。
0604デフォルトの名無しさん
2017/03/25(土) 12:21:18.49ID:Bl9nCmA6UMLお絵かきを楽しんでる自称SE様、自称アーキテクト様は、日本のITを根本からオワコンにしたよね
どうせ才能ないんだから、使えるライブラリだけパクってクラスは構造体としてつかうのが正解だよ
∩_
〈〈〈 ヽ
〈⊃ }
∩___∩ | |
| ノ ヽ ! !
/ ● ● | /
| ( _●_) ミ/ 自分が無能で下働きしただけなのにSE、アーキテクトを逆恨みして日本を語る、本当に才能のない本日採れたてのバカID:Hepb4FxQ
彡、 |∪| /
/ __ ヽノ /
(___) /
0605デフォルトの名無しさん
2017/03/25(土) 12:21:44.32ID:BoJVNcT4クラス図みたいなUMLとかも
オブジェクト指向のものとは異なるの?
コードレベルでラムダとかは使うけど
設計レベルで関数指向を意識したこと無いから
設計レベルで考えから変わるのキツイな
0606デフォルトの名無しさん
2017/03/25(土) 12:23:06.30ID:P+Eymz64学生?
0607デフォルトの名無しさん
2017/03/25(土) 12:23:54.43ID:Bl9nCmA6> 君はcat.opendoorクラスを軸としてcatを協調させるやり方を示さないとね
早漏乙wwwwwwwwww
>>590 : デフォルトの名無しさん2017/03/25(土) 12:00:44.51 ID:Bl9nCmA6
> オレ、これから出かけるから、夜までに“一体どこに欠陥があるか”答えだしとけよ、クソマヌケども
お前らに、ゆーーーーーーっくり考える時間やったのに
脊椎反射してくるバカいて力抜けるわw
おまえ、挿れる前に出ちゃって、まだ童貞だろ?w
0608デフォルトの名無しさん
2017/03/25(土) 12:23:55.59ID:yvUY9DOLcatGroup = new CatGroup(cat1, cat2, cat3)
catGroup.canOpen(door)
0609デフォルトの名無しさん
2017/03/25(土) 12:23:58.00ID:VqgCatE50610デフォルトの名無しさん
2017/03/25(土) 12:24:55.36ID:Bl9nCmA6悪いな、こっち側の人間なのかも知れねーが、
それ、全然ダメな。
現実世界がどうなってるか、よく考えろっつっただろ。
0611デフォルトの名無しさん
2017/03/25(土) 12:25:14.13ID:VqgCatE5canOpenという命名だったらisHoge系みたくBooleanの戻り値がありそうだが
0612デフォルトの名無しさん
2017/03/25(土) 12:27:38.02ID:Bl9nCmA6608 : デフォルトの名無しさん2017/03/25(土) 12:23:55.59 ID:yvUY9DOL
>>602
catGroup = new CatGroup(cat1, cat2, cat3)
catGroup.canOpen(door)
こいつ、睡眠を知らない糞ニートかw そりゃ、こんなコード書くわけだw
0613デフォルトの名無しさん
2017/03/25(土) 12:27:56.21ID:P+Eymz640614デフォルトの名無しさん
2017/03/25(土) 12:29:27.61ID:Bl9nCmA6> わかってるふうだったBl9nCmA6がいきなり黙ってわろたw
> catGroup = new CatGroup(cat1, cat2, cat3)
> catGroup.canOpen(door)
こんなコードしか書けないなら、お前が黙ってたほうがいいよw
0615デフォルトの名無しさん
2017/03/25(土) 12:29:39.67ID:VqgCatE50616デフォルトの名無しさん
2017/03/25(土) 12:31:10.03ID:P+Eymz640617デフォルトの名無しさん
2017/03/25(土) 12:32:33.69ID:VqgCatE50618デフォルトの名無しさん
2017/03/25(土) 12:32:56.37ID:Bl9nCmA6あるだろうな、普通に考えて。
で、その値を評価するのは、catGroupオブジェクトを持ってるオブジェクトだ。
つまり、なんか話が「猫がドアをあける」から「猫を使ってドアをあけさせる」っつう
「猫使い」の話に変わり始めてんのなwwwww
な、オブジェクト指向分かってねーやつって、狂ってるだろw?
0619デフォルトの名無しさん
2017/03/25(土) 12:36:03.51ID:Bl9nCmA6> ちょっとノートに書き出してみ?
> それ、本当にこんな世界か?
> door.canbe_opened_by(cat, cat, cat);
> door.canbe_opened_by([cat, cat, cat]);
>>602 : デフォルトの名無しさん2017/03/25(土) 12:18:41.27 ID:Hepb4FxQ
> そうだよ
> そうだよ
> そうだよ
たーのしーwwww
0620デフォルトの名無しさん
2017/03/25(土) 12:42:42.07ID:P+Eymz64学生じゃないと書いたら大人の癖にと
学生と書くとまだ子供なんだからと馬鹿にされる
その間のジレンマということだな
悔しかったらまともな意見を書いて堂々と学生じゃないと
なれるようになろうな
0621デフォルトの名無しさん
2017/03/25(土) 12:43:23.23ID:VqgCatE50622デフォルトの名無しさん
2017/03/25(土) 12:44:18.63ID:Hepb4FxQナショナリズムみたいなもんだね
0623デフォルトの名無しさん
2017/03/25(土) 12:45:15.70ID:Bl9nCmA6かわいそうだから1回だけ言ってやるな。
おまえ、誰にも相手にされてねーって、まだ気づかねーの?
学生かどうかなんて気にしてんの、おめーだけだよ。
ずっと独り言言っててこえーよw
0624デフォルトの名無しさん
2017/03/25(土) 12:46:08.58ID:Bl9nCmA6うん、おまえが言うと、全く説得力無い♪
0625デフォルトの名無しさん
2017/03/25(土) 12:46:41.55ID:P+Eymz64この子供たちは大人になれるのか心配だよ
0626デフォルトの名無しさん
2017/03/25(土) 12:47:29.45ID:VqgCatE50627デフォルトの名無しさん
2017/03/25(土) 12:48:25.73ID:P+Eymz64お前はウンコ投げてくる動物園のチンパンジーだな
0628デフォルトの名無しさん
2017/03/25(土) 12:50:28.98ID:P+Eymz64低いレベルの書き込みにつられるというのはつられた奴と
同レベルということ。
0629デフォルトの名無しさん
2017/03/25(土) 12:53:32.55ID:Bl9nCmA60630デフォルトの名無しさん
2017/03/25(土) 13:00:26.84ID:Bl9nCmA6>>592 : デフォルトの名無しさん2017/03/25(土) 12:08:43.80 ID:Hepb4FxQ
> cat.opendoor()実装の先には、
> オブジェクト同士が協調して一つのものに立ち向かう
> まさしく現実世界そのものが表現できないんだけど
> 現実世界って君達のようにぼっちの世界じゃないんだよ?
>
> door.openedby(cats)
> これは容易に実装可能
> cat1.opendoor()
> cat2.opendoor()
> cat3.opendoor()
> これは3体が協調したことにはならないよね
> これで開くような単純なopendoorだったら
> cat1.opendoor()
> cat1.opendoor()
> cat1.opendoor()でも開いちゃうからね
> opendoorしてるオブジェクト数をdoor側が数えてようやく協調動作が実現できる、でもこれってdoorがopenしようとしているオブジェクトクラスに依存している
>
> よってdoor.openedby実装が正解にちかいわけだ
>
> cat.opendoor実装した奴はレイオフされたほうが社会のためだぞ
たーのしーwwww
0631デフォルトの名無しさん
2017/03/25(土) 13:01:02.87ID:Bl9nCmA60632デフォルトの名無しさん
2017/03/25(土) 13:01:13.53ID:P+Eymz64なぜなら高度すぎるから。
ゴキブリの殺虫剤がゴキブリ以下の虫にしか効かないように
お前らのあおりもキッズにしか効かない
0633デフォルトの名無しさん
2017/03/25(土) 13:08:22.08ID:Hepb4FxQどんなくそみたいなプロダクトだしてるか興味あるな
0634デフォルトの名無しさん
2017/03/25(土) 13:39:51.92ID:P+Eymz640635デフォルトの名無しさん
2017/03/25(土) 14:17:26.28ID:yvUY9DOL俺は勝ったぞ(`・ω・´)
0636デフォルトの名無しさん
2017/03/25(土) 14:18:35.03ID:yvUY9DOL無視するから病気がひどくなるんだ
0637デフォルトの名無しさん
2017/03/25(土) 15:33:17.52ID:WyZVpsBFその中で猫が特定のドアを開けることができるかどうかを判定したい(らしい)
1. そもそもCatをクラスとしてモデリングする必要があるのか?
■仮にCatクラスが必要な場合
2. ドアが開く条件をどこで管理するのがいいか? Door/Cat/それ以外?
3. 猫が特定のドアを開けられるかどうかをどこで判断するのがいいのか? Door/Cat/それ以外?
4. Catクラス以外にどういうクラスがドアを開けようとするのか? それはこの先どの程度追加・変更されうるのか?
■cat.canOpen(door)の形にする場合
5. 引数にはDoor型以外にどういう型を取りうるのか? 変更・追加の可能性は?
6. canXXXタイプのメソッドはどのくらい必要なのか? 変更・追加の可能性は?
cat.canOpen(door)のほうが望ましいケースもあれば
あるクラスがcanXXXメソッドだらけになってメンテ不能になるケースもある
どういう種類の変化に対して柔軟性を確保しておくのかの選択の問題
0638デフォルトの名無しさん
2017/03/25(土) 15:36:10.33ID:OsPiTP2t0639デフォルトの名無しさん
2017/03/25(土) 15:37:46.36ID:WyZVpsBF特定の用途に有用なモデルなら現実世界からかけ離れていても何の問題もない
これはオブジェクト指向とは関係のない当たり前の話なんだが
staticおじさんや昨日のキチガイさんはこの当たり前をを理解してないから
オブジェクト指向を使いこなせない
0640デフォルトの名無しさん
2017/03/25(土) 15:49:56.85ID:ra7V2/PG0641デフォルトの名無しさん
2017/03/25(土) 16:22:11.12ID:P+Eymz64それならお前が死ぬまで殴り続けるよ?
死にたいのか?
こんな赤ちゃんでもわかることを議論するな。
0642デフォルトの名無しさん
2017/03/25(土) 16:26:40.65ID:OsPiTP2t0643デフォルトの名無しさん
2017/03/25(土) 16:29:23.71ID:Gy0JTtQc全くそのとおりだなw
ネコからすれば手を動かしたに過ぎない。
手を動かしたら、何かに当たる
それがドアかもしれないしネズミかもしれない
cat.canOpenとかアホだろw
0644デフォルトの名無しさん
2017/03/25(土) 16:34:48.34ID:Gy0JTtQcネコは触るだけ。
これを実行すると、objectはtouchというイベントを受信し、
objectがdoorなら空いたり閉まったりするだろう。
またネコはネコで(非同期で)そのフィードバック
イベントを受信することになるだろう。
0645デフォルトの名無しさん
2017/03/25(土) 16:43:54.32ID:RRHIuX+r猫にとって「ドアを開ける」という動作は非常に不自然だろ
基本的に必要ない
0646デフォルトの名無しさん
2017/03/25(土) 17:03:49.22ID:OjkYJeud0647デフォルトの名無しさん
2017/03/25(土) 17:16:38.64ID:WyZVpsBFどの実装方法がいいとか言っても無意味
0648デフォルトの名無しさん
2017/03/25(土) 17:28:18.52ID:LaDS9whr主語を省略する
述語が一番後ろ
0649デフォルトの名無しさん
2017/03/25(土) 17:38:00.19ID:yvUY9DOL自分の好き勝手なものを提示してメリットをまくしたて客をまるめこんで
客から金をふんだくってこそ真の一流
DoorType.catDoor って定数作っただけじゃ金とれんだろ!
0650デフォルトの名無しさん
2017/03/25(土) 18:05:56.40ID:OsPiTP2topenDoorでいいじゃん
中身はmoveFootかもしれんけど
0651デフォルトの名無しさん
2017/03/25(土) 18:35:57.87ID:BoJVNcT4関数型がベストと言ってるけど
オブジェクト指向に対する関数型のメリットを
語って欲しいわ
本当に、関数型知っちゃうと
オブジェクト指向はゴミと
思えるのかね
0652デフォルトの名無しさん
2017/03/25(土) 18:46:04.22ID:ra7V2/PG0653デフォルトの名無しさん
2017/03/25(土) 18:48:22.84ID:Gy0JTtQcまずネコドアを開けようと思った時、それには理由があるはずだ
外に行きたいとか。
外に行きたいとかいうのは、要するに欲求だな。
ネコは自分で考えて動くが、これをコンピュータに
置き換えるならば、時間などによってネコ自身のパラメータが
変わった結果による行動だ。
ドアの前まで移動し、手(体?)を使ってドア押す。
openDoorというのは、このネコの一連の行動に
名前をつけたものと考えられる。
移動するとか手を動かすとかはネコにつけるべきメソッドであるが、
一連の行動はネコ自身のメソッドではない。
コンピュータ的に言えばアルゴリズムになるだろう。
そのアルゴリズムはネコ自身ではなく別に独立させるべきものとなる。
そうしてopenDoorをネコから分離ささせることでイヌにも使用可能なものになる。
そしてネコが抱いた欲求の中で、そのアルゴリズムを使用することになる。
アルゴリズムはドアをあける一連の行動であるが、
移動するや手を動かすといったメソッドは、
そのアルゴリズムに渡したネコやイヌといったオブジェクトが持つものであり
各オブジェクトによって適切な処理が行われる。
0654デフォルトの名無しさん
2017/03/25(土) 18:49:58.20ID:Gy0JTtQc> オブジェクト指向に対する関数型のメリットを
> 語って欲しいわ
オブジェクト指向と関数型は組み合わせて使うものだ
全体の構造はオブジェクト指向で作り、
関数の中の処理は関数型を使う
関数型のメリットは処理をシンプルに記述できる所
処理であって構造ではない。構造はオブジェクト指向の得意分野
0655デフォルトの名無しさん
2017/03/25(土) 18:59:26.48ID:OsPiTP2tそんな御託はどうでもいいんだよ
結局第三者がそうとわかりやすければどうだっていい
猫がドアを開ける
そういう認識が猫側にあるかどうかは重要じゃなくて第三者がその表現でわかるかどうかが重要
やっぱりオブジェクト指向はゴミだな
0656デフォルトの名無しさん
2017/03/25(土) 19:02:38.45ID:RRHIuX+r猫や犬のmoveFootで返ってきた値を使ってdoorを操作するって感じやな
0657デフォルトの名無しさん
2017/03/25(土) 19:05:29.49ID:VqgCatE5>やっぱりオブジェクト指向はゴミだな
あなたにとっては絶対にそうなんだろうからそう思ってればいいと思う
で金輪際オブジェクト指向言語に関わらないようにすればいい
それだけだと思う
おつかれさまでした
0658デフォルトの名無しさん
2017/03/25(土) 19:09:32.27ID:ecqG0ALX対してオブジェクト志向でプログラムを書くのは関数型で書くより頭がこんがらがるし、変なコードになりがちと思った
0659デフォルトの名無しさん
2017/03/25(土) 19:10:27.97ID:RRHIuX+r猫がドアを開ける、という動作を猫が足を動かしてドアに働きかけて実行するんだよ
猫がドアを開けるのはあくまでも結果だ
依存させてはいけない
0660デフォルトの名無しさん
2017/03/25(土) 19:20:02.48ID:P+Eymz64次々現れるゴキブリを手で摑まえるようなものだ
0661デフォルトの名無しさん
2017/03/25(土) 19:27:12.50ID:VqgCatE50662デフォルトの名無しさん
2017/03/25(土) 19:29:38.53ID:yvUY9DOLdelegateしようず
実質関数型とか言うな
cat.addAction(cond:(actor) -> world.midnight(), action: (actor) -> door.open());
0663デフォルトの名無しさん
2017/03/25(土) 19:36:42.56ID:yvUY9DOL問題ない
0664デフォルトの名無しさん
2017/03/25(土) 19:48:20.46ID:Gy0JTtQcなんで自分ででたらめな設計しておいて
自分の設計はゴミって言ってるの?
マゾなの?
0665デフォルトの名無しさん
2017/03/25(土) 20:18:46.65ID:Bl9nCmA6おまえら、本物のアホだろ >>632-664
ゴミクズだらけだなw
割りとマトモなのは
>>640 : デフォルトの名無しさん2017/03/25(土) 15:49:56.85 ID:ra7V2/PG
> ドアが開いてるか閉まっているかの状態はネコのものではないし、ドアはネコの所有物ではない
>>643 : デフォルトの名無しさん2017/03/25(土) 16:29:23.71 ID:Gy0JTtQc
> >640
> 全くそのとおりだなw
> ネコからすれば手を動かしたに過ぎない。
> 手を動かしたら、何かに当たる
> それがドアかもしれないしネズミかもしれない
> cat.canOpenとかアホだろw
>>644 : デフォルトの名無しさん2017/03/25(土) 16:34:48.34 ID:Gy0JTtQc
> やるならcat.touch(object)だろうな
> ネコは触るだけ。
この辺だけだな。後は軒並みゴミクズだ
よくもそんなマヌケなレスでスレを埋め尽くせるもんだ
0666デフォルトの名無しさん
2017/03/25(土) 20:20:16.37ID:Bl9nCmA6少なくともpush()やscratch()くらいは実装してるはずだ
なんだよ、touchって。お前の猫はアホなのか?
0667デフォルトの名無しさん
2017/03/25(土) 20:21:25.16ID:Bl9nCmA6> >633
> 俺は勝ったぞ(`・ω・´)
バカって最強だな。滅多クソに叩かれてボロボロになってる事すらわかってない
実に最強だ
0668デフォルトの名無しさん
2017/03/25(土) 20:23:01.39ID:ecqG0ALX0669デフォルトの名無しさん
2017/03/25(土) 20:23:18.73ID:Bl9nCmA6>>592 : デフォルトの名無しさん2017/03/25(土) 12:08:43.80 ID:Hepb4FxQ
> cat.opendoor()実装の先には、
> オブジェクト同士が協調して一つのものに立ち向かう
> まさしく現実世界そのものが表現できないんだけど
> 現実世界って君達のようにぼっちの世界じゃないんだよ?
>
> door.openedby(cats)
> これは容易に実装可能
> cat1.opendoor()
> cat2.opendoor()
> cat3.opendoor()
> これは3体が協調したことにはならないよね
> これで開くような単純なopendoorだったら
> cat1.opendoor()
> cat1.opendoor()
> cat1.opendoor()でも開いちゃうからね
> opendoorしてるオブジェクト数をdoor側が数えてようやく協調動作が実現できる、でもこれってdoorがopenしようとしているオブジェクトクラスに依存している
>
> よってdoor.openedby実装が正解にちかいわけだ
>
> cat.opendoor実装した奴はレイオフされたほうが社会のためだぞ
0670デフォルトの名無しさん
2017/03/25(土) 20:24:59.11ID:Bl9nCmA6> Bl9nCmA6が珍しく自分の頭をひねって出した意見>>618にだれか答えてやれ
> 無視するから病気がひどくなるんだ
お前が答えればいいじゃん、答えられるならw
無視してるんじゃなくて、マトモに言い返せないだけなのわかってねーのはお前だけだよw
0671デフォルトの名無しさん
2017/03/25(土) 20:26:15.59ID:Bl9nCmA6door.canbe_opened_by(cat, cat, cat);
または
door.canbe_opened_by([cat, cat, cat]);
0672デフォルトの名無しさん
2017/03/25(土) 20:29:22.06ID:Bl9nCmA6> 猫を実装するってどういう状況よ?
こういうマヌケなこと言って「オレの発送の転換、天才!」とか悦に入ってるオナニーバカは死ねばいいよね
仮に実装するならどうするって話をしてるだけじゃん。
あと言っとくけど、そのお題出したのはおれじゃねーし、
みんなそれを分かってて話に乗ってる。
おまえだけだよ、バカは。
0673デフォルトの名無しさん
2017/03/25(土) 20:33:28.44ID:Bl9nCmA6> これはオブジェクト指向とは関係のない当たり前の話なんだが
> staticおじさんや昨日のキチガイさんはこの当たり前をを理解してないから
> オブジェクト指向を使いこなせない
昨日のキチガイって誰のことよ?
> どういうモデルが良いかは用途によって変わるし
> 特定の用途に有用なモデルなら現実世界からかけ離れていても何の問題もない
こんなこと言ってるのを見ると、おまえがオブジェクト指向を使いこなせてね―だけじゃん
現実世界からかけ離れてるから批判してるわけじゃなく
door.canbe_opened_by(cat)
が、すげー非合理だから批判してるんじゃん。で、おまえらは未だになんでこれが非合理かわかってねーんじゃん
おまえら、本物のアホじゃん
ちんこもげればいいじゃん
0674デフォルトの名無しさん
2017/03/25(土) 20:33:34.22ID:yvUY9DOL0675デフォルトの名無しさん
2017/03/25(土) 20:35:23.71ID:Bl9nCmA6> >602
> catGroup = new CatGroup(cat1, cat2, cat3)
> catGroup.canOpen(door)
>>635 : デフォルトの名無しさん2017/03/25(土) 14:17:26.28 ID:yvUY9DOL
> >633
> 俺は勝ったぞ(`・ω・´)
こ れ が 、 お ま え ら の レ ベ ル wwwwwwwwww
0676デフォルトの名無しさん
2017/03/25(土) 20:36:07.86ID:Bl9nCmA6おまえは頭のお薬だしてもらったほうがいいなw
0677デフォルトの名無しさん
2017/03/25(土) 20:37:23.66ID:Bl9nCmA6> Bl9nCmA6が珍しく自分の頭をひねって出した意見>>618にだれか答えてやれ
> 無視するから病気がひどくなるんだ
こんなこといいながら、一向に答えられない超絶ヘタレwwwwww ID:yvUY9DOL
0678デフォルトの名無しさん
2017/03/25(土) 20:38:45.19ID:P+Eymz64キレれるキッズは我慢が足りないんだろうな。
昔は自然が自然と教えてくれていた。
今は駄目だ、快楽におぼれたキッズたちしかいない。
0679デフォルトの名無しさん
2017/03/25(土) 20:40:12.45ID:Bl9nCmA6>>637 : デフォルトの名無しさん2017/03/25(土) 15:33:17.52 ID:WyZVpsBF
> 様々なドアを共通して扱えるようにドアライブラリを作ろうとしている
> その中で猫が特定のドアを開けることができるかどうかを判定したい(らしい)
>
> 1. そもそもCatをクラスとしてモデリングする必要があるのか?
>
> ■仮にCatクラスが必要な場合
> 2. ドアが開く条件をどこで管理するのがいいか? Door/Cat/それ以外?
> 3. 猫が特定のドアを開けられるかどうかをどこで判断するのがいいのか? Door/Cat/それ以外?
> 4. Catクラス以外にどういうクラスがドアを開けようとするのか? それはこの先どの程度追加・変更されうるのか?
>
> ■cat.canOpen(door)の形にする場合
> 5. 引数にはDoor型以外にどういう型を取りうるのか? 変更・追加の可能性は?
> 6. canXXXタイプのメソッドはどのくらい必要なのか? 変更・追加の可能性は?
>
> cat.canOpen(door)のほうが望ましいケースもあれば
> あるクラスがcanXXXメソッドだらけになってメンテ不能になるケースもある
> どういう種類の変化に対して柔軟性を確保しておくのかの選択の問題
いっぱいタイプしてご苦労さん、ほとんどマトモに読む価値なかったよ?wwwwwwww
0680デフォルトの名無しさん
2017/03/25(土) 20:43:51.86ID:VqgCatE50681デフォルトの名無しさん
2017/03/25(土) 20:45:02.52ID:Bl9nCmA6> catGroup = new CatGroup(cat1, cat2, cat3)
> catGroup.canOpen(door)
なんでアホかはオレ以外の上の方みてもわかるよなw
で、
>>635 : デフォルトの名無しさん2017/03/25(土) 14:17:26.28 ID:yvUY9DOL
> >633
> 俺は勝ったぞ(`・ω・´)
やてwwwwwww
やべぇwwww まじ、ID:yvUY9DOL 脳味噌くさってるwwwww
0682デフォルトの名無しさん
2017/03/25(土) 20:45:51.33ID:Bl9nCmA6諦めないで、なんで door.canbe_opened_by(cat) がダメかくらい見届けていったら?
お前が説明してもよろしくってよ?
0683デフォルトの名無しさん
2017/03/25(土) 20:46:45.09ID:P+Eymz640684デフォルトの名無しさん
2017/03/25(土) 20:49:03.36ID:yvUY9DOL> catGroup.canOpen(door)
え?釣りじゃないよ?
なにがだめなん?
0685デフォルトの名無しさん
2017/03/25(土) 20:51:03.34ID:Bl9nCmA6>なんでアホかはオレ以外の上の方みてもわかるよなw
読めばいいじゃん。文盲なの? 釣りじゃないよ?
0686デフォルトの名無しさん
2017/03/25(土) 20:51:11.09ID:P+Eymz640687デフォルトの名無しさん
2017/03/25(土) 20:52:36.82ID:Bl9nCmA61行以上の文章が読めないし、自分の都合のいい箇所しか見えてね―のなw
本当に脳味噌くさってやがったwww
0688デフォルトの名無しさん
2017/03/25(土) 20:53:41.80ID:yvUY9DOL自分の書き込みの99%をゴミで埋めるお前が悪い
0689デフォルトの名無しさん
2017/03/25(土) 20:55:09.08ID:ZnS2c8Uq0690デフォルトの名無しさん
2017/03/25(土) 20:55:17.80ID:Bl9nCmA6おまえそれ、正しくお前の言いたいことを書けてるの? 変な文章だけど。
じゃ、言葉のとおりに理解して言うと、
「オレの書き込みの中にゴミはひとかけらもねーよ」
以上。
ばかじゃね?
0691デフォルトの名無しさん
2017/03/25(土) 20:57:15.23ID:P+Eymz64馬鹿に決まってるだろ。
そんなことに今まで気づかなかったのか?
0692デフォルトの名無しさん
2017/03/25(土) 20:57:14.66ID:Bl9nCmA6高卒とかプレゼンとかはどうでもいいけどさ、canOpen()ありきで語ってるのがマヌケなんだよな。
だれもそんなクソメソッドの有効性をみとめてねーのに、
てめーで「こうだ!」とか勝手にかんがえて、そこから論理を展開してる。
根本的に非論理的なんだよ、こいつID:WyZVpsBF
0693デフォルトの名無しさん
2017/03/25(土) 21:02:17.09ID:P+Eymz64中学生かな?
0694デフォルトの名無しさん
2017/03/25(土) 21:02:54.87ID:Bl9nCmA6>>592 : デフォルトの名無しさん2017/03/25(土) 12:08:43.80 ID:Hepb4FxQ
狂った前提で一生懸命論理を展開して明後日の方向の結論をだして喜んでる。
0695デフォルトの名無しさん
2017/03/25(土) 21:06:14.87ID:Bl9nCmA6door.canbe_opened_by(cat, cat, cat);
または
door.canbe_opened_by([cat, cat, cat]);
0696デフォルトの名無しさん
2017/03/25(土) 21:06:28.78ID:yvUY9DOL何レス目の何行目から理由が書いてあるのかおしえて?
0697デフォルトの名無しさん
2017/03/25(土) 21:08:43.32ID:P+Eymz64深呼吸して落ち着こう
0698デフォルトの名無しさん
2017/03/25(土) 21:09:08.25ID:hqpJ8ypB0699デフォルトの名無しさん
2017/03/25(土) 21:13:15.27ID:RRHIuX+r扉とか猫とかしょうもない例え話
0700デフォルトの名無しさん
2017/03/25(土) 21:13:47.43ID:P+Eymz640701デフォルトの名無しさん
2017/03/25(土) 21:16:00.40ID:R9sPsJfEFILE *fp = fopen("/dev/null", "wb");
0702デフォルトの名無しさん
2017/03/25(土) 21:16:54.99ID:Bl9nCmA6>>632 の 1行目から >>664 の 4行目の間
読めって言ったじゃん。
お前は本当に、全部読んで意味を考えろよ。少しはお前の腐った脳もまともになるから。
テメーの都合のいい内容しか読んでね〜からてめーはバカなんだよ。
>>690 : デフォルトの名無しさん2017/03/25(土) 20:55:17.80 ID:Bl9nCmA6
> >688
> おまえそれ、正しくお前の言いたいことを書けてるの? 変な文章だけど。
> じゃ、言葉のとおりに理解して言うと、
> 「オレの書き込みの中にゴミはひとかけらもねーよ」
> 以上。
> ばかじゃね?
>>691 : デフォルトの名無しさん2017/03/25(土) 20:57:15.23 ID:P+Eymz64
> >690
> 馬鹿に決まってるだろ。
> そんなことに今まで気づかなかったのか?
0703デフォルトの名無しさん
2017/03/25(土) 21:17:17.78ID:1PW3zr8p0704デフォルトの名無しさん
2017/03/25(土) 21:18:13.67ID:Bl9nCmA6おー、おめーは少しはマトモなんだな?
ちょっとこれ説明しろよwwww
695 : デフォルトの名無しさん2017/03/25(土) 21:06:14.87 ID:Bl9nCmA6
なー、まじ、そろそろコレのキチガイ加減を説明できるマトモなグラマ、こないの?
door.canbe_opened_by(cat, cat, cat);
または
door.canbe_opened_by([cat, cat, cat]);
0705デフォルトの名無しさん
2017/03/25(土) 21:20:23.82ID:yvUY9DOLお前の書き込み一行もねーじゃねーか!w
0706デフォルトの名無しさん
2017/03/25(土) 21:21:46.64ID:P+Eymz64cat, cat, cat,cat, cat, cat,cat, cat, cat,cat, cat, cat,cat, cat, cat,
cat, cat, cat,cat, cat, cat,cat, cat, cat,cat, cat, cat,cat, cat, cat,
cat, cat, cat,cat, cat, cat,cat, cat, cat,);
こうするんだよ。
簡単でしょ。
0707デフォルトの名無しさん
2017/03/25(土) 21:23:31.14ID:Bl9nCmA6> >702
> お前の書き込み一行もねーじゃねーか!w
こいつ、何言ってんの?
オレの書き込み“以外”って言ったじゃん。
まじ、文盲なのな… かわいそうになってきた、こいつの頭
0708デフォルトの名無しさん
2017/03/25(土) 21:24:32.56ID:Bl9nCmA6オレ以外の第三書の意見を聞いてみろっつってんのに…
本物のアホだな… ID:yvUY9DOL
0709デフォルトの名無しさん
2017/03/25(土) 21:24:58.12ID:yvUY9DOLよくかんがえたら確かに猫が世界とのかかわりでOpenDoorなどというものを持ってるわけがなかった
ドアにopen,closeだけでなく、かけた力に反応するメソッドをもたして
実装:class Cat { pushObj(obj) { obj.gainPower(catpower); } }
呼出:cat.pushObj(door)
の結果ドアが開いてりゃいい
Bl9nCmA6マジ天才
0710デフォルトの名無しさん
2017/03/25(土) 21:25:49.78ID:Bl9nCmA6その引数、argvで取るつもりなん? 別にいーけど。
論点はそこじゃねーよ?
0711デフォルトの名無しさん
2017/03/25(土) 21:26:43.24ID:Gy0JTtQcそれはマルチスレッドの問題だろう。
通常は一匹のネコしかさわれないように
同期処理を行う。
0712デフォルトの名無しさん
2017/03/25(土) 21:26:52.40ID:Bl9nCmA6なんなの? コイツ…
0713デフォルトの名無しさん
2017/03/25(土) 21:27:45.04ID:Bl9nCmA6> 通常は一匹のネコしかさわれないように
> 同期処理を行う。
お客さまは、そのような仕様を受け入れてはくれません、の設定
0714デフォルトの名無しさん
2017/03/25(土) 21:32:12.53ID:P+Eymz64適当に書いた文にまでレスするなんてお前マジでイッってるな
0715デフォルトの名無しさん
2017/03/25(土) 21:35:35.41ID:P+Eymz640716デフォルトの名無しさん
2017/03/25(土) 21:39:58.22ID:yvUY9DOL0717デフォルトの名無しさん
2017/03/25(土) 21:42:43.74ID:Bl9nCmA6ただのじゃれ合いのつもりだったのに、致命傷負ってやがる…
0718デフォルトの名無しさん
2017/03/25(土) 21:44:11.67ID:Bl9nCmA6>オレ以外の上の方みてもわかるよなw
>読めばいいじゃん。文盲なの? 釣りじゃないよ?
0719デフォルトの名無しさん
2017/03/25(土) 21:45:14.47ID:Bl9nCmA6拾って大切に育てるんだよ? あたりまえじゃん。バカなの?
0720デフォルトの名無しさん
2017/03/25(土) 22:13:40.72ID:Bl9nCmA6寝るにしては撤収早くね?
さんざん独り言言ってるからかわいそうだと思ってあいてしてやったのに、
都合がわるくなったら一瞬で退去かよ…
ま、明日またくんだろ。
0721デフォルトの名無しさん
2017/03/25(土) 22:16:12.69ID:VqgCatE50722デフォルトの名無しさん
2017/03/25(土) 22:20:28.20ID:Bl9nCmA6こういうレスは、オブジェクト指向的には自分に対して言ってるって、誰かが名言吐いてたな
0723デフォルトの名無しさん
2017/03/25(土) 22:21:49.20ID:VqgCatE50724デフォルトの名無しさん
2017/03/25(土) 22:24:11.08ID:yvUY9DOL楽しみに待つスレ
0725デフォルトの名無しさん
2017/03/25(土) 22:30:57.77ID:Bl9nCmA6「どうか、このマヌケな私めに正しいオブジェクト指向の使い方をご教示いただけませんか? 神よ」
って、30回位毎日唱えてみたら道は開けるかもね。
0726デフォルトの名無しさん
2017/03/25(土) 22:31:20.11ID:Gy0JTtQc> お客さまは、そのような仕様を受け入れてはくれません、の設定
ではお客様の仕様どおりにしましょう。
さてどのようなの仕様なのですかな?
0727デフォルトの名無しさん
2017/03/25(土) 22:32:10.51ID:Bl9nCmA6わかんねーの? おまえ、本当にグラマかよ
0728デフォルトの名無しさん
2017/03/25(土) 22:34:06.38ID:Bl9nCmA6複数の猫が好き勝手にドアを押そうとする仕様をお客様は所望じゃ
0729デフォルトの名無しさん
2017/03/25(土) 22:34:28.88ID:BoJVNcT4それじゃあ、スレ主みたいに
オブジェクト指向を貶め関数指向を称賛する主張も変な感じだね
相反するもんでもないんだから
ただの愚痴じゃん
0730デフォルトの名無しさん
2017/03/25(土) 22:38:54.42ID:OsPiTP2t0731デフォルトの名無しさん
2017/03/25(土) 22:40:39.39ID:VqgCatE5^^
0732デフォルトの名無しさん
2017/03/25(土) 22:43:09.84ID:Bl9nCmA6>>727
^^
やてwwwwww 負け犬、素敵過ぎるwwwww
0733デフォルトの名無しさん
2017/03/25(土) 22:43:14.20ID:uvbjAxXdオブジェクト指向スレを建ててはわけわからん難癖つけて
結果として自分を除け者にして周りで議論が始まると
最後は「美少女オブジェクトはうんこしない」とか
自分で荒らして自分で建てたスレ潰すって
こいつのいつもの行動パターンだよ。
「美少女がうんこ」じゃなくて今度は「ネコがドア」だってよwって眺めてるけど。
0734デフォルトの名無しさん
2017/03/25(土) 22:43:49.62ID:VqgCatE50735デフォルトの名無しさん
2017/03/25(土) 22:44:14.61ID:Bl9nCmA6悪いな、バカしかいねーからこの世界でドアは開かねーよ
最初からオレのところに札束持ってきたら良かったのにな
0736デフォルトの名無しさん
2017/03/25(土) 22:44:57.06ID:Bl9nCmA6おつかれさまでした
やてwwwwww 負け犬、素敵過ぎるwwwww
0737デフォルトの名無しさん
2017/03/25(土) 22:45:52.36ID:WyZVpsBF力の弱いネコは重いドアを開けられないからレベルアップ必要とか
0738デフォルトの名無しさん
2017/03/25(土) 22:46:22.80ID:Bl9nCmA6なんかわからん話してるとこ申し訳ないけど、「こいつ」ってドイツなん? オランダなん?
お前、妄想でも見えるん?
0739デフォルトの名無しさん
2017/03/25(土) 22:46:59.11ID:hqpJ8ypB0740デフォルトの名無しさん
2017/03/25(土) 22:48:04.65ID:Bl9nCmA6おー、おまえ、少しだけマトモなこと言い始めたな
そうだよ、力の強い猫も弱い猫もいるわな。
いーよ、おまえ、なかなかいーよ♪
0741デフォルトの名無しさん
2017/03/25(土) 22:48:59.12ID:Bl9nCmA6はい
お ま え だ れ だ よ ! ! ! ? ? ?
死ね!
0742デフォルトの名無しさん
2017/03/25(土) 22:49:27.57ID:Gy0JTtQc> 複数の猫が好き勝手にドアを押そうとする仕様をお客様は所望じゃ
その場合はどうなるのかを聞いているのですが?
0743デフォルトの名無しさん
2017/03/25(土) 22:50:26.47ID:hqpJ8ypBお前も誰だよ
0744デフォルトの名無しさん
2017/03/25(土) 22:52:21.21ID:Bl9nCmA6単細胞生物だと思ってたのに、なんかプラナリアくらいには進化したんじゃね? くらいの発言だぞ、それ
0745デフォルトの名無しさん
2017/03/25(土) 22:52:28.68ID:Hepb4FxQキャットドアも実装できんかったか
0746デフォルトの名無しさん
2017/03/25(土) 22:53:43.50ID:Bl9nCmA6>>741
お前も誰だよ
あのさ、論理破綻したバカはしゃべらなくていいから。
「お前に聞いてねーのに返事するマヌケのお前は一体誰だ?」って言ってるんだけど、
お前の論旨はどうなってんの?
死ねよ、ホント
0747デフォルトの名無しさん
2017/03/25(土) 22:54:24.46ID:hqpJ8ypB俺が死ぬ理由がない
0748デフォルトの名無しさん
2017/03/25(土) 22:54:29.09ID:Bl9nCmA6お前みたいなマヌケには実装できなかったみたいだなw
0749デフォルトの名無しさん
2017/03/25(土) 22:55:12.71ID:Bl9nCmA6ゴミは、自分が焼却される理由を分かってないよな
0750デフォルトの名無しさん
2017/03/25(土) 22:55:39.95ID:hqpJ8ypBお前もな
0751デフォルトの名無しさん
2017/03/25(土) 22:56:24.30ID:Bl9nCmA6>>749
お前もな
あのさ、論理破綻したバカはしゃべらなくていいから。
お前の論旨はどうなってんの?
死ねよ、ホント
0752デフォルトの名無しさん
2017/03/25(土) 22:56:43.06ID:Gy0JTtQcできるよw
ドアというオブジェクトがあって
そのオブジェクトに力をかける。
力をかけるネコは当然何匹でも良い。
それぞれのネコ(オブジェクト)がそれぞれ力をかけるのだから。
力がかかったオブジェクト(ドア)はその力の合計によって動く
引数にネコがたくさんあるなんて馬鹿げた関数は不要。
そんなものを考えるやつがオブジェクト指向をを解してないだけ
自分の作り上げた変な関数を、自分で侮辱しているだけなのだ
オブジェクト指向だとこのようにシンプルに設計できる
0753デフォルトの名無しさん
2017/03/25(土) 22:57:22.54ID:yvUY9DOL>>422-423
これを金曜日の昼頃から延々やっている
0754デフォルトの名無しさん
2017/03/25(土) 22:58:37.45ID:Bl9nCmA6まぁ、合格だな
オレならもうちょっと突っ込んだとこまで説明するけど、それは
お前のレスに更にアホが食いついてきた時のためにとっておく。
な、オレが言ってること、ずーーーーーーーーーーっと前から正しかったろ?
0755デフォルトの名無しさん
2017/03/25(土) 22:59:09.14ID:hqpJ8ypBどーでもいいけどファビョりすぎじゃない?
0756デフォルトの名無しさん
2017/03/25(土) 22:59:47.99ID:Bl9nCmA6長引かせてるマヌケの張本人がいう言葉とも思えん…
0757デフォルトの名無しさん
2017/03/25(土) 23:00:31.29ID:Bl9nCmA6ファビョってるの、お ま え ら wwwww
お前らの言ってること、欠片も正当性ないじゃん、糞チョン脳どもw
0758デフォルトの名無しさん
2017/03/25(土) 23:00:38.19ID:Gy0JTtQc144レスも使っても説明できないお前と一緒にすんなやw
0759デフォルトの名無しさん
2017/03/25(土) 23:01:12.19ID:hqpJ8ypB無能ってことだね
0760デフォルトの名無しさん
2017/03/25(土) 23:03:11.28ID:Bl9nCmA6マヌケだな、全部おしえてやったら、お前らバカは全く学習しねーじゃん。
だからヒントだけ出し続けてお前らを導いてやってんのに、何言ってんだよ。
お前のレス>>752が完璧だと思ってるのか? バカだろお前
「まぁ、合格だな」が、「正解です」だと勘違いしたのか?
ばーーーーーーーーーーーーかwwwwwww
0761デフォルトの名無しさん
2017/03/25(土) 23:03:29.71ID:Bl9nCmA6お前がね
0762デフォルトの名無しさん
2017/03/25(土) 23:04:04.91ID:hqpJ8ypB0763デフォルトの名無しさん
2017/03/25(土) 23:05:28.67ID:Bl9nCmA6CatクラスとDoorクラスの実装♪
それでお前がどの程度まで理解してるのか分かるからさwww
>>752 : デフォルトの名無しさん2017/03/25(土) 22:56:43.06 ID:Gy0JTtQc
> >745
> できるよw
>
> ドアというオブジェクトがあって
> そのオブジェクトに力をかける。
>
> 力をかけるネコは当然何匹でも良い。
> それぞれのネコ(オブジェクト)がそれぞれ力をかけるのだから。
> 力がかかったオブジェクト(ドア)はその力の合計によって動く
>
> 引数にネコがたくさんあるなんて馬鹿げた関数は不要。
> そんなものを考えるやつがオブジェクト指向をを解してないだけ
> 自分の作り上げた変な関数を、自分で侮辱しているだけなのだ
>
> オブジェクト指向だとこのようにシンプルに設計できる
0764デフォルトの名無しさん
2017/03/25(土) 23:05:56.67ID:Bl9nCmA6自分が死ぬために念仏唱えてるのか、ご苦労様
0765デフォルトの名無しさん
2017/03/25(土) 23:06:41.67ID:Bl9nCmA6クソグラマしかいねーのかよ、マジ
0766デフォルトの名無しさん
2017/03/25(土) 23:07:26.68ID:yvUY9DOL現実の実装だとドアの管理にcatクラス作るあほはおらん
凝ってもdoor.canbe_opened_by(petSize) とか
0767デフォルトの名無しさん
2017/03/25(土) 23:08:49.08ID:Bl9nCmA6door.canbe_opened_by(cat, cat, cat);
または
door.canbe_opened_by([cat, cat, cat]);
これのバカサ加減についても説明しろ。
できんだろ? 本当に理解しているなら
0768デフォルトの名無しさん
2017/03/25(土) 23:09:53.54ID:Gy0JTtQc0769デフォルトの名無しさん
2017/03/25(土) 23:10:02.32ID:Bl9nCmA6------------------------------------------------------------------
766 : デフォルトの名無しさん2017/03/25(土) 23:07:26.68 ID:yvUY9DOL
別にほかの説明が間違ってるわけでも全然ないからな
現実の実装だとドアの管理にcatクラス作るあほはおらん
凝ってもdoor.canbe_opened_by(petSize) とか
0770デフォルトの名無しさん
2017/03/25(土) 23:10:32.46ID:Bl9nCmA6試してみればいいじゃんw
本当にオレが出来ないのか、お前がやってみればわかることじゃんwwwww
0771デフォルトの名無しさん
2017/03/25(土) 23:10:44.83ID:Gy0JTtQchttp://ncode.syosetu.com/n8541cr/ 👀
Rock54: Caution(BBR-MD5:0be20a4887bc3d3353f527d3636c44e3)
0772デフォルトの名無しさん
2017/03/25(土) 23:11:47.64ID:Bl9nCmA6オレとは違うって、言い張ってたんじゃなかったのかなー???wwwwwww
-------------------------------------------------------------------
758 : デフォルトの名無しさん2017/03/25(土) 23:00:38.19 ID:Gy0JTtQc
>>754
144レスも使っても説明できないお前と一緒にすんなやw
0773デフォルトの名無しさん
2017/03/25(土) 23:11:49.49ID:yvUY9DOL文章がバグってる
0774デフォルトの名無しさん
2017/03/25(土) 23:11:58.08ID:hqpJ8ypB0775デフォルトの名無しさん
2017/03/25(土) 23:12:27.58ID:Bl9nCmA6そもそもだね。俺は忙しんだよ。これ読むので。
いーーーーーーーーひゃっひゃっひゃっひゃ、逃げやがったw−−−−−−−−−−−wwww
0776デフォルトの名無しさん
2017/03/25(土) 23:12:40.34ID:Gy0JTtQcどういう理屈?
お前がやって見せないと、わかるわけがないだろう?
まず最初に理屈を教えてくれ。
0777デフォルトの名無しさん
2017/03/25(土) 23:12:49.84ID:Bl9nCmA6分かってないのは、お ま え だ け ♪
0778デフォルトの名無しさん
2017/03/25(土) 23:13:15.71ID:Gy0JTtQcおい、リンクを省略すんな。
重要なところだぞ
わざとか?
0779デフォルトの名無しさん
2017/03/25(土) 23:13:48.64ID:Bl9nCmA6>どういう理屈?
おまえ、やるじゃん
おれ、間違いをしてきするじゃん
理由をせつめいするじゃん
おまえ、ぐうの値もでないじゃん
おれ、勝利じゃん
ばかなの?
0780デフォルトの名無しさん
2017/03/25(土) 23:14:30.91ID:hqpJ8ypB0781デフォルトの名無しさん
2017/03/25(土) 23:14:31.72ID:Bl9nCmA6そう、わ ざ と
どうでもいいから、 わ ざ と
ばーーーーーーーーーーーーか
0782デフォルトの名無しさん
2017/03/25(土) 23:14:45.92ID:vdXeyx6o厄介な顧客の対応演習みたいなものなのかな
0783デフォルトの名無しさん
2017/03/25(土) 23:15:30.29ID:Bl9nCmA6そんなどうでもいい一行レス、一生懸命しなくてもいいのに
アホって素敵ね
おまえでもよくってよ?
遁走しようと必死な ID:Gy0JTtQcに変わって説明してくれても
0784デフォルトの名無しさん
2017/03/25(土) 23:15:33.63ID:hqpJ8ypB何をそんなにやりやってんの?
0785デフォルトの名無しさん
2017/03/25(土) 23:16:15.29ID:Bl9nCmA6>厄介な顧客の対応演習みたいなものなのかな
真面目に答えてやると、笑点のお題みたいなもの? くじゅあんだーすたん?
0786デフォルトの名無しさん
2017/03/25(土) 23:16:48.30ID:Gy0JTtQcみんなで餌をやりあってるんじゃないの?
ID:Bl9nCmA6 にw
0787デフォルトの名無しさん
2017/03/25(土) 23:16:47.71ID:Bl9nCmA6おまえの知能の欠陥による理解力の不足の事など、知らん
0788デフォルトの名無しさん
2017/03/25(土) 23:17:27.26ID:yvUY9DOL顧客がドアやペットの小売りなのか
ゲーム開発してるのかすらわからんからな
両方混ぜた変なシステムになりそう
0789デフォルトの名無しさん
2017/03/25(土) 23:17:35.64ID:Bl9nCmA6そういう自分に都合の良い解釈ばっかしてるとボケるよ?
どうでもいいから実装かけよw
お前が書いた仕様だろw
0790デフォルトの名無しさん
2017/03/25(土) 23:18:30.64ID:Bl9nCmA6無駄なレスが多すぎて本題が見えない
本題が見えないのに参加してきちゃったバカwwwwwwwwwww
やっべ、クソグラマ、やっべwwwwww
0791デフォルトの名無しさん
2017/03/25(土) 23:19:27.21ID:hqpJ8ypB0792デフォルトの名無しさん
2017/03/25(土) 23:20:19.94ID:Bl9nCmA6----------------------------------------------------------------------
755 : デフォルトの名無しさん2017/03/25(土) 22:59:09.14 ID:hqpJ8ypB
>>751
どーでもいいけどファビョりすぎじゃない?
759 : デフォルトの名無しさん2017/03/25(土) 23:01:12.19 ID:hqpJ8ypB
>>758
無能ってことだね
762 : デフォルトの名無しさん2017/03/25(土) 23:04:04.91 ID:hqpJ8ypB
なむなむ
780 : デフォルトの名無しさん2017/03/25(土) 23:14:30.91 ID:hqpJ8ypB
やれやれ
0793デフォルトの名無しさん
2017/03/25(土) 23:20:25.33ID:hqpJ8ypBまあそうかもしれんが、真面目にそろそろ終わらせればいいんじゃないかな
0794デフォルトの名無しさん
2017/03/25(土) 23:20:51.37ID:Bl9nCmA6読めばいいじゃん、も ん も う く ん ♪
0795デフォルトの名無しさん
2017/03/25(土) 23:22:13.18ID:Bl9nCmA6このバカ ID:Gy0JTtQc が
“自分の書いた仕様”についての実装を説明したら、終わるいとぐちが見えるかもねー♪
0796デフォルトの名無しさん
2017/03/25(土) 23:22:16.57ID:Gy0JTtQc> お前が書いた仕様だろw
仕様書いてないよ?
馬鹿なのかな?
0797デフォルトの名無しさん
2017/03/25(土) 23:22:48.22ID:Bl9nCmA6なんでこんなマヌケどもしか湧いてこないの?wwwwww
0798デフォルトの名無しさん
2017/03/25(土) 23:23:16.50ID:Gy0JTtQc0799デフォルトの名無しさん
2017/03/25(土) 23:24:08.21ID:Bl9nCmA6ほら、なんとか話をそらそうと、どうでもいいこと言い出したwwwww
これ、同実装するの?って話なことくらい、人間なら分かるよね? ロボなの?wwwww
------------------------------------------------------------------
752 : デフォルトの名無しさん2017/03/25(土) 22:56:43.06 ID:Gy0JTtQc
>>745
できるよw
ドアというオブジェクトがあって
そのオブジェクトに力をかける。
力をかけるネコは当然何匹でも良い。
それぞれのネコ(オブジェクト)がそれぞれ力をかけるのだから。
力がかかったオブジェクト(ドア)はその力の合計によって動く
引数にネコがたくさんあるなんて馬鹿げた関数は不要。
そんなものを考えるやつがオブジェクト指向をを解してないだけ
自分の作り上げた変な関数を、自分で侮辱しているだけなのだ
オブジェクト指向だとこのようにシンプルに設計できる
0800デフォルトの名無しさん
2017/03/25(土) 23:24:31.33ID:OsPiTP2tオブジェクト指向はキャットドアを付けるだけで破綻する
0801デフォルトの名無しさん
2017/03/25(土) 23:24:34.32ID:Bl9nCmA6そうだよ? さっきもそうだけど、おまえ、たまには正しいこと言うね
0802デフォルトの名無しさん
2017/03/25(土) 23:25:07.49ID:Gy0JTtQcそれ仕様じゃないって理解できてないの?
0803デフォルトの名無しさん
2017/03/25(土) 23:25:29.35ID:Bl9nCmA6だれもキャットドアなんか想定してねーってまだわかんねーのかゴミクズ!
お前だけは本当に吊れ!
0804デフォルトの名無しさん
2017/03/25(土) 23:26:05.29ID:Bl9nCmA6仕様かどうかなんて、今関係ねーって理解できてないの?
0805デフォルトの名無しさん
2017/03/25(土) 23:26:22.32ID:Gy0JTtQc> おまえ、たまには正しいこと言うね
マヌケなのに正しいんだ(笑)
ってことやマヌケじゃないってのが正解だろうね
0806デフォルトの名無しさん
2017/03/25(土) 23:26:32.97ID:Bl9nCmA60807デフォルトの名無しさん
2017/03/25(土) 23:26:55.16ID:Gy0JTtQc> どうでもいいから実装かけよw
> お前が書いた仕様だろw
仕様かどうかなんて、今関係ねーって理解できてないの?
0808デフォルトの名無しさん
2017/03/25(土) 23:27:21.32ID:OsPiTP2tキャットドアも付かないなんて大した汎用性だな
0809デフォルトの名無しさん
2017/03/25(土) 23:27:54.15ID:Bl9nCmA6>俺以外は全員マヌケ
お前、オレの言葉の意訳として書いたんだよな?
正しいじゃん。お前、何いってんの?
0810デフォルトの名無しさん
2017/03/25(土) 23:28:24.48ID:Bl9nCmA60811デフォルトの名無しさん
2017/03/25(土) 23:29:27.98ID:Bl9nCmA6キャットドアを付けるのが汎用的なのか、おまえの中では
本当に、砕け散れ!
0812デフォルトの名無しさん
2017/03/25(土) 23:29:56.14ID:VqgCatE50813デフォルトの名無しさん
2017/03/25(土) 23:30:27.68ID:Bl9nCmA6>>805 : デフォルトの名無しさん2017/03/25(土) 23:26:22.32 ID:Gy0JTtQc
とっとと、この実装を書いて晒せよ、ゴミカス
------------------------------------------------------------------
752 : デフォルトの名無しさん2017/03/25(土) 22:56:43.06 ID:Gy0JTtQc
>>745
できるよw
ドアというオブジェクトがあって
そのオブジェクトに力をかける。
力をかけるネコは当然何匹でも良い。
それぞれのネコ(オブジェクト)がそれぞれ力をかけるのだから。
力がかかったオブジェクト(ドア)はその力の合計によって動く
引数にネコがたくさんあるなんて馬鹿げた関数は不要。
そんなものを考えるやつがオブジェクト指向をを解してないだけ
自分の作り上げた変な関数を、自分で侮辱しているだけなのだ
オブジェクト指向だとこのようにシンプルに設計できる
0814デフォルトの名無しさん
2017/03/25(土) 23:31:02.21ID:Bl9nCmA6前提じゃなくて、事実なんだよ、いい加減に気付け
0815デフォルトの名無しさん
2017/03/25(土) 23:33:58.82ID:Bl9nCmA6こういう、破綻したことを平然というノータリンばっかなんだよな、実際
--------------------------------------------------------------------
805 : デフォルトの名無しさん2017/03/25(土) 23:26:22.32 ID:Gy0JTtQc
>>801
> おまえ、たまには正しいこと言うね
マヌケなのに正しいんだ(笑)
ってことやマヌケじゃないってのが正解だろうね
--------------------------------------------------------------------
0816デフォルトの名無しさん
2017/03/25(土) 23:35:11.03ID:Bl9nCmA6>>805 : デフォルトの名無しさん2017/03/25(土) 23:26:22.32 ID:Gy0JTtQc
とっとと、この実装を書いて晒せよ、ゴミカス
------------------------------------------------------------------
752 : デフォルトの名無しさん2017/03/25(土) 22:56:43.06 ID:Gy0JTtQc
>>745
できるよw
ドアというオブジェクトがあって
そのオブジェクトに力をかける。
力をかけるネコは当然何匹でも良い。
それぞれのネコ(オブジェクト)がそれぞれ力をかけるのだから。
力がかかったオブジェクト(ドア)はその力の合計によって動く
引数にネコがたくさんあるなんて馬鹿げた関数は不要。
そんなものを考えるやつがオブジェクト指向をを解してないだけ
自分の作り上げた変な関数を、自分で侮辱しているだけなのだ
オブジェクト指向だとこのようにシンプルに設計できる
0817デフォルトの名無しさん
2017/03/25(土) 23:38:10.20ID:Gy0JTtQcでもな、まだ5章を読んでるところなんだ
君のようにヒマじゃないんだよ
0818デフォルトの名無しさん
2017/03/25(土) 23:41:46.42ID:Bl9nCmA6んー、別に終わってからでいいよ? ずーっと待ってるから
言っとくけど、おれ、しつこいからね?
逃げたら一生馬鹿レス晒しつずけるよ♪
0819デフォルトの名無しさん
2017/03/25(土) 23:43:18.36ID:Bl9nCmA6トチ狂ったの、どうみてもお前じゃんw
0820デフォルトの名無しさん
2017/03/25(土) 23:44:16.18ID:Gy0JTtQcいつ終わるか知らないけど。
1週間に1話公開で最新話は2017/03/04公開のようだ
0821デフォルトの名無しさん
2017/03/25(土) 23:46:02.07ID:OsPiTP2t0822デフォルトの名無しさん
2017/03/25(土) 23:47:38.89ID:Gy0JTtQcお前オブジェクト指向分かってないんだからw
また自分の考えた設計を
自分自身で罵倒する気かw
0823デフォルトの名無しさん
2017/03/25(土) 23:49:23.11ID:hqpJ8ypB0824デフォルトの名無しさん
2017/03/25(土) 23:50:07.08ID:yvUY9DOL要件
>>422-423
追加案件
>>592
0825デフォルトの名無しさん
2017/03/25(土) 23:50:24.41ID:Bl9nCmA6その間、ずっとお前を貶しつづけるけどね。
お前は読むのに忙しくて反論なんかできねーよなw
てか、忙しいのになんでさっきから馬鹿レスしてるん?
コードかけんしゃん♪
0826デフォルトの名無しさん
2017/03/25(土) 23:51:58.84ID:Bl9nCmA6おめーは黙って向こう読んでろ、ゴミカス
0827デフォルトの名無しさん
2017/03/25(土) 23:52:37.89ID:Gy0JTtQcUnity使ったんだけど、物理演算機能が実装されていて
例えば、ドアオブジェクトを作って、
そこに力をかけると、ドアが開くとか
かんたんに実装できそうだ。
オブジェクト指向すごいよね
0828デフォルトの名無しさん
2017/03/25(土) 23:54:34.68ID:Bl9nCmA6よほど都合が悪い事があるようです
0829デフォルトの名無しさん
2017/03/25(土) 23:55:34.15ID:yvUY9DOL作るのは大概は超大変
パンピーは天才たちがつくったオブジェクトを使わせてもらって
手続き型で従来通り組めばいいんです
0830デフォルトの名無しさん
2017/03/25(土) 23:55:36.10ID:Bl9nCmA6読むんじゃなかったの?
0831デフォルトの名無しさん
2017/03/25(土) 23:57:20.84ID:WyZVpsBF結局何の用途に使うためモデリングするのか分からないと
どういうモデルがいいのかなんて決まらない
あるモデルがいいって主張してる人は頭の中でなんらかの用途を想定してるだろうから
それも書けばこの無駄レスの応酬から抜け出せるかもね
0832デフォルトの名無しさん
2017/03/25(土) 23:57:32.09ID:Gy0JTtQc0833デフォルトの名無しさん
2017/03/25(土) 23:57:52.47ID:Gy0JTtQc> 読むんじゃなかったの?
読んでるぞーw
0834デフォルトの名無しさん
2017/03/26(日) 00:02:00.02ID:7dOJEWlCそのとおりだな。
具体的な仕様が決まっていないならば、
現実世界をシミュレートするしかない。
それはそれでオブジェクト指向の得意とするところなんだが、
非現実世界であれば、ドア開け専用ネコみたいな
ものだって作れるからな。
0835デフォルトの名無しさん
2017/03/26(日) 00:02:59.99ID:zz1arhc30836デフォルトの名無しさん
2017/03/26(日) 00:05:11.30ID:KSncMErMなんだ? このノータリンアピール…
脳みそ腐ってるやつの行動は本当に理解できんな…
0837デフォルトの名無しさん
2017/03/26(日) 00:05:52.20ID:zz1arhc30838デフォルトの名無しさん
2017/03/26(日) 00:07:09.64ID:KSncMErMどういう風に話が展開してるか理解できない馬鹿はロムってていいんだよ?
0839デフォルトの名無しさん
2017/03/26(日) 00:08:13.04ID:KSncMErMそんなの書かなきゃわからねーの、お前みたいなアホだけだよ
0840デフォルトの名無しさん
2017/03/26(日) 00:08:37.25ID:9GEo9DLb0841デフォルトの名無しさん
2017/03/26(日) 00:11:20.99ID:7dOJEWlCはずれwww
0842デフォルトの名無しさん
2017/03/26(日) 00:19:36.80ID:zz1arhc30843デフォルトの名無しさん
2017/03/26(日) 00:20:49.02ID:7dOJEWlC良いってことよ
0844デフォルトの名無しさん
2017/03/26(日) 00:27:44.74ID:fIyCs4Ls仕様じゃなくて用途・目的・WHY
何に使うためにドアやネコをモデリングしようとしてるのか
現実世界をシミュレートしようとしたところで
モデルの優劣なんて決まらないから時間の無駄だよ
0845デフォルトの名無しさん
2017/03/26(日) 00:29:43.88ID:7dOJEWlC> 何に使うためにドアやネコをモデリングしようとしてるのか
それを俺が最初から聞いているんだが?
0846デフォルトの名無しさん
2017/03/26(日) 00:29:54.62ID:zz1arhc3逆にそこが曖昧だから全然話がかみ合ってないんだと思う
0847デフォルトの名無しさん
2017/03/26(日) 00:39:00.60ID:CxBsJ1k90848デフォルトの名無しさん
2017/03/26(日) 00:46:44.57ID:zz1arhc3DoorクラスとCatクラスがあるとして、それらをどのような目的で関連付けて何を処理したいのかが明確になっていないと思う
0849デフォルトの名無しさん
2017/03/26(日) 00:52:28.63ID:CxBsJ1k9オブジェクト指向を理解できない人なんていないんだよ
大概原因は要件定義がちゃんとできてないことによるミスアンダースタンディング
0850デフォルトの名無しさん
2017/03/26(日) 00:57:29.97ID:/dNZ7b2A>非現実世界であれば、ドア開け専用ネコみたいな
>ものだって作れるからな。
想像して噴いた
0851デフォルトの名無しさん
2017/03/26(日) 00:59:28.71ID:zz1arhc30852デフォルトの名無しさん
2017/03/26(日) 01:04:46.72ID:/dNZ7b2Aスレ主が言いたいのは、そういうことだったのかな
とはいえ、オブジェクト指向を超える概念を作れる
日本人計算機科学者が居ないんだから
仕方ないんだよ
0853デフォルトの名無しさん
2017/03/26(日) 01:05:39.18ID:9GEo9DLb0854デフォルトの名無しさん
2017/03/26(日) 01:06:35.42ID:fIyCs4Ls建築基準法とか出てきてるからドアのカタログでも管理したいんじゃないの
でもこれだとデータの話しかしてないからドアのカタログスペックをデータベースにでも入れとけばいい話
0855デフォルトの名無しさん
2017/03/26(日) 01:06:43.10ID:zz1arhc3オブジェクト指向が日本人向きじゃないとは全然思わないけどな…
0856デフォルトの名無しさん
2017/03/26(日) 01:18:22.89ID:CxBsJ1k9オブジェクト指向以前に一体何がしたいのか…
猫にドアを開けさせたくて、ドアを開けるメソッドと、開けられるかどうかを調べるメソッドを定義したいのか
その辺を明確にしてくれ
0857デフォルトの名無しさん
2017/03/26(日) 01:18:31.86ID:fIyCs4Ls「ワンにゃん大冒険 オブジェクト邸の謎(仮)」
犬や猫が洋館の中を人間に隠れて冒険しながら謎を解くゲーム
4人まで協力プレイ可
…
ドアや窓にはいろんな種類がありそれぞれ開け方や開く条件が異なる
…
0858デフォルトの名無しさん
2017/03/26(日) 01:53:09.12ID:pXpbP+f80859デフォルトの名無しさん
2017/03/26(日) 01:58:23.74ID:I6sXpNjBBoardクラス、Threadクラス、Userクラスって感じで分けて
各々の仕事やって必要あれば連携するわけでしょ?
ねこです、おねがいします。じゃないんだから
もっと具体的な例で話し合えよ
BoardはThreadを管理して
Threadはuser.WriteToThreadから書き込み受け取ってーみたいな
UserはuserのIDを24時間保持する、とかなんとか
0860デフォルトの名無しさん
2017/03/26(日) 02:20:40.86ID:zz1arhc3<Doorクラス>
フィールド:
・private int doorType // ドアの種類
(定数:HINGED_DOOR_WITH_KNOB, HINGED_DOOR_WITHOUT_KNOB, SLIDING_DOOR)
・private int doorStatus // ドアの状態
(定数:OPENED, CLOSED, BROKEN)
メソッド:
・public void setType(int type); // ドアタイプを変更
・public boolean open(); // ドアを開ける(戻り値 true:成功、false:失敗)
・public booloan close(); // ドアを閉める(戻り値 true:成功、false:失敗)
・public String getType(); // ドアの種類を返す(戻り値 doorTypeのStringインスタンス)
・public int getStatus(); // ドアの状態を返す
コンストラクタ:
・Door(); // デフォルト
・Door(int type); // タイプのみ指定、doorStatusはClosed
・Door(int type, int status); // タイプ、statusの両方指定してinstantiate
0861デフォルトの名無しさん
2017/03/26(日) 02:21:12.84ID:zz1arhc3フィールド:
・private String name // 名前
・private float weight // 体重
・private int sex // 性別
(定数:MALE, FEMALE)
・private Color color // 色
メソッド:
・public void setName(String name); // 猫の名前を設定
・public void setWeight(float weight); // 猫の体重を設定
・public void setSex(int sex); // 猫の性別を設定:Cat.MALE, Cat.FEMALE
・public void setColor(Color color); // 猫の色を設定
・public boolean openDoor(Door door); // その猫がdoorをOpen状態にする(戻り値 true:成功、false:失敗)
※this.canOpenDoor(door)の戻り値がtrueならdoor.open()を呼ぶ
・public boolean canOpenDoor(Door door); // その猫がdoorを開けられるかどうか調べる
※door.getType()がHINGED_DOOR_WITHOUT_KNOBの時のみtrueを返す
コンストラクタ:
・Cat(); // デフォルト
・Cat(name, weight, sex, color); // 名前、体重、性別、色全て指定してinstantiate
0862デフォルトの名無しさん
2017/03/26(日) 03:40:11.35ID:5CZauTMv0863デフォルトの名無しさん
2017/03/26(日) 05:28:45.51ID:EKCv78dEjavaじゃないが……変数名は合わせたよ、rubyぽくなくなったけど
http://ideone.com/Ww11nA
0864デフォルトの名無しさん
2017/03/26(日) 05:39:39.25ID:6T6lVuSZ怪しげな短縮アド貼るのはNG
0865デフォルトの名無しさん
2017/03/26(日) 05:48:48.41ID:EKCv78dEいやまてideone.com(Web上で好きなコード実行してくれるサービス)知らんとか
ないだろ……
0866デフォルトの名無しさん
2017/03/26(日) 06:00:57.42ID:EKCv78dE・なんかの変数を持ってて
・なんかを引数に入れたら
・中身で(だいたいprivateメソッドで)なんか計算して(副作用含む)
・なんか返すブツ
くらいしか考えてなくない?
俺もだけど
眠剤が効かないので寝れないほうが問題だよ……
0867デフォルトの名無しさん
2017/03/26(日) 07:48:46.59ID:KSncMErM>>861 名前:デフォルトの名無しさん 2017/03/26(日) 02:21:12.84 ID:zz1arhc3
おまえ、本当にクソグラマだろw
この話題展開で
・public void setName(String name); // 猫の名前を設定
・public void setWeight(float weight); // 猫の体重を設定
・public void setSex(int sex); // 猫の性別を設定:Cat.MALE, Cat.FEMALE
・public void setColor(Color color); // 猫の色を設定
なんか、いるかよw 問題点が見えてね―のか? マ・ヌ・ケwww
んで、そういう、問題に全く関係ない事書く割には話の展開で後半に追加された仕様について
全く考慮してないのなw
本当に も ん も う wwww
お前みたいなバカがつくったプログラムの依頼主が可愛そうだわ
0868デフォルトの名無しさん
2017/03/26(日) 07:49:31.51ID:KSncMErM>>862 : デフォルトの名無しさん2017/03/26(日) 03:40:11.35 ID:5CZauTMv
> ええやん
やてwwwww
ほんとに馬鹿ばっかwwwww
0869デフォルトの名無しさん
2017/03/26(日) 07:53:09.74ID:KSncMErM> DoorクラスとCatクラスが必要そうなゲームでも作れば
>
> 「ワンにゃん大冒険 オブジェクト邸の謎(仮)」
> 犬や猫が洋館の中を人間に隠れて冒険しながら謎を解くゲーム
> 4人まで協力プレイ可
> …
> ドアや窓にはいろんな種類がありそれぞれ開け方や開く条件が異なる
> …
>>858 : デフォルトの名無しさん2017/03/26(日) 01:53:09.12 ID:pXpbP+f8
> いきなり広げすぎw
バカじゃん? >>857は、結構マトモなことを言ってるのに…
>>851 : デフォルトの名無しさん2017/03/26(日) 00:59:28.71 ID:zz1arhc3
> そもそもお題が意味不明なのが諸悪の根元
こいつがバカの象徴だけどさ、
「お題が意味不明だ」なんて思ってるのは、
> door.canbe_opened_by(cat) 的なほうがいい気がする
とかホザイてるバカどもくらいだよw
十分な情報はとっくに出てんじゃん。も ん も う だ ら け ♪
0870デフォルトの名無しさん
2017/03/26(日) 07:55:08.34ID:KSncMErM(定数:OPENED, CLOSED, BROKEN)
腹いてぇwww
0871デフォルトの名無しさん
2017/03/26(日) 07:56:45.77ID:KSncMErM(定数:HINGED_DOOR_WITH_KNOB, HINGED_DOOR_WITHOUT_KNOB, SLIDING_DOOR)
・public String getType(); // ドアの種類を返す(戻り値 doorTypeのStringインスタンス)
猫にとってはそんな認識かんけーねーって、何度言わせんだwwww
0872デフォルトの名無しさん
2017/03/26(日) 07:59:06.43ID:KSncMErM>さっきまでの勢いが嘘のようだな…
夜中に何言ってんだ? こいつ…
>オブジェクト指向を理解できない人なんていないんだよ
そうかもな、お前みたいに、現実が理解できてないバカはたーくさん、上の方にいるけどなw
0873デフォルトの名無しさん
2017/03/26(日) 08:04:22.05ID:KSncMErMオレ以外だと >>857 ID:fIyCs4Ls くらいなのな
それ以外は本当に廃業したほうがいいんじゃね?
というか、わかんねーなら大人しくこのバカが実装晒すの待ってて、それ肴にすればいいのに
------------------------------------------------------------------
752 : デフォルトの名無しさん2017/03/25(土) 22:56:43.06 ID:Gy0JTtQc
>>745
できるよw
ドアというオブジェクトがあって
そのオブジェクトに力をかける。
力をかけるネコは当然何匹でも良い。
それぞれのネコ(オブジェクト)がそれぞれ力をかけるのだから。
力がかかったオブジェクト(ドア)はその力の合計によって動く
引数にネコがたくさんあるなんて馬鹿げた関数は不要。
そんなものを考えるやつがオブジェクト指向をを解してないだけ
自分の作り上げた変な関数を、自分で侮辱しているだけなのだ
オブジェクト指向だとこのようにシンプルに設計できる
0874デフォルトの名無しさん
2017/03/26(日) 08:05:29.32ID:KSncMErM>>837
はずれwww
は? このキチガイ、何言ってんだ????
0875デフォルトの名無しさん
2017/03/26(日) 08:09:24.11ID:KSncMErM> おさらい
>
> 要件
> >>422-423
>
> 追加案件
> >>592 ←これ間違ってるぞ 正しくは >>577-578
この追加案件のことが頭からすっぽり抜けてるバカ、多すぎ
0876デフォルトの名無しさん
2017/03/26(日) 08:14:56.10ID:KSncMErM・public booloan close(); // ドアを閉める(戻り値 true:成功、false:失敗)
あのさぁ…
0877デフォルトの名無しさん
2017/03/26(日) 08:18:03.12ID:KSncMErMなぜ発表しようと思ったんだ? こいつ… ID:fIyCs4Ls
とっとと
>>752 : デフォルトの名無しさん2017/03/25(土) 22:56:43.06 ID:Gy0JTtQc
このバカ、実装晒さねーかな
おまえら馬鹿すぎて、いつまでたっても話、前にすすまねーよ
0878デフォルトの名無しさん
2017/03/26(日) 08:21:28.28ID:KSncMErMす、すまん ID:fIyCs4Ls
> なぜ発表しようと思ったんだ? こいつ… ID:zz1arhc3
の間違いだ。申し訳ない
0879デフォルトの名無しさん
2017/03/26(日) 08:29:36.53ID:KSncMErM>>860 名前:デフォルトの名無しさん 2017/03/26(日) 02:20:40.86 ID:zz1arhc3
>>861 名前:デフォルトの名無しさん 2017/03/26(日) 02:21:12.84 ID:zz1arhc3
このバカのクラス定義についてさ、
> 追加案件
> >>592 ←これ間違ってるぞ 正しくは >>577-578
これを加味して修正かけさせたらいいんじゃね?
そうしたら、
door.canbe_opened_by(cat)
が、いかにクソ設計か嫌というほどわかるから。おまえらはそうやって数百レス消費しないと理解できないんだろ? バカ過ぎて。
おれは、1レスで全部理解してたけどな。
0880デフォルトの名無しさん
2017/03/26(日) 08:37:29.51ID:KSncMErM>さて“いぬ猫には”ドアノブを開店させることはできないが、プッシュで動くドアなら、ある一定の重量以下で押すことができるだろう
なんでお前ら、Catクラス決め打ちになっちゃってんの?wwwwww
>>480 「動物が1万種類いたらDoorクラスで1万件の開く条件分岐しやがるのか、てめーは 」
オレ、本当に天才よね。オレだけじゃん、他の動物がいる可能性について考慮してたの
0881デフォルトの名無しさん
2017/03/26(日) 08:43:56.85ID:KSncMErM上の方で、それについてはオレも認めているしな。
理解度は、かなり低いが、まぁ、バカにしてはよくやっている方だ。
0882デフォルトの名無しさん
2017/03/26(日) 08:49:58.93ID:CFMZDvhX並列処理でもないのに部品をいっぱい作るところかな
結局複雑にしてバトン渡してるだけだからピンとこないんだろう
0883デフォルトの名無しさん
2017/03/26(日) 08:57:38.30ID:KSncMErMピンときてるお前がズバッとイカしたコードをパブリッシュしてもよろしくってよ?
0884デフォルトの名無しさん
2017/03/26(日) 09:29:20.52ID:CxBsJ1k9超絶優秀なお前なら小一時間もかからずできるんだから、ささっとideoneにでも実装上げて終わりにしろよ
じゃないとお前もギャーギャー一人でわめいてるただの馬鹿になるぞ
0885デフォルトの名無しさん
2017/03/26(日) 09:51:07.27ID:KSncMErM> >883
> じゃないとお前もギャーギャー一人でわめいてるただの馬鹿になるぞ
ぷっ ばかじゃん?
これまでのオレの書き込み内容見て、まだそんなこといってんだw
もう、いまさらそんな煽り、何の意味もなさねーよ
アホほど威勢がいいよな、ホント
本物のアホだって自己紹介は、もう、あきたー
0886デフォルトの名無しさん
2017/03/26(日) 09:53:11.52ID:KSncMErM>>884 : デフォルトの名無しさん2017/03/26(日) 09:29:20.52 ID:CxBsJ1k9
> >883
> 超絶優秀なお前なら小一時間もかからずできるんだから、ささっとideoneにでも実装上げて終わりにしろよ
> じゃないとお前もギャーギャー一人でわめいてるただの馬鹿になるぞ
お前が上げればいいじゃんwwww
おまえ、ギャーギャーわめいてるただの馬鹿じゃないんだろ???????
うっひゃっひゃっひゃっひゃ、はらいてーwwwww
0887デフォルトの名無しさん
2017/03/26(日) 09:55:52.88ID:KSncMErMお前らがまともな設計するか、このバカが実装さらすまでおわらねーってこと
------------------------------------------------------------------
752 : デフォルトの名無しさん2017/03/25(土) 22:56:43.06 ID:Gy0JTtQc
>>745
できるよw
ドアというオブジェクトがあって
そのオブジェクトに力をかける。
力をかけるネコは当然何匹でも良い。
それぞれのネコ(オブジェクト)がそれぞれ力をかけるのだから。
力がかかったオブジェクト(ドア)はその力の合計によって動く
引数にネコがたくさんあるなんて馬鹿げた関数は不要。
そんなものを考えるやつがオブジェクト指向をを解してないだけ
自分の作り上げた変な関数を、自分で侮辱しているだけなのだ
オブジェクト指向だとこのようにシンプルに設計できる
0888デフォルトの名無しさん
2017/03/26(日) 09:56:08.33ID:CxBsJ1k9威勢がいいのはどっちだよ…
人の作ったものへのダメ出しは出来ても、ゼロから何かを作ることは出来ない人なのかな
0889デフォルトの名無しさん
2017/03/26(日) 10:04:56.46ID:EQ4b/fv4罵りあいは別でやってもらえないですかね
0890デフォルトの名無しさん
2017/03/26(日) 10:27:11.33ID:x4Z/V1LAワロタ
0891デフォルトの名無しさん
2017/03/26(日) 10:28:06.09ID:KSncMErM>人の作ったものへのダメ出しは出来ても、ゼロから何かを作ることは出来ない人なのかな
出来るからダメ出ししてるんだってこと、これだけオレのレス読んでもまだ理解できないの?
ま ぬ け ♪
0892デフォルトの名無しさん
2017/03/26(日) 10:28:52.50ID:KSncMErMどんだけレベル低いツボなんだよ、おまえの笑点wwwwww
0893デフォルトの名無しさん
2017/03/26(日) 10:29:09.43ID:9GEo9DLb0894デフォルトの名無しさん
2017/03/26(日) 10:30:05.08ID:KSncMErM上の方でオレが引用したお前らのレスとそれに関するオレのコメントが全部物語ってるから
0895デフォルトの名無しさん
2017/03/26(日) 10:30:56.33ID:KSncMErM>>884 : デフォルトの名無しさん2017/03/26(日) 09:29:20.52 ID:CxBsJ1k9
> >883
> 超絶優秀なお前なら小一時間もかからずできるんだから、ささっとideoneにでも実装上げて終わりにしろよ
> じゃないとお前もギャーギャー一人でわめいてるただの馬鹿になるぞ
お前が上げればいいじゃんwwww
おまえ、ギャーギャーわめいてるただの馬鹿じゃないんだろ???????
うっひゃっひゃっひゃっひゃ、はらいてーwwwww
0896デフォルトの名無しさん
2017/03/26(日) 10:31:42.03ID:KSncMErM0897デフォルトの名無しさん
2017/03/26(日) 10:33:10.24ID:KSncMErM>>860 名前:デフォルトの名無しさん 2017/03/26(日) 02:20:40.86 ID:zz1arhc3
>>861 名前:デフォルトの名無しさん 2017/03/26(日) 02:21:12.84 ID:zz1arhc3
こういうバカ定義するんだろうなー
いいな、いいなー、ノータリンっていいなー♪
0898デフォルトの名無しさん
2017/03/26(日) 10:34:27.06ID:KSncMErMID:CxBsJ1k9
はやくー
ぷりーず♪w
0899デフォルトの名無しさん
2017/03/26(日) 10:37:07.44ID:wLX0ZmuVhttp://world-fusigi.net/archives/8784113.html
の記事を思い出した
0900デフォルトの名無しさん
2017/03/26(日) 10:37:11.71ID:KSncMErM> クラスネタだとさあ、大半の人は
>
> ・なんかの変数を持ってて
> ・なんかを引数に入れたら
> ・中身で(だいたいprivateメソッドで)なんか計算して(副作用含む)
> ・なんか返すブツ
>
> くらいしか考えてなくない?
> 俺もだけど
>
> 眠剤が効かないので寝れないほうが問題だよ……
そうだよー、大半の“バカ”はそうだよー? 上の方見ればわかるじゃん
でも、オレとかを一緒にしないでねー?
0901デフォルトの名無しさん
2017/03/26(日) 10:39:27.15ID:KSncMErMそういうことにしておかないと、“見下されたバカ”の気持ちが収まらないもんな
バカほどプライド高いからさw
0902デフォルトの名無しさん
2017/03/26(日) 10:40:20.41ID:cyHlMDDkでもおまえ抽象化理解していないじゃん
0903デフォルトの名無しさん
2017/03/26(日) 10:40:45.07ID:KSncMErMてかさ、そういうことは、お前らの誰か一人でもマトモなコード晒してから言えよって話よねw
オレに片っ端からつっこまれて、おまえら、一切それについては反論できてねーじゃん
本当にプログラマなのかよ? お前ら
0904デフォルトの名無しさん
2017/03/26(日) 10:41:13.34ID:KSncMErMわけわからんこと言い出したな
論拠は?
0905デフォルトの名無しさん
2017/03/26(日) 10:44:19.39ID:x4Z/V1LA岬ちゃん
0906デフォルトの名無しさん
2017/03/26(日) 11:01:44.37ID:KSncMErM論拠、どうしたん? なんで理解できてないと思ったん? バカなん? 妄想癖なん? 天の声きこえるん?
0907デフォルトの名無しさん
2017/03/26(日) 11:28:41.05ID:Y0bfhEoZ0908デフォルトの名無しさん
2017/03/26(日) 11:35:00.99ID:9/vJOC7I次はいらんな
0909デフォルトの名無しさん
2017/03/26(日) 11:44:15.81ID:cyHlMDDkおまえが抽象化を理解していないことは>>440で証明してると言っただろ
何度も言わせんな
0910デフォルトの名無しさん
2017/03/26(日) 11:48:44.89ID:KSncMErM> >906
> おまえが抽象化を理解していないことは>>440で証明してると言っただろ
> 何度も言わせんな
おまえ、「論拠」の意味分かってないの?
なんで、>>440で分かってないことになるのか、それを説明するのが「論拠」じゃん
ほんとさ、マヌケはくだらねープライドとかどうでもいいからさ、
言われたことだけに答えろよ
おまえらは本当にどうしようもないバカなんだから
0911デフォルトの名無しさん
2017/03/26(日) 11:50:16.42ID:KSncMErM> >906
> おまえが抽象化を理解していないことは>>440で証明してると言っただろ
> 何度も言わせんな
∩_
〈〈〈 ヽ
〈⊃ }
∩___∩ | |
| ノ ヽ ! !
/ ● ● | /
| ( _●_) ミ/ 本日最高のバカ!!!(暫定)
/ __ ヽノ /
(___) /
0912デフォルトの名無しさん
2017/03/26(日) 11:51:35.28ID:KSncMErM誰か上で言ってたけど、プレゼンの仕方教わってね―高卒みたいな話だと思うけど…
ほんと、ちまたのクソグラマって馬鹿ばっかだけど自覚してねーもんな…
0913デフォルトの名無しさん
2017/03/26(日) 11:53:26.95ID:KSncMErM> すげーな。数日でスレ消費完了やん
> 次はいらんな
立てるに決まってんじゃん♪
それが楽しみで待ってんだから
0914デフォルトの名無しさん
2017/03/26(日) 11:54:14.90ID:KSncMErM> 天の声きこえるん?
聞こえるみたいよ? こいつはw
902 : デフォルトの名無しさん2017/03/26(日) 10:40:20.41 ID:cyHlMDDk
0915デフォルトの名無しさん
2017/03/26(日) 11:55:16.61ID:wLX0ZmuVうん、次スレは要らないね
0916デフォルトの名無しさん
2017/03/26(日) 11:55:44.78ID:KSncMErM>>909 : デフォルトの名無しさん2017/03/26(日) 11:44:15.81 ID:cyHlMDDk
とかが作ったプログラムを使わされるクライアントが哀れ過ぎるな…
0917デフォルトの名無しさん
2017/03/26(日) 11:56:10.30ID:KSncMErMアホか、おめー
立てるって言ってんだろw
0918デフォルトの名無しさん
2017/03/26(日) 12:13:50.63ID:tNCmzNST0919デフォルトの名無しさん
2017/03/26(日) 12:25:17.87ID:KSncMErM0920デフォルトの名無しさん
2017/03/26(日) 12:27:13.25ID:Y0bfhEoZなんぼなんでも
0921デフォルトの名無しさん
2017/03/26(日) 12:31:33.58ID:EKCv78dEインスタンス変数の初期値指定してないとか
しょっぱなから萎えたのでネタに走ったが
0922デフォルトの名無しさん
2017/03/26(日) 12:38:29.83ID:KSncMErM>>440の事? ならねーと思うなら実際に実装みせてみろよ
そうすっとお前らが如何にアホかわかるし、
同時にdoor.canbe_opened_by(cat) のバカさ加減も露呈してくっから
オブジェクト指向わかってたらこんなスレにはなってないという話なら
そのとおりだ。
分かってねぇ馬鹿しかいねぇからこうなってる。
0923デフォルトの名無しさん
2017/03/26(日) 12:39:57.43ID:KSncMErMだからな、お前らは本当にアホすぎるんだから、お前らの弱い頭で出した結論なんかメチャクチャ過ぎて話にならねぇの。
お前が実際に実装書いて晒せば全てわかるんだから、妄想働かせてねーでコード書けよ、脳無し
0924デフォルトの名無しさん
2017/03/26(日) 12:43:15.48ID:KSncMErM本当に自分の都合のいい部分しか読んでねーし、
基本3行以上は理解できねぇんだろうな。
そりゃ、脳の欠陥だよ。病院行け。
0925デフォルトの名無しさん
2017/03/26(日) 12:45:43.03ID:Y0bfhEoZ君がコードかいた部分どこにもみあたらないんだけど
何百スレも費やして相手を罵らないでも
自分がコードかいたら終わる話じゃん
0926デフォルトの名無しさん
2017/03/26(日) 12:52:50.15ID:K8PTcO/0door.open(power)
0927デフォルトの名無しさん
2017/03/26(日) 12:54:30.14ID:5CZauTMvそうじゃなかったんだ
キャットドアの問題一つで容易に破壊できたんだ
だってオブジェクト指向を信じている人たちはオブジェクト指向をつかって何かをなしえたことがないのだから
0928デフォルトの名無しさん
2017/03/26(日) 13:00:44.43ID:5CZauTMvオブジェクト指向に人生破壊されて狂う人たち
君達のサビ残がまさかオブジェクト指向によって生産されているとは思いもしない
オブジェクト指向は自然言語から人工言語へのコンバートに対して何も有用でない
500レス費やしてまともなコードをかけたのが何人いただろうか
オブジェクト指向って不自然な文法だけでなく、生産性も低いよな
生産性が低い人間が何かしら設計行為をなしえていると思わせる言語だ、こういう役立たずは文系でも務まるわ、理系にもこういうパラダイムに騙される馬鹿多いけど
0929デフォルトの名無しさん
2017/03/26(日) 13:15:08.21ID:EKCv78dEいんでぶ使ってりゃいいんでない? 仕様書の文面からコード吐くのが売りでそ
まあみずほ案件見る限り、生産性は疑問だけど(もう終わってないとおかしくね?)
0930デフォルトの名無しさん
2017/03/26(日) 13:15:32.82ID:wLX0ZmuVあんたがRuby読めるか知らないけど、その人は>>863に一応書いてくれてるみたいだけど
0931デフォルトの名無しさん
2017/03/26(日) 13:18:14.95ID:EKCv78dEアレ「ボケて」仕様やで、本人が保証
0932デフォルトの名無しさん
2017/03/26(日) 13:29:03.98ID:2Hrx9090論拠なるものも一度説明したがそれで理解できなきなら理解する頭を持ち合わせていないおまえが悪い反省しろ
再度言うと抽象化を理解しているなら440のような発想にはならない
つまりおまえはオブジェクト指向を理解していない
0933デフォルトの名無しさん
2017/03/26(日) 13:44:53.35ID:Y0bfhEoZ0934デフォルトの名無しさん
2017/03/26(日) 13:47:14.47ID:tNCmzNST0935デフォルトの名無しさん
2017/03/26(日) 13:55:40.44ID:wLX0ZmuV>>931
そ、そうですか…
0936デフォルトの名無しさん
2017/03/26(日) 13:57:39.40ID:ZrNYQ0Geオブジェクト指向信者は何でも肯定だし、アンチは何でも否定と両極端。
その時その時でオブジェクト指向がピッタリくる場合もあるし、そうじゃ無い場合も有るだろ。
オブジェクト指向なんか勉強するより、オブジェクト指向なる物を最初にはじめた奴がどんな問題にぶち当たってて、どう解決したかを勉強した方がよっぽどましだ。
0937デフォルトの名無しさん
2017/03/26(日) 14:01:18.26ID:7dOJEWlC投稿するのは勝手だけど、俺の権限を使って
その投稿は却下させるよw
0938デフォルトの名無しさん
2017/03/26(日) 14:01:53.79ID:tNCmzNST0939デフォルトの名無しさん
2017/03/26(日) 14:04:39.69ID:7dOJEWlC> オブジェクト指向なる物を最初にはじめた奴がどんな問題にぶち当たってて、
順番が逆
どんな問題にぶち当たってて、オブジェクト指向をはじめたのかを勉強するべき
ちなみに俺は開発を効率的に行う(複数人での並列開発や拡張性や重複したコードの排除等)
にはどうすればいいか?という問題にぶつかって自然にオブジェクト指向を始めるに至った
0940デフォルトの名無しさん
2017/03/26(日) 14:09:47.08ID:7dOJEWlC例えばシューティングゲームだと同じタイプの敵が複数でてきて
同じ動きをするが、初期位置という情報で出現場所は違っていて、
それぞれでHPを持っているとか
0941デフォルトの名無しさん
2017/03/26(日) 14:10:11.88ID:2Hrx9090オブジェクト指向言語の多くが手続き型と併用だし数年前からjava中心に流行っているRxなんてほぼ関数型アルゴリズムだしオブジェクト指向パラダイムのみでプログラミングしてるやつなんてほぼいない
オブジェクト指向どころかプログラミングパラダイム全般を理解していないからオブジェクト指向マンセーに見えるだけである
0942デフォルトの名無しさん
2017/03/26(日) 14:14:06.30ID:NX2FjwOv0943デフォルトの名無しさん
2017/03/26(日) 14:17:13.64ID:7dOJEWlC0944デフォルトの名無しさん
2017/03/26(日) 14:17:59.08ID:Zh9dYFfjオレが書いたら終わっちゃうじゃん、つまんねーじゃん
url貼って、これ読み終わったらかくって大見得きってた本物の馬鹿君に申し訳ないじゃん♪
0945デフォルトの名無しさん
2017/03/26(日) 14:18:53.61ID:Zh9dYFfjばかだろ?
0946デフォルトの名無しさん
2017/03/26(日) 14:19:45.90ID:Zh9dYFfjオレ以外な
0947デフォルトの名無しさん
2017/03/26(日) 14:21:19.74ID:ZrNYQ0Ge順番一緒だぞ。
日本語の問題か?
0948デフォルトの名無しさん
2017/03/26(日) 14:23:20.68ID:Zh9dYFfjオレは書くまでもなく、ここにいるアホどもの狂ったオブジェクト指向をさらけ出してやってるけどな。
0949デフォルトの名無しさん
2017/03/26(日) 14:25:35.71ID:Zh9dYFfj見たに決まってんじゃん
全然ダメ
発達障害レベルのクソ設計
0950デフォルトの名無しさん
2017/03/26(日) 14:25:52.96ID:ZrNYQ0Ge話ズレてる。
0951デフォルトの名無しさん
2017/03/26(日) 14:27:31.19ID:Zh9dYFfjこういう逃げしか出来ない馬鹿がなんかの参考になるわけねーだろ
>>939
0952デフォルトの名無しさん
2017/03/26(日) 14:28:40.23ID:Zh9dYFfjキーちいせぇよ…
0953デフォルトの名無しさん
2017/03/26(日) 14:31:14.64ID:Zh9dYFfjなるかならないか判断してするのはおまえじゃねーってまだ高卒はりかいできねーの?
死んだほうが良いって、ほんとおまえ
0954デフォルトの名無しさん
2017/03/26(日) 14:32:27.16ID:wLX0ZmuV不毛な話に終始するんだから次スレは要らないって言ったじゃない...
0955デフォルトの名無しさん
2017/03/26(日) 14:32:29.93ID:Zh9dYFfjこいつだけは、本当に脳みそ腐りやがってるな
0956デフォルトの名無しさん
2017/03/26(日) 14:33:20.61ID:Zh9dYFfj立てるって言ったじゃん、ばかなの?
0957デフォルトの名無しさん
2017/03/26(日) 14:33:47.90ID:wLX0ZmuVと思ったら、スレタイ変わってたしw
0958デフォルトの名無しさん
2017/03/26(日) 14:37:31.01ID:2Hrx9090判断するのは俺でもよいし俺でなくてもよい
ようするにおまえの思考がオブジェクト指向ではないことが理解できればよいわけだから
0959デフォルトの名無しさん
2017/03/26(日) 15:07:40.91ID:fIyCs4Lsいろんな種類のドアを共通して扱えるようなドアのライブラリとしてDoorクラスを作るんだとしたら
open()やclose()はドアの種類によって実装が異なると思うんだけどdoorTypeは定数で管理するの?
JavaらしくあとはDoorクラスを継承して自前で実装してねってことかな
ノブ付きのスライドドアや錠付きのスライドドアなんかも定数化していくと
open()の中で共通するスライド動作についてはコピペになるかペルパーメソッドかになるよね
0960デフォルトの名無しさん
2017/03/26(日) 15:14:51.36ID:7dOJEWlC> いろんな種類のドアを共通して扱えるようなドアのライブラリとしてDoorクラスを作るんだとしたら
その場合は、DoorクラスというよりDoorインターフェースと言うべきだろうな。
doorType = クラスだよ。Typeの数だけ、Doorインターフェースを実装したクラスができる
オブジェクト指向なら定数がなくなるね
0961デフォルトの名無しさん
2017/03/26(日) 15:17:01.49ID:7dOJEWlCノブ付き や 錠付き の
「付き」がヒントかな。
これらは継承で表現するものじゃない。
付いているだけなのだから
こういうのはロボットが武器を装備するのと同じ扱い
0962デフォルトの名無しさん
2017/03/26(日) 15:18:49.00ID:wLX0ZmuV確かにdoorTypeをDoorインターフェースを実装したクラスにするのもありだね
0963デフォルトの名無しさん
2017/03/26(日) 15:20:41.39ID:2Hrx9090ズレてないよ
1人だけオブジェクト指向を知らずにハッスルしてやつがいるから両極端に見えるだけで全体の構造設計のとっかかりとしてオブジェクト指向を使ってる人はオブジェクト指向のみを信仰しているわけではないということ
0964デフォルトの名無しさん
2017/03/26(日) 15:24:27.16ID:wLX0ZmuVopen()、close()が内部的にドアの開閉状態を表すdoorStateを書き換えるだけなら
doorTypeによらず同じ実装でもいける気はするけどね
0965デフォルトの名無しさん
2017/03/26(日) 15:29:59.62ID:7dOJEWlC同じ実装で行けるのなら Doorインターフェースを実装した
BaseDoorクラスを継承すれば良いんだよ
0966デフォルトの名無しさん
2017/03/26(日) 15:34:39.45ID:7dOJEWlCルールとしてはDoorインターフェースを実装していればいいってだけなので
BaseDoorクラスを継承しても良いし、独自でDoorインターフェースを実装しても良い。
またBaseDoorクラスを継承しなくてコンポジションを使って移譲してもよい
いずれにしろ求められているのはDoorインターフェースを実装するってだけ
0967デフォルトの名無しさん
2017/03/26(日) 15:58:10.49ID:EKCv78dE不真面目の極みにしか見えないはずなんだがなあ
設計とかいうレベルですらないし
パブリックメソッドを使わないでメンバ変数の値設定したり
勝手にインスタンスのメソッド消してゴーストしたり
メソッド乗っ取って例外投げさせたり
「オブジェクト指向? ハァ?」状態にしてあるので
0968デフォルトの名無しさん
2017/03/26(日) 16:05:45.98ID:TXTrXvbyなぜドアに自分自身の開閉状態を知る事が出来るのか?
0969デフォルトの名無しさん
2017/03/26(日) 16:11:04.81ID:yfXNbDHU0970デフォルトの名無しさん
2017/03/26(日) 16:11:55.80ID:fIyCs4Ls型としてのDoorを流れを考慮して便宜的にDoorクラスと書いてるんだよ
このレベルの抽象度でDoor型の実装をインターフェースにするかクラスにするかそれ以外にするかはさして重要じゃない
もし早い段階から分けて考えることを強制されてるんならそれは使ってる言語の制約だし考え方が実装に寄り過ぎてると思うよ
で>>860の例はdoorType = クラスにはなってないよね?
0971デフォルトの名無しさん
2017/03/26(日) 16:28:28.75ID:fIyCs4Lsネタだろうけどマジレスすると
把握すべき状態変化を該当のオブジェクトに閉じ込めることで
開発や維持管理上の利便性が高まるからそういう仕組みにしてるだけ
現実のドアが自分の開閉状態を知ることができないとか自分で開閉することができないとか
そういうのと特定の用途のためにドアをどうモデル化するかは全く別次元の話
それを分離して考えられない人にはオブジェクト指向は無理
0972デフォルトの名無しさん
2017/03/26(日) 17:13:36.94ID:wLX0ZmuV本当そう思う
0973デフォルトの名無しさん
2017/03/26(日) 18:05:48.35ID:x4PiaTuJそだね
0974デフォルトの名無しさん
2017/03/26(日) 18:08:55.72ID:TXTrXvby全然別観点のレスきてワロタw
思った通りだけどw
0975デフォルトの名無しさん
2017/03/26(日) 18:18:34.33ID:EKCv78dEみたいな……
0976デフォルトの名無しさん
2017/03/26(日) 18:23:43.57ID:EKCv78dE実装がめんどくさすぎるならたぶんバグ乱打で使い物にならない
継承ツリーが五段六段とか、インターフェースとインターフェースをアダプタしまくりとか
と思ったのは俺だけだろうか
0977デフォルトの名無しさん
2017/03/26(日) 18:36:04.38ID:5CZauTMvプロジェクトが完成のメド立たず破綻4000億円がパー
オブジェクト指向は貧乏神か何かか?
みずほのプロマネが悪かった?
は?お前らよりは賢いと思うけど?
0978デフォルトの名無しさん
2017/03/26(日) 18:37:33.74ID:x+8SPGXv0979デフォルトの名無しさん
2017/03/26(日) 18:44:37.52ID:shCY5XLb何そのプロジェクト、詳しく調べたいから教えたって。
0980デフォルトの名無しさん
2017/03/26(日) 18:44:44.51ID:wLX0ZmuVどう考えてもマネージャーが無能
0981デフォルトの名無しさん
2017/03/26(日) 18:45:13.04ID:shCY5XLb0982デフォルトの名無しさん
2017/03/26(日) 18:58:20.14ID:e3sv7A1eうん、納得
0983デフォルトの名無しさん
2017/03/26(日) 19:01:40.36ID:e3sv7A1e合併の絡みだろ?
組織が依存しあってるからオブジェクト指向は無理っすわ
0984デフォルトの名無しさん
2017/03/26(日) 19:03:54.81ID:4NQfH3Br0985デフォルトの名無しさん
2017/03/26(日) 19:11:18.79ID:K0FPpjuZgoto文が悪いわけではないからな。制約のあるgoto文をどのプログラミング言語も持っていて、マシン語ではジャンプするわけで。
0986デフォルトの名無しさん
2017/03/26(日) 19:11:26.15ID:K0FPpjuZ0987デフォルトの名無しさん
2017/03/26(日) 19:16:45.13ID:CFMZDvhX0988デフォルトの名無しさん
2017/03/26(日) 19:20:49.89ID:C1bHvYK/な、馬鹿レスばっかなのな、日曜日の午後。
ほんと、ゴミクズしかいねえよ…
0989デフォルトの名無しさん
2017/03/26(日) 19:22:04.47ID:C1bHvYK/そのくらいは今時子供でもセンサー付けられるよ、バーカ
0990デフォルトの名無しさん
2017/03/26(日) 19:25:59.56ID:C1bHvYK/>判断するのは俺でもよいし
良いわけねーだろw
ホントに高卒かよ?
意見の対立があった時、是非を判断するのは常に中立な第三者だよ、ゴミカス
本物のガキかよ
0991デフォルトの名無しさん
2017/03/26(日) 19:27:47.22ID:C1bHvYK/>1人だけオブジェクト指向を知らずにハッスルしてやつがいるから
へー、おまえ、ハッスルしてたんだ
元気だなw
0992デフォルトの名無しさん
2017/03/26(日) 19:28:44.80ID:mdrVR0tF0993デフォルトの名無しさん
2017/03/26(日) 19:28:48.71ID:x+8SPGXvまあどう考えてもレガシーシステムのクソ仕様が足引っ張ったんだろうな
オブジェクト指向とか関係なく
0994デフォルトの名無しさん
2017/03/26(日) 19:30:25.23ID:e3sv7A1e置き換えるとなるとやっぱえげつないのかな
0995デフォルトの名無しさん
2017/03/26(日) 19:32:14.91ID:C1bHvYK/無理だね、馬鹿しか居ないから。
最初に札束持って、俺のとこ来れば良かったね。
0996デフォルトの名無しさん
2017/03/26(日) 19:32:57.29ID:C1bHvYK/何言ってんの? この馬鹿
0997デフォルトの名無しさん
2017/03/26(日) 19:35:29.00ID:e3sv7A1e仕事のストレスを2ちゃんにぶつけてるのか
0998デフォルトの名無しさん
2017/03/26(日) 19:35:58.63ID:C1bHvYK/お前らみたいなバカ採用しなければ、或いは…
0999デフォルトの名無しさん
2017/03/26(日) 19:36:55.18ID:mdrVR0tF基本的にユニットごとに括ればどの言語でもメッセージングにはできるはずだよなぁ
というか、むしろ普通のネットワークプログラムはそうなってるわけだし
1000デフォルトの名無しさん
2017/03/26(日) 19:37:44.47ID:C1bHvYK/アホだよねなの?
おおくねーよ、基本俺一人だろ
理由はお前らが致命的にアホ過ぎる癖に舐めた口きいてくるからだ
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
life time: 18日 11時間 30分 53秒
10021002
Over 1000Thread運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 2ちゃんねる専用ブラウザからの広告除去
★ 2ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.2ch.net/
▼ 浪人ログインはこちら ▼
https://login.2ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。