Est-il bon d’utiliser Django/Python pour un logiciel ERP ?


Django Python (ou Flask) sera le moyen le plus productif que vous trouverez pour construire le backend. Cela pourrait être encore plus productif si vous utilisez Wagtail avec Django. L'ERP a besoin de beaucoup de modèles, de sorte que l'utilisation de quelque chose qui accélère la création de modèles aidera grandement.

En termes de performances, le limiteur d'un ERP sera la base de données. Ainsi, ce n'est pas un problème majeur si vous utilisez un langage plus lent comme Python. Ce sera juste une fraction de la vitesse d'exécution. L'ajout d'un peu plus de puissance de calcul du côté du serveur résoudra le problème. Le temps gagné en utilisant Wagtail est énorme par rapport aux solutions de plus bas niveau et aujourd'hui les startups doivent aller vite...


Cependant, si le cahier des charges dit que l'ERP doit fonctionner sur des serveurs de bas niveau parce que c'est ce que les petites entreprises ont réellement, je peux utiliser un langage productif mais plus performant. Pas de C++, cela rendrait le projet très coûteux. Go est probablement une bonne bête actuellement. C# pourrait aussi l'être. Si le projet démarre en 2020, le framework web de Julia's Genie.jl aura atteint la version 1.0. Ce serait probablement le meilleur rapport productivité/performance disponible. Il est très similaire à Django mais a même de meilleures performances que Go.


Puisque le front-end soulève l'éternelle question de la convivialité et de la productivité de l'ERP, je m'appuierais sur une équipe de designers UX expérimentés et leur donnerais le maximum de flexibilité. Avoir une grande interface utilisateur qui facilite l'adoption par les utilisateurs et, plus important encore, augmenter la productivité des utilisateurs, ce serait une caractéristique clé.

Puis, je ferais un front-end avec React ou Vue.js. Cela permettrait aux concepteurs de créer des maquettes intéressantes.

Un autre pro de l'utilisation d'un framework Single Page App pour le front-end est qu'il limitera considérablement la quantité de code nécessaire pour construire une interface utilisateur en ligne + une version de bureau + une application mobile puisque le même code serait réutilisé. Le développement multiplateforme est un sujet important pour les ERP.

Cette façon de développer n'est rien de plus que le standard actuel mais il y a une raison à cela. Le gain en productivité de développement est la clé.

.