Si vous êtes intéressé par le développement web, vous trouverez certainement Django intéressant. Django est essentiellement un framework de développement web basé sur Python. Il a été conçu pour vous faire gagner beaucoup de temps et rendre le développement Web beaucoup plus simple et plus amusant. Vous pouvez utiliser Django pour créer et maintenir des applications Web de haute qualité sans trop de tracas.

Le développement Web en lui-même est un mélange de créativité et d'éléments amusants, et un tas de choses répétitives. Ce que Django fait, c'est qu'il vous permet de vous concentrer sur les éléments amusants et la partie clé de votre application Web, tout en simplifiant les parties répétitives. En d'autres termes, il fournit un raccourci vers des tâches de programmation fréquentes et des abstractions de modèles courants dans le développement Web. Il donne également des conventions claires sur la résolution de problèmes. Il fait tout cela tout en vous donnant également la liberté de travailler en dehors du cadre du cadre en cas de besoin.

Qu'est-ce qu'un framework Web?

Bien sûr, avant de lancer Django, nous devons d'abord savoir ce que sont les frameworks web, étant donné leur importance dans les applications web d'aujourd'hui. Pour comprendre les cadres Web, examinons comment une application Python code lorsque vous n'utilisez pas de cadre. La façon la plus simple de le faire est d'utiliser une interface de passerelle commune (CGI). Il vous suffit de créer un script avec une sortie HTML, puis d'enregistrer le script avec un. extension cgi à un serveur web. Pour les pages simples, une approche d'écriture à partir de zéro est probablement la meilleure. Le code est plus simple à comprendre et il n'y a pas d'autre code à lire. Il est également plus simple à déployer.

Malgré sa simplicité, l'approche comporte plusieurs défis. Par exemple, que feriez-vous si vous aviez besoin de plusieurs parties de votre application pour vous connecter à une base de données? Si vous optez pour la méthode ci-dessus, vous devrez dupliquer le code de connexion à la base de données dans chaque script CGI. Cela peut non seulement être lourd, mais il peut également augmenter les risques d'erreur humaine. La méthode la plus simple, cependant, serait de mettre ce code dans une fonction partagée. Lorsque le code est réutilisé dans divers environnements avec un mot de passe et une base de données distincts, vous devrez configurer le code pour chaque environnement spécifique.

De plus, si vous n'avez pas beaucoup d'expérience avec Python, vous êtes plus susceptible de faire des erreurs plus petites qui peuvent entraîner le blocage de l'application. La logique de la page serait idéalement séparée des éléments d'affichage HTML, de sorte que l'éditeur pourrait modifier chaque élément sans affecter l'autre.

Un cadre Web résout ces problèmes en formant une infrastructure pour programmer les applications. Cela vous aide à vous concentrer sur l'écriture d'un code plus facile à entretenir et plus propre. C'est aussi ce que fait Django.

Modèle Vue Contrôleur

Django suit de près le modèle Model-View-Controller (MVC), à tel point qu'il pourrait à peu près être classé comme un framework MVC. Ce modèle sépare la modélisation de domaine, les présentations et l'action basée sur l'entrée utilisateur en trois classes uniques. Pour mieux comprendre cela, jetez un œil à un script CGI Python.

Un script CGI standard comprendra quelques éléments HTML d'introduction pour le frontal, puis une connexion à une base de données. Voici un exemple de code d'une connexion à une base de données dans un CGI Python:

connection = MySQLdb.connect (user = 'ABC', passwd = 'xxxxxxxx', db = 'my_db')

Après cela, vous disposez d'une commande d'exécution pour exécuter la requête. Vous avez ensuite du HTML pour afficher les résultats de la requête dans le front-end. Enfin, vous fermez la connexion avec une simple ligne:

connection.close ()

Maintenant, avec Django, vous avez trois fichiers Python, identifiés avec leur. suffixe py. Le premier serait les tables de base de données, models.py. Le second contiendrait la logique d'application, views.py. Et le troisième aurait la configuration d'URL, urls.py. Enfin, vous auriez quelques éléments HTML pour présenter les résultats en front-end. La séparation sur divers fichiers Python est la clé ici; vous n'avez pas à vous soucier de la syntaxe.

Le fichier models.py a une description de la table de base de données. En utilisant cette classe Python, vous pouvez créer, supprimer, récupérer et mettre à jour des enregistrements en utilisant du code Python simple au lieu de répéter des instructions SQL. Le fichier views.py a la logique métier et la fonction latest_books () est la vue. Le fichier urls.py spécifie quelle vue est appelée pour une URL donnée. Par exemple, vous pouvez coder une vue à appeler au cas où le navigateur chargerait une URL de domaine / exemple /. Cela signifie que si votre domaine est abc.com, une visite à l'URL abc.com/example/ appellera cette fonction.

