
602
14
章
Chain of Responsibility
パターン
Chain of Responsibility
パターン
要求処理の機会を複数のオブジェクトに与えたい場合には、Chain of Responsibility
パターンを使いましょう。
シナリオ
Mighty Gumball
社は、
Java
で動くガムボール
マシンをリリースして以来、処理しきれないほど
多くの電子メールを受け取っています。同社独自
の分析によれば、電子メールは次の
4
種類に分類
できます。
10
人に
1
人当たるゲームを愛する顧
客からのファンメール、ゲーム中毒になっている
子供の親からの苦情、新たな場所にマシンを置い
てほしいという要望、そしてかなりの量のスパム
メールです。
ファンメールは
CEO
に直接伝え、苦情は法務
担当部門へ、新たなマシンの要望はビジネス開発
部門に届けたいのです。そしてスパムメールは削
除します。
あなたの任務
Mighty Gumball
社は、メールがスパムか、ファ
ンメールか、苦情か、あるいは要望かを判別す
る
AI
検出プログラムをすでに書いています。
Mighty Gumball
社は、この検出プログラムを
使って受信した電子メールを処理する設計をあ
なたに行ってほしいそうです。
Java
ガムボールマシ
ンのリリース以来、膨大なメールを
受け取っている。この処理を手伝って
くれないか?