Avatar

設計パターンを疑え

名前の嘘を暴き、意図で設計を語る

  1. Home
  2. About
  3. Perl Advent Calendar 2025 - AI Edition
  4. Archives
  5. Search
  6. Links
  7. プライバシーポリシー
  8. お問い合わせ
    1. ダークモード

アーカイブ

2026 409
2025 85
2024 1
2023 1
2022 1
さらに見る

タグ

Perl Moo Life Social Design-Pattern Refactoring Design-Patterns Code-Detective Web Movabletype Mojolicious Favorites Series-Toc Yapc Ai Game Git Perl-Entrance Code-Doctor Jquery
Featured image of post 【目次】Mooを使って自動販売機シミュレーターを作ってみよう(全10回)

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

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

10, 2026
読了時間: 2分
Featured image of post 第10回-これがStateパターンだ! - Mooを使って自動販売機シミュレーターを作ってみよう

第10回-これがStateパターンだ! - Mooを使って自動販売機シミュレーターを作ってみよう

実はこれがStateパターンだった!作ってきた設計がGoFデザインパターンの一つであることを明かし、Strategyパターンとの違いも解説。

10, 2026
読了時間: 5分
Featured image of post 第9回-完成!自動販売機シミュレーター - Mooを使って自動販売機シミュレーターを作ってみよう

第9回-完成!自動販売機シミュレーター - Mooを使って自動販売機シミュレーターを作ってみよう

いよいよ完成!全機能を統合した自動販売機シミュレーター。対話的なCLIで動作確認しながら、これまでの学習を振り返ります。

10, 2026
読了時間: 6分
Featured image of post 第8回-売り切れ状態を追加しよう(OCP実践) - Mooを使って自動販売機シミュレーターを作ってみよう

第8回-売り切れ状態を追加しよう(OCP実践) - Mooを使って自動販売機シミュレーターを作ってみよう

新しい「売り切れ状態」を追加!既存クラスを変更せずに機能拡張できるOCP(開放閉鎖原則)の威力を体感します。

10, 2026
読了時間: 6分
Featured image of post 第7回-does制約で型チェックしよう - Mooを使って自動販売機シミュレーターを作ってみよう

第7回-does制約で型チェックしよう - Mooを使って自動販売機シミュレーターを作ってみよう

間違ったオブジェクトが状態として設定されるバグを防ぎたい。does制約を使った型チェックで実行時エラーを未然に防ぐ方法を解説。

10, 2026
読了時間: 6分
Featured image of post 第6回-状態の中から次の状態へ遷移しよう - Mooを使って自動販売機シミュレーターを作ってみよう

第6回-状態の中から次の状態へ遷移しよう - Mooを使って自動販売機シミュレーターを作ってみよう

状態自身が次の状態へ遷移する仕組みを実装!StateがContextへの参照を受け取り、自ら状態を切り替える設計を学びます。

10, 2026
読了時間: 5分
Featured image of post 第5回-状態を管理するContextクラスを作ろう - Mooを使って自動販売機シミュレーターを作ってみよう

第5回-状態を管理するContextクラスを作ろう - Mooを使って自動販売機シミュレーターを作ってみよう

状態を一元管理するContextクラスを作成。VendingMachineクラスがStateへ処理を委譲する仕組みをMooで実装します。

10, 2026
読了時間: 5分
Featured image of post 第4回-Moo::Roleで共通の約束を決めよう - Mooを使って自動販売機シミュレーターを作ってみよう

第4回-Moo::Roleで共通の約束を決めよう - Mooを使って自動販売機シミュレーターを作ってみよう

複数のStateクラスに共通ルールを設けたい。Moo::Roleのrequiresでインターフェースを定義し、統一的なAPI設計を実現します。

10, 2026
読了時間: 5分
Featured image of post 第3回-状態ごとに専用クラスを作ろう - Mooを使って自動販売機シミュレーターを作ってみよう

第3回-状態ごとに専用クラスを作ろう - Mooを使って自動販売機シミュレーターを作ってみよう

肥大化したif/elseをスッキリさせたい!状態ごとにクラスを分離して、単一責任の原則を実践。MooでStateクラスを作成します。

10, 2026
読了時間: 5分
Featured image of post 第2回-状態を増やすと大変!条件分岐の悩み - Mooを使って自動販売機シミュレーターを作ってみよう

第2回-状態を増やすと大変!条件分岐の悩み - Mooを使って自動販売機シミュレーターを作ってみよう

「払い出し中」「売り切れ」を追加したらコードが複雑に…。if/elseの肥大化問題を体感し、リファクタリングの必要性を理解します。

10, 2026
読了時間: 6分
Featured image of post 第1回-自動販売機の状態をif/elseで管理しよう - Mooを使って自動販売機シミュレーターを作ってみよう

第1回-自動販売機の状態をif/elseで管理しよう - Mooを使って自動販売機シミュレーターを作ってみよう

自動販売機の動作をPerlで再現!「待機中」「コイン投入済み」をif/elseで切り替える状態管理の基礎を学びます。Mooで始めるオブジェクト指向プログラミング入門。

09, 2026
読了時間: 5分
Featured image of post シリーズ目次: ユーザー登録バリデーションを学ぶ — シンプル検証から責任の連鎖へ

シリーズ目次: ユーザー登録バリデーションを学ぶ — シンプル検証から責任の連鎖へ

Mooを使ったユーザー登録バリデーションの入門シリーズ。基本のif文実装から、複雑化した検証のリファクタリングまでを解説します。

09, 2026
読了時間: 2分
Featured image of post 第3回-【Perl/Moo】バリデータをチェーンで連携 - Chain of Responsibilityパターン入門

第3回-【Perl/Moo】バリデータをチェーンで連携 - Chain of Responsibilityパターン入門

各検証ルールを独立したMooクラスに分割し、Chain of Responsibilityパターンでチェーン構築。拡張性の高いバリデーションシステムを完成させます。

09, 2026
読了時間: 11分
Featured image of post 第2回-【Perl】検証ルール追加でif文が複雑化 - バリデーションの課題

第2回-【Perl】検証ルール追加でif文が複雑化 - バリデーションの課題

パスワード強度や確認一致など検証ルール追加でif文がネスト化。保守困難なコードの問題点を体験し、リファクタリングの必要性を学びます。

09, 2026
読了時間: 10分
Featured image of post 第1回-【Perl入門】シンプルなユーザー登録バリデーションを作る

第1回-【Perl入門】シンプルなユーザー登録バリデーションを作る

Perl 5.36でユーザー登録フォームの入力検証を実装します。メールアドレス形式チェック、必須項目確認など基本的なバリデーションロジックをif文で構築。Moo OOPシリーズ卒業者向けの実践編です。

09, 2026
読了時間: 7分
1 … 21 22 23 … 91
© 2000 - 2026 設計パターンを疑え
Hugo で構築されています。
テーマ Stack は Jimmy によって設計されています。