前スレ
オブジェクト指向って自然な文法だな 2
http://echo.2ch.net/test/read.cgi/tech/1490506257/
探検
オブジェクト指向って自然な文法だな 3 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
2017/04/02(日) 16:30:38.65ID:n7h/bBRg
484デフォルトの名無しさん
2017/04/21(金) 18:30:38.43ID:T1EM2She >>483
……
……
485デフォルトの名無しさん
2017/04/21(金) 18:30:56.12ID:T1EM2She 俺のことは寡黙な人と呼んでくれ
486デフォルトの名無しさん
2017/04/21(金) 18:31:20.37ID:YTf7CJ3G >>485
黙ってねーじゃねーか
黙ってねーじゃねーか
487デフォルトの名無しさん
2017/04/21(金) 18:32:01.93ID:T1EM2She >>486
クソレスすんなハゲ
クソレスすんなハゲ
488デフォルトの名無しさん
2017/04/21(金) 18:33:35.27ID:YTf7CJ3G489デフォルトの名無しさん
2017/04/21(金) 18:36:02.42ID:T1EM2She ハゲもプログラム書けんの?
書けるんだったらオブジェクト指向でキャットドア問題に調整してほしい
書けるんだったらオブジェクト指向でキャットドア問題に調整してほしい
490あ
2017/04/21(金) 18:39:02.82ID:KFYgHFHL あのドアってこういう話の発端から出てきた問題だったんだな。
オブジェクト指向で、ってそういう事か、なるほど。
ナンセンスだな。
何を以ってドアと成立するか定義できてるようで出来てない。
定義1を死守したければ、俺なら定義1は定義0の子クラスにして、定義2は定義1を継承せずに定義0から作るわ。
定義0は最終的にObjectに収斂する。
クラス設計を破壊せずに性質を追加ってのが矛盾してる。
ワイン樽と泥水の問題。
オブジェクト指向で、ってそういう事か、なるほど。
ナンセンスだな。
何を以ってドアと成立するか定義できてるようで出来てない。
定義1を死守したければ、俺なら定義1は定義0の子クラスにして、定義2は定義1を継承せずに定義0から作るわ。
定義0は最終的にObjectに収斂する。
クラス設計を破壊せずに性質を追加ってのが矛盾してる。
ワイン樽と泥水の問題。
491デフォルトの名無しさん
2017/04/21(金) 18:42:27.87ID:T1EM2She ↑こうやって仕様に文句を付けて
コードから逃げる人間は飽きるほど見てきた
オブジェクト指向のコードをかける人間はいないのか
コードから逃げる人間は飽きるほど見てきた
オブジェクト指向のコードをかける人間はいないのか
493デフォルトの名無しさん
2017/04/21(金) 18:46:48.77ID:T1EM2She >>492
それどこよ? どれよ? どこなのよ? どこーーー!!
それどこよ? どれよ? どこなのよ? どこーーー!!
494デフォルトの名無しさん
2017/04/21(金) 18:47:06.08ID:T1EM2She 取り乱してしまいまして
495あ
2017/04/21(金) 18:48:45.01ID:KFYgHFHL もちろん、オブジェクト指向が役に立ちづらい、リアルな機械はそもそもコンポーネント指向で作るとも書いたし、コード自体適当なのも確かだが。
860 あ sage 2017/04/14(金) 08:00:23.71 ID:6kAIEFCu
ゴルーチンでドアとノブとストッパーとオートクローザーと個々に置いて、Channelで疎通させたらgoっぽい現実解になった。
ドアノブがあるとは限らんし、ドアノブとは別に鍵があるかもしれんし、とか思うと埋め込みではうまくいかんな。
この辺は機械と同じでコンポーネントにしとかないと後でわけわからん便利ボタン作られたときに面倒くさいと構えてしまったわ。
ラダーのほうがわかりやすいのかけるかも。
しかしideoneすげえな。
866 あ sage 2017/04/14(金) 10:26:30.48 ID:6kAIEFCu
>>862
http://ideone.com/yvttId
860 あ sage 2017/04/14(金) 08:00:23.71 ID:6kAIEFCu
ゴルーチンでドアとノブとストッパーとオートクローザーと個々に置いて、Channelで疎通させたらgoっぽい現実解になった。
ドアノブがあるとは限らんし、ドアノブとは別に鍵があるかもしれんし、とか思うと埋め込みではうまくいかんな。
この辺は機械と同じでコンポーネントにしとかないと後でわけわからん便利ボタン作られたときに面倒くさいと構えてしまったわ。
ラダーのほうがわかりやすいのかけるかも。
しかしideoneすげえな。
866 あ sage 2017/04/14(金) 10:26:30.48 ID:6kAIEFCu
>>862
http://ideone.com/yvttId
496あ
2017/04/21(金) 18:53:00.35ID:KFYgHFHL 何でわざわざ関数作ったのに放棄してクロージャ変数にしてるか見たら、カプセル化がオブジェクト指向の専売でもなけりゃ普遍的に便利なものか気づくだろ。
497デフォルトの名無しさん
2017/04/21(金) 18:59:03.34ID:T1EM2She498あ
2017/04/21(金) 19:05:27.23ID:dftFol4E >>497
クロージャはカプセル化で、カプセル化害悪論には大反対だ。
カプセル化されてるから、ドアは責任を持ってイベントに対して好きなことを好きなだけできるし、他人はそれに関与せずにイベントの投げ合いで済む。
鍵のないドアだってあるんだから。
クロージャはカプセル化で、カプセル化害悪論には大反対だ。
カプセル化されてるから、ドアは責任を持ってイベントに対して好きなことを好きなだけできるし、他人はそれに関与せずにイベントの投げ合いで済む。
鍵のないドアだってあるんだから。
499あ
2017/04/21(金) 19:06:54.30ID:dftFol4E 見せたくないものを隠すんだけじゃない。
見て不快なものが目に入らないようにするためにも使えるんだよ。
NHKの入らないテレビみたいなもんだ。
見て不快なものが目に入らないようにするためにも使えるんだよ。
NHKの入らないテレビみたいなもんだ。
500デフォルトの名無しさん
2017/04/21(金) 19:27:31.37ID:rPWpf+kQ >>499
具体的に誰に対してやってるの?
具体的に誰に対してやってるの?
501デフォルトの名無しさん
2017/04/21(金) 19:29:06.55ID:T1EM2She >>498
カプセル化害悪論に反対しているとのことだけれども
もしクロージャがカプセル化ではないと仮定したら
カプセル化害悪論に反対する理由もなくなると思うんだよ
クロージャってどちらかというとローカル変数じゃない?
クロージャオブジェクトを使うところって関数内に限られると思うんだよ
そう考えるなら結局クロージャってローカル変数ってことになるわけじゃん?
だからクロージャを使ってもカプセル化害悪論には反しないんだよ
カプセル化害悪論に反対しているとのことだけれども
もしクロージャがカプセル化ではないと仮定したら
カプセル化害悪論に反対する理由もなくなると思うんだよ
クロージャってどちらかというとローカル変数じゃない?
クロージャオブジェクトを使うところって関数内に限られると思うんだよ
そう考えるなら結局クロージャってローカル変数ってことになるわけじゃん?
だからクロージャを使ってもカプセル化害悪論には反しないんだよ
502あ
2017/04/21(金) 20:03:29.23ID:qsriX73g503デフォルトの名無しさん
2017/04/21(金) 20:07:05.07ID:rPWpf+kQ504あ
2017/04/21(金) 20:17:17.21ID:qsriX73g >>503
うん。書いてるから何?
書いてるから触ってはいけないとわかるはずだ、なら、無意味かつ実務知らなすぎだな。
書いてて触ってはいけないならば、触れることができてはいけないんだよ。本来は。
AppleのMacOSのUIのデザイン規約くらいの時代から書いてた話。
感電するよって書いてたら覆いをしなくたって良いなんて機械はありえないのと同じ。
うん。書いてるから何?
書いてるから触ってはいけないとわかるはずだ、なら、無意味かつ実務知らなすぎだな。
書いてて触ってはいけないならば、触れることができてはいけないんだよ。本来は。
AppleのMacOSのUIのデザイン規約くらいの時代から書いてた話。
感電するよって書いてたら覆いをしなくたって良いなんて機械はありえないのと同じ。
505デフォルトの名無しさん
2017/04/21(金) 20:22:47.97ID:YTf7CJ3G 包丁は料理にのみ使われるものだから傷害事件で扱われる刃物は包丁以外であるって理屈
506デフォルトの名無しさん
2017/04/21(金) 20:32:03.02ID:rPWpf+kQ507デフォルトの名無しさん
2017/04/21(金) 20:45:20.00ID:YTf7CJ3G 車のブレーキだけを踏んでたら全然進まないのでプレーキを踏んでもちゃんと進むように修理する工場だな
508デフォルトの名無しさん
2017/04/21(金) 20:51:25.16ID:uAFMuOM4 カプセル化の意義を誤解するものはfriendの意義も誤解する
509あ
2017/04/21(金) 21:04:20.97ID:qsriX73g >>506
本来なら設計書を記述するどころか設計変更申請出して承認を経て設計書と設計変更書を出して、実装を変更して設計変更書から起こされた上がってきたテスト仕様書でテストして完了するけど、何もやりにくくないでしょ。
カプセル化は役に立つよ。担保となる元の設計書で使ってる部品の設計書を出来る限り見ずに済むし、
なんなら部品ごと新しく変えてもIFさえあってれば良い証左になるんだから。
>>507
プレーキとやらの定義が、踏めば進むというものであるならそう治すべく修理なり改修なりするわな。
このパンチメタルで穴が空いてる部品は共有部品で、AT車ならフットレスト、MT車ならクラッチペダルにつける部品の首がよく腐るから設計変更するなら、
押してクラッチが切れるかもしれない部品であり、押しても何も起こらない部品を同時に設計変更してる事になるが。
お前らのドアってこのパンチメタルの板くらいフワフワした定義。
本来なら設計書を記述するどころか設計変更申請出して承認を経て設計書と設計変更書を出して、実装を変更して設計変更書から起こされた上がってきたテスト仕様書でテストして完了するけど、何もやりにくくないでしょ。
カプセル化は役に立つよ。担保となる元の設計書で使ってる部品の設計書を出来る限り見ずに済むし、
なんなら部品ごと新しく変えてもIFさえあってれば良い証左になるんだから。
>>507
プレーキとやらの定義が、踏めば進むというものであるならそう治すべく修理なり改修なりするわな。
このパンチメタルで穴が空いてる部品は共有部品で、AT車ならフットレスト、MT車ならクラッチペダルにつける部品の首がよく腐るから設計変更するなら、
押してクラッチが切れるかもしれない部品であり、押しても何も起こらない部品を同時に設計変更してる事になるが。
お前らのドアってこのパンチメタルの板くらいフワフワした定義。
510デフォルトの名無しさん
2017/04/21(金) 21:09:39.74ID:rPWpf+kQ >>509
設計書書いてるんだよね?
だったら今回の開発でそのメソッドを呼び出す奴は決まってる
今後増える予定を想定することの記述も設計書にはないでしょ?
この状態でprivateとpublicになんの意味があるの?
設計書書いてるんだよね?
だったら今回の開発でそのメソッドを呼び出す奴は決まってる
今後増える予定を想定することの記述も設計書にはないでしょ?
この状態でprivateとpublicになんの意味があるの?
511デフォルトの名無しさん
2017/04/21(金) 21:11:56.33ID:YTf7CJ3G512あ
2017/04/21(金) 21:16:51.77ID:qsriX73g >>510
呼び出すやつは決まってる、今後呼び出し方が変わる予定も無い。
ならばそいつはそれがインターフェイスで良いと思うけど、インターフェイスが無いわけではない。そいつがそのものであるだけで。
その上で、疎通にはこれを使おうね、これは使ってくれるなよ、と言う設計は無為味だし、むしろそうならばモジュラーにせずにそれごと機械に埋めてしまえとなる。
そうでは無くて、壊れたらこれだけ変えられるようにしとこう、とか、これだけを改良できるようにしよう、とか、
不具合が出たときに特定しやくすしとこうとなると、ある意味不自由を強制する形で決まった形で疎通させるのは当然でしょ。
お前のパソコンがノートパソコンならタッチパッドは前者、USBマウスは後者だよ。
呼び出すやつは決まってる、今後呼び出し方が変わる予定も無い。
ならばそいつはそれがインターフェイスで良いと思うけど、インターフェイスが無いわけではない。そいつがそのものであるだけで。
その上で、疎通にはこれを使おうね、これは使ってくれるなよ、と言う設計は無為味だし、むしろそうならばモジュラーにせずにそれごと機械に埋めてしまえとなる。
そうでは無くて、壊れたらこれだけ変えられるようにしとこう、とか、これだけを改良できるようにしよう、とか、
不具合が出たときに特定しやくすしとこうとなると、ある意味不自由を強制する形で決まった形で疎通させるのは当然でしょ。
お前のパソコンがノートパソコンならタッチパッドは前者、USBマウスは後者だよ。
513デフォルトの名無しさん
2017/04/21(金) 21:25:56.38ID:rPWpf+kQ514デフォルトの名無しさん
2017/04/21(金) 21:29:21.44ID:JwbSy4qm ここまでの流れで面白いのは>>414の視点だけ
カプセル化がどうの
その是非がどうのとはさんざん繰り返されがちだが
アクセッサ自体が意外と臭いよねって観点まで到達できる人は少ない
また、そこから先の議論についてもあまり見かけない
カプセル化がどうの
その是非がどうのとはさんざん繰り返されがちだが
アクセッサ自体が意外と臭いよねって観点まで到達できる人は少ない
また、そこから先の議論についてもあまり見かけない
515デフォルトの名無しさん
2017/04/21(金) 21:31:37.27ID:cmecYv9F >>514
そもそもアクセサなんてものはモダン言語では自動生成なので論外
そもそもアクセサなんてものはモダン言語では自動生成なので論外
516デフォルトの名無しさん
2017/04/21(金) 21:33:08.50ID:YTf7CJ3G >>513
いつもよくわかってないな
いつもよくわかってないな
517デフォルトの名無しさん
2017/04/21(金) 21:34:14.81ID:JwbSy4qm その自動生成ってのを嬉しがる精神性が問題
アクセッサなんか書きにくいほうが健全
きみにはまだ伝わらないと思うし
これ以上言葉費やす予定もない
アクセッサなんか書きにくいほうが健全
きみにはまだ伝わらないと思うし
これ以上言葉費やす予定もない
518あ
2017/04/21(金) 21:35:03.27ID:AJ6tejAv519デフォルトの名無しさん
2017/04/21(金) 21:40:55.19ID:rPWpf+kQ520あ
2017/04/21(金) 21:44:00.25ID:AJ6tejAv >>519
修正した仕様書の妥当性はどう計測して、修正したソースの妥当性はどう計測するの?
インアウトが確実に2つずつなら、ステートマシンでも組み合わせ数は知れてるだろうが、
インアウトの数が担保できなければそんなもの検証しようがない。
修正した仕様書の妥当性はどう計測して、修正したソースの妥当性はどう計測するの?
インアウトが確実に2つずつなら、ステートマシンでも組み合わせ数は知れてるだろうが、
インアウトの数が担保できなければそんなもの検証しようがない。
521あ
2017/04/21(金) 21:46:20.92ID:AJ6tejAv 逆に言うわ。publicなものの組み合わせを検証する必要が本当に正しいと証明するためにはある。それはnCmで増える。
だから、組み合わせを減らしたい。
だから、組み合わせを減らしたい。
522デフォルトの名無しさん
2017/04/21(金) 21:47:22.88ID:cmecYv9F >>517
いーやわかってないのはおまえ
アクセサの必要性が低いなんてことは歴史的背景ふまえググれば中学生でもわかること
ではなぜ事実上、必須になっているか
そこまで考えてはじめて俺と同じ土俵に立てる
出直せ
いーやわかってないのはおまえ
アクセサの必要性が低いなんてことは歴史的背景ふまえググれば中学生でもわかること
ではなぜ事実上、必須になっているか
そこまで考えてはじめて俺と同じ土俵に立てる
出直せ
523あ
2017/04/21(金) 21:51:18.83ID:AJ6tejAv >>522
アクセサは自動生成されるべきじゃないし、される言語も少なくないか?アクセサ作ったらメンバが生えるのはあるだろうけと。
アクセサは自動生成されるべきじゃないし、される言語も少なくないか?アクセサ作ったらメンバが生えるのはあるだろうけと。
524デフォルトの名無しさん
2017/04/21(金) 21:51:19.37ID:TFy/T03e publicフィールド = 何の制限もかけられないアクセッサだよ
つまりいずれにしろアクセッサ相当のものを使っているわけで、
問題はアクセッサがいるかどうか?ではなく、
制限をかける必要があるかどうか?
で考えたほうが良い。
つまりいずれにしろアクセッサ相当のものを使っているわけで、
問題はアクセッサがいるかどうか?ではなく、
制限をかける必要があるかどうか?
で考えたほうが良い。
526デフォルトの名無しさん
2017/04/21(金) 21:58:52.01ID:cmecYv9F527デフォルトの名無しさん
2017/04/21(金) 21:59:11.05ID:rPWpf+kQ528あ
2017/04/21(金) 22:07:30.53ID:AJ6tejAv529デフォルトの名無しさん
2017/04/21(金) 22:11:46.98ID:TFy/T03e 設計書が正しければ、正しいプログラムができるはずだ!
530デフォルトの名無しさん
2017/04/21(金) 22:15:10.16ID:TFy/T03e 設計書が正しいことをきちんとテストする必要がある。
つまり、設計書のテスト仕様書が必要だ。
そしてそのテスト仕様書通りに設計書が
正しいかをテストする人間も必要になる。
そこで重用なのは、テストの手法である。
設計書が正しいことをどうやってテストするか?
つまり設計書を書いた人間への聞き取り作業である。
設計書に書き漏れがないか?設計書に書かれた言葉に矛盾がないか?
テスト仕様書に従って設計書を見ながら設計者を問い詰める。
これが設計書に対する優れたテスト方法である
つまり、設計書のテスト仕様書が必要だ。
そしてそのテスト仕様書通りに設計書が
正しいかをテストする人間も必要になる。
そこで重用なのは、テストの手法である。
設計書が正しいことをどうやってテストするか?
つまり設計書を書いた人間への聞き取り作業である。
設計書に書き漏れがないか?設計書に書かれた言葉に矛盾がないか?
テスト仕様書に従って設計書を見ながら設計者を問い詰める。
これが設計書に対する優れたテスト方法である
531あ
2017/04/21(金) 22:21:07.33ID:AJ6tejAv 揶揄してるようだが、設計書をテストする設計書にあたるものが、設計変更申請書だよ。
それはヒアリングやら検証実験やら、承認者の首やら、人の手で担保するもの
大規模開発した事ないのかな。
それはヒアリングやら検証実験やら、承認者の首やら、人の手で担保するもの
大規模開発した事ないのかな。
532デフォルトの名無しさん
2017/04/21(金) 22:22:18.55ID:cmecYv9F >>528
アクセス制限をするのはアクセス修飾の役割だしアクセサがあろうと無かろうとそれは必要
だからモダン言語にはプロパティというものがある
プロパティに出来てpublic変数に出来ないことを考えればおのずとプロパティでいいよねという結論にたどり着くと思うがね
アクセス制限をするのはアクセス修飾の役割だしアクセサがあろうと無かろうとそれは必要
だからモダン言語にはプロパティというものがある
プロパティに出来てpublic変数に出来ないことを考えればおのずとプロパティでいいよねという結論にたどり着くと思うがね
533デフォルトの名無しさん
2017/04/21(金) 22:23:36.50ID:rPWpf+kQ うーん
ぶっちゃけそれとカプセル化との関連が不明
もはや何を主張したいのか滅茶苦茶な気がするんだけど
ぶっちゃけそれとカプセル化との関連が不明
もはや何を主張したいのか滅茶苦茶な気がするんだけど
534デフォルトの名無しさん
2017/04/21(金) 22:24:22.02ID:TFy/T03e > 設計書をテストする設計書にあたるものが
意味わからん。
設計書をテストするものは、設計書のテスト仕様書だ。
つまりその設計には、○○の場合の処理は抜けていないか?
○○の場合に不整合は起きないか?
などというものが書かれいいるもので無ければ、
設計書のテスト仕様書とはよべない。
意味わからん。
設計書をテストするものは、設計書のテスト仕様書だ。
つまりその設計には、○○の場合の処理は抜けていないか?
○○の場合に不整合は起きないか?
などというものが書かれいいるもので無ければ、
設計書のテスト仕様書とはよべない。
535デフォルトの名無しさん
2017/04/21(金) 22:25:20.57ID:rPWpf+kQ >>520の発言内容はカプセル化と関係ないよね?
536デフォルトの名無しさん
2017/04/21(金) 22:26:41.05ID:TFy/T03e >>532
> アクセス制限をするのはアクセス修飾の役割だしアクセサがあろうと無かろうとそれは必要
アクセッサはアクセス制限ではなく、アクセスした後に入れようとした値が
正常値かどうかを判断するもの。
型だけでは表現できない特殊なルールを記述する所
アクセス修飾子は単にアクセスできるかどうかしか記述できない。
> アクセス制限をするのはアクセス修飾の役割だしアクセサがあろうと無かろうとそれは必要
アクセッサはアクセス制限ではなく、アクセスした後に入れようとした値が
正常値かどうかを判断するもの。
型だけでは表現できない特殊なルールを記述する所
アクセス修飾子は単にアクセスできるかどうかしか記述できない。
537デフォルトの名無しさん
2017/04/21(金) 22:32:34.16ID:cmecYv9F538あ
2017/04/21(金) 22:32:51.15ID:AJ6tejAv >>532
プロパティはメンバ関数だよ。
C#ならIL見ればわかるけど、確かアンスコついた変数出来てる。
プロパティ自体もフツーに関数。
何で見えない変数が必要なのか、ってのは、副作用があるプロパティを書くことが出来る限り不必要にならない。
Queueみたいなもののgetのアクセサが、デキューして返すみたいなコードだと、デキューせずに先頭を見る方法が無くなる。
>>534
段取りがおかしい。「設計書のテストの仕様書」が成立するためには、「設計書の設計書」が必要。
なぜならば、テスト仕様書は実装からではなく、設計書から作られなけれいけないから。
「xxの処理は漏れていないか」は「xxの処理が必要だと定義されている」から書ける。
そのための要件は、すり合わせと設計変更申請のレビューと相手方、担当者の連名の捺印で担保する。
>>535
あるよ。
組み合わせが妥当な手段ではこれ以上ないと言う事が、数が少なくなればなるほど簡単になる。
プロパティはメンバ関数だよ。
C#ならIL見ればわかるけど、確かアンスコついた変数出来てる。
プロパティ自体もフツーに関数。
何で見えない変数が必要なのか、ってのは、副作用があるプロパティを書くことが出来る限り不必要にならない。
Queueみたいなもののgetのアクセサが、デキューして返すみたいなコードだと、デキューせずに先頭を見る方法が無くなる。
>>534
段取りがおかしい。「設計書のテストの仕様書」が成立するためには、「設計書の設計書」が必要。
なぜならば、テスト仕様書は実装からではなく、設計書から作られなけれいけないから。
「xxの処理は漏れていないか」は「xxの処理が必要だと定義されている」から書ける。
そのための要件は、すり合わせと設計変更申請のレビューと相手方、担当者の連名の捺印で担保する。
>>535
あるよ。
組み合わせが妥当な手段ではこれ以上ないと言う事が、数が少なくなればなるほど簡単になる。
539デフォルトの名無しさん
2017/04/21(金) 22:34:09.19ID:TFy/T03e540あ
2017/04/21(金) 22:34:35.69ID:AJ6tejAv >>537
getter,setterとプロパティってシンタックスシュガー以上の違いある?Kotlinとか、getterとsetterを暗黙のプロパティに変換してくれるが。
getter,setterとプロパティってシンタックスシュガー以上の違いある?Kotlinとか、getterとsetterを暗黙のプロパティに変換してくれるが。
542あ
2017/04/21(金) 22:37:04.70ID:AJ6tejAv 実装してからのテスト作成って何の意味があるのか意味がわからん。
543デフォルトの名無しさん
2017/04/21(金) 22:42:23.85ID:TFy/T03e544デフォルトの名無しさん
2017/04/21(金) 22:43:24.15ID:rPWpf+kQ カプセル化は不要でおk?
545デフォルトの名無しさん
2017/04/21(金) 22:44:14.67ID:YTf7CJ3G >>544
カプセル化は必要でおk
カプセル化は必要でおk
546デフォルトの名無しさん
2017/04/21(金) 22:45:28.27ID:cmecYv9F547デフォルトの名無しさん
2017/04/21(金) 22:49:35.08ID:rPWpf+kQ548デフォルトの名無しさん
2017/04/21(金) 22:51:43.93ID:YTf7CJ3G549デフォルトの名無しさん
2017/04/21(金) 22:52:25.01ID:1EW2mi9U おまえら相変わらず低レベルな会話してんなww
550デフォルトの名無しさん
2017/04/21(金) 22:54:33.29ID:JwbSy4qm アクセッサの記述性は、下に行くほど上品とする
すでに酒飲んでこれ書いてるから、異論の必要は無い
public string Name {get; set;} // C#
public string Name {private get; set;} // 多少制限
public string Name {get; private set;} // 多少制限
attr_accessor :name # Ruby
attr_reader :name # 多少制限
attr_reader :name # 多少制限
public int getName() {return name;} // Java
public please forgive me int getName() {return name;} // 仮想OOPL-A
puloccinaucinihilipilification int getName() {return name;} // 仮想OOPL-B
// ↑インテリセンス的なものも当然禁止、emacsのabbrevもなぜか効かない設定
すでに酒飲んでこれ書いてるから、異論の必要は無い
public string Name {get; set;} // C#
public string Name {private get; set;} // 多少制限
public string Name {get; private set;} // 多少制限
attr_accessor :name # Ruby
attr_reader :name # 多少制限
attr_reader :name # 多少制限
public int getName() {return name;} // Java
public please forgive me int getName() {return name;} // 仮想OOPL-A
puloccinaucinihilipilification int getName() {return name;} // 仮想OOPL-B
// ↑インテリセンス的なものも当然禁止、emacsのabbrevもなぜか効かない設定
551デフォルトの名無しさん
2017/04/21(金) 22:56:49.22ID:YTf7CJ3G552デフォルトの名無しさん
2017/04/21(金) 22:57:14.58ID:cQz9sGMN 至高の言語はswiftだよ
swiftが全ての正解
swiftが全ての正解
553デフォルトの名無しさん
2017/04/21(金) 23:05:20.32ID:IMFbV+tE >>552
#ifdefのくせになまいきな
#ifdefのくせになまいきな
554デフォルトの名無しさん
2017/04/21(金) 23:07:41.24ID:rPWpf+kQ >>548
じゃあ、設計書をかく前提の開発でカプセル化が必要な理由を説明してよ
じゃあ、設計書をかく前提の開発でカプセル化が必要な理由を説明してよ
555デフォルトの名無しさん
2017/04/21(金) 23:15:04.82ID:IMFbV+tE 実際に不正な操作がされていないということを保証できるから
設計書ベースだと、オブジェクト使うときは
規約をしっかり読んで、それに抵触しないよう用心してコーディングし、
変なことが起こった時
設計書の記述みて、コード上でオブジェクトの使用箇所全部洗って、
操作の規約が守られてるかどうか逐一人間がチェックして、
それではじめてprivateの一言と同じ成果となるのだ
やってられんしそもそも間違えるし
設計書ベースだと、オブジェクト使うときは
規約をしっかり読んで、それに抵触しないよう用心してコーディングし、
変なことが起こった時
設計書の記述みて、コード上でオブジェクトの使用箇所全部洗って、
操作の規約が守られてるかどうか逐一人間がチェックして、
それではじめてprivateの一言と同じ成果となるのだ
やってられんしそもそも間違えるし
556デフォルトの名無しさん
2017/04/21(金) 23:16:10.52ID:YTf7CJ3G 利用者はちゃんと設計書を確認しながら使うとは限らないって何度も言えば、、、
557デフォルトの名無しさん
2017/04/21(金) 23:16:16.72ID:fRfyQmKB >>378
たとえば、インスタンス変数aに依存&結構コストのかかる計算で決まる値bがあったとき
bをインスタンス変数bにキャッシュしておくほうが得だよね?
publicにしたaの変更をどうやってフックするの?
たとえば、インスタンス変数aに依存&結構コストのかかる計算で決まる値bがあったとき
bをインスタンス変数bにキャッシュしておくほうが得だよね?
publicにしたaの変更をどうやってフックするの?
558デフォルトの名無しさん
2017/04/21(金) 23:22:50.81ID:rPWpf+kQ559デフォルトの名無しさん
2017/04/21(金) 23:24:54.21ID:1EW2mi9U560デフォルトの名無しさん
2017/04/21(金) 23:26:01.68ID:JwbSy4qm バカじゃない人間なら
機械語とバイナリエディタでOS作れてもおかしくない
機械語とバイナリエディタでOS作れてもおかしくない
561デフォルトの名無しさん
2017/04/21(金) 23:27:08.71ID:IMFbV+tE ただの煽りかげんなり
ほんとに信じて言ってるのかと思ってた
ほんとに信じて言ってるのかと思ってた
562デフォルトの名無しさん
2017/04/21(金) 23:28:45.45ID:YTf7CJ3G563デフォルトの名無しさん
2017/04/21(金) 23:34:32.77ID:V+qA1SkC564デフォルトの名無しさん
2017/04/21(金) 23:38:07.22ID:rPWpf+kQ565デフォルトの名無しさん
2017/04/21(金) 23:48:31.04ID:go/6WchZ >>557
ずれたコメントさせてもらうが、俺ならそのbを計算した都度出力して、自らはキャッシュしない方策を考えるな。
ずれたコメントさせてもらうが、俺ならそのbを計算した都度出力して、自らはキャッシュしない方策を考えるな。
566デフォルトの名無しさん
2017/04/21(金) 23:52:18.75ID:YTf7CJ3G >>564
よく考えて発言してね
まぁ自分がバカと認識してるだけマシだけど
dllで提供されたものが他のものに依存してて単体で動かないとか、動くけど他のdllで得るはずの値を利用すること前提だとしたらその前提を知らない奴はうまく使えない
内部の処理を隠蔽し独立した動きを提供すればいいだけなんだよ
よく考えて発言してね
まぁ自分がバカと認識してるだけマシだけど
dllで提供されたものが他のものに依存してて単体で動かないとか、動くけど他のdllで得るはずの値を利用すること前提だとしたらその前提を知らない奴はうまく使えない
内部の処理を隠蔽し独立した動きを提供すればいいだけなんだよ
567デフォルトの名無しさん
2017/04/21(金) 23:53:01.61ID:V+qA1SkC ん?
カプセル化でprivateしてないと勝手にフィールド書き込んでしまう恐れがある。
コード無いからprivateにする意味ある。
そんな例。
あ、publicなフィールドを紙やWebに書かなければいいと言うのはなしね。
ツールが抽出するんで。
手書きじゃ無いんで。
カプセル化でprivateしてないと勝手にフィールド書き込んでしまう恐れがある。
コード無いからprivateにする意味ある。
そんな例。
あ、publicなフィールドを紙やWebに書かなければいいと言うのはなしね。
ツールが抽出するんで。
手書きじゃ無いんで。
568デフォルトの名無しさん
2017/04/21(金) 23:54:06.38ID:Ck7s6rRh エンジニアガイジさあ…… 住処が荒廃したからってここに雑魚狩りに来るのやめなよ
569デフォルトの名無しさん
2017/04/22(土) 00:12:26.79ID:EzjUI0a0 日を跨いだら突然おとなしくなったなぁ
570デフォルトの名無しさん
2017/04/22(土) 00:28:58.48ID:OS/5Qg75571デフォルトの名無しさん
2017/04/22(土) 01:06:43.76ID:+5rvIbLJ >>570
呼ばない
呼ばない
572デフォルトの名無しさん
2017/04/22(土) 02:31:18.17ID:IBUJYaHp >>569
なんかわからんけど、このバカも睡眠という概念がなさそうだな。
なんかわからんけど、このバカも睡眠という概念がなさそうだな。
573デフォルトの名無しさん
2017/04/22(土) 09:50:00.49ID:69jc9pki >>565
ずれるにしてもほどがある
ずれるにしてもほどがある
575デフォルトの名無しさん
2017/04/27(木) 12:52:25.26ID:FdhNErTM 部品として使う場合、知識が要求されるのが、ちと時代おくれかなー
576デフォルトの名無しさん
2017/05/02(火) 18:17:11.49ID:VYotzEOG カプセル化、継承、オブジェクト指向設計論に熱が入るやつは
そろそろ自分が動的言語童貞だと熱弁していることに早く気がついたほうがいい
そろそろ自分が動的言語童貞だと熱弁していることに早く気がついたほうがいい
577デフォルトの名無しさん
2017/05/02(火) 18:21:39.30ID:Bg5rWx47 >>576
動的言語が得意な人は、オブジェクト指向にとって大事なことは何だと思うの?
動的言語が得意な人は、オブジェクト指向にとって大事なことは何だと思うの?
578デフォルトの名無しさん
2017/05/02(火) 19:36:25.52ID:S4n1GgbR Objective-Cって動的言語だったのか
579デフォルトの名無しさん
2017/05/02(火) 19:36:57.13ID:S4n1GgbR てっきりオブジェクト指向言語かと思ってた...ん?
580デフォルトの名無しさん
2017/05/06(土) 04:26:04.66ID:gDC1nU6T それにしても(Javaの)クラスのインスタンス化の勉強がすごく楽しい。
581デフォルトの名無しさん
2017/05/06(土) 09:08:09.40ID:QDs+whcb はい
582デフォルトの名無しさん
2017/05/06(土) 09:48:33.69ID:ZTeBEUxt 局所的すぎてわろ
583デフォルトの名無しさん
2017/05/18(木) 13:53:51.24ID:V9vRGfQu マジでクラスの分け方教えてくれどう分ければいいんだよ
分けたとしてもどのクラスにどうデータ持たせて
クラス間の受け渡しとかどうすんだよ全部ゲットセットでpublicにしてええんか
分けたとしてもどのクラスにどうデータ持たせて
クラス間の受け渡しとかどうすんだよ全部ゲットセットでpublicにしてええんか
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【速報】「女芸人No.1決定戦 THE W」9代目女王にニッチェ! 7年ぶり3度目で悲願の優勝 [牛丼★]
- 中国・ロシア両軍の爆撃機が東京方面へ向かう「異例のルート」を共同飛行…核も搭載可能、連携して威嚇か ★8 [ぐれ★]
- 「おこめ券は米以外の食品も買える。効果的な活用を」 地元で農水相 [山形県] [少考さん★]
- 【芸能】『女芸人No.1決定戦THE W』 粗品が最後にバッサリ「優勝賞金1000万円にしてはレベル低い大会」 [冬月記者★]
- 東京の自販機そばに金塊4200万円分、何者かに持ち去られる…札幌の50代が8000万円振り込んだ後に上京して被害 [どどん★]
- 【広島】ペルー女性の国保加入を誤って認め、福山市が医療費484万円を肩代わりするミス…入院して手術を受ける [ぐれ★]
- 【実況】博衣こよりのえちえちダンガンロンパ5🧪
- 【実況】博衣こよりのえちえちダンガンロンパ4🧪
- 🏡パン🍞つー✌まる👌見え👊😅👊
- sengoku38「どこから指令が出ているのか、総理答弁を撤回させたい人たちが今度は官僚が書いた作文を読まないのが悪いと言い始めた」 [834922174]
- 【緊急高市朗報】WBC全試合、地上波完全生放送決定wmwmwmwmwmwmwmwmwmwmwmwmwmwmwmw [517459952]
- ブレイキングダウン、ついにやらかす。😰 [153490809]
