Qu'est-ce que le modèle d'usine ?

藏色散人
Libérer: 2023-04-05 20:34:02
avant
7178 Les gens l'ont consulté

Le modèle d'usine (modèle d'usine) est notre modèle d'objet d'instanciation le plus couramment utilisé. Il s'agit d'un modèle qui utilise des méthodes d'usine pour remplacer de nouvelles opérations. Le célèbre forum Jive utilise largement le modèle d'usine. Le modèle d'usine peut être vu partout dans le système de programme Java. Étant donné que le modèle d'usine est équivalent à new pour la création d'objets d'instance, nous générons souvent des objets d'instance basés sur la classe Class, tels que A a=new A().

Le mode usine est également utilisé pour créer des objets d'instance, donc à l'avenir, vous devrez être prudent lorsque vous en créez de nouveaux. Pouvez-vous envisager d'utiliser le mode usine ? Bien que cela puisse nécessiter plus de travail, cela entraînera des problèmes pour vous ? système. Une plus grande évolutivité et des modifications minimes.

<?php
//汽车类
class car{
    public function run(){
    echo &#39;car run .....&#39;;
    }
}
class bus{
    public function run(){
        echo &#39;bus run .....&#39;;
    }
}
//创建一个汽车工厂类用于生产汽车对象
class carFactory{
    public static function getACar($type){
if($type == &#39;car&#39;){
    return new car();
}else{
    return new bus();
}
    }
}
//调用演示
$car = carFactory::getACar(&#39;bus&#39;);
$car->run();
Copier après la connexion

Au fur et à mesure que le projet avance, la classe bus et la classe voiture peuvent " donner naissance à de nombreux fils ", nous devons donc instancier ces fils un par un. Ce qui est pire, nous devrons peut-être aussi modifier. le code précédent, comme modifier le nom de la classe ou le nom du fichier de la voiture ou définir un constructeur pour la voiture ou le bus. Si nous n'utilisons pas le mode ingénierie, nous devrons modifier le fichier et le code appelant correspondants (j'ai oublié pourquoi, un bug). se produira ! ).

Mais si vous utilisez consciemment le mode usine dès le début, ces problèmes disparaîtront.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:hcoder.net
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal