classe normale/méthodes statiques ou classe abstraite/méthodes normales
Bonjour,
J'espère que le sujet de ce post n'a pas déjà été traité, à priori je n'ai rien vu qui y réponde précisement.
Je voulais avoir votre avis sur une question de modélisation POO entre abstraite/statique, je suis en train de développer une application php en n/tiers et je rencontre ce problème:
J’ai une classe utilisateurBLL qui appelle pour la persistance de l’utilisateur
une classe utilisateurDAL (celle-ci génére le SQL et instancie un objet de la classe mysql qui possède les infos de connexion et les méthodes d’accès).
J’ai mis toutes les méthodes de utilisateurDAL en statique car je n’ai à aucun moment besoin d’instancier cet objet.
Et du coup je me demande si je ne devrai pas plutôt mettre ma classe utilisateurDAL en abstract et remettre des méthodes normales,
car dans ce cas de figure je ne vois pas de différence entre une classe normale avec toutes ses méthodes statiques et une classe abstraite avec toutes ses méthodes normales. Existe-t-il une différence applicative entre les deux dans ce cas particulier ?
(je n’ai pas besoin ici d’utiliser le polymorphisme/override qui est pourtant au fondement du concept de classe abstraite).
Merci de vos réponses/solutions/avis
Cordialement.
réponse (à priori) à ma question
Bon alors à priori:
La classe UtilisateurDAO étant utilisée directement par l'appel de méthodes concernant l'accès aux données, je ne peux pas (conceptuellement parlant bien sûr) la déclarer abstraite.
En revanche si j'ai bien compris, en créant 2 classes dérivées de utilisateurBLL: externeBLL et interneBLL et en n'instanciant que les classes enfants, il serait logique que je déclare ma classe parent utilisateurBLL en abstract :p