NOEMBLEM/エンブレムが設定されていません。

メールの詳細(メール表示)

件名:

Memento 、Stateパターンの章の誤記?

差出人: torutkさん
送信日時 2002/03/31 18:14
ML.NO [DP/ML:1465]
本文:

高橋(徹)です。

先日の読書会でMemento,State,Flyweight,Proxyを読みました。
月1回のペースで順調に開催しております。次回(6回目)で
読了となる予定です。
読書会のページ
http://www.t3-jpn.com/bof/

今回気付いた書籍の誤りと思われる点をお知らせします。

・Fig.18-1のGamerクラス
bet, createMemento, restoreMementoは公開メソッドなので+記号が
付いた方がよいのではないかと思います。可視性の記号は省略可能
ですが、同じクラスの箱の中に可視性の記号がついた属性やメソッド
があったので、付けていないものについても何か意図があるのかも
しれないと考えてしまいました。

・Fig.18-4のMementoクラス
<<wide interface>>
getPublicInfo
<<narrow interface>>
#getProtectedInfo
は、逆ではないでしょうか?
Caretaker役が利用するのがナローインタフェースなので、ここでは
getProtectedInfoではなくgetPublicInfoになると思われます。

・List A19-3
doClockメソッドのif文において、1つ目と2つ目の条件判断の順番が
逆ではないでしょうか?
下記のコードでは最初の条件が2つ目の条件を含んでしまい、2つ目の
条件が成立する時は必ず1つ目の条件が成立します。
if (9 <= hour && hour < 17) {
context.changeState(DayState.getInstance());
} else if (12 <= hour && hour < 13) {
context.changeState(NoonState.getInstance());
}


---
Toru TAKAHASHI

添付:
 読み込み中...

このメールには下記のメールが返信されています:

【PR】メーリスふくびき無料ホームページ予定調整ゲーム