Maison  >  Article  >  développement back-end  >  Trois modèles de conception couramment utilisés dans les compétences PHP_php

Trois modèles de conception couramment utilisés dans les compétences PHP_php

高洛峰
高洛峰original
2017-02-20 17:45:411286parcourir

Cet article présente trois modèles de conception PHP couramment utilisés : le mode singleton, le mode usine et le mode observateur. Il a une bonne valeur de référence. Jetons-y un coup d'œil avec l'éditeur.

1. . Tout d'abord, regardons le mode singleton

Le mode dit singleton signifie qu'il n'y aura qu'une seule instance de cette classe dans l'application.

Habituellement, le modèle singleton est utilisé dans les instances qui autorisent uniquement l'accès à la base de données à l'objet, empêchant ainsi l'ouverture de plusieurs connexions à la base de données.

Une classe singleton doit inclure les points suivants :

Contrairement aux classes ordinaires, les classes singleton ne peuvent pas être instanciées directement, elles sont seulement instanciées par elles-mêmes. Par conséquent, pour obtenir de tels effets restrictifs, le constructeur doit être marqué comme privé.

Pour qu'une classe singleton fonctionne sans être instanciée directement, une telle instance doit lui être fournie. Par conséquent, il est nécessaire que la classe singleton ait une variable membre statique privée qui peut enregistrer l'instance de la classe et une méthode statique publique correspondante qui peut accéder à l'instance.

En PHP, afin d'éviter que le clonage de l'objet de classe singleton ne brise le formulaire d'implémentation ci-dessus de la classe singleton, une méthode privée __clone() vide est généralement fournie pour la base.

Le modèle singleton garantit qu'une classe n'a qu'une seule instance, s'instancie et fournit cette instance à l'ensemble du système.

Le modèle singleton est un modèle de conception courant. Dans les systèmes informatiques, les pools de threads, les caches, les objets de journal, les boîtes de dialogue, les imprimantes, les opérations de base de données et les pilotes de carte graphique sont souvent conçus comme des singletons.

Il existe trois types de modes singleton : singleton de style paresseux, singleton de style affamé et singleton de style enregistrement.

Le mode singleton présente les 3 caractéristiques suivantes :

1. Il ne peut y avoir qu'un seul exemple.

2. Vous devez créer cette instance vous-même.

3. Cette instance doit être fournie à d'autres objets.

Alors pourquoi utiliser le modèle PHP singleton ?

L'un des principaux scénarios d'application de PHP est le scénario dans lequel l'application traite la base de données. Dans une application, il y aura un grand nombre d'opérations de base de données pour le comportement de connexion du handle de base de données. à la base de données, l'utilisation du mode singleton peut éviter un grand nombre d'opérations nouvelles. Parce que chaque nouvelle opération consomme des ressources système et mémoire.

Pour plus d'articles liés aux trois modèles de conception couramment utilisés en PHP, veuillez faire attention au site Web chinois de PHP !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn