La programmation orientée objet permet d'encapsuler dans des objets :
Cela permet de contrôler et de gérer de manière spécifique et centralisée les informations (données) et les fonctionnalités (actions) liées :
De cette manière ce ne sont pas des fonctionnalités externes (fonctions du programme) qui vont manipuler l’objet mais l'objet lui-même qui contient ses propres fonctionnalités (méthodes de l'objet) pour les gérer. Pour cela :
La création d'un objet peut être intéressante pour gérer un seul objet qui a uniquement avec des attributs(données sans méthodes particulières supplémentaires.
Var moyenneClasse = { };
var moyenneClasse = { nomClasse : "BTSSIO", moyennes : [], derniereRecuperation : Date.now() };
//ajout d'un atttibut moyenneClasse.annee = 2017;
console.log(moyenneClasse);
// utilisation de la notation pointée console.log(moyenneClasse.nomClasse); // utilisation de la notation tableau associatif console.log(moyenneClasse["nomClasse"]);
La création d'une classe d'objet permet d'avoir un modèle qui encapsule :
Une classe d'objet n'est pas manipulable directement. Il faudra instancier cette classe pour avoir un objet manipulable dans le programme.
On pourra ensuite instancier autant d'objet que l'on a besoin sur le même modèle.
var MoyenneClasse = function() { // les attributs this.nomClasse = "BTSSIO"; this.moyennes = []; // contiendra autant d'objets que de moyennes this.derniereRecuperation = Date.now(); // une méthode gérée par l'objet pour afficher des informations this.afficherConsole = function() { console.log("Nom classe : " + this.nomClasse); console.log("Moyennes : " + JSON.stringify(this.moyennes)); }; };
var moyenneClasse = new MoyenneClasse(); // afficher les informations de l'objet moyenneClasse.afficherConsole();
MoyenneClasse.resetDerniereRecuperation = function() { this.derniereRecuperation = Date.now(); };