Tutoriel Django pour débutants :fonctionnalités, architecture et histoire
Résumé du didacticiel Django
Ce tutoriel Django couvre tous les sujets de base à partir de zéro. Dans ce didacticiel, vous apprendrez les concepts tels que ce qu'est Django, l'histoire de Django, les fonctionnalités de Django, les caractéristiques du framework Django, les composants de Django, les avantages et les inconvénients, et bien plus encore.
Avant d'apprendre Django, comprenons :
Qu'est-ce qu'un cadre Web ?
Un framework Web est une bibliothèque de code qui vous aide à créer un environnement flexible, évolutif et maintenable; site Web dynamique, application Web et services Web. Les différents frameworks Web sont Zend pour PHP, Ruby on Rails pour Ruby, etc.
Qu'est-ce que Django ?
Django est un framework de développement Web pour Python qui propose des méthodes standard pour un développement de site Web rapide et efficace. L'objectif principal de ce cadre Web de haut niveau est de créer des sites Web complexes basés sur une base de données. Il vous aide à créer et à maintenir des applications Web de qualité. Il vous permet de rendre le processus de développement fluide et de gagner du temps pour un développement rapide.
Dans ce tutoriel Python Django pour débutants, vous apprendrez
- Qu'est-ce qu'un cadre Web ?
- Qu'est-ce que Django ?
- Pourquoi Django ? Principaux avantages de Django
- Histoire de Django
- Fonctionnalités de Django
- Caractéristiques de Django
- Architecture Django
- Composants de Django
- Entreprises célèbres utilisant Django
- Inconvénients de l'utilisation de Django
Pourquoi Django ? Principaux avantages de Django
Voici les principaux avantages de Django :
- Django est facile à configurer et à exécuter. Il offre une variété d'options pour commencer
- Il fournit une interface utilisateur prête à l'emploi pour les activités administratives
- Il permet des sites Web multilingues en utilisant son système d'internationalisation intégré
- Vous aide à répondre rapidement aux demandes massives de trafic
- Django est utilisé pour construire tous les types de systèmes de gestion de contenu, de réseaux sociaux ainsi que de plateformes de calcul scientifique.
- Django vous aide à fournir des tests d'application de bout en bout
- Vous aide à documenter votre API avec une sortie HTML
- REST Framework offre une prise en charge complète de plusieurs protocoles d'authentification
- Autorisations et politiques de limitation
- Il est largement utilisé pour limiter le débit des demandes d'API d'un seul utilisateur.
Histoire de Django
Année | Étape |
---|---|
2003 | Le projet a été lancé par Adian Holovaty et Simon Willison en tant que projet interne au journal Lawrence Journal-World |
Juillet 2005 | Il est sorti en juillet 2005 sous le nom de "Django", du nom du guitariste de jazz Django Reinhard |
Juin 2008 | A déclaré qu'une Django Software Foundation (DSF) maintiendrait Django. |
29 juillet 2009 | La version 1.1 de Django a été publiée avec des fonctionnalités telles que les agrégats, les tests basés sur les transactions. |
17 mai 2010 | La version Django 1.2 est sortie. La mise à jour offrait des fonctionnalités telles que plusieurs bases de données, la mise en œuvre du backend de messagerie et des améliorations pour les sessions et les cookies sont apportées dans cette version. |
23 mars 2011 | Version 1.3 avec des fonctionnalités telles que les vues basées sur les classes, les fichiers statiques ont été introduits |
23 mars 2012 | Lancement de la version 1.4 avec de nouvelles fonctionnalités telles que les fuseaux horaires et les tests dans le navigateur |
26 février 2013 | La version 1.5 est livrée avec la prise en charge de Python 3, des fonctionnalités de modèle utilisateur configurables. |
6 novembre 2013 | La version 1.6 est livrée avec la gestion des transactions de la base de données et les fonctionnalités de regroupement des connexions. |
2 septembre 2014 | La version 1.7 comportait de nouvelles fonctionnalités telles que le chargement d'applications, les migrations et la configuration |
1 avril 2015 | prise en charge native fournie pour plusieurs moteurs de modèles. |
1 décembre 2015 | Dans la version 1.9, la fonction de validation automatique du mot de passe a été introduite. |
1er août 2016 | Dans la version 1.10, la recherche en texte intégral pour PostgreSQL a été lancée. |
4 avril 2017 | La version 1.11 devient la dernière version à prendre en charge Python 2.7 |
2 décembre 2017 | la version 2.0 devient la première version de python 3 uniquement. |
1er août 2018 | la version 2.1 est fournie avec la fonctionnalité de prise en charge de l'autorisation "Afficher" le modèle. |
2021 | Suppression de la prise en charge de Django 3.0 et ajout de la prise en charge de Django 3.2 |
Maintenant, dans ce didacticiel Django pour débutants, découvrons les fonctionnalités de Django.
Fonctionnalités de Django
Voici les fonctionnalités de Django :
- Vous aide à définir des modèles pour les URL de votre application
- Système d'URL simple mais puissant
- Système d'authentification intégré
- Base de données de langage de programmation orientée objet qui offre le meilleur stockage et récupération de données de sa catégorie
- La fonction d'interface d'administration automatique permet d'ajouter, de modifier et de supprimer des éléments. Vous pouvez personnaliser le panneau d'administration selon vos besoins.
- La structure de cache est fournie avec plusieurs mécanismes de cache.
Maintenant, dans ce tutoriel sur le framework Django, nous allons découvrir les caractéristiques de Django.
Caractéristiques de Django
Voici les principales caractéristiques de Django :
- Loosely Coupled- Django vous aide à rendre chaque élément de sa pile indépendant des autres.
- Moins de code :assure un développement efficace
- Non répété :tout doit être développé précisément au même endroit au lieu de le répéter
- Développement rapide :Django offre un développement d'applications rapide et fiable.
- Conception cohérente :Django conserve une conception épurée et permet de suivre facilement les meilleures pratiques de développement Web.
Ensuite, dans ce didacticiel Django pour débutants, nous découvrirons l'architecture de Django.
Architecture Django :MVC et MVT
Ci-dessous une architecture détaillée de Django :

