Les meilleures pratiques pour les constructeurs statiques

Je veux créer une instance d'une classe et d'appeler une méthode sur cette instance, dans une seule ligne de code.

PHP ne permettent pas à l'appel d'une méthode sur un régulier constructeur:

new Foo()->set_sth(); //Outputs an error.

Donc je suis en utilisant, si je peux appeler ça comme ça, un constructeur statique:

Foo::construct()->set_sth();

Voici ma question:

Est à l'aide de constructeurs statiques comme ça considéré comme une bonne pratique, et si oui, comment vous recommandons de nommer les méthodes de ces constructeurs statiques?

J'ai été hésitant sur l'une des options suivantes:

Foo::construct();
Foo::create();
Foo::factory()
Foo::Foo();
constructor::Foo();
  • Mais ce qui est le point de créer une instance, si vous n'avez pas stocker l'instance. Vous pouvez simplement appeler directement une fonction statique puis ne pouvez-vous pas? Ou sinon, peut-être un Singleton pourrait vous intéresser?
  • Je ne dis pas que je ne suis pas stocker l'instance.
  • Si vous dans la théorie voulez faire new Foo()->bar(); vous n'êtes pas le stockage de l'instance. C'est pourquoi je suppose que c'. Pourtant, je pense que le Pattern Singleton est à droite de votre allée.
  • Voici un monde réel de la ligne de code: echo ORM::factory('article')->find(1)->title; - ce n'est pas le stockage d'une instance, il n'est pas un Singleton, et il a encore un sens. N'aimeriez-vous pas d'accord?