← Retour

Le Programmeur Python avec Django et MySQL

par: Boubaker Kahloula
Disponible
Pages 368
Dimensions 20
Publication 2023-01-03
Éditeur —
Papier : 1 600.00 DA Numérique: 800.00 DA

Introduction « La simplicité est la sophistication suprême. » Léonard De Vinci (1452 - 1519) Le langage de programmation Python a été développé au début des années 1990 par le Néerlandais Guido van Rossum au Centrum voor Wiskunde en Informatica (CWI) à Amsterdam. Le nom Python n'est pas inspiré du nom de la famille des serpents, mais de celui du groupe de comédiens britannique Monty Python. C’est un langage de programmation à la fois puissant et facile à apprendre, en passe selon certaines statistiques de dépasser Java en termes de popularité et de trafic. Python est un langage de programmation multiparadigme. Il est possible, par exemple, de programmer en Python orienté objet et fonctionnel. Les programmes Python sont indépendants de la plate-forme sur laquelle ils sont exploités, en particulier sur Windows, Linux ou macOS. La bibliothèque standard de Python est très ample, elle offre un large éventail d’outils, des plus élémentaires, par exemple pour la manipulation de texte, l’accès aux fichiers, les opérations mathématiques, aux plus sophistiqués, par exemple pour la communication réseau ou le stockage de données. Bon nombre d’entreprises à la croissance rapide utilisent, au moins en partie, Python pour le développement de leurs programmes ou applications Web (Gmail, Google Maps, YouTube, Dropbox, etc.). Nous dirons donc que Python est un langage de programmation populaire, largement utilisé et moderne qui vaut certainement la peine d'être appris. L’objectif de cet ouvrage est de faire connaître Python aux développeurs et étudiants qui connaissent d’autres langages, mais aussi de mettre à la disposition des professionnels un ouvrage de référence auquel ils peuvent avoir recours à chaque fois que le besoin se fait ressentir. Nous commençons dans le premier chapitre par énoncer les avantages du langage de programmation Python et citer les principaux environnements de développements pour Python. Nous avons consacré le deuxième chapitre à une description de l’installation de Python. Nous développons dans le troisième chapitre notre première application, un script Python qui affiche le message Hello World ! Les éléments communs à tous les langages de programmation (données et opérateurs, structures de contrôle) sont traités dans les quatrième et cinquième chapitres. L’aspect programmation orientée objet (POO) en Python est traité dans le sixième chapitre. C’est dans ce chapitre que nous présentons les notions de classe, de méthode, de constructeur et de destructeur, d’instanciation, d’héritage, etc. Le traitement de fichiers et de répertoires, quant à lui, est décrit dans le septième chapitre. Les notions avancées, à l’intention des lecteurs qui se seront déjà largement familiarisés avec les notions de bases, font l’objet du huitième chapitre : De multiples exemples permettront de bien cerner les notions d’itérateurs, de générateurs, de fermeture, de décorateurs, etc. L’accès en Python à des données stockées dans une base de données fait l’objet du neuvième chapitre. Le choix du Système de Gestion de Bases de Données (SGBD) MySQL pour traiter cet aspect n’est pas fortuit, puisque MySQL est un SGDB des plus répandus dans le monde. Il s’agit d’un logiciel, existant aussi bien en version open source qu’en version commerciale, qui peut fonctionner sous de nombreux systèmes d’exploitation. Python dispose bien sûr d’une bibliothèque qui permet, en procédant à la conversion des types de données, d'intégrer les deux : Python et MySQL. Nous décrivons dans ce neuvième chapitre l’installation du SGBD MySQL ainsi que ses outils d’administration et de développement. Nous avons aussi décrit dans ce chapitre la compilation de logiciels libre XAMPP, qui contient le SGBD MySQL et permet de l’installer et de le configurer rapidement. Nous étudions dans ce chapitre l’accès à une base de données MySQL à partir d’un script Python et l’insertion, dans un script Python, de commandes SQL (Structured Query Language) avec leurs différentes clauses, que les commandes se rapportent à une définition ou à une manipulation de données,. Le onzième chapitre est entièrement consacré à l’environnement de développement web Django. Django est à Python ce que Symfony est à PHP. Sa capacité à permettre de mettre en œuvre des projets rapidement et efficacement fait qu’il est considéré comme étant « destiné aux perfectionnistes qui souhaitent gérer leur temps de manière optimale ». Avec Django, structuré selon le modèle Model-Template-View (MTV), lui-même basé sur le modèle connu Model-View-Controller (MVC), le développeur adhère au principe DRY (don’t repeat yourself - ne vous répétez pas). Django apparaît aujourd’hui comme une solution optimale pour une conception MVP (Minimum Viable Product - Produit minimum viable). De nombreuses start- up choisissent aujourd’hui le modèle MVP pour développer un logiciel initial or la conception MVP peut être implémentée, avec le framework Django, de manière optimale. Elle y est disponible et prête à l'emploi. L’architecture d’une application Django est décrite dans ce onzième chapitre ainsi que l’application d’administration contenue dans Django. Un exemple de développement d’une application web, étape par étape, est donné dans ce chapitre. Les mots réservés ainsi que les conventions de nommage, utiles pour une maintenance facile des programmes ou pour leurs extensions, sont donnés à la fin de l’ouvrage. On trouvera après cela une description des balises HTML les plus utilisées, des exercices corrigés, ainsi que les réponses aux questions à choix multiple proposées à la fin de chaque chapitre. Pour rendre cet ouvrage facilement lisible, des polices de caractères différentes ont été utilisées pour différencier son texte du code Python donné dans les exemples et exercices. Nous avons aussi parfois consciemment utilisé la terminologie anglaise pour désigner certaines notions, la terminologie française prêtant dans certains cas à confusion.