Architecture Django
Modèle MVC :
Lorsque l'on parle d'applications qui fournissent une interface utilisateur (web ou bureau), on parle généralement d'architecture MVC. Le modèle MVC est basé sur le modèle, la vue et le contrôleur.
Le modèle définit la structure des données et se charge d'interroger la base de données.
La vue définit quelles données doivent être présentées et renvoie une réponse HTTP.
Le contrôleur est la partie de l'application qui gère l'interaction de l'utilisateur.
Modèle Django MVC-MVT
Le modèle-vue-modèle (MVT) est un concept différent de MVC. La principale différence entre ces deux modèles architecturaux est que Django gère lui-même la partie Contrôleur (code logiciel qui contrôle les interactions entre le Modèle et la Vue). Le modèle est un fichier HTML mélangé avec le fichier Django Template Language également appelé DTL.
Le diagramme ci-dessous montre comment tous les composants du modèle MVT interagissent les uns avec les autres pour répondre spécifiquement à une demande d'utilisateur.

Comme on le voit dans le diagramme ci-dessus, un utilisateur demande une ressource à Django. Django agit en tant que contrôleur et vérifie la ressource disponible dans l'URL.
Si l'URL mappe, une vue est appelée qui interagit avec le modèle et le modèle. Django répond ensuite à l'utilisateur et envoie un modèle en guise de réponse.
Maintenant, dans cette série de tutoriels Django pour débutants, nous allons découvrir les composants de Django.
Composants de Django
Formulaire :
Django possède une puissante bibliothèque de formulaires qui gère le rendu des formulaires au format HTML. La bibliothèque aide à valider les données soumises et à les convertir en types Python.
Authentification :
Il gère les comptes d'utilisateurs, les groupes, les sessions d'utilisateurs basées sur les cookies, etc.
Administrateur :
Il lit les métadonnées dans vos modèles pour fournir une interface robuste qui peut être utilisée pour gérer le contenu de votre site.
Internationalisation :
Django prend en charge la traduction de texte dans différentes langues, le formatage spécifique aux paramètres régionaux des dates, des heures, des nombres et des fuseaux horaires.
Sécurité :
Django fournit une protection contre les attaques suivantes :
- Cross-Site Request Forgery (CSRF)
- Scripts intersites
- Injection SQL
- Clickjacking
- Exécution de code à distance
Entreprises célèbres utilisant Django
Voici les entreprises qui utilisent Django :
- BitBucket
- DISQUUS
- NASA
- PBS (service public de radiodiffusion)
- Mozilla
- Le Washington Post
- New York Times
- LA Times
- Le Guardian National Geographic
- Chaîne de découverte
Inconvénients de l'utilisation de Django
- Un processus ne peut pas gérer plusieurs requêtes simultanément.
- Django est un outil très monolithique.
- Les composants sont déployés ensemble, ce qui peut créer de la confusion.
- Connaissance du système complet nécessaire pour travailler sur Django
- Rend les composants d'application Web étroitement couplés
- Vous devez effectuer une longue programmation pour des tâches mineures.
Résumé
- Django est un framework de développement Web pour Python qui offre une méthode standard pour un développement de site Web rapide et efficace.
- Django a été lancé par Adian Holovaty et Simon Willison en tant que projet interne au journal Lawrence Journal-World en 2003
- Django vous aide à documenter votre API avec une sortie HTML.
- Django vous permet de personnaliser le panneau d'administration selon vos besoins.
- Django vous aide à rendre chaque élément de sa pile indépendant des autres.
- La principale différence entre les modèles architecturaux MVC et MVT est que Django gère lui-même la partie contrôleur.
- Les composants essentiels de l'architecture de Django sont :formulaire, authentification, administration, internationalisation, sécurité.
- Bitbucket, DISQUS, Nasa, Pinterest, Instagram, Mozilla, etc. utilisent Django
- Le plus gros inconvénient de Django est qu'il ne peut pas gérer plusieurs requêtes simultanément.
Python
- 5 caractéristiques à rechercher dans un cadenas industriel
- Histoire de SPICE
- Le MCU sans fil présente une architecture double cœur
- Construire des robots Raspberry Pi :meilleur tutoriel pour les débutants
- Historique des versions C# et .Net
- Langage de programmation C PDF :Tutoriel de base pour les débutants
- 4 conseils pour les débutants en fraiseuse CNC
- Un aperçu pour les débutants :qu'est-ce que la fabrication métallique ?
- Tour utile pour les travaux en petits lots