classes et objets | classes → |
dans les langues actuelles, qui viennent principalement des premières langues structurées telles que Algol ou BCPL, la Possibilité de créer des fonctions pour les réutiliser de différentes manières, que ce soit dans le même module de programme ou dans différents modules, a été l’un des principes fondamentaux de la programmation des systèmes informatiques. Cependant, ce paradigme était court pour de nouvelles situations émergentes dans le temps, telles que la programmation vidéo ou la 3D et l’intelligence artificielle. À la fin des années 70, il a commencé à théoriser sur les langages de programmation qui utilisent des entités indépendantes autonomes afin de mener à bien les applications. Comme nous l’avons dit précédemment, un programme est composé de code et de données. Les objets sont des unités contenant leur propre code et des données pour leur propre opération de soi. Nous pouvons dire qu’ils sont des programmes dans des programmes.
Ainsi, nous pouvons réaliser que les objets peuvent être utilisés comme variables, pour notre propre usage. Mais nous ne pouvons pas définir les variables d’objet sans pouvoir leur donner une forme. La forme des objets sont les données (propriétés) et le code (fonctions) contenant l’objet. Ceci s’appelle la classe d’objet. Pour définir des cours en JavaScript, nous le faisons au moyen de fonctions, telles que:
function Persona(nombre) { this.nombre = nombre; this.color_pelo = 'negro'; this.peso = 75; this.altura = 165; this.sexo = 'varón'; this.edad= 26; }
Nous allons avoir l’air bien car cette fonction est structurée. C’est ce qu’on appelle le constructeur de classe et, dans celui-ci, nous définissons les données de la classe, que nous pourrons utiliser lors de la création d’objets avec elle. Notez l’utilisation du mot réservé ceci. Ce mot sert à identifier l’objet en soi dans la définition de la classe. Lorsque nous écrivons
this.peso = 75;
Nous créons la propriété « Poids » de la classe « Personne ». Lorsque nous créons une propriété dans le constructeur et donnons une valeur, comme dans ce cas, nous attribuons une valeur par défaut. Tous les objets créés avec ce constructeur contiendront une propriété « Poids » avec cette valeur initiale, bien que nous puissions ensuite le modifier lors de l’utilisation de l’objet. Pour définir un objet de cette classe, nous ne devrions faire que cela:
var hombre = new Persona('Pepe');
Nous avons défini l’objet « Man », qui contiendra tout le Propriétés définies dans la classe de fonctions « Personne ». Si nous voulons changer votre valeur, il suffit de faire quelque chose comme ceci:
hombre.peso = 80;
de cette manière, les données définies pour cet objet changent. Mais si nous avons défini plus d’objets de type personne, chacun d’entre eux contiendra les mêmes propriétés, mais avec des valeurs différentes. Aucun objet n’a la même valeur que d’un autre objet de la même classe que si nous l’assignions explicitement.
var mujer = new Persona('Ana'); mujer.peso = 67; mujer.sexo = 'mujer';
Dans ce cas, nous avons fait la même chose, mais nous indiquons Son propre poids, indépendant de la variable « homme ». Ainsi, nous pouvons avoir tant d’objets de la même classe que nous souhaitons effectuer les opérations pertinentes. Une dernière chose à propos des constructeurs: comme nous pouvons le constater, nous pouvons passer des paramètres, que nous pouvons convertir les valeurs des propriétés des objets de cette classe.