Vous êtes sur la page 1sur 6

28/04/2017 TirezpleinementpartidececoursDcouvrezlaprogrammationorienteobjetavecPython

Accueil Cours Dcouvrez la programmation oriente objet avec Python Tirez pleinement parti de ce cours

Dcouvrez la programmation oriente objet avec


Python
Licence

6 heures Facile

Tirez pleinement parti de ce cours

03:47

Pour tlcharger les vidos de ce cours, devenez Premium

Bienvenue !
Dans ce cours nous allons parler de Programmation Oriente Objet. Vous ny connaissez rien ? Cest normal ! Nous
allons voir tout cela ensemble.

Notre programme

https://openclassrooms.com/courses/decouvrezlaprogrammationorienteeobjetavecpython/presentation 1/6
28/04/2017 TirezpleinementpartidececoursDcouvrezlaprogrammationorienteobjetavecPython

Afin d'illustrer les concepts que je vais vous prsenter, nous allons crer ensemble un programme. Mais pas
n'importe lequel ! Nous raliserons... (roulements de tambours) un monde parallle !

Oui oui, vous avez bien lu. Vous avez toutes les comptences pour le faire !

Nous allons manipuler lesdonnes sur les habitants qui peuplent ce monde parallle pour rpondre deux
questions existentielles :

partir de quelle densit de population est-on moins agrable que la moyenne ? Cela nous permettra de
rpondre notre question d'introduction : "l'enfer, c'est les autres ?"
Est-ce que les vieux gagnent vraiment plus dargent que les jeunes ?

Mais je ne vais pas y arriver On ne pourrait pas plutt faire des camemberts dans Excel ?

Vous allez trs bien y arriver. Nous pourrions bien sr utiliser un fichier Excel qui regroupe toutes les donnes de
tous les habitants de notre monde parallle, mais il serait vite limit. Et puis, quoi bon s'vertuer cliquer sur 15
000 boutons quand une ligne de commande suit ? En plus, votre but est d'apprendre programmer en
Python, pas vrai ?

Python est un des langages les plus utiliss dans l'univers scientifique et plus spcifiquement dans la
manipulation de donnes. Ce cours est un (tout) petit aperu de ce que vous pouvez faire !J'ai ax la
modlisation de notre monde sur deux questions mais libre vous d'aller plus loin la fin de ce cours.

Les habitants de notre monde


Nous utiliserons la base PPLAPI, un rseau social factice compos de centaines de milliers de personnes, pour
peupler notre monde.

Regardons cette base d'un peu plus prs. Chaque personne a un ge, une date de naissance, un lieu de rsidence,
une nationalit, une langue... Mais aussi cinq traits de personnalit :

https://openclassrooms.com/courses/decouvrezlaprogrammationorienteeobjetavecpython/presentation 2/6
28/04/2017 TirezpleinementpartidececoursDcouvrezlaprogrammationorienteobjetavecPython

Ouverture
Conscienciosit
Extraversion
Agrabilit
Neuroticisme ou nvocisme

Ces traits sont utiliss dans un des modles les plus connus en psychologie : le modle des Big Five. Vous le
connaissez peut-tre dj ! Plusieurs grandes entreprises aiment donner des questionnaires de personnalit aux
candidats afin de mieux cerner leur personnalit. Si vous rpondez un questionnaire qui reprend le modle des
Big Five, votre personnalit sera value en 5 tendances spares.

Source : Vadequa

Prenons par exemple l'agrabilit. Si votre personnalit est trs "agrable", il sera important pour vous d'tre
serviable, gnreux, "gentil". Vous pouvez faire passer autrui avant vous-mme. Si vous tes peu "agrable", vous
serez plutt ferm la collaboration. Votre caractre peut tre vu comme dur ou froid, peu enclin la ngociation.
Ce sont ces tendances entre elles qui vont leur permettre de mieux vous cerner. Par exemple, si vous tes peu
ouvert, trs consciencieux, peu extraverti, peu agrable et assez nvros.

Dans la base PPLAPI, chaque trait de personnalit est associ un numro.

2 Trs suprieur la moyenne

1 Assez suprieur la moyenne

0 Moyenne

-1 Assez infrieur la moyenne

https://openclassrooms.com/courses/decouvrezlaprogrammationorienteeobjetavecpython/presentation 3/6
28/04/2017 TirezpleinementpartidececoursDcouvrezlaprogrammationorienteobjetavecPython

-2 Trs infrieur la moyenne

Les donnes de chaque agent sont disponibles sous dirents formats, dont le format JSON :

{"neuroticism":0.9011914234209494,"language":"English","latitude":
26.25297800501783,"country_tld":"au","age":34,"income":59956,"longitude":
132.6457795091038,"sex":"Male","religion":"Catholic","extraversion":
0.8392218706596577,"date_of_birth":"19831025","agreeableness":
3.1053208332787023,"id_str":"ilVCOu","conscientiousness":1.737208020264794,
"internet":true,"country_name":"Australia","openness":0.20570297449617833,"id":
6352373083}

Si cela ne vous dit rien, je vous invite refairele cours en prrequis !

Fonctionnalits du programme


Commentnotre programme va-t-il nous aider rpondre nos interrogations ? Voici les tapes qu'il devra suivre :

Ilouvre un fichier JSON qui contient 100 000 agents,


Il ralise des calculs,
Il aiche un premier graphique aichant le degr d'agrabilit en fonction de la densit de population
Quand je ferme ce graphique, un second apparat avec les revenus moyens en fonction de lge.

Etapes


Nous allons raliser ce programme en plusieurs tapes :

Dcouverte de la Programmation Oriente Objet


Dessin d'un diagramme de classe
Transformation des agents JSON en agents que nous pourrons rutiliser.
Agents : ajout des attributs (chaque agent a plusieurs "proprits" : agrabilit, revenu, ...)
Cration de la grille qui nous permettra de situer les personnages dans le monde.
Cration des zones composant cette grille.
Ajout du premier habitant dans sa zone. Et le monde fut !
Peuplement du monde avec les 100 000 agents.
Cration du graphique Agrabilit versus densit de population.
Cration du graphique Revenu versus ge

Puis on sort faire la fte pour clbrer la sortie de notre programme !

Quelquesprcisions

Pour tirer pleinement parti de ce cours, vous devez tre l'aise avec les notions suivantes :

syntaxe de base de Python, notamment les listes et les dictionnaires


import de modules
dfinition de fonctions, excution et ajout de paramtres,
lancement d'un script

https://openclassrooms.com/courses/decouvrezlaprogrammationorienteeobjetavecpython/presentation 4/6
28/04/2017 TirezpleinementpartidececoursDcouvrezlaprogrammationorienteobjetavecPython

Afin de faciliter votre apprentissage, j'utiliserailes notations suivantes :


python

1 classAgent
2
3 ...
4
5 def__init__():
6 agreeableness=0

Une partie du code peut tre remplace par trois petits points quand nous l'avons dj vue
prcdemment. Dans ce cas, vous ne voyez que le code qui est essentiel.

: Illustre un point de vocabulaire. Vous trouverez ici une dfinition sympa d'une notion un peu
complique.

Le code que nous raliserons ensembleest disponible librement sur un dpt Github. Je vous indiquerai le lien en
fin de chapitre.

Challenges

Vous pouvez lire le cours sans pratiquer mais ce serait un peu comme si vous appreniez faire du vlo en lisant
un manuel. Vous avez beau connatre la thorie, vous ne serez pas plus avance.

Chaque chapitre sera ponctu de petits exercices pratiques que vous pourrez raliser directement dans notre
console interactive. Entrez votre rponse et cliquez sur Run Code. Votre exercice est corrig instantanment !

C'est le moment de vous entrainer !


https://openclassrooms.com/courses/decouvrezlaprogrammationorienteeobjetavecpython/presentation 5/6
28/04/2017 TirezpleinementpartidececoursDcouvrezlaprogrammationorienteobjetavecPython

Cliquez sur ce lien.

Allez, prt ? C'est parti !

J'ai termin ce chapitre et je passe au suivant

Dcouvrez la programmation oriente objet avec


Dcouvrez la programmation oriente objet
Python

L'auteur
Cline Martinet Sanchez
Dveloppeuse freelance, formatrice et entrepreneure. Desarrolladora independiente, profesora y
emprendedora.

Dcouvrez aussi ce cours en...


Premium

Vido

OpenClassrooms Professionnels En plus Suivez-nous


Qui sommes-nous ? Ailiation Crer un cours Le blog OpenClassrooms
Fonctionnement de nos coursPartenaires CourseLab
Recrutement Conditions Gnrales d'Utilisation
Nous contacter

English Espaol

https://openclassrooms.com/courses/decouvrezlaprogrammationorienteeobjetavecpython/presentation 6/6

Vous aimerez peut-être aussi