JeuWeb - Crée ton jeu par navigateur
[PHP et autres] Qu'est-ce vraiment qu'un module? - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : [PHP et autres] Qu'est-ce vraiment qu'un module? (/showthread.php?tid=6481)

Pages : 1 2


[PHP et autres] Qu'est-ce vraiment qu'un module? - Erilan - 03-11-2012

Salut à tous !

J'ai plusieurs fois lu des gens parler de module : "module de combat", "module d'inscription" etc... et je n'arrive pas bien à saisir ce que c'est. S'agit t'il de "simple" scripts regroupés dans un seul que l'on peut importer? Où s'agit t'il de librairies (ou ce qui s'en approche), incluant de nombreuses définitions et redéfinitions de certaines fonctions?

Je ne suis pas sur d'avoir été très clair, mais bon Big Grin


RE: [PHP et autres] Qu'est-ce vraiment qu'un module? - Sephi-Chan - 03-11-2012

Le terme de module est souvent un peu pompeux, c'est souvent un ensemble de scripts qui répondent au besoin fonctionnel indiqué. C'est d'autant plus vrai pour les personnes qui travaillent sans framework, où cette notion de module existe d'autant moins.


RE: [PHP et autres] Qu'est-ce vraiment qu'un module? - Erilan - 03-11-2012

C'est ce que je voulais savoir, merci pour ta réponse !


RE: [PHP et autres] Qu'est-ce vraiment qu'un module? - Ter Rowan - 04-11-2012

(03-11-2012, 11:50 PM)Sephi-Chan a écrit : Le terme de module est souvent un peu pompeux, c'est souvent un ensemble de scripts qui répondent au besoin fonctionnel indiqué. C'est d'autant plus vrai pour les personnes qui travaillent sans framework, où cette notion de module existe d'autant moins.

J ai du mal a comprendre pourquoi travailler sans framework impliquerait de ne pas organiser son code en modules, du moins dans la définition que tu donnes


RE: [PHP et autres] Qu'est-ce vraiment qu'un module? - Sephi-Chan - 04-11-2012

Au contraire. Je dis que ces modules répondent d'autant plus à ma définition quand ils sont utilisés en dehors du cadre d'un framework dans la mesure où on ne peut rien faire d'autre.

Les framework permettent d'avoir de véritables modules (les engines dans Rails, les bundles dans Symfony, etc.), mais ce n'est pas pour autant qu'on les utile systématiquement. Même les utilisateurs de frameworks utilisent le terme module à tort et à travers ! En général, ça désigne une poignée d'actions de contrôleurs, leurs vues et quelques méthodes de modèles.


RE: [PHP et autres] Qu'est-ce vraiment qu'un module? - niahoo - 04-11-2012

Dans mon framework plus ou moins perso (en fait, une collection de librairies sympa avec mon code glu), un module c'est :

- un fichier php principal pour le module nom_du_module.php qui contient des infos relatives au module (une classe avec une API statique et/ou un objet à instancier qui offre les fonctionnalités du module
- un fichier de routes pour mapper des URL aux contrôleurs
- des contrôleurs
- des vues
- des modèles
- des bibliothèques

Tout ça est bien sur facultatif, un module peut n'être qu'une collection de contrôleurs par exemple.


RE: [PHP et autres] Qu'est-ce vraiment qu'un module? - Erilan - 04-11-2012

Ok, donc on peut un peu comparer ça a la programmation modulaire en C?


RE: [PHP et autres] Qu'est-ce vraiment qu'un module? - Sephi-Chan - 04-11-2012

Si tu fais référence au fait de séparer les fichiers de prototypes (foo.h) des fichiers d'implémentation (foo.c), alors non, ça n'a rien de comparable. ^^


RE: [PHP et autres] Qu'est-ce vraiment qu'un module? - Erilan - 04-11-2012

Non je fais plutôt référence au fait de mettre des fonctions et autre dans un .c et de "l'importer" dans un autre .c . Donc en PHP, faire un fichier .php avec juste des fonctions et faire un include dans un autre .php


RE: [PHP et autres] Qu'est-ce vraiment qu'un module? - niahoo - 04-11-2012

Si tu utilises les namespaces alors oui tu peux considérer ça comme un module Smile Mais en PHP on fera plutot une classe pour ça