Featured image of post 【目次】PerlとMooでレポートジェネレーターを作ってみよう(全10回)

【目次】PerlとMooでレポートジェネレーターを作ってみよう(全10回)

「PerlとMooでレポートジェネレーターを作ってみよう」シリーズの目次です。Factory Methodパターンについて学びながら、継承とオーバーライドを活用して、拡張性の高いシステムを作る方法を解説します。

@nqounetです。

「PerlとMooでレポートジェネレーターを作ってみよう」シリーズの目次です。

シリーズ概要

このシリーズでは、月次・週次などのレポートを生成する「レポートジェネレーター」を作成しながら、オブジェクト指向プログラミングの核心(継承、ポリモーフィズム)を学びます。

最初は単純なクラスから始め、機能追加によるコードの肥大化(if/else地獄)を経験し、それを継承とオーバーライドを使ってエレガントに解決していきます。

最終的には、作ったシステムがFactory Methodパターンであることを明かし、GoFデザインパターンの深い理解へと繋げます。

対象読者

  • Perl入学式を卒業したばかりの方
  • 「Mooで覚えるオブジェクト指向プログラミング」シリーズを読んだ方
  • if/elseだらけのコードをきれいにしたい方 (Refactoring)
  • デザインパターン(特にFactory Method)を学びたい方

目次

第1回 レポート生成クラスを作ろう

基本的なクラス作成とオブジェクト生成の復習です。

第2回 週次レポートも作りたい!if/elseの限界

機能追加でコードが複雑になる問題を体験します。

第3回 extendsでジェネレーターを分けよう

継承を使ってクラスを分割し、問題を解決する準備をします。

第4回 Moo::Roleで共通ルールを決めよう

インターフェース(Role)を定義して、設計を強固にします。

第5回 メソッドをオーバーライドしよう

親クラスのメソッドを上書きして、振る舞いを変えます。

第6回 基底クラスに共通処理を集めよう

共通部分を親クラスにまとめ、コードの重複をなくします。

第7回 isaで型を保証しよう

型チェックを入れて、バグを未然に防ぎます。

第8回 新種別を追加して拡張性を確認しよう

既存コードを修正せずに機能追加できる「開放閉鎖原則」を体験します。

第9回 完成!レポートジェネレーター

全ての機能を統合して、システムを完成させます。

第10回 これがFactory Methodパターンだ!

作成した設計がデザインパターンであることを学びます。


このシリーズを通して、継承とオーバーライドの実践的な使い方をマスターしましょう!

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