放送大学のプログラミングの授業とリスコフ置換原則

タイトルの「リスコフ置換原則」以外にも色々あったみたいですが、とりあえずその話が多めだったのでこういうタイトルにしておきました。 tweetは自由に、追加、削除してください
26
athos)))))))) @athos0220

言語の違いを方言と言い切る潔さ

2015-02-01 21:12:00
athos)))))))) @athos0220

リスコフの置換原則なんかの話もお願いします

2015-02-01 21:16:43
mzp @mzp

「Circleは位置と半径を持つ。なので、これを継承して位置と長さを持つSquareを作るのがコンパクトでいいんですけどねー。まあ、今回はFigureを継承しましょう」

2015-02-01 21:17:31
athos)))))))) @athos0220

なんか、こうやってコピペコードが蔓延するのかぁという説明の仕方だ

2015-02-01 21:18:28
athos)))))))) @athos0220

コピペプログラミングを推奨された

2015-02-01 21:19:45
HARUYAMA Seigo @haruyama

放送大学学長による「ソフトウェアのしくみ」テキスト moge.org/okabe/temp/sof… ざっと読んだが適当すぎてやばい

2015-02-01 21:22:14
athos)))))))) @athos0220

円クラスから正方形クラスへの書き換え、本質的な変更は何もなく終わったな

2015-02-01 21:22:52
athos)))))))) @athos0220

コンストラクタの説明ここで出てくるのか

2015-02-01 21:23:54
mzp @mzp

「ホントはpublic class Xとかprivate @rとかって書くのがいいんだけど〜」

2015-02-01 21:27:51
athos)))))))) @athos0220

あの放送内容からオブジェクト指向に関する内容だけ取り出して理解するの至難だと思う

2015-02-01 21:32:58
HARUYAMA Seigo @haruyama

.@__obake ソフトウェアのしくみ(’14) 第8回 オブジェクト指向プログラム言語(2)を途中からですが拝見しました. たくさんツッコミどころはありますが, 1点だけ質問します.

2015-02-01 22:03:17
HARUYAMA Seigo @haruyama

.@__obake 型の階層関係を考えるとき部分型は上位の型の特別な場合とするのが一般的です. 図形,正方形,長方形では, 図形の特別な場合として長方形, 長方形の特別な場合として正方形という関係で階層関係を定義します. 参考: sicp.iijlab.net/fulltext/x252.…

2015-02-01 22:03:40
HARUYAMA Seigo @haruyama

.@__obake 図形,円,楕円であれば 図形->楕円->円です. なぜ一般とは異なる階層(継承)関係での説明をされたのでしょうか

2015-02-01 22:04:28
mzp @mzp

放送大学みてた人たち、 ouj.ac.jp/hp/toiawase/co… の企画管理歌あたりにメールするといいと思います。

2015-02-01 22:05:04
HARUYAMA Seigo @haruyama

Amazon.co.jp: ソフトウェアのしくみ (放送大学教材): 岡部 洋一: 本 - amazon.co.jp/dp/459531499X/ レビュー amazon.co.jp/review/R66032E…

2015-02-01 23:35:15
岡部洋一 @__obake

属性を多く有する物を下位に位置付ける方法もあります。 @haruyama .@__obake 図形,正方形,長方形では, 図形の特別な場合として長方形, 長方形の特別な場合として正方形という関係で階層関係を定義します. sicp.iijlab.net/fulltext/x252.… #放送大学

2015-02-02 10:40:58
HARUYAMA Seigo @haruyama

.@__obake 方法があるのはわかりますが一般的ではないですよね? なぜ一般的でない説明をされたのでしょうか? さらに言えばなぜ図形という階層関係が把握しにくいものを最初の例として挙げたのでしょうか?

2015-02-02 10:48:29
岡部洋一 @__obake

一般的だと思っています。通常、OOPにおける継承は変数やメソッドを追加修正しても殺すことは少ないからです。 @haruyama .@__obake 方法があるのはわかりますが一般的ではないですよね? なぜ一般的でない説明をされたのでしょうか? #放送大学

2015-02-02 12:13:53
HARUYAMA Seigo @haruyama

.@__obake そのご認識であれば, これ以上の議論は無意味そうですね. 水掛け論になってしまいます. 講義・テキストに問題があることを企画管理課に伝えたいと思います. #放送大学

2015-02-02 12:22:23
HARUYAMA Seigo @haruyama

オブジェクト指向言語C++入門 - Cとの違いを徹底追及 岡部洋一・桜井 由樹子 著 pub.maruzen.co.jp/shop/462104803… 中身見てみたいがネタに買うのもあれだ

2015-02-02 12:52:45
岡部洋一 @__obake

どういう問題があると認識されていますか? @haruyama .@__obake そのご認識であれば, これ以上の議論は無意味そうですね. 水掛け論になってしまいます. 講義・テキストに問題があることを企画管理課に伝えたいと思います. #放送大学

2015-02-02 13:19:45
HARUYAMA Seigo @haruyama

.@__obake 私が質問した点については私の考える一般的なOOPから外れた説明により受講者が他の資料を参照した際に混乱する可能性があるからです. 全体に説明が雑で, わかっている人が自己の知識を参照しながらなら理解できるが, 初学者には混乱を招く箇所が多いです. #放送大学

2015-02-02 13:29:20