Django est un cadre de développement web open source en Python. Il a pour but de rendre le développement web 2.0 simple et rapide. Pour cette raison, le projet a pour slogan « Le framework pour les perfectionnistes avec des deadlines. » Cet outil est un ORM, (object-relational mapping en anglais) Mapping objet-relationnel, c’est à dire qu’il traduit du code python en code SQL. Django permet la création d’objet, par exemple un utilisateur, et lors d’une modification de cet utilisateur, le développeur écrit du code python qui est traduit en langage SQL par Django.

Le framework utilise aussi le modèle MVC (Modèle, Vue, Contrôleur) qui permet un développement structuré et rapide. Le modèle est l’objet en lui meme avec tous ses attributs (exemple: un utilisateur possède un pseudo, un mot de passe, une adresse email, etc), la vue est le visuel de la page internet et le contrôleur est le traitement de données.

Contexte d'utilisation

Django a été mis en place dans l’entreprise MERICQ SAS en 2016. Il est utilisé principalement pour le coté serveur (back-end). En outre, il sert au traitement de toutes les données.

Je l’ai utilisé pour la première fois durant mon stage lors de la réalisation de l’application Meriscope. Cela m’a permis de mettre en place toute la structure de mes données, les récupérer dans la base ainsi que les différents traitements sur les données récupérées. Comme dit précédemment, Django a servi pour le coté serveur du Meriscope, un autre outil, le framework Ionic, a été choisi pour le coté client (le visuel de l’application). Django possède un outil appelé Django Rest Framework permettant la mise en place d’API REST pour la communication entre les deux outils de développement.

Plus récemment, j’ai repris une application existante, le back-office, permettant de gérer le contenu du site e-commerce de l’entreprise ayant la même structure que le Meriscope. J’ai du créer de nouveaux modèles de données et les API adéquates pour établir la communication entre Django et Ionic.

Mon autocritique

Django est un outil facile à prendre en main, surtout si on connait déjà le langage Python. Créer un site internet devient facile et requiert peu de développement au final. Je placerai cette compétence au sommet de mon savoir-faire car c’est ce que je maitrise le plus aujourd’hui et c’est ce que j’ai le plus manipulé durant mon alternance chez Mericq.

Aujourd’hui je suis capable de créer un site via Django en utilisant l’intégralité du modèle MVC qu’il propose, en plus des ressources non comprise dans django de base (Django Rest Framework).

Afin de toujours mieux utiliser Django, la documentation est de très grande qualité, disponible dans plusieurs et très complète. Il devient facile de trouver une solution à un problème et en peu de temps.

Conclusion

De mon point de vue, django est encore trop peu utilisé dans le monde du web alors que c’est un outil puissant. Je continuerai à  me former sur ce framework afin d’être au courant des nouveautés. Django occupe une place majoritaire dans mon monde professionnel.

Réalisations associées