Afficher la table des matières
Tables des matières 3
Introduction 9
Chapitre 1 : Le langage Python 11
1.1. Qu’est-ce que Python ?
1.2 Avantages du langage de programmation de Python
1.3. Environnements de développement pour Python 12
Questions avec réponses 14
Chapitre 2 : Installation 17
Installation du logiciel 18
Questions / Réponses 19
Chapitre 3 : Première application 21
3.1 Première Application 22
3.2 Syntaxe de base 26
Questions avec réponses 32
Chapitre 4 : Données et opérateurs 37
4.1 Variables 38
4.2 Constantes 40
4.3 Littéraux 41
4.4 Types de données standard 46
4.5 Conversions entre types 82
4.6 Opérateurs 84
Questions avec réponses
Chapitre 5 : Structure d’un programme 97
5.1 Structures de contrôle 98
5.2 Modules et packages 121
5.3 Fonctions 125
5.4 Espace de noms et Portée 137
5.5 Erreurs de syntaxe et exceptions 147
Questions avec réponses 157
Chapitre 6 : Programmation orientée objet 183
6.1 Programmation orientée objet 162
6.2 Classes 162
6.3 Méthodes 163
6.4 Mot-clé self 163
6.5 Constructeur 163
6.6 Instanciation 164
6.7 Héritage 167
6.8 Surcharge et redéfinition 172
6.9 Destructeurs 176
6.10 Méthode d’instance, de classe, ou statique 178
Questions avec réponses 182
Chapitre 7 : Traitement de fichiers et de répertoires 187
7.1 Traitement de fichiers 188
7.2 Traitement de répertoires 198
Questions avec réponses
Chapitre 8 : Notions avancées 205
8.1 Itérateurs 206
8.2 Générateurs 208
8.3 Fermeture 211
8.4 Décorateurs 218
8.5 Propriétés 223
8.6 Expressions régulières 229
Questions avec réponses 283
Chapitre 9 : Python & MySQL 279
9.1 Qu’est-ce que MySQL ? 244
9.2 Le langage SQL 244
9.3 Installation du SGBD MySQL 245
9.4 Outils d’administration et de développement 249
9.5 Installation du pilote MySQL pour Python 250
9.6 Opérations sur les bases de données 251
Questions avec réponses 274
Chapitre 10 : Interface graphique 279
10.1 Qu’est-ce qu’une Interface Utilisateur Graphique ? 280
10.2 Widgets 280
10.3 Gestion des événements 289
Questions avec réponses 300
Chapitre 11 : Python & Django 347
11.1 Qu’est-ce que Django ? 306
11.2 Architecture d’une application 306
11.3 Exemple d’application 308
11.4 L’application d’administration 334
Questions avec réponses 338
Mots-clés
Conventions de nommage 342
Balises HTML les plus courantes 343
Exercices corrigés 347
Réponses aux questions 363
Bibliographie

Avis des lecteurs

Aucun avis pour le moment.