Salut,
Personnellement je n'ai jamais eu besoin de getters/setters dans mes modèles, mais j'imagine que
ça peut arriver d'en avoir besoin.
les getters/setters ne servent que si ta classe a besoin d'un attribut (ou plusieurs).
Ici dans ta classe, tu n'as pas d'attributs, donc pas besoin de getters/setters.
Pour prendre un exemple où tu aurai besoin des getters/setters,
on va dire que dans ton application, dans chaque Session, tu aimerai savoir
combien de fois on "modifie" un "étudiant".
Du coup dans ton modèle d'étudiant (i.e ta classe "Students"),
on va rajouter un attribut "nb_student_updates" (pour "number of student's updates").
Et dans la fonction Update_student on va incrémenter ce nombre.
Et dans un controller, si un moment tu veux connaitre le nombre de fois qu'on
a modifié un étudiant, on va récupérer ce nombre grâce au "getter".
classe Students :
Et dans un controller :
(je ne sais pas comment tu récupères un model, je vais juste l'appeler directement "model_student")
C'est un exemple un peu stupide, mais ça devrait suffir pour comprendre l'idée.
Remarque :
Dans cet exemple, on a pas eu besoin d'un "setter" (seulement d'un "getter"), mais dans
d'autres exercices on pourrait avoir besoin de "setters".
J'ai essayé de trouver un exemple concret qui utiliserai un "setter", mais je n'ai pas d'idées.
Peut-être que quelqu'un d'autre en aura une.
Remarque :
Tu peux mettre chaque getter/setter spécifique à chaque attributs dans chaque model...
Mais en général on créer juste un getter général, et un setter général, que tu places dans
la classe "Model", dont tous tes modèles hériteront.
Un truc dans ce style :
Remarque :
Attention aux conventions,
on préfère ecrire les noms des méthodes en commençant par une minuscule.