Aide pour conception de classes
Posté : 17 janv. 2011, 01:32
Bonjour à tous !
Je suis en train de créer une sorte de petit CMS en POO.
J'ai pour le moment j'ai les classes :
Dans ma classe Article j'ai une methode setArticle() qui enregistre (entre autres) le nom de l’auteur. Pour cela j'utilise (dans la classe) $_SESSION['login']->login plutôt que d'instancier la classe Member et avoir le nom du membre. Le problème c'est qu'en utilisant les SESSIONs ma classe est beaucoup moins indépendante et l'utiliser dans un autre projet deviendrait compliqué mais instancier la classe Member me parait beaucoup moins optimisé (mais plus propre?).
L'autre idée était d'utiliser l’héritage en faisant une super-classe "CMS" (par ex.) mais cela me semble absolument mauvais du point de vue de la conception.
Pourriez vous m'éclairer sur ces points s'il vous-plaît. Peut être utilise-je mal la POO.
Une dernière chose. Si, par la suite, je voudrais pouvoir modifier un menu, cela vaut-il la peine de faire une classe "Menu" ou faudrait-il mieux faire une classe "Options" avec les méthodes pour modifier le menu ?
Merci beaucoup d'avance et excusez moi si certaines questions peuvent sembler trop triviales.
Cordialement
BafS
Je suis en train de créer une sorte de petit CMS en POO.
J'ai pour le moment j'ai les classes :
- Database : Pour la sauvegarde/récupération de données. Je l'ai mise en "static" pour pouvoir l’appeler partout (bonne idée ?).
Article : Pour lire les articles dans la base de données, en écrire un nouveau etc...
Member : Pour se loger, s'inscrire etc...
Dans ma classe Article j'ai une methode setArticle() qui enregistre (entre autres) le nom de l’auteur. Pour cela j'utilise (dans la classe) $_SESSION['login']->login plutôt que d'instancier la classe Member et avoir le nom du membre. Le problème c'est qu'en utilisant les SESSIONs ma classe est beaucoup moins indépendante et l'utiliser dans un autre projet deviendrait compliqué mais instancier la classe Member me parait beaucoup moins optimisé (mais plus propre?).
L'autre idée était d'utiliser l’héritage en faisant une super-classe "CMS" (par ex.) mais cela me semble absolument mauvais du point de vue de la conception.
Pourriez vous m'éclairer sur ces points s'il vous-plaît. Peut être utilise-je mal la POO.
Une dernière chose. Si, par la suite, je voudrais pouvoir modifier un menu, cela vaut-il la peine de faire une classe "Menu" ou faudrait-il mieux faire une classe "Options" avec les méthodes pour modifier le menu ?
Merci beaucoup d'avance et excusez moi si certaines questions peuvent sembler trop triviales.
Cordialement
BafS