Featured image of post 【目次】Mooを使って自動販売機シミュレーターを作ってみよう(全10回)

【目次】Mooを使って自動販売機シミュレーターを作ってみよう(全10回)

Stateパターンを自然に学べるシリーズ。自動販売機の動作をPerlで再現しながら、if/elseの限界を体験し、状態ごとにクラスを分離する設計に辿り着きます。

@nqounetです。

「Mooを使って自動販売機シミュレーターを作ってみよう」シリーズの目次です。

このシリーズについて

このシリーズでは、自動販売機の動作をPerlでシミュレートしながら、オブジェクト指向プログラミングの考え方を深く学びます。

最初はシンプルなif/elseで状態を管理する実装から始め、機能追加に伴う問題を体験し、最終的にはStateパターンと呼ばれるデザインパターンに到達します。

対象読者

  • Perl入学式を卒業したばかりの方
  • 「Mooで覚えるオブジェクト指向プログラミング」シリーズを読了した方
  • モダンなPerlでオブジェクト指向プログラミングを実践したい方

技術スタック

  • Perl v5.36以降(signatures対応)
  • Mooによるオブジェクト指向プログラミング

各回の内容

第1回〜第2回:問題の発見

第3回〜第4回:状態をクラスに分離

第5回〜第6回:Contextと状態遷移

第7回〜第8回:型チェックと機能追加

第9回〜第10回:統合とパターン解説

学習のポイント

学ぶこと
第1回if/elseでの状態管理
第2回if/elseの肥大化問題
第3回状態ごとのクラス分離(単一責任の原則)
第4回Moo::Roleでインターフェース定義
第5回Contextクラスと委譲
第6回StateがContextへの参照を持つ状態遷移
第7回isaによる型チェック
第8回新しい状態の追加(OCP)
第9回統合と完成
第10回Stateパターンの構造とStrategyパターンとの比較

関連シリーズ

ぜひ順番に読んで、Stateパターンを自然に身につけてください!

comments powered by Disqus
Hugo で構築されています。
テーマ StackJimmy によって設計されています。