Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

PHPImpact Blog:
Static Factories vs Public Constructors
Jul 18, 2008 @ 12:58:31

On the PHP::Impact blog Federico Cargnelutti has posted a comparison of using static factory methods to create an instance of a class versus making an object, calling the constructor.

Normally, creating an instance of a class is done by calling new, which calls the constructor. Static factory provides a static method that returns an instance of the class. So, you are using static factory instead of the constructor. Providing a static factory method instead of a public constructor has both advantages and disadvantages.

He includes some of the advantages of the factory method and others for the normal call to create an object. He also mentions some comments made by Dagfinn Reiersol in a blog post about public constructors.

tagged: static factory designpattern constructor object instance