Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

生成に関するパターン(Creational Patterns)

オブジェクトの生成方法を柔軟にし、生成ロジックと利用ロジックを分離するパターン群。

Singleton(シングルトン)

インスタンスが1つしか存在しないようにする。インスタンスをグローバル変数のように扱う。

m1.value='first'
m1.value='second', m2.value='second'

Factory Method

オブジェクトの生成処理をサブクラスに任せる(newを隠す)

Woof!

Builder

多数のパラメータを持つ複雑なオブジェクトを、生成過程を分けて段階的に組み立てるパターン。コンストラクタ引数が増えすぎる「テレスコーピング・コンストラクタ」問題を避けられる。

Prototype

既存のインスタンスを複製(clone)することで新しいオブジェクトを作るパターン。生成コストが高いオブジェクトや、 初期状態を維持したままバリエーションを作りたい場合に使う。Pythonでは標準ライブラリの copy.deepcopy がそのまま使える。

'Dolly'