Vu que je fait maintenant des sites basé sur des modules et un systéme de template, je me retrouve avec :
- deux classes minimum par module : une qui n'a que le menu, et une qui contient à la fois le menu et le contenu des pages du module. Le premier module ne contient que le menu pour éviter de créer pleins d'objet énorme quand on n'a pas besoin de grand chôse.
- plusieurs classes pour le systéme de template
- plusieurs classes pour divers objets
En dehors de tout ça, il me reste encore quelques rares fonctions qui correspondent à des opérations pouvant être utilisé par n'importe quel objet.
Mon passage de fonction à module s'est fait suite aux réflexion suivante :
- on ne peut pas charger en mémoire deux fonctions ou deux classes qui ont le même nom
- si plusieurs modules sont fait par des personnes différentes, rien ne permet de s'assurer qu'aucune fonction d'un module n'aura le même nom que les fonctions d'un autre module
- un module n'a quasiment jamais à conaitre l'architecture d'un autre module, il n'a donc pas à avoir accés aux fonctions des autres modules
- un module peut avoir à garder en mémoire certaines valeurs. Sans classe, ca oblige à créer des variables globales ce qui peut avoir des conséquences pour un autre module
- l'utilisation de classes permet de mieux séparer le code du site en plusieurs sections autonomes
En clair, j'utilises des classes par ca que ca permet de moins se prendre la tête, d'avoir un code plus fiable, de mieux organiser le code et même de remplacer des classes par d'autres classes équivalentes sans que le reste des fonctions et classes ne s'en rendent compte.