Le modèle HTML décrit la conception de la page. Il utilise un langage de modèle et des instructions logiques de base. Au total, ces pièces suivent le modèle MVC.

MVC est une méthode de développement logiciel en ce que le modèle, qui est le code d'accès et de définition des données, est distinct du contrôleur, qui est la logique de routage des demandes, qui est également séparée de la vue, qui est l'interface utilisateur. MVC est utile en ce que les composants sont très peu couplés. Chaque partie de l'application Web a donc ses propres objectifs et peut être modifiée indépendamment sans avoir à changer radicalement d'autres éléments. Par exemple, vous pouvez changer l'URL à n'importe quelle partie de l'application et cela changerait l'implémentation, et sans toucher au code Python qui la rend. Vous pouvez renommer une table dans la base de données et spécifier des modifications en un seul endroit sans remplacer des dizaines de fichiers.

Cours recommandés

  • Programme sur Windows 10
  • Cours de bundle de test de logiciels professionnels
  • Pack de formation à la programmation Python
  • Formation complète à Django

Une brève histoire de Django

Maintenant que vous en savez un peu plus sur les frameworks web, il est temps de creuser un peu l'histoire de Django. Savoir d'où vient Django peut vous aider à mieux comprendre comment il fonctionne et comment utiliser ses raccourcis. Si vous avez créé des applications Web, vous connaissez probablement déjà les problèmes associés à CGI. Le chemin classique du développement Web va comme suit:

  1. Vous écrivez une application web de A à Z
  2. Vous écrivez une deuxième application
  3. Vous vous rendez compte qu'il existe plusieurs éléments communs entre les deux applications
  4. Vous refactorisez le code pour que l'application 1 ait le même code que la seconde
  5. Vous répétez 2-4 plusieurs fois
  6. Vous vous rendez compte que vous avez formé un cadre

C'est aussi ainsi que Django a été créé. Il a été formé à partir d'applications réelles écrites par une équipe de développement Web au Kansas. Il a été créé en 2003, lorsque les programmeurs Web Adrian Holovaty et Simon Willison ont commencé à utiliser Python pour créer des applications.

L'équipe de World Online, responsable de la maintenance et de la production de plusieurs sites d'information locaux, a constaté d'énormes avantages dans un environnement de développement Web dicté par les délais du journalisme. Pour les sites, les journalistes et la direction ont souhaité que des fonctionnalités soient ajoutées et que les applications soient construites dans un délai rapide, avec seulement quelques jours ou heures de préavis. Les deux développeurs ont ensuite formé un cadre de développement Web pour gagner du temps et créer des applications maintenables dans les délais.

L'équipe a ensuite publié le framework en tant que logiciel open source à l'été 2005, le nommant Django d'après Django Reinhardt, sans doute l'un des plus grands guitaristes de jazz de tous les temps. Depuis lors, Django s'est imposé comme un projet open source populaire avec des milliers de supporters, contributeurs et utilisateurs à travers le monde. Deux des développeurs d'origine, Jacob et Adrian, ont toujours donné leur orientation centrale pour la croissance du cadre.

Mais pourquoi discutons-nous même de l'histoire de Django? Eh bien, pour deux raisons. Le premier est qu'il permet d'identifier et d'expliquer le «sweet spot» du logiciel. Django est né d'un environnement d'actualités et regorge donc de fonctionnalités les mieux adaptées aux sites axés sur le contenu, comme le Washington Post, Amazon et Craigslist, offrant des informations dynamiques et basées sur des bases de données. Pourtant, Django est également bon pour n'importe quel site Web de dyamic. La deuxième raison est que l'histoire de Django vous aide à comprendre comment la culture de sa communauté a été façonnée.

Django a été formé à partir d'un code du monde réel et non à partir d'un produit commercial ou d'un exercice académique. En conséquence, il est fortement axé sur la résolution des problèmes rencontrés par les développeurs Web d'origine et des problèmes auxquels les développeurs actuels sont toujours confrontés. Cela signifie que Django voit des améliorations presque quotidiennes. L'équipe de maintenance de la structure a tout intérêt à s'assurer que l'outil fait gagner du temps au développeur et produit des applications faciles à entretenir et qui fonctionnent bien dans des charges lourdes. Ils veulent tous se faciliter les choses, en d'autres termes.

Installer Django

Donc, il devrait être assez clair maintenant que Django est un outil pour simplifier le développement Web. Mais l'installation de l'outil lui-même peut prendre quelques étapes en raison du nombre de pièces mobiles dans les environnements de développement Web d'aujourd'hui.

