「Perl API統合パターン」シリーズの目次です。
第1回: PerlでHTTP API入門 - 最初の一歩は簡単だった
OpenWeatherMap APIを題材に、PerlのHTTP::TinyとJSON::PPを使った基本的なAPI連携を学びます。
第2回: 複数API統合の課題 - 2つ目のAPIで破綻する
WeatherStack APIを追加し、if文による分岐でコードが複雑化する様子を体験します。なぜデザインパターンが必要なのかを理解します。
第3回: Adapterパターン実装 - インターフェースの統一
Adapterパターンを導入し、異なるAPIのインターフェースを統一します。ポリモーフィズムにより、呼び出し側のコードをシンプルにします。
第4回: API統合の設計課題 - Adapterパターンの限界
Adapterパターンだけでは解決できない「呼び出し側の責任」について整理し、Facadeパターン導入の必要性を解説します。
第5回: Facadeパターン実装 - 窓口の一本化
Facadeパターンを使って複数のAdapterを統合管理します。フォールバック機能を実装し、API障害に強い設計にします。
第6回: APIキャッシュ戦略 - Cache::LRUとTTL
パフォーマンス向上のため、Cache::LRUを使ったキャッシュ機能を実装します。TTL(有効期限)管理により、APIリクエスト数を大幅に削減します。
第7回: Perl例外処理とNull Object - エラーを優雅に扱う
Try::Tinyによる例外処理とNull Objectパターンを組み合わせ、すべてのAPIが失敗した場合でもシステムを停止させない堅牢なエラーハンドリングを実装します。
第8回: デザインパターン総まとめ - SOLID原則とAPI統合
完成したコードを振り返り、使用したAdapterパターンとFacadeパターンの正体を明かします。SOLID原則との対応関係についても解説します。
