Upload
antoine-taly
View
323
Download
0
Embed Size (px)
DESCRIPTION
Cours proposé par Léna et Anton sur la programmation objet. Avec des exercices dont le dernier assez ouvert permet de tester la compréhension.
Citation preview
Programmation Objet Lena Coutrot & Anton François
Les bases- Classe : Bibliothèque qui contient différentes méthodes, grâce auxquelles on va créer différents objets.Ex : le module numpy contient plusieurs méthodes.
- Méthode : “Fonction” qui permet de créer un type d’objet spécifique.Ex : numpy.array() permet d’utiliser la méthode array() de numpy, pour créer un objet de type array.
- Instance : Nouvel objet créé suite à l’utilisation d’une méthodeEx : myArray = numpy.array() permet de créer l’instance myArray grâce à la méthode array()
A quoi ça sert la PO ?
- Chacun peut utiliser à sa sauce des methodes rendues publiques par les autres programmeurs.
→ Un peu comme une fonction que n’importe qui pourrait appeler n’importe quand, dans n’importe quel code (à condition d’avoir importé le module approprié).
1) Initialisation : caractéristiques communes à toutes les instances (=les nouveaux objets) que notre classe pourra créer.
- C’est un tableau noir
- Il est possible d’y écrire des trucs (mots, chiffres, etc) et de les effacer.
Caractéristiques communes :
Image by Peng (http://commons.wikimedia.org/wiki/File:Schiefertafelmitschwamm.jpg)
2) Ex de méthode : Ecrire une chaîne de caractères sur le tableau
Photo by Alegri, Romania (http://www.4freephotos.com/Teacher_writing_on_blackboard-limage-bd71ec51d2b8f7ab1f32542e288e601e.html)
Autre méthode : faire des opérations (additions, soustractions, etc.) sur le tableau
image extraite de la photo de woodleywonderworks (http://www.flickr.com/photos/wwworks/3597213066/lightbox/)
Ou encore : calcul matriciel, physique quantique, faire du poney...
photo1: decltype (http://commons.wikimedia.org/wiki/File:Einstein_blackboard.jpg)
Photo2: Herbythyme (http://commons.wikimedia.org/wiki/File:Shtland_pony_-_Postbridge.jpg)
Et bien sûr : effacer le tableau
photo by John Phelan (http://en.wikipedia.org/wiki/File:Chalkboard_eraser,_Waldorf_School,_East_Lexington_MA.jpg)
Pour lancer iPython
Comment définir une classe ?
Méthode d’initialisation
Autre méthode
Définition de la classe
Comment l’utiliser
Ex : La classe TableauNoirDéfinition de la classe
Méthode d’initialisation
Autres méthodes
Exercice 1: Lancer les méthodes de cette classe dans IPython
Indice:Après avoir fait run de votre fichier dans ipython écrivez les premières lettres de votre classe et faite ‘tab’. Si ça marche ça y est votre ordinateur reconnais votre classe ! -Essayer maintenant le nom de votre classe et de vos méthodes suivis d’un point d’interogation !
Exercice 2 : Yay des opérationsCréez une classe “opération” avec deux méthodes:● Une méthode “addition” qui prend deux variables et qui
les additionne● Une méthode “soustraction” qui soustrait deux
variablesBonus : Améliorez votre code pour pouvoir prendre en compte des matrices. (c’est facile !)
Exercice 3 : Classe GensDuCRI- Créez une classe “GensDuCRI”, qui permettra de créer une personne du CRI en se basant sur : son sexe, son niveau d’étude, son domaine d’étude, sa couleur de cheveux, son pays d’origine, son âge, etc.- Créez des méthodes qui pourront transformer vos instances GensDuCRI (les faire déménager, changer de langue ou de cheveux…).- Créez vos objets GensDuCRI et changez leurs attributs comme vous voulez !
AnnexeTutoriel OpenClassrooms :http://fr.openclassrooms.com/informatique/cours/langage-python/un-objet-c-est-quoi-1