Django est essentiellement du code Python, il s'exécute donc partout où Python le fait, ce qui inclut également certains téléphones portables. Supposons que vous l'installez sur un ordinateur de bureau, un ordinateur portable ou un serveur. Puisque Django est écrit en Python, vous devez d'abord installer Python. Les principaux frameworks Django avec n'importe quelle version de Python à partir de 2.5. Si vous ne savez pas quoi choisir, choisissez la dernière version de Python car ils ont des fonctionnalités de langage et des améliorations de performances qui pourraient vous être utiles.

Si vous êtes sur Mac ou Linux, vous avez probablement déjà Python sur votre ordinateur. Vous pouvez le vérifier en allant à l'invite de commande et en tapant 'python' sur la ligne de commande. Vous devriez voir quelque chose comme ceci:

Python 3.5.1 (v3.5.1: 37a07cee5969, 6 décembre 2015, 01:54:25)

(MSC v.1900 64 bits (AMD64)) sur win32

Tapez "aide", "copyright", "crédits" ou "licence" pour plus d'informations.

>>>

Si vous ne voyez pas cela, vous devez le télécharger et l'installer. Une fois installé, vous devez télécharger et installer Django. Vous pouvez choisir entre deux versions: la dernière version officielle ou la version de développement Web à la pointe de la technologie. Ce que vous choisissez est basé sur ce que vous voulez. Si vous voulez une version stable et testée, optez pour la version officielle. Si vous voulez quelque chose avec les dernières fonctionnalités et que vous souhaitez contribuer à la communauté et que vous pouvez gérer le manque de stabilité, optez pour la version de développement Web.

Pour commencer, il vaut mieux opter pour la sortie officielle. Vous pouvez trouver le dernier sur le site Web du projet Django. Si vous avez une distribution Linux avec le package Django, optez pour la version du distributeur afin d'obtenir également des mises à jour de sécurité.

Configuration d'une base de données

La seule condition préalable de Django est d'avoir une installation Python fonctionnelle. Une fois que vous avez configuré cela, vous pouvez commencer à écrire une application Web tout de suite. Cependant, comme mentionné précédemment, Django a été développé en mettant l'accent sur les applications Web axées sur le contenu et basées sur des bases de données. Il y a donc de fortes chances que vous développiez un site Web basé sur une base de données. Dans ce cas, vous devez configurer un serveur de base de données.

Django prend en charge quatre moteurs de base de données: MySQL, Oracle, SQLite 3 et PostgreSQL. Tous les moteurs fonctionnent aussi bien pour la plupart avec le cadre principal. PostgreSQL est recommandé si vous n'avez pas de liens avec un système hérité et pouvez choisir un backend de base de données.

Pour installer une base de données, vous devez installer et configurer le serveur lui-même. Chaque base de données que vous choisissez a sa propre façon de configurer, vous devez donc vous y référer. Deuxièmement, vous devez installer la bibliothèque Python pour ce backend de base de données particulier. Il s'agit d'un code tiers pour Python pour l'interface avec la base de données.

SQLite est recommandé si vous expérimentez simplement avec Django et ne souhaitez pas installer de serveur. Il ne nécessite pas d'installation; il peut simplement lire et écrire des données dans un seul fichier sur votre système, et il est pris en charge par Python 2.5 et supérieur. Windows rend un peu difficile l'obtention des binaires du pilote de base de données.

Si vous optez pour MySQL, vous avez besoin de MySQL 4.0 ou supérieur car les anciennes versions ne prennent pas en charge les fonctionnalités de Django. Vous devez également installer le package MySQLdb à partir de la page du projet Django. Si vous utilisez Linux, le système de gestion des packages de votre distribution peut avoir un package appelé 'mysql-python', 'python-mysqldb' ou 'python-mysql'.

Django fonctionne avec les versions 9i ou supérieures du serveur de base de données Oracle. Vous devez également installer la bibliothèque cx_Oracle à partir du site Web cx-Oracle. Alternativement, vous pouvez utiliser Django sans base de données entièrement, si vous souhaitez l'utiliser uniquement pour servir des pages dynamiques sans référencer une base de données. Cela dit, certains des outils de Django nécessitent une base de données, et si vous n'en avez pas, vous les manquerez.

Articles recommandés

Voici quelques articles qui vous aideront à obtenir plus de détails sur Python et Django pour le développement Web, alors suivez simplement le lien.

  1. Python vs JavaScript - Apprenez la différence 11 USeful
  2. 10 meilleures questions d'entrevue de développement Web que vous devriez savoir
  3. 10 types de programmation Python
  4. Python vs Ruby Performance et leurs avantages utiles
  5. Python vs différences de clé JavaScript
  6. Python vs Go