Tutoriel Django pour débutants : fonctionnalités, Architecture & Histoire

Résumé du didacticiel Django

Ce tutoriel Django couvre tous les sujets de base à partir de zéro. Dans ce didacticiel, vous apprendrez des concepts tels que ce qu'est Django, l'historique 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 framework Web ?

Un framework Web est une bibliothèque de codes qui vous aide à créer un environnement flexible, évolutif et maintenable ; site Web dynamique, application Web et services Web. Différents frameworks web sont Zend pour PHP, Ruby sur 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 sites Web rapide et efficace. L'objectif principal de ce framework Web de haut niveau est de créer des complex sites Web basés sur des bases 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.

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 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'applications de bout en bout
  • Vous aide à documenter votre API avec une sortie HTML
  • REST Framework prend en charge plusieurs protocoles d'authentification
  • Autorisations et politiques de limitation
  • Il est largement utilisé pour limiter le débit des requêtes API d’un seul utilisateur.

Histoire de Django

Année Milestone
2003 Le projet a été lancé par Adian Holovaty et Simon Willison en tant que projet interne du journal Lawrence Journal-World.
Juillet 2023 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'un logiciel Django Foundation (DSF) maintiendrait Django.
29 Juillet 2009 La version Django 1.1 a été publiée avec des fonctionnalités telles que les agrégats et 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 d'email le backend et les améliorations des sessions et des cookies sont apportés dans cette version.
23 Mar 2011 Version 1.3 avec des fonctionnalités telles que les vues basées sur les classes et les fichiers statiques ont été introduits
23 Mar 2012 Version 1.4 lancée 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 et des fonctionnalités de modèle utilisateur configurables.
6 novembre 2013 La version 1.6 est livrée avec la gestion des transactions DB, la connexion pooling fonctionnalités.
2 Sep 2014 La version 1.7 avait de nouvelles fonctionnalités telles que la charge des applications, les migrations et la configuration
1 avril 2015 prise en charge native fournie pour plusieurs moteurs de modèles.
1 Dec 2015 Dans la version 1.9, une fonctionnalité de validation automatique du mot de passe a été introduite.
1 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 Dec 2017 la version 2.0 devient la première version de Python 3 uniquement.
1 août 2018 la version 2.1 est livrée avec la fonctionnalité de prise en charge des autorisations « afficher » du 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.

Caractéristiques 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 en langage de programmation orienté objet qui offre le meilleur stockage et récupération de données de sa catégorie
  • La fonctionnalité 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.
  • Le framework de cache est livré avec plusieurs mécanismes de cache.

Maintenant, dans ce didacticiel du 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 à un seul endroit au lieu de le répéter à nouveau
  • Développement rapide - Django propose un développement d'applications rapide et fiable.
  • Conception cohérente – Django maintient une conception épurée et facilite le suivi des meilleures pratiques de développement Web.

Ensuite, dans ce didacticiel Django pour débutants, nous découvrirons les archiconfiguration de Django.

Django Archiconfiguration : MVC et MVT

Ci-dessous un détail archiconfiguration de Django :

Django Architecture
Django Architecture

Modèle MVC

Lorsqu'on parle d'applications fournissant une interface utilisateur (Web ou Desktop), on parle généralement de MVC. architecture. 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.

Le Voir définit quelles données doivent être présentées et renvoie une réponse HTTP.

Le est la partie de l'application qui gère l'interaction de l'utilisateur.

Modèle Django MVC-MVT

Le Model-View-Template (MVT) est un concept différent de celui de MVC. La principale différence entre ces deux archiLes modèles tecturaux sont 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 utilisateur.

Django Archiconfiguration : MVC et MVT

MVT Architecture

Comme le montre 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 est mappée, 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 réponse.

Maintenant, dans cette série de didacticiels Django pour débutants, nous allons découvrir les composants de Django.

Composants de Django

Forme

Django dispose d'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 utilisateur basées sur les cookies, etc.

Administrateur

Il lit les métadonnées de 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 le suiviwing attaques:

  • Falsification de requêtes intersites (CSRF)
  • Script inter-site
  • Injection SQL
  • Clickjacking
  • Exécution de code à distance

Entreprises célèbres utilisant Django

Voici les entreprises qui utilisent Django :

  • BitBucket
  • DISQUE
  • NASA
  • PBS (service public de radiodiffusion)
  • Pinterest
  • Instagram
  • Mozilla
  • Washington Post
  • NY Times
  • Los Angeles Times
  • Le gardien 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émentneousuellement.
  • 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 le développement de sites Web rapides et efficaces.
  • 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 MVC et MVT archiLes modèles structuraux sont que Django gère lui-même la partie Contrôleur.
  • Composants essentiels de Django archiLes tectures sont : Formulaire, Authentification, Admin, 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.neousuellement.