CherryPy vs Django [fermé]
7 réponses
Ils ne sont pas exactement comparables. CherryPy fournit le routage d'url et une abstraction de requête / réponse, ce qui rend le prototypage très facile (bien que je trouve mod_python vanille tout aussi pratique). Django est une application web complète "stack", y compris un système de templating et un mapper objet-relational.
Bien que E. E. coli a déjà fourni la réponse acceptée (et une bonne à cela), une chose que je dirai en faveur de CherryPy est qu'il est également met en œuvre WSGI hors de la boîte. Ce que cela signifie, c'est que, contrairement à l'approche mod_python mentionnée (qui, je pense, est toujours une solution réservée à Apache)*, elle fournit une abstraction à partir de votre serveur web. Si vous êtes tous Apache Tout le temps, ce n'est pas tellement une victoire, mais si vous pensez que vous pourriez vouloir essayer d'autres serveurs web, tels que Lighttpd, ensuite, vous pouvez échanger votre serveur web sans avoir à faire des ajustements dans votre application Python. Ce fut une grande victoire pour moi personnellement.
*Je ne parle pas de Django ici parce que je ne suis pas un utilisateur de Django (je n'aime pas les cadres "full stack") et je laisserai donc tous les commentaires à ce sujet à ses nombreux fans - qui sont tous plus qualifiés que moi pour répondre aux questions à ce sujet.
Django est vaste, et difficile à apprendre, fonctions, tags et ce qui ne l'est pas, vous serez absolument un génie informatique si vous avez compris Django complètement. "full-stack" signifie que chaque chose est disponible, vous avez juste à passer le temps à la recherche de:
CherryPy est léger et propre et beaucoup moins complexe. Comparez les tutoriels de démarrage 1pg vs 4PG vous savez ce que je veux dire. C'est la différence entre le java "full-stack" et le perl léger et facile.
PS: le L'interface d'administration de Django déchire!!
J'utiliserais Django en raison de sa large base d'utilisateurs et de ses modules existants (y compris l'interface d'administration intégrée) mais J'imaginerais que CherryPy est plus flexible que Django. Vous avez juste à regarder les options disponibles, de comprendre ce que vous voulez faire et de choisir la plate-forme qui soutient que le meilleur.
Django, parce que la communauté est tellement plus grande. Vous trouverez plus de modules tiers que vous pouvez utiliser et vous trouverez beaucoup plus de soutien.
CherryPy est le serveur web "http framework", tandis que Django supporte les applications web front-to-end: il fournit le mapper objet-relationnel, le modèle, la gestion de session, génère automatiquement le schéma de base de données et tous les écrans CRUD, et plus encore.
je pense qu'ils sont tous les deux très bien, mais je ne suis pas un fan de la pile des cadres. CherryPy est beaucoup plus facile à utiliser et beaucoup plus de flexibilité.