Eyes, JAPAN Blog > Factory Methodパターン

Factory Methodパターン

makuta

この記事は1年以上前に書かれたもので、内容が古い可能性がありますのでご注意ください。

Factory Methodパターンというデザインパターンについてです。

 

Factory Methodパターンでは、インスタンスの作り方をスーパークラスの側で定めるのですが、具体的なクラス名までは定めません。具体的な肉付けは、全てサブクラスの側で行います。これにより、インスタンス生成のための枠組み(フレームワーク)と、実際のインスタンス生成のクラスとを分けて考えることができるようになります。

Factory Methodパターンは「継承」を利用しているパターンで、インスタンスの生成をサブクラスに委ねることで、より柔軟なインスタンスを生成することができます。

 

Factory Methodパターンの目的は、GoFでは次のように定義されています。

 オブジェクトを生成するときのインターフェースだけを規定して、実際二度のクラスをインスタンス化するかはサブクラスが決めるようにする。Factory Methodパターンは、インスタンス化をサブクラスに任せる。

 

 

Factory Methodパターンを利用することで、オブジェクトの生成処理と使用処理を分離し、利用者から隠すことで、クラス間の結びつきが低くなるので、再利用性が高まり柔軟な対応ができるようになります。

ちなみに今回のFactory MethodパターンはTemplate Methodパターンを応用したものです。

Comments are closed.