Avatar

設計パターンを疑え

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

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

アーカイブ

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

タグ

Perl Moo Life Social Design-Pattern Refactoring Code-Detective Design-Patterns Web Movabletype Mojolicious Favorites Series-Toc Yapc Ai Game Git Perl-Entrance Code-Doctor Jquery
Featured image of post コードバーテンダー【Service Locator】隠し味を誰も知らない〜記録なき秘伝〜
Tech

コードバーテンダー【Service Locator】隠し味を誰も知らない〜記録なき秘伝〜

Service Locatorは依存関係を隠蔽し、テストを困難にするアンチパターン。Mooのコンストラクタインジェクションで依存を明示し、コード自身が自分の必要なものを語る設計へ。

24, 2026
読了時間: 16分
Featured image of post コードバーテンダー【Law of Demeter】隣の客の注文を覗かない〜バーテンダーの矜持〜
Tech

コードバーテンダー【Law of Demeter】隣の客の注文を覗かない〜バーテンダーの矜持〜

Law of Demeter(デメテルの法則)とは何か? Perl+Mooのコード例で、メソッドチェーンによる過剰な結合の問題と、handlesによる委譲での解決策を物語形式で解説します。

23, 2026
読了時間: 14分
Featured image of post コードバーテンダー【Temporal Coupling】カクテルの手順を間違えると台無し〜順序の呪い〜
Tech

コードバーテンダー【Temporal Coupling】カクテルの手順を間違えると台無し〜順序の呪い〜

Temporal Coupling(時間的結合)とは何か? Perl+Mooのコード例で、メソッドの暗黙的な呼び出し順序依存の問題と、Typestateパターンによる解決策を物語形式で解説します。

22, 2026
読了時間: 15分
Featured image of post コードバーテンダー【Primitive Obsession】加工しない原酒の力強さ〜型なき世界の代償〜
Tech

コードバーテンダー【Primitive Obsession】加工しない原酒の力強さ〜型なき世界の代償〜

Primitive Obsession(プリミティブ型への執着)とは何か? Perl+Mooのコード例で、文字列と数値ですべてを表現する問題と、Value Objectによる解決策を物語形式で解説します。

21, 2026
読了時間: 17分
Featured image of post コードバーテンダー【Middle Man】水を足しすぎたハイボール〜薄まる責務〜
Tech

コードバーテンダー【Middle Man】水を足しすぎたハイボール〜薄まる責務〜

Middle Man(中間者)とは何か? Perl+Mooのコード例で、全メソッドを転送するだけの空っぽのクラスの問題と、Remove Middle Man・選択的委譲(handles)による解決策を物語形式で解説します。

20, 2026
読了時間: 12分
Featured image of post コードバーテンダー【Refused Bequest】合わない樽での熟成〜遺産を拒む子〜
Tech

コードバーテンダー【Refused Bequest】合わない樽での熟成〜遺産を拒む子〜

Refused Bequest(拒否された遺産)とは何か? Perl+Mooのコード例で、継承した親クラスのメソッドを空でオーバーライドする問題と、Roleベース設計・委譲(handles)による解決策を物語形式で解説します。

19, 2026
読了時間: 15分
Featured image of post コードバーテンダー【Dead Code】四半世紀の澱〜役目を終えたコードへの敬意〜
Tech

コードバーテンダー【Dead Code】四半世紀の澱〜役目を終えたコードへの敬意〜

Dead Codeとは何か? Perl+Mooのコード例で、使われなくなったコードが保守を阻害する問題と、段階的削除による解決策を物語形式で解説します。

18, 2026
読了時間: 16分
Featured image of post コードバーテンダー【Feature Envy】他人のグラスに手を伸ばす客〜便利という名の依存〜
Tech

コードバーテンダー【Feature Envy】他人のグラスに手を伸ばす客〜便利という名の依存〜

Feature Envyとは何か? Perl+Mooのコード例で、他クラスのデータばかり触るメソッドの問題と、Move Method・委譲(handles)による解決策を物語形式で解説します。

17, 2026
読了時間: 11分
Featured image of post コードバーテンダー【Magic Numbers】105の名を持つ琥珀〜意味を失ったリテラルの行方〜
Tech

コードバーテンダー【Magic Numbers】105の名を持つ琥珀〜意味を失ったリテラルの行方〜

マジックナンバーとは何か? Perl+Mooのコード例で、裸のリテラル値が引き起こす問題と、名前付き定数・設定値注入による解決策を物語形式で解説します。

16, 2026
読了時間: 10分
Featured image of post コード探偵ロックの事件簿【Backends for Frontends】最後の依頼〜一つの答えが全員を不満にする夜〜
Tech

コード探偵ロックの事件簿【Backends for Frontends】最後の依頼〜一つの答えが全員を不満にする夜〜

共通APIがWebとMobile双方に「過剰かつ不足」になる問題を、クライアント専用バックエンド(BFF)で分化するPerl/Moo実装です

15, 2026
読了時間: 10分
Featured image of post コード探偵ロックの事件簿【API Gateway】窓口のない捜査本部〜マイクロサービスに個別に会いに行く悲劇〜
Tech

コード探偵ロックの事件簿【API Gateway】窓口のない捜査本部〜マイクロサービスに個別に会いに行く悲劇〜

複数マイクロサービスへの直接通信でクライアントが疲弊する問題を、API Gateway と集約オブジェクトで一本化する Perl/Moo 実装です

14, 2026
読了時間: 10分
Featured image of post コード探偵ロックの事件簿【Strangler Fig】外壁に伸びる蔓〜全面更改が新旧を窒息させる夜〜
Tech

コード探偵ロックの事件簿【Strangler Fig】外壁に伸びる蔓〜全面更改が新旧を窒息させる夜〜

全面切替で失敗した基幹刷新を、Strangler Fig と ACL、Facade、feature flag で段階移行する Perl/Moo 実装です

13, 2026
読了時間: 11分
Featured image of post コード探偵ロックの事件簿【Anti-Corruption Layer】越境伝票の怪〜外様の略語が捜査本部を汚す夜〜
Tech

コード探偵ロックの事件簿【Anti-Corruption Layer】越境伝票の怪〜外様の略語が捜査本部を汚す夜〜

外部倉庫 API の略語と状態コードが内部ドメインを汚染する問題を、ACL と Translator で隔離する Perl/Moo 実装です

12, 2026
読了時間: 10分
Featured image of post コード探偵ロックの事件簿【Competing Consumers】重なる受領印〜増員だけでは消えない二重処理〜
Tech

コード探偵ロックの事件簿【Competing Consumers】重なる受領印〜増員だけでは消えない二重処理〜

単一コンシューマで詰まる出荷指示キューを、Competing Consumers と idempotency で安全に並列化します

11, 2026
読了時間: 10分
Featured image of post コード探偵ロックの事件簿【Dead Letter Queue】差し戻し地獄〜リトライの檻に囚われたメッセージ〜
Tech

コード探偵ロックの事件簿【Dead Letter Queue】差し戻し地獄〜リトライの檻に囚われたメッセージ〜

失敗時にメッセージをキューへ戻し続ける無限リトライのアンチパターンを分解し、QueueMessage・DeadLetterQueue・MessageProcessorによるDLQ設計をPerl/Mooで実装。

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