トップページ > プログラム > 2014年04月06日 > 9QIW1syL

書き込み順位&時間帯一覧

3 位/217 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000000000013001218



使用した名前一覧書き込んだスレッド一覧
193
デフォルトの名無しさん
オブジェクト指向なんて今すぐやめてください

書き込みレス一覧

オブジェクト指向なんて今すぐやめてください
256 :193[sage]:2014/04/06(日) 17:34:59.78 ID:9QIW1syL
>>251
今回の>>193から始まった流れは、
まず継承を使うという前提の元で、
具象クラスから派生させることの是非を議論してきた

その提案のポイントは、オブジェクト指向設計で
そもそも継承は必要か?という、継承を使うことの是非だよね?
そうした視点も大切だと思うけど、
今回の議論の流れからは脱線している
オブジェクト指向なんて今すぐやめてください
260 :193[sage]:2014/04/06(日) 18:00:19.98 ID:9QIW1syL
さて、KAC氏はコードが書けず逃げ出したようなので、
ここまでの議論をマトメて終わらせようと思う
・安易な具象クラス継承(>>194)には、問題(>>207前段,210)がある
・この問題のいくつかは、抽象クラス継承(>>211)によって解決できる
・ただし抽象クラス継承によって、すべての問題が解決できるわけではない(>>195,207後段)
・また、そもそもオブジェクト指向設計に継承は必要か?という視点もある(>>251)

これで自分は名無しに戻る
長文レスの連投、失礼しますた
オブジェクト指向なんて今すぐやめてください
262 :193[sage]:2014/04/06(日) 18:20:27.72 ID:9QIW1syL
>>260カキコの後にレスに気付いたので、短くレスを返す

>>257
Obj-Cと同様、>>194のコードを書いたRubyにも抽象クラスの構文は存在しない
そして安易な具象クラス継承の問題は、Obj-Cでも起こりうる
つまり、これはプログラミング(OOP)や言語(OOPL)の問題ではなく、
設計(OOD)の問題だと考える

>>258
>>207後段で指摘があるように、幾何学図形クラスのような
複雑なクラス継承設計では、「上手に」やらないと失敗することが多い
これを「上手い/下手」や「美しい/汚い」といった
理想や直感で表現することは簡単だけど、そこで思考停止せず、
ナゼそうなのかという論理的かつ具体的な理由を探求していくことが大切だと思う
オブジェクト指向なんて今すぐやめてください
265 :193[sage]:2014/04/06(日) 18:52:54.76 ID:9QIW1syL
>>261
横レスするけど、その問題はすでに>>195で指摘されていて、
>>196でレスを返しているよ
そして、たとえimmutableであっても問題の本質が減るわけではないことは、
>>195のコードで示されている
オブジェクト指向なんて今すぐやめてください
272 :デフォルトの名無しさん[sage]:2014/04/06(日) 21:37:43.69 ID:9QIW1syL
>>268
その「違いが大きい」とか「かなり似ている」とは、
具体的には何かな?

また、4角形から頂点を1つ取り除くという変形操作からは3角形が作れる
これは、>>261の考え方に従えば「頂点数は(派生ではなく)属性」になる
さて、どちらが正しいのだろうか?
オブジェクト指向なんて今すぐやめてください
274 :デフォルトの名無しさん[sage]:2014/04/06(日) 22:18:59.06 ID:9QIW1syL
課題を更に一般化してみる

長方形と正方形の関係に限定した場合、
派生(=継承)を使う方法(>>194,211)と
属性を使う方法(>>251,261)が提案された

さて、ここに幾何学図形の関係を表す図がある
http://sicp.iijlab.net/fulltext/fig226.png
これをクラスとして実装する時、
どのような考え方で設計できるだろうか?
派生、属性、それとも委譲、あるいはそれらの混在?
オブジェクト指向なんて今すぐやめてください
278 :デフォルトの名無しさん[sage]:2014/04/06(日) 22:55:28.80 ID:9QIW1syL
>>276
もちろんIDを見れば分かるように193本人だよ
>>260で書いたように、
具象クラス継承の話題は終わったので名無しに戻っている
オブジェクト指向なんて今すぐやめてください
279 :デフォルトの名無しさん[sage]:2014/04/06(日) 23:12:46.04 ID:9QIW1syL
>>277
・4要素のPathオブジェクトがある
・先頭の頂点と末尾の頂点が等しい
・ある2辺の角度が直角である
さて、このオブジェクトは長方形ではないのか?
というのが>>195の指摘

特にimmutableと明示されていなければ
オブジェクトの変形操作を想定することは自然だし、
困った問題だね


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。