Outils pour utilisateurs

Outils du site


cours:informatique:dev:golang:demarrer_avec_go:335_struct

Ceci est une ancienne révision du document !


Notes et transcriptions du cours “Démarrer avec Go” proposée par University of California, Irvine disponible sur la plateforme coursera.

Les structures (Struct)

:TODO_DOCUPDATE:

Ainsi, une structure est un autre type de données agrégé, un autre type de données composite, en tant que type d'agrégat qui regroupe des objets de types de données arbitraires en un seul objet, et elle est utile pour beaucoup de choses, généralement à des fins organisationnelles, cela aide vraiment. Alors, donnons un exemple, une façon simple d'en parler. Vous avez, disons que vous voulez créer une structure, Struct est l'abréviation de structure d'ailleurs, et d'ailleurs, cela est également extrait directement de C, C sont aussi des structures. Donc, disons que je veux créer une structure qui décrit une personne, une structure de personne. Supposons que chaque personne possède certaines caractéristiques : un nom, une adresse et un numéro de téléphone. Donc, si tout le monde, je veux représenter ces trois aspects différents d'une personne. Donc, une option serait d'avoir trois variables distinctes. Pour chaque personne, j'aurai trois variables distinctes et le programmeur doit se rappeler qu'elles sont liées. Donc, peut-être que j'ai un nom et que je pourrais utiliser un nom pour cela, alors je pourrais dire que nous allons en nommer un, une adresse, un téléphone. J'ai trois valeurs différentes, non ? J'en ai mis un après tous pour que, en tant que programmeur, je puisse me souvenir : « OK, c'est le nom, l'adresse et le téléphone, ils doivent être apparentés, ils en ont tous un après eux, n'est-ce pas ? » La prochaine personne que je nommerai, je l'appellerai nom deux, adresse deux, téléphone deux, etc. Donc, c'est une façon de procéder. Dans ce scénario, ces trois informations (nom, adresse, téléphone) sont liées, elles doivent l'être, le programme lui-même doit se souvenir qu'elles sont liées. OK ? Que ce nom est lié à cette adresse et à ce téléphone, alors que cet autre nom est lié à cette adresse et à ce téléphone. Maintenant, une autre façon, probablement la meilleure façon de faire cette deuxième option, est de créer une structure unique, qui représente une personne et cette structure, elle agrège les trois variables. Ainsi, cet objet contient désormais le nom, l' adresse et le numéro de téléphone d'une personne. Ils sont donc liés parce qu'ils se trouvent dans le même objet. Ainsi, lorsque vous y accédez, il est évident que si vous y accédez à partir du même objet, vous savez qu'ils sont liés à la même personne. C'est donc à cela que sert une structure, pour rassembler différentes variables liées dans l'application et les assembler afin que vous, en tant que programmeur, sachiez qu'elles sont liées et qu'elles sont liées à la même personne ou à l'objet dans lequel se trouve l'objet, dans l'application dont vous parlez. Voici donc un exemple de structure. Vous avez donc défini un type, un type Struct et nous allons l'appeler personne. Cette personne a trois champs, trois informations, un nom, une adresse et un numéro de téléphone. Donc, remarquez comment je définis ce type de structure, il s'appelle personne, je donne son nom en tant que personne et chacun de ces champs, nom, adresse et téléphone, a un type, une chaîne de nom, une chaîne d'adresse, une chaîne téléphonique. Après cela, une fois que j'ai défini ce type, je peux définir n'importe quel nombre de personnes, je peux dire que var p1 est une personne, var p2 est une personne, etc., et p1 dans ce cas, elle aura un nom, une adresse et un numéro de téléphone à part entière. Ainsi, chaque propriété est appelée un champ, donc le nom est un champ, l'adresse est un champ, le téléphone est un champ, et p1 peut avoir des valeurs uniques pour tous ces champs par rapport à une autre variable p2, qui est une personne ou p3, donc je peux y avoir n'importe quel nombre de personnes. Donc, si je veux accéder aux champs de la structure, par accès je veux dire, lire ou écrire dessus, les modifier, j'utilise la notation par points. Ce n'est pas comme avec les tableaux. Avec les tableaux, vous utilisez des crochets, vous utilisez un index, utilisez la notation par points ici. Donc, p1.name, si je veux l'attribuer à Joe, je peux dire que p1.name est égal à Joe et cela signera le champ, le champ de nom de p1 à la chaîne Joe. Je peux aussi lire de la même manière, je peux dire que x est égal à p1.address et cela attribuera à X l'adresse de p1. Utilisez donc la notation par points plutôt que les crochets que vous utiliseriez avec les tableaux. En initialisant les structures, vous pouvez les initialiser à l'aide de la nouvelle fonction. Une façon de créer une structure vide est d'initialiser tous les champs à des valeurs nulles ou nulles. Donc, comme dans cette structure de personnes, les valeurs sont toutes des chaînes, n'est-ce pas ? Donc, la valeur zéro sera une chaîne vide. Donc, je peux dire p1 : = nouvelle personne et cela fera une nouvelle personne vide, donc mise à zéro. Ainsi, le nom, l'adresse et le numéro de téléphone seront tous des chaînes vides. Une autre façon d'initialiser la structure est de l'initialiser avec un littéral Struct, donc si vous voulez donner des valeurs à tous les champs lorsque vous créez la personne et que nous montrons qu'ici, p1 : = person, alors entre parenthèses, je donnerais le nom de la structure, donnons-lui un nom de structure puis une valeur de structure, non ? Donc, nom : Joe, adresse : a.st, rue puis téléphone à virgule : 123. Donc, dans ce cas, j'utilise un littéral Struct et je crée une nouvelle structure, mais j'affecte également tous les champs à différentes valeurs Joe et a street et 123. Donc, je peux le faire aussi.

◁ Précédent | ⌂ Retour au sommaire | Suivant ▷

cours/informatique/dev/golang/demarrer_avec_go/335_struct.1716899340.txt.gz · Dernière modification : 2024/05/28 12:29 de yoann