実は作ってきたものが「Strategy パターン」だったことを明かします。デザインパターンの世界への入口と、次のステップを紹介します。
これまで作ってきた機能を統合し、完成したディスパッチャーをBBSに組み込んで動作確認します。シリーズの集大成をお楽しみください。
URLパターンでハンドラーを振り分ける機能を追加します。正規表現マッチングを使った、より実践的なルーティングの仕組みを学びましょう。
アクション名から自動でハンドラーを選択・生成する仕組みを実装します。Factory的な生成パターンで、より柔軟なディスパッチャーを作りましょう。
複数のハンドラーを登録して管理する仕組みを作ります。レジストリパターンを使って、名前でハンドラーを管理する方法を学びましょう。
実行時にハンドラーを動的に切り替える機能を追加します。is => 'rw'を使って、柔軟にハンドラーを差し替える方法を学びましょう。
ハンドラーを保持して処理を振り分けるディスパッチャークラスを作成します。委譲(handles)を活用して、司令塔としてハンドラーに処理を任せる設計を学びましょう。
各ハンドラークラスに「必ずrunメソッドを持つ」という約束をMoo::Roleのrequiresで定義して、インターフェースを作りましょう。
各機能を別々のクラスに切り出して、責任の分離を体験しましょう。
サブルーチンを変数に代入する「コードリファレンス」を学びます。関数をデータとして扱う感覚を掴みましょう。
if/elseの代わりにハッシュを使って処理を振り分ける「ディスパッチテーブル」を学びます。コードがすっきりする感覚を体験しましょう。
前シリーズで作ったBBSに機能を追加していきます。if/elseで機能を切り替えると何が問題なのか、実際にコードを書いて体験してみましょう。
「Mooで覚えるオブジェクト指向プログラミング」シリーズ(全12回)と関連するMoo系連載の一覧・目次ページです。各回への短い解説と読み方をまとめます。
GitHub Copilot の300プレミアムリクエストを使い切ろうと挑戦した結果、100%達成できませんでした。短期集中利用で見えてきたレート制限の実態、Claude Opus 4.5 の優れた推論能力、そしてAIエージェントの自律的判断について考察します。
「いいね数に文字列が入ってる?」そんなバグを型制約で未然に防ぎましょう。isaオプションで型チェックを追加する方法と、シリーズ全12回の総まとめをお届けします。