Bonjour,
À savoir : Ce tutoriel risque d'être modifié, changé de place, voir même supprimé selon les décisions de l'équipe hackademics. Sa présence, est dû aux attentes des membres du forum participant au cours Python.
Tout conseils, modifications à votre demande, sera envoyé par MP.
CLASSE ET INSTANCE
Pour ceux qui sont novices en matière de programmation objet (POO), il est nécessaire de donner des explications sur certains termes.
Imaginons un objet, comme une chaise par exemple... Pour construire cette chaise on doit créer un dessin ou patron afin d'y relever les cotes, connaitre la profondeur d'assise, la pente du dossier, ...
Ce dessin ou patron (ou moule parfois), informatiquement parlant, on l'appellera une classe.
L'objet créé, informatiquement parlant, on l'appellera une instance.
Une classe est créé qu'une seule fois
Une instance est créé autant de fois qu'on a besoin de créer d'objets
ATTRIBUTS ET MÉTHODES
Les attributs sont les définitions de l'objet, c'est à dire la façon dont on va définir un objet.
Pour une chaise, on peut avoir l'attribut couleur, pente du dossier, hauteur des pieds, ...
Les méthodes sont les actions définies sur l'objet, et sont souvent déclarer sous forme de verbe, exemple modifier, changer, ...
CRÉER UNE CLASSE
Une classe est construite avec le mot clé class, suivi du nom de la classe.
La suite d'une classe étant généralement composée d'attributs et méthodes.
Vous remarquerez la majuscule à Chaise. (ce n'est pas une erreur)
CRÉER UNE INSTANCE
Le processus de création d'une instance se nomme instanciation, on l'effectue de la façon suivante.
Les ... représentent les paramètres d'initialisation afin de créer un type de chaise.
Pour continuer notre cours un plan s'impose
I) CRÉATION D'UNE CLASSE
Nous avons dis précédemment qu'une classe se construisait de cette façon
Nous allons ici définir ce qui pourrait être la suite de la classe
Tout d'abord le code et et les explications par la suite
__init__(self, ...) est la définition du constructeur, grâce à ses paramètres, on construira notre objet.
Pour construire notre chaise, on a besoin de connaitre son nom, la couleur souhaitée et son poids.
Ce constructeur est appelé à chaque nouvel objet créé.
self est l'objet instance, c'est automatiquement transmis par l'interpréteur quand la méthode est invoquée via une instance.Évidemment au lieu de self, on aurait pu mettre autre chose, comme this par exemple, mais la convention python souhaite cela pour rendre un code lisible par tous pythonniens.
self.nom = nom, veut dire textuellement que l'attribut nom de l'objet de la classe Chaise vaudra la valeur du paramètre nom donné dans le constructeur.
Désolé, faudra vous habituez aux termes, c'est dur au début, mais ensuite à force de coder ça ira de mieux en mieux.
modifier est la méthode ou l'action sur notre objet de type Chaise. Ici modifier, va modifier la couleur de l'objet de la classe Chaise.
II) CRÉATION D'INSTANCES
Hmmm... Je souhaiterais créer une chaise régence, dont la couleur est le brun et son poids est de 6 kg. Ok on y va!
regence est l'objet de type Chaise, se nommant régence, de couleur brun et dont le poids est 6 kg
III) ACCÈS AUX ATTRIBUTS D'INSTANCE
Comment accéder aux attributs afin de vérifier que ma chaise a bien été créée ?
Vérification à l'interpréteur:
On voit bien que l'attribut couleur de mon objet regence vaut brun.
IV) INVOCATION DE LA MÉTHODE
et maintenant je souhaiterait modifier la couleur de cette chaise en blanc.
Ouais, mais qu'est-ce qui me prouve que la modification s'est bien passée?
J'ai essayé de faire le plus clair et concis possible, rentrer dans des détails voudrait dire rentrer dans un autre cours qui a lui tout seul pourrait prendre plus de 800 pages d'un bouquin, je parle de POO (programmation orienté objet).
Bien évidemment on y arrivera dans nos cours, mais je vous laisse déjà digérer en douceur, termes, syntaxes et interprétation personnelle d'instance et classe.
1) Créer un programme permettant la conversion de température entre degré, Fahrenheit, Kelvin et Rankine.
Pour cela on vous impose:
Le nom de la classe : Temperature
Il se pose des problèmes de conception, déjà quand je souhaite instancier ma classe, en donnant un nombre, comment vais-je savoir si j'ai mis une température en Degré, Fahrenheit ou Rankine ?
Bonne continuation...
Bonne journée,
À savoir : Ce tutoriel risque d'être modifié, changé de place, voir même supprimé selon les décisions de l'équipe hackademics. Sa présence, est dû aux attentes des membres du forum participant au cours Python.
Tout conseils, modifications à votre demande, sera envoyé par MP.
CLASSE ET INSTANCE
Pour ceux qui sont novices en matière de programmation objet (POO), il est nécessaire de donner des explications sur certains termes.
Imaginons un objet, comme une chaise par exemple... Pour construire cette chaise on doit créer un dessin ou patron afin d'y relever les cotes, connaitre la profondeur d'assise, la pente du dossier, ...
Ce dessin ou patron (ou moule parfois), informatiquement parlant, on l'appellera une classe.
L'objet créé, informatiquement parlant, on l'appellera une instance.
Une classe est créé qu'une seule fois
Une instance est créé autant de fois qu'on a besoin de créer d'objets
ATTRIBUTS ET MÉTHODES
Les attributs sont les définitions de l'objet, c'est à dire la façon dont on va définir un objet.
Pour une chaise, on peut avoir l'attribut couleur, pente du dossier, hauteur des pieds, ...
Les méthodes sont les actions définies sur l'objet, et sont souvent déclarer sous forme de verbe, exemple modifier, changer, ...
CRÉER UNE CLASSE
Une classe est construite avec le mot clé class, suivi du nom de la classe.
Code:
class Chaise: # suite...
Vous remarquerez la majuscule à Chaise. (ce n'est pas une erreur)
CRÉER UNE INSTANCE
Le processus de création d'une instance se nomme instanciation, on l'effectue de la façon suivante.
Code:
regence = Chaise(..., ...)
Pour continuer notre cours un plan s'impose
- Création d'une classe
- Création d'instances
- Accès aux attributs d'instance
- Invocation d'une méthode de classe
I) CRÉATION D'UNE CLASSE
Nous avons dis précédemment qu'une classe se construisait de cette façon
Code:
class Chaise: # suite de la classe
Tout d'abord le code et et les explications par la suite
Code:
class Chaise: def __init__(self, nom, couleur, poids): self.nom = nom self.couleur = couleur self.poids = poids def modifier(self, couleur): self.couleur = couleur
Pour construire notre chaise, on a besoin de connaitre son nom, la couleur souhaitée et son poids.
Ce constructeur est appelé à chaque nouvel objet créé.
self est l'objet instance, c'est automatiquement transmis par l'interpréteur quand la méthode est invoquée via une instance.Évidemment au lieu de self, on aurait pu mettre autre chose, comme this par exemple, mais la convention python souhaite cela pour rendre un code lisible par tous pythonniens.
self.nom = nom, veut dire textuellement que l'attribut nom de l'objet de la classe Chaise vaudra la valeur du paramètre nom donné dans le constructeur.
Désolé, faudra vous habituez aux termes, c'est dur au début, mais ensuite à force de coder ça ira de mieux en mieux.
modifier est la méthode ou l'action sur notre objet de type Chaise. Ici modifier, va modifier la couleur de l'objet de la classe Chaise.
II) CRÉATION D'INSTANCES
Hmmm... Je souhaiterais créer une chaise régence, dont la couleur est le brun et son poids est de 6 kg. Ok on y va!
Code:
regence = Chaise('régence', 'brun', 6)
III) ACCÈS AUX ATTRIBUTS D'INSTANCE
Comment accéder aux attributs afin de vérifier que ma chaise a bien été créée ?
Vérification à l'interpréteur:
Code:
>>> class Chaise: ... def __init__(self, nom, couleur, poids): ... self.nom = nom ... self.couleur = couleur ... self.poids = poids ... def modifier(self, couleur): ... self.couleur = couleur ... >>> regence = Chaise('régence', 'brun', 6) >>> >>> regence.nom # Accès à l'attribut nom 'régence' >>> regence.couleur # Accès à l'attribut couleur 'brun' >>> regence.poids # Accès à l'attribut poids 6 >>>
IV) INVOCATION DE LA MÉTHODE
et maintenant je souhaiterait modifier la couleur de cette chaise en blanc.
Code:
>>> regence.modifier('blanc')
Code:
>>> regence.couleur 'blanc'
Bien évidemment on y arrivera dans nos cours, mais je vous laisse déjà digérer en douceur, termes, syntaxes et interprétation personnelle d'instance et classe.
EXERCICE
1) Créer un programme permettant la conversion de température entre degré, Fahrenheit, Kelvin et Rankine.
Pour cela on vous impose:
Le nom de la classe : Temperature
Il se pose des problèmes de conception, déjà quand je souhaite instancier ma classe, en donnant un nombre, comment vais-je savoir si j'ai mis une température en Degré, Fahrenheit ou Rankine ?
Bonne continuation...
Bonne journée,