Description Générale
Le livre compte 258 pages, réparties en 13 chapitres. En plus du texte, le contenu comporte des extraits de code. Il y a peu d’images et d’autres éléments graphiques. À la fin de chaque chapitre, un résumé du sujet traité est présenté. Le livre se lit aisément et son niveau ne peut être qualifié que comme intermédiaire.
Résumé Concis
Chapitre 1 : Début du Projet
L’auteur montre comment lancer correctement un nouveau projet Python : choisir la structure, utiliser des environnements virtuels, gérer les dépendances et préparer la base pour l’évolutivité.
Chapitre 2 : Modules, Bibliothèques et Cadres
Il explique la différence entre modules, bibliothèques et cadres, ainsi que la façon d’utiliser et de créer des paquets propres, sans faire boutade de dépendances.
Chapitre 3 : Documentation et Bonnes Pratiques d’API
On y aborde les principes de rédaction d’une documentation claire et utile, des docstrings et README, ainsi que la création d’APIs intuitives, faciles à utiliser et à maintenir.
Chapitre 4 : Travailler avec les Horodatages et les Fuseaux Horaires
Ce chapitre traite de l’utilisation correcte du temps : la différence entre datetime, time, dateutil, le traitement des fuseaux horaires et l’évitement des erreurs fréquentes avec UTC.
Chapitre 5 : Distribution de Logiciels
L’auteur décrit comment empaqueter et distribuer des applications Python : création de paquets, publication sur PyPI, versionnement, et gestion des dépendances via setuptools.
Chapitre 6 : Tests Modulaires
Il passe en revue les outils et approches de test — de unittest et pytest aux mocks et fixtures — et l’importance d’une couverture de code pour garantir la stabilité.
Chapitre 7 : Méthodes et Décorateurs
Explication du fonctionnement des fonctions, méthodes et décorateurs, ainsi que l’intérêt des @classmethod, @staticmethod et des décorateurs personnalisés pour réutiliser la logique.
Chapitre 8 : Programmation Fonctionnelle
L’auteur montre comment exploiter les fonctionnalités fonctionnelles de Python — map, filter, reduce, générateurs, fermetures et lambdas — pour un code concis et expressif.
Chapitre 9 : Arbre de Syntaxe Abstraite, Dialecte Null et Attributs de Style Lisp
Un plongée approfondie dans le fonctionnement interne de Python : AST, méta-programmation et possibilités de modifier dynamiquement le comportement du code à l’exécution.
Chapitre 10 : Performance et Optimisation
Analyse des outils de profilage, méthodes pour accélérer le code, utilisation de structures de données, optimisation des boucles et gestion de la mémoire.
Chapitre 11 : Échelle et Architecture
L’auteur discute de la conception de systèmes massifs : principes de modularité, gestion des dépendances, séparation des responsabilités et mise à l’échelle horizontale.
Chapitre 12 : Gestion des Bases de Données Relationnelles
Les outils d’interaction avec les SGBD sont présentés : sqlite3, SQLAlchemy, ORM, transactions et meilleures pratiques pour travailler avec les données dans les applications Python.
Chapitre 13 : Écrivez Moins, Programmez Plus
Le chapitre final traite de la philosophie du développeur Python : comment écrire moins de code, éviter la duplication, utiliser des solutions existantes et penser de façon plus abstraite.
Opinion
Un autre livre sur Python, pas pire et pas mieux que les autres.