国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Maison Bibliothèques PHP Autres bibliothèques Bibliothèque PHP pour les conteneurs d'injection de dépendances
Bibliothèque PHP pour les conteneurs d'injection de dépendances
<?php
namespace Auryn;
class CachingReflector implements Reflector
{
    const CACHE_KEY_CLASSES = 'auryn.refls.classes.';
    const CACHE_KEY_CTORS = 'auryn.refls.ctors.';
    const CACHE_KEY_CTOR_PARAMS = 'auryn.refls.ctor-params.';
    const CACHE_KEY_FUNCS = 'auryn.refls.funcs.';
    const CACHE_KEY_METHODS = 'auryn.refls.methods.';
    private $reflector;
    private $cache;
    public function __construct(Reflector $reflector = null, ReflectionCache $cache = null)
    {
        $this->reflector = $reflector ?: new StandardReflector;
        $this->cache = $cache ?: new ReflectionCacheArray;
    }
    public function getClass($class)
    {
        $cacheKey = self::CACHE_KEY_CLASSES . strtolower($class);
        if (!$reflectionClass = $this->cache->fetch($cacheKey)) {
            $reflectionClass = new \ReflectionClass($class);
            $this->cache->store($cacheKey, $reflectionClass);
        }
        return $reflectionClass;
    }

Notre idée est que lorsque l'application utilise une classe Foo, elle créera la classe Foo et appellera la méthode de la classe Foo. Si cette méthode nécessite une classe Bar, elle créera la classe Bar et appellera la méthode de la classe Bar, et cette méthode Si une classe Bim est nécessaire, la classe Bim sera créée puis d'autres travaux seront effectués. L'idée d'utiliser l'injection de dépendances est que l'application utilise la classe Foo, la classe Foo a besoin de la classe Bar et la classe Bar a besoin de la classe Bim, puis créez d'abord la classe Bim, puis créez la classe Bar et injectez Bim, puis créez la classe Foo et injectez la classe Bar, puis appelez la méthode Foo, Foo appelle la méthode Bar, puis effectuez d'autres travaux. Il s’agit du modèle d’incrackée de contr?le. Le contr?le des dépendances est inversé jusqu'au début de la cha?ne d'appel. De cette fa?on, vous avez un contr?le total sur les dépendances et contr?lez le comportement de votre programme en ajustant les différents objets injectés. Par exemple, la classe Foo utilise Memcache et vous pouvez utiliser redis à la place sans modifier le code de la classe Foo.

L'idée après avoir utilisé un conteneur d'injection de dépendances est que si l'application a besoin d'accéder à la classe Foo, elle récupère la classe Foo du conteneur, le conteneur crée la classe Bim, puis crée la classe Bar et injecte Bim, puis crée le Foo et y injecte Bar, puis applique le programme appelle la méthode Foo, Foo appelle la méthode Bar, puis effectue d'autres travaux. En bref, le conteneur est responsable de l'instanciation, de l'injection des dépendances, du traitement des dépendances, etc.


Clause de non-responsabilité

Toutes les ressources de ce site proviennent d'internautes ou sont réimprimées par les principaux sites de téléchargement. Veuillez vérifier vous-même l'intégrité du logiciel?! Toutes les ressources de ce site sont uniquement à titre de référence d'apprentissage. Merci de ne pas les utiliser à des fins commerciales. Sinon, vous serez responsable de toutes les conséquences ! En cas d'infraction, veuillez nous contacter pour la supprimer. Coordonnées : admin@php.cn

Article connexe

Quelle bibliothèque PHP ORM est la meilleure pour extraire les fournisseurs de bases de données et cartographier les modèles de domaine/relationnels?? Quelle bibliothèque PHP ORM est la meilleure pour extraire les fournisseurs de bases de données et cartographier les modèles de domaine/relationnels??

05 Jan 2025

Recommandations de la bibliothèque PHP ORMEn ce qui concerne le mappage objet-relationnel (ORM) pour PHP, plusieurs bibliothèques se démarquent. Pour aborder...

Comment puis-je réduire au mieux mon application AngularJS pour éviter les problèmes d'injection de dépendances?? Comment puis-je réduire au mieux mon application AngularJS pour éviter les problèmes d'injection de dépendances??

19 Nov 2024

Meilleures pratiques pour réduire les applications AngularJSDans le contexte de la réduction des applications AngularJS, vous avez peut-être rencontré des inquiétudes concernant...

Pourquoi l'affectation automatique n'est-elle pas autorisée pour les conteneurs de bibliothèque standard dans C 11?? Pourquoi l'affectation automatique n'est-elle pas autorisée pour les conteneurs de bibliothèque standard dans C 11??

16 Nov 2024

Assignation de déplacement automatique dans les conteneurs de bibliothèque standardLa norme C 11 garantit que l'affectation de déplacement automatique (affectation d'un objet à lui-même...

Quelle est la bibliothèque de validation de formulaire la plus simple pour PHP pour les débutants?? Quelle est la bibliothèque de validation de formulaire la plus simple pour PHP pour les débutants??

17 Oct 2024

Bibliothèque de validation de formulaire la plus simple pour PHPLorsque vous traitez des soumissions de formulaires en PHP, la validation et la désinfection des entrées utilisateur sont cruciales pour garantir l'intégrité et la sécurité de votre application. Voici une bibliothèque simple qui peut vous aider à y parvenir avec EA

Quelle est la bibliothèque de validation de formulaire la plus simple en PHP pour les programmeurs?? Quelle est la bibliothèque de validation de formulaire la plus simple en PHP pour les programmeurs??

17 Oct 2024

Bibliothèque de validation de formulaire la plus simple pour PHPProblème : Développer une bibliothèque PHP simple pour une validation de formulaire efficace, où les règles et les noms de champs peuvent être facilement transmis et les erreurs récupérées. Réponse : Une approche consiste à implémenter votre propre classe de validation

Qu'est-ce que l'injection de dépendances en PHP et pourquoi c'est crucial pour les tests et la maintenabilité Qu'est-ce que l'injection de dépendances en PHP et pourquoi c'est crucial pour les tests et la maintenabilité

29 Dec 2024

Qu'est-ce que l'injection de dépendances en PHP et pourquoi est-elle importante pour les tests et la maintenabilité du code?? L'injection de dépendances (DI) est un modèle de conception utilisé dans le développement de logiciels pour améliorer la flexibilité, la testabilité et la maintenabilité du code. C'est p

See all articles