DPDesign Pattern Quest
GoF 23 patterns

23のパターンを、
冒険するように学ぼう。

Java / Python / TypeScript の3言語サンプル、UML 風の概念図、 そしてゲーム性のあるクイズ。GoF が体系化した 23 のパターンを、 退屈せずに身につけられる学習サイトです。

B
behavioral

振る舞いに関するパターン

11 patterns
#13
振る舞い

責任の連鎖

Chain of Responsibility

リクエストのリレー走者。誰かが処理を引き受けるまで、次の人にバトンが渡されていく。

3 問のクイズ学ぶ →
#14
振る舞い

コマンド

Command

操作を『注文票』にして渡す。ファミレスのオーダーを思い出せ ── あれが Undo もキューも履歴もこなす。

3 問のクイズ学ぶ →
#15
振る舞い

インタプリタ

Interpreter

ミニ言語の通訳係。検索フィルタやルール式を、文法のクラス階層に翻訳して評価する。

3 問のクイズ学ぶ →
#16
振る舞い

イテレータ

Iterator

本のしおり。中身がリストでも木でもデータベースでも、『次のページめくって』だけで読み進められる。

3 問のクイズ学ぶ →
#17
振る舞い

メディエーター

Mediator

管制塔の発想だ。飛行機同士が直接喋ったらカオス。代わりに管制塔が全部の調整を引き受ける。

3 問のクイズ学ぶ →
#18
振る舞い

メメント

Memento

ゲームのセーブポイント。中身は本人にしか読めないけど、いつでもその時点に戻せる。

3 問のクイズ学ぶ →
#19
振る舞い

オブザーバー

Observer

YouTubeのチャンネル登録。新しい動画が出たら、登録者全員のスマホに通知が飛ぶ。

3 問のクイズ学ぶ →
#20
振る舞い

ステート

State

信号機。青なら『進め』、赤なら『止まれ』、黄色なら『注意して止まれ』── 状態が変われば、振る舞いも丸ごと変わる。

3 問のクイズ学ぶ →
#21
振る舞い

ストラテジー

Strategy

ナビアプリの『徒歩 / 車 / 電車』切替。同じ目的地に対し、別のアルゴリズムを実行時に差し込む。

3 問のクイズ学ぶ →
#22
振る舞い

テンプレートメソッド

Template Method

レシピは同じ手順、具材だけが違う。親が骨格を握り、子が肉付けを担当する。

3 問のクイズ学ぶ →
#23
振る舞い

ビジター

Visitor

健康診断の検査項目を増やすイメージ。患者(オブジェクト)には手を加えず、検査員(操作)だけを増やしていく。

3 問のクイズ学ぶ →