Passer de Symfony à Django

L'auteur de ce sujet a trouvé une solution à son problème.
Auteur du sujet

Bonjour,

J'utilise pour la plupart de mes projets web Symfony et je voudrais adopter un nouveau framework car je n'aime pas trop le php. Je me suis donc penché vers python que j'apprécie beaucoup et son framework web Django. J'ai un gros projet en tête et je voudrais profiter de ce projet pour me faire la main sur Django. Je voudrais donc connaitre quelques retours d'expériences, les avantages et les inconvénients de Django par rapport à Symfony. J'ai peur de ne pas pourvoir faire certaines choses que je fais en Symfony.

Merci.

+0 -0
Staff

Cette réponse a aidé l'auteur du sujet

J'ai peur de ne pas pourvoir faire certaines choses que je fais en Symfony.

Tu pense a quoi ? Il y a déjà pas grand chose qu'on ne peut pas faire en Python (qui est probablement autant voir mieux fournit en lib que PHP) mais en plus avec Django qui est extrêmement populaire… Disqus, Pinterest, Instagram ou encore Bitbucket sont codés avec Django (et zds aussi évidement). J'ai du mal a voir ce que tu ne pourrais pas faire.

+3 -0
Staff

Cette réponse a aidé l'auteur du sujet

Globalement, avec Django, ce qui peut être plus compliqué actuellement c'est ke coté temps-réel et les websocket. Ce n'est pas prit en charge nativement par Django, il faut passer par des modules externes et ça fait un peu bricolage car le coeur de Django n'est pas fait pour ce type de système. Ça reste tout a fait possible et ce sera bientôt intégré dans Django (pour Django 2, en cours de dev). Pour le reste je ne peux pas te donner d'avis, j'ai jamais touché à Symfony, mais j'ai pas encore trouvé de choses impossible à faire ou très compliqué avec Django quand tu t'y prend bien.

+2 -0
Auteur du sujet

L'autre chose qui m'inquiète aussi avec Django c'est la mise en production. Avec Symfony tu peux utiliser tous les hébergeurs avec Django j'ai l'impression que c'est plus compliqué.

+0 -0

Je pense que si tu penses principalement à la facilité de la mise en production, tu penses mal. Aucun framework ne va faire la sécurité pour toi, et si c'était le cas, tu t'exposerais à des assez grosses failles de sécurité potentielles.

Par rapport à ta question d'origine, de toute façon, comme ça sera ton premier projet avec, tu vas faire des trucs faux, tu vas devoir réécrire des choses, tu vas refaire des choses que d'autres gens auront fait avant toi pour te simplifier la vie. Donc si tu as ça en tête, je ne vois pas de raison pour laquelle tu ne devrais pas te lancer.

+1 -0
Auteur du sujet

Quand je parle de facilité c'est surtout qu'avec Symfony j'ai l'habitude maintenant. Je pense me lancer, ça ne peut être qu'une bonne expérience. Merci pour vos réponses je vais regarder la doc de plus près.

+0 -0
Staff

Je fais du Django (pas professionnellement, je suis encore étudiant) depuis maintenant 5 ans et je peux t'assurer que j'ai toujours réussit à faire ce que je voulais faire. Django est ultra complet. Comme tout framework il a ses forces et ses faibles.

Le seul truc pénible c'est d'héberger ces projets si tu n'as pas ton propre serveur (si besoin de retours sur des hébergeurs, j'en ai testé une dizaine).

"I think that it’s extraordinarily important that we in computer science keep fun in computing." – Alan J. Perlis

+1 -0

Je suis "passé" de Symfony2/3 à Django il y a environ un an et demi, sans avoir de connaissances préalables en Python (mais ayant déjà touché à PHP bien sûr mais aussi C++ et Java). Pareil, pour deux "gros projets" : une interface de gestions de projets puis le panel d'un service d'(auto-)hébergement.

  • Je trouve que pour réaliser la même chose, on écrit beaucoup moins avec Django ce qui rend le code plus clair (merci Python en fait ; parce que l'Entity Symfony à plusieurs centaines de lignes de code juste pour les getter/setter merci…).

  • Il faut un petit temps d'adaptation : j'ai mis du temps à appréhender le fonctionnement et les concepts propres à Django. Maintenant ça va beaucoup mieux, la documentation est très fournie et tu trouves les réponses à tes questions sur Internet.

  • L'environnement de développement est peut-être plus compliqué à mettre en place que du PHP pour qui n'a jamais touché à Python, mais question d'habitude idem.

  • J'adore Django Admin, facile à personnaliser

  • J'adore la suppression automatique dans les relations ForeignKey (ManyToOne) etc, que je trouve plus naturelle que les cascade={persist, remove....} de Doctrine (que je ne maîtrise toujours pas, par flemmardise sans doute ^^ )

Mais je continue à développer avec Symfony car j'ai de gros projets à maintenir ; il y a des différences, des choses plus simples à faire avec l'un ou avec l'autre, mais dans l'ensemble j'apprécie les deux. Je pense que j'utiliserai Django quand même pour mes futurs projets.

Au niveau hébergement, je sais qu'il existe quelques hébergeurs gratuits. Vu que j'ai monté mon propre serveur chez moi, j'ai mis en place les environnements Python nécessaires donc je n'en ai testé aucun…

+0 -0
Auteur du sujet

Je fais du Django (pas professionnellement, je suis encore étudiant) depuis maintenant 5 ans et je peux t'assurer que j'ai toujours réussit à faire ce que je voulais faire. Django est ultra complet. Comme tout framework il a ses forces et ses faibles.

Le seul truc pénible c'est d'héberger ces projets si tu n'as pas ton propre serveur (si besoin de retours sur des hébergeurs, j'en ai testé une dizaine).

gustavi

Oui je veux bien tes retours sur les hébergements testés. Merci pour vos réponses.

+0 -0
Vous devez être connecté pour pouvoir poster un message.
Connexion

Pas encore inscrit ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte