Perlで作る注文フローの国別キット第5回。DomesticOrderFlowFactoryとGlobalOrderFlowFactoryを実装し、製品ファミリの一括生成を完成させます
Perlで作る注文フローの国別キット第4回。OrderFlowFactoryロールを定義し、製品ファミリを一括生成する仕組みを導入します
Perlで作る注文フローの国別キット第3回。国内配送に海外決済が紛れ込む組み合わせミスで手数料計算が狂い、業務事故が発生する様子を体験します
Perlで作る注文フローの国別キット第2回。海外市場対応を追加すると、if/elseが増殖し可読性が低下する問題を体験します
Perlで作る注文フローの国別キット第1回。国内市場向けの注文フローを決済・配送・通知の3クラスで実装し、シンプルな連携を体験します
Flyweightパターンを学ぶ全6回のシリーズ目次。弾幕シューティングを題材に、大量オブジェクトのメモリ効率化テクニックを習得します。
実は作ってきたものが「Flyweightパターン」でした!GoFデザインパターンの構造パターンを学び、Prototypeパターンとの違いも解説します。
BattleFieldクラスで弾の位置を管理し、毎フレーム更新・描画。完成した弾幕シューティングエンジンの全体像をお見せします。
renderメソッドに位置を引数で渡して描画。共有オブジェクトと外部状態を組み合わせて、弾幕を効率的に描画する方法を学びます。
同じ種類の弾は1つのオブジェクトを共有しよう!BulletFactoryでオブジェクトプールを管理し、「1000発の弾を5オブジェクトで」を実現します。
弾の「種類」(形状・色)と「位置」(X, Y座標)を分けて考える。この発想がメモリ効率化の鍵。内部状態と外部状態の分離を学びます。
弾幕シューティングで弾を1000発撃ちたい!でも素朴にBulletオブジェクトを1000個作ると、メモリ使用量が爆発。この問題をどう解決するか、一緒に考えてみましょう。
Compositeパターンを学びながらMarkdown目次ジェネレーターを作るシリーズの目次ページ。ツリー構造の構築、再帰的レンダリング、複数フォーマット出力を実践的に習得。
PerlとMooでCompositeパターン完全マスター!アンカーID自動生成でリンク付き目次を実現し、開放閉鎖原則(OCP)を実践。実務で使えるMarkdown処理ツールを完成させます。
PerlとMooでMarkdown目次生成器を作る第7回。同じツリー構造からMarkdown、HTML、JSON形式で出力。Compositeパターンの統一インターフェースの威力を体感します。