タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

デザインパターンに関するrbyのブックマーク (2)

  • 19.State パターン

    19.1 State パターンとは 第19章では State パターンを学びます。State とは、英語で「状態」を意味する単語です。 オブジェクト指向設計では、モノをクラスとして表現することが多くあります。State パターンとは、 モノではなく、「状態」をクラスとして表現するパターンです。 状態によって、動作のパターンが変わることがよくあります。 例えば、「機嫌のいい状態」「機嫌が悪い状態」の2つの状態があるお母さんにいくつか頼みごとをすることを考えます。 機嫌のいい状態のお母さんに「お小遣い頂戴」「おやつ頂戴」などのお願いをした場合、 「はいはい」といってお小遣いをくれたり、おやつを出してくれたりするでしょう。 しかし、機嫌の悪い状態のお母さんにこれらのお願いをしても聞き入れてくれないかもしれません。 お母さんは状態によって、振る舞いが変わるわけです。 State パターンとは、この

  • 『Rubyによるデザインパターン』学習ノート:Observer - MogLog

    Observerパターンとは、何らかのオブジェクトが変化したというニュースの発信者と受信者の間に綺麗なインタフェースを作るパターンのこと。 ニュースを持っているクラスをサブジェクトクラスと呼び、ニュースの受信者をオブザーバーと呼ぶ。 システムを構築する各部分が全体の状態に注意を払わなくてはならないような、高度に統合されたシステムの構築に関する問題。例えば、誰かの給料が変わった時に経理部門に知らせる必要のあるような人事システムを考えたい。 注目すべきは、発信源としての振る舞いがあること。 たとえば、Fredが昇給したら、彼のEmployeeオブジェクトは世界中に向けて「すみません、私に何かが起こりました!」と周囲に知らせる。 すると、Employeeオブジェクトと関係のあるオブジェクトがすべきことはただひとつ。「事前にEmployeeオブジェクトから通知がもらえるように登録されること」だけ。

    『Rubyによるデザインパターン』学習ノート:Observer - MogLog
  • 1