J'apprends Python et je suis intéressé à l'utiliser pour le scénario Web. Quels frameworks sont là-bas et en ai-je besoin?

StackOverflow https://stackoverflow.com/questions/4980756

Question

J'ai appris Python pour une utilisation dans ArcGIS et certaines autres applications non Web. Cependant, maintenant que j'ai pris la création d'un site Web personnel, je suis intéressé à l'utiliser pour le développement Web (car c'est le seul langage de script que je connais actuellement).

J'ai remarqué qu'il y a beaucoup de ces choses appelées "frameworks", comme Django. D'après ce que je comprends, ce ne sont qu'une collection de forfaits pour vous éviter de réinventer la roue, mais je ne sais pas vraiment comment ils fonctionnent.

De plus, je n'aime pas les GUIS, si j'ai besoin d'un cadre, je voudrais en trouver un qui pourrait être utilisé via un terminal, commence simple et peut être mis à l'échelle pour plus de complexité lorsque je suis prêt. Des conseils ou des idées sur les frameworks et pourquoi je voudrais en utiliser un?

Était-ce utile?

La solution

Les cadres Web Python n'ont rien à voir avec les GUIS et peuvent tous être utilisés via le terminal.

Les avantages d'un cadre, comme vous le dites, sont à voir avec votre vie plus facile en fournissant les composants dont vous avez besoin pour créer un site Web: les principaux sont l'interaction de la base de données via un ORM, un système de modèles et un routage d'URL. En plus de cela, les grands frameworks ont également inclus des extras facultatifs comme l'authentification des utilisateurs, l'interface d'administration, etc.

Personnellement, j'aime Django, mais votre kilométrage peut varier: je dirais, cependant, que peu importe Vous faites avec Python et le Web nécessitera une sorte de cadre, même si c'est l'un des minimes absolus comme Flask qui font essentiellement la partie de routage. Il est tout simplement inutile d'écrire toutes ces choses à partir de zéro quand cela a été fait pour vous.

Autres conseils

Je recommanderais d'utiliser Google App Engine - il a tous les composants de base de base pour démarrer rapidement et il y en a plusieurs livres qui expliquent comment l'utiliser en détail ainsi que tutoriels. Il y a aussi une grande communauté autour de lui.

  • L'hébergement des applications y est gratuit!

Personnellement, j'ai construit un simple placer Après avoir éclaté à travers un livre, et je n'avais pratiquement aucune expérience préalable de développement Web.

Je mettrais le poste ci-dessus: Django est un excellent cadre et vous ferai économiser beaucoup de temps à long terme.

Presque tous les défis que vous rencontrerez lors de la rédaction d'une application Web auront déjà été résolus, par exemple, comment envoyer des e-mails? Qu'en est-il d'une interface d'administration pour modifier les données? Sécurité des utilisateurs?

À mon avis, choisir le meilleur cadre concerne l'écosystème autour de ce cadre. Dans quelle mesure est-il utilisé? Est-il largement discuté sur Internet? D'autres ont-ils rencontré et résolu les problèmes auxquels je suis confronté?

En ce qui concerne votre début, consultez le tutoriel Django ici:http://docs.djangoproject.com/en/1.2/intro/tutorial01/

Si vous pensez que Django vous offre trop, je vous recommande de jeter un œil à Cherrypy juste pour comparer l'approche différente et beaucoup plus simple.

Avec Python, vous avez beaucoup d'options. Pour commencer, je recommanderais de chercher ici - Il explique les bases et fournit une liste assez complète de cadres.

Si vous cherchez quelque chose qui démarre simple mais que vous pouvez également gérer plus de complexité, alors vous devriez jeter un œil à web2py. Il ne nécessite aucune installation ou configuration, n'a pas de dépendances et comprend un serveur Web et une base de données relationnelle. Il comprend également un environnement de développement intégré Web en option et une interface d'administration, mais vous pouvez plutôt travailler sur le terminal si vous préférez.

C'est Très facile à apprendre et a été conçu pour facilité d'utilisation, développement plus rapide et sécurité. Vous pouvez faire beaucoup avec très peu de code grâce à l'application d'échafaudage incluse avec de nombreux comportements par défaut raisonnables. Au fur et à mesure que les choses deviennent plus complexes, web2py peut le gérer, car il s'agit d'un framework complet bien intégré avec beaucoup de fonctionnalités intégrées, y compris une couche d'abstraction de base de données, une gestion et une validation de formulaire, un contrôle d'accès, des services Web et Ajax facile l'intégration.

Personnellement, je n'utilise aucun framework, j'écris à partir de zéro sur BaseHTTPServer, soit en utilisant WSGI (avec mod_wsgi).

Il est un peu long d'écrire le squelette, mais je pense que c'est plus rapide (je veux dire au moment de l'exécution), il y a moins de contraintes, et il y a moins à apprendre.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top