Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 19-05-2015 18:34:28

yasmina
Nouveau membre
Date d'inscription: 26-04-2015
Messages: 9

créer classe générique

Bonjour à tous,

Mon application contient une classe générique utilisées sur tout l'application.
Ce classe accède au BDD et réalise des traitements.

quels sont les étapes pour créer cette classe générique?

Merci d'avance.

Hors ligne

 

#2 20-05-2015 09:07:07

JGreco
Modérateur
Date d'inscription: 22-12-2012
Messages: 432

Re: créer classe générique

Bonjour,

Pour créer cette classe générique, il faudrait que ce soit un service, déclaré comme invokables si aucune dépendance n'est présente, sinon via une factory. Après il faut qu'elle soit dans le module Application, pour être ainsi appelé de partout.

Et tu peux ainsi la récupérer dans tous les services de ton application. Soit directement via le serviceLocator dans ton service, soit via injection de dépendance.


ZF2 et doctrine addict
profil stack overflow : http://stackoverflow.com/users/3333246/ … ab=profile

Hors ligne

 

#3 20-05-2015 17:04:14

Orkin
Administrateur
Lieu: Paris
Date d'inscription: 09-12-2011
Messages: 1261

Re: créer classe générique

JGreco a écrit:

Après il faut qu'elle soit dans le module Application, pour être ainsi appelé de partout.

Pas nécessairement, suffit qu'elle soit dans un module

Hors ligne

 

#4 20-05-2015 20:10:11

JGreco
Modérateur
Date d'inscription: 22-12-2012
Messages: 432

Re: créer classe générique

yasmina a écrit:

Bonjour à tous,

Mon application contient une classe générique utilisées sur tout l'application.

Alors d'accord pas obligatoire qu'elle soit dans le module Application, on peut la mettre partout, mais si elle est commune a toute l'appli cela à plus de sens de la définir dedans.


ZF2 et doctrine addict
profil stack overflow : http://stackoverflow.com/users/3333246/ … ab=profile

Hors ligne

 

#5 21-05-2015 11:13:45

Orkin
Administrateur
Lieu: Paris
Date d'inscription: 09-12-2011
Messages: 1261

Re: créer classe générique

Pas forcément tu peux très bien avoir un module qui va gérer tout ce qui est envoi de mail. Et en avoir besoin dans différents module de ton application. Dans ce cas les classes dont tu auras besoin seront dans le module mail et seront utilisées dans tous les autres wink.

Hors ligne

 

#6 21-05-2015 11:21:22

JGreco
Modérateur
Date d'inscription: 22-12-2012
Messages: 432

Re: créer classe générique

Et donc sans utiliser les événement/Listeners on aura une dépendance entre mail et les module l'utilisant ?


ZF2 et doctrine addict
profil stack overflow : http://stackoverflow.com/users/3333246/ … ab=profile

Hors ligne

 

#7 21-05-2015 17:37:56

Orkin
Administrateur
Lieu: Paris
Date d'inscription: 09-12-2011
Messages: 1261

Re: créer classe générique

Oui tout comme un module User et un module Blog, un module de gestion de paniers avec un module de gestion des articles etc ...

Hors ligne

 

#8 21-05-2015 20:32:21

tdutrion
Administrateur
Lieu: Dijon, Paris, Edinburgh
Date d'inscription: 23-12-2009
Messages: 613
Site web

Re: créer classe générique

Je pense qu'il faut séparer les types de modules et de lien dans ce cas. Pour un module d'envoi d'email de faible importance ou de loguer des infos non critiques, je pense que les évènements sont particulièrement utiles. De même pour étendre des libs third party ou ajouter certaines fonctionnalités qui doivent être réellement atomiques.

Dans le contexte de ce post, je ne suis pas convaincu par les évènements. Le module ne marchera pas sans les classes en question, donc plutôt un système d'interfaces et de factories/invokables permettant de choisir quelle classe passer (celle de la dépendance).

Au passage, j'ai vu un message de Bakura sur Github à propos de ZF3 et il semblerait qu'il soit prudent de commencer à utiliser uniquement des factories, plus d'invokables, et de ne plus utiliser FactoryInterface mais directement des classes invokables.

Hors ligne

 

#9 21-05-2015 22:28:50

Orkin
Administrateur
Lieu: Paris
Date d'inscription: 09-12-2011
Messages: 1261

Re: créer classe générique

Théocrite a écrit:

Au passage, j'ai vu un message de Bakura sur Github à propos de ZF3 et il semblerait qu'il soit prudent de commencer à utiliser uniquement des factories, plus d'invokables, et de ne plus utiliser FactoryInterface mais directement des classes invokables.

Yep utiliser des dépendances fortes est recommandé ça évite d'avoir à injecter le service locator dans nos services, classes. L'utilisation d'invokables est toujours possible dans le cas où la classe reste simple et n'a aucune dépendance mais c'est finalement assez rare.
Dans quel cas tu voulais utiliser FactoryInterface ? Je t'ai pas suivi :p ?

D'ailleurs à ce propos nous organisons un meetup qui aura lieu normalement la semaine prochaine à Paris sur le Service Manager.

Hors ligne

 

#10 21-05-2015 22:43:11

tdutrion
Administrateur
Lieu: Dijon, Paris, Edinburgh
Date d'inscription: 23-12-2009
Messages: 613
Site web

Re: créer classe générique

JGrecko évoquait la création d'une factory dans son premier message, et pour une raison qui m'échappe j'avais l'habitude de mettre toutes mes classes de factory implementation de factoryInterface, j'ai donc jugé bon de le signaler d'un point de vue facilité de migration.

Tu nous feras un retour sur le meetup ? Paris c'est loin, je peux pas venir !

Hors ligne

 

#11 22-05-2015 10:48:55

Orkin
Administrateur
Lieu: Paris
Date d'inscription: 09-12-2011
Messages: 1261

Re: créer classe générique

Pour le coup j'ai FactoryInterface aussi dedans. Je lui en parlerais du coup wink.

Yep pas de soucis ^^.

Hors ligne

 

#12 30-11-2015 14:11:59

JGreco
Modérateur
Date d'inscription: 22-12-2012
Messages: 432

Re: créer classe générique

Bonjour,

Je remonte ce post ou une discussion était déjà amorcée sur FactoryInterface, les invokables et ZF3. Un quelconque retour a ce niveau  ??


ZF2 et doctrine addict
profil stack overflow : http://stackoverflow.com/users/3333246/ … ab=profile

Hors ligne

 

#13 02-12-2015 16:59:38

Orkin
Administrateur
Lieu: Paris
Date d'inscription: 09-12-2011
Messages: 1261

Re: créer classe générique

Hello, t'as tout ici : http://framework.zend.com/blog/zend-fra … admap.html et plus précisément pour le Service Manager ici : https://github.com/zendframework/zend-s … gration.md

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages