Table des matières
- Partie 1
Orientation du cours
- Partie 2
Appliquez le guide de style PEP 8 au code Python
- Partie 3
Résolvez des problèmes de programmation courants avec des design patterns en Python
- 1
Construisez des systèmes complexes à l’aide de patterns
- 2
Évitez les confusions avec le design pattern Constant
- 3
Créez des fonctions flexibles avec le design pattern Décorateur
- 4
Structurez une application avec le pattern d’architecture MVC
- 5
Implémentez le Modèle pour votre application
- 6
Implémentez le Contrôleur et la Vue pour votre application
Quiz : Résoudre des problèmes de programmation courants à l’aide de design patterns
- Partie 4
Appliquez les principes SOLID au code Python
- 1
Découvrez les bonnes pratiques de programmation avec les principes SOLID
- 2
« S » pour le principe de responsabilité unique (« single responsibility »)
- 3
« O » pour le principe ouvert/fermé (« open/closed »)
- 4
« L » pour le principe de substitution de Liskov
- 5
« I » pour le principe de ségrégation des interfaces (« Interface Segregation »)
- 6
« D » pour le principe d’inversion des dépendances (« Dependency Inversion »)
- 7
Évitez les pratiques de programmation STUPID
Quiz : Appliquer les principes SOLID au code Python
- Partie 5
Félicitations !
Découvrez les conventions Python
Comprenez le rôle du code
Les langages de programmation constituent des compromis délicats : ils doivent être faciles à comprendre par les êtres humains et faciles à interpréter par les ordinateurs.
Et si vous êtes développeur Python, votre code a deux responsabilités :
expliquer à l’ordinateur quelles actions il doit accomplir ;
expliquer à d’autres développeurs quelles actions se déroulent.
Pourquoi est-ce que d’autres développeurs auraient besoin de savoir ce que fait mon code ? C’est l’ordinateur qui doit suivre le code, pas eux !
Détrompez-vous, le code est lu beaucoup plus souvent qu’il n’est écrit ! Une fois que vous avez écrit le code, d’autres développeurs auront fréquemment besoin d’utiliser vos classes et fonctions, de les étendre pour permettre d’autres fonctionnalités, et de réparer tous les bugs éventuels.
Imaginez un instant : vous parcourez un projet Python et vous rencontrez cette fonction :
def adjustment(value):
return (value % 4 == 0) and (value % 100 != 0 or value % 400 == 0)
Que fait-elle ? Est-ce qu’elle fonctionne bien ? Pouvons-nous l’utiliser à notre tour ?
Le développeur qui a écrit ce code a choisi des noms pour sa fonction et ses variables qui ne nous aident pas beaucoup. Peut-être que cette alternative aurait été plus claire :
def is_leap_year(year):
# Les années bissextiles sont toutes des multiples de 4
if year % 4 != 0:
return False
# Les années séculaires ne sont pas bissextiles, hormis 1600, 2000, 2400, etc.
if year % 100 == 0:
return year % 400 == 0
# Tous les autres résultats sont vrais.
return True
Découvrez le guide de style PEP 8
Heureusement, le code que vous lirez en Python aura majoritairement été écrit pour que des développeurs humains puissent facilement et rapidement le parcourir et savoir quoi en faire. 🎉
Ce type de code suit la PEP 8.
C'est quoi une PEP ?
PEP est l'abréviation de Python Enhancement Proposal (proposition d'amélioration de Python).
Les PEP sont des documents de conception pour la communauté Python. Elles décrivent des nouvelles fonctionnalités pour Python, ses processus ou son environnement. Par exemple, la PEP 257, que nous allons utiliser dans le prochain chapitre, est le document dédié aux conventions des chaînes de documentation.
La PEP qui sert de guide de style pour Python est la PEP 8. Elle s’agit d’une longue liste (de plus de 7 000 mots !) de pratiques suggérées pour les développeurs Python. Créée en 2001, elle a été écrite par Guido van Rossum, Barry Warsaw et Nick Coghlan, et elle est mise à jour régulièrement pour refléter les développements du langage.
7 000 mots, c’est trop ! Comment me souvenir de toutes ces règles ?
Pas de panique – vous n’aurez pas à retenir toutes les règles ! Certaines parties de la PEP 8 sont assez obscures, j’ai donc sélectionné les parties les plus importantes pour nous dans ce cours.
Dans cette partie du cours, nous nous familiariserons avec les règles les plus importantes du guide (et le raisonnement qui les sous-tend). Vous verrez même comment utiliser un outil pratique, le linter, pour vérifier dans quelle mesure votre code correspond à la PEP 8 !
En résumé
D’autres développeurs auront fréquemment besoin d’utiliser votre code, et donc de le comprendre.
Les conventions Python se trouvent sur le site de Python dans des documents qui s'appellent les PEP.
La PEP 8 contient de nombreuses recommandations pour aider les développeurs Python à écrire du code compréhensible par les autres.
Au chapitre suivant, nous allons commencer avec les conventions de nommage, des commentaires et des chaînes de documentation. Vous aurez également l'occasion d'appliquer votre nouvelle connaissance dans un exercice de code. Allons-y !
- Formations jusqu’à 100 % financées
- Date de début flexible
- Projets professionnalisants
- Mentorat individuel