テストケース
動作を確認するために、次のようなテストケースを用意しました。
## ---------- test case ----------
出力結果
テストケースを実行すると、次のような結果を出力します。
>>>
《関連記事》
《こちらに移動中です》
- Smalltalk: a la carte(23)ifと別れる50の方法《7》switchは百害あって一理なし, 1988. 真樹育未
- Oh 脳《005》switch の隘路と、さらなら後藤 goto さん - 続・ひよ子のきもち
- Oh 脳《57》続・switch 文の隘路と、さらなら後藤 goto さん - 続・ひよ子のきもち
- Oh 脳《006》ハイブリッド車と Java の隘路 - 続・ひよ子のきもち
受講者への課題
《余録》セミナー教材の中には「反面教師」として引用しているものも少なくありません。たとえば…
参考文献 | |
---|---|
なぜ、あなたはJavaでオブジェクト指向開発ができないのか―Javaの壁を克服する実践トレーニング
|
|
一見すると、クラス/メソッドを使って記述してあるので、OOP を実践しているかのように錯覚します。しかし、よく見ると「クラス/メソッドの本体に、SP を踏襲したコードの断片を押し込んだだけ Oh 脳《19》うしとカエル - 続・ひよ子のきもち」という箇所が少なくありません。皮肉にも「なぜ、オブジェクト指向開発ができないのか」を著書が実践してしまう結果になっています。確かに、Java の壁は克服できるかもしれませんが、残念ながら、オブジェクト指向の壁は克服できそうにもありません。 |
《課題》次のメソッド @ の本体を多重 if 文を用いないで、実現してください。□
## ---------- ISBN-10: 477412222X, pp.76-77 class Judge: def judgeJanken(self, p1, p2): ...
問題点だけを示すために、同じ機能を Python で実現したコードの断片を提示します。これは「反面教師」ですから、良い子のみなさんは真似をしないように。(^^)
... zap ...
SP では、2人の対戦では2重の条件分岐が、3人の対戦では3重の条件分岐が、そして、n人の対戦ではn重の条件分岐が必要になり、このアプローチがすぐに破綻するのは明らかです。では、OOP では、この問題をどのように回避するのでしょうか。この続きは、セミナー会場で ...φ(^.^)