difference singleton classe avec methodes statiques
bonsoir tout le monde
j'avais une question un peu theorique mais dont je n'arrive pas a trouver de reponse.
voila j'aurais aimé connaitre les avantages et les inconvenients des singletons et des classes avec des methodes statiques:
par exemple en php, pour ecrire une classe de configuration on peut realiser soit:
le singleton
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
class SingletonConfiguration {
/**
* the configuration instance
* @access private
*/
private static $instance = null;
/**
* get the configuration instance
* @access public
* @return mixed
*/
public static function getInstance() {
if (is_null($this->instance)) {
$this->instance = new SingletonConfiguration();
}
return $this->instance;
}
/**
* default constructor
* @access private
*/
private function __construct() {
}
/**
* get a configuration key
* @access public
*/
public function getConfigKey($keyName) {
...
}
} |
et une classe avec des methodes statiques
Code:
1 2 3 4 5 6 7 8
|
class Config {
public static function getConfigKey($keyName) {
}
} |
dans quel cas utiliser un design pattern et non pas l'autre?
merci d'avance de votre experience
bien cordialement,