4. オブザーバーパターン (Observer)
状態が変わる時に購読者たちに自動で知らせるオブザーバーパターンについて学びましょう。
オブザーバーパターン (Observer Pattern)
ユーチューバーが新しい動画を上げると、通知設定をしている購読者たちに一斉に通知が届きますよね?このように状態が変化した時に観察者(購読者)たちに自動で知らせるパターンがまさにオブザーバーパターンですね。
(参考:通知を受け取れる全てのオブジェクトが持つべき規約です)
【購読者】を規定しよう:
〈通知を受け取る〉がなければならない(【文字列】の『メッセージ』)
【購読者】に従う【ファン】を設計しよう:
『名前』を【文字列】で準備しよう
最初に作られる時(【文字列】の『名前』)次のようにしよう:
『私』の『名前』を『名前』にしよう
〈通知を受け取る〉を作ろう(【文字列】の『メッセージ』):
枠「{『私』の『名前』}さんが通知を受け取りました:{『メッセージ』}」を出力しよう
(参考:購読者たちを管理し、新しいお知らせができたら皆に知らせるクラスです)
【ユーチューバー】を設計しよう:
『_購読者リスト』を【リスト】の【】に隠そう
〈購読する〉を作ろう(【購読者】の『新しい購読者』):
『私』の『_購読者リスト』の後ろに『新しい購読者』を追加しよう
「新しい購読者が追加されました!」を出力しよう
〈動画を上げる〉を作ろう(【文字列】の『動画タイトル』):
枠「ユーチューバー:『{『動画タイトル』}』の動画をアップロードしました!」を出力しよう
(参考:リストにいる全ての購読者に通知を回します)
『私』の『_購読者リスト』の『購読者』ごとに繰り返そう:
『購読者』の〈通知を受け取る〉(枠「『{『動画タイトル』}』が上がりましたよ!」)を実行しよう
(参考:購読者を二人作って、ユーチューバーを購読させてみましょうか?)
『クリエイター』を【ユーチューバー】の新しい【ユーチューバー】()にしよう
『チョルス』を【購読者】の新しい【ファン】(「チョルス」)にしよう
『ヨンヒ』を【購読者】の新しい【ファン】(「ヨンヒ」)にしよう
『クリエイター』の〈購読する〉(『チョルス』)を実行しよう
『クリエイター』の〈購読する〉(『ヨンヒ』)を実行しよう
(参考:動画を上げると購読者全員に自動で通知が届きます!)
『クリエイター』の〈動画を上げる〉(「カナデ言語の基礎講座」)を実行しよう