Quels sont vos nouveaux frameworks Python préférés ?
Partagez vos avis sur les nouvelles implémentations de frameworks Python que vous utilisez

Le , par Olivier Famien, Chroniqueur Actualités
Quels sont vos nouveaux frameworks Python préférés ?
Depuis l’apparition de Python 3, de nombreux projets n’ont eu de cesse de voir le jour. Ceux qui également étaient déjà présents dans les versions antérieures de Python ont vu leur code être affiné afin de gagner en performance et en maturité. Face à l’ensemble de ces nouveaux frameworks, chacun préférera utiliser telle ou telle solution en fonction de ses objectifs ou des fonctionnalités qui lui sont présentées.

Depuis quelques jours, Sanic est disponible en version 0.17. Sanic est un serveur web écrit en Python 3.5. Il a été développé en s’inspirant de Flask, qui est un microframework Python basé sur Werkzeug et Jinja 2. L’objectif de Sanic est d’afficher des performances sans pareil. Battre donc les records de vitesse afin d’être le meilleur dans cette catégorie. À ce sujet, un petit benchmark a été effectué par les développeurs du produit et présenté sur la page du produit sur GitHub. Et selon les tests réalisés sur Amazon Web Service exécutant Ubuntu avec 1 processus, Sanic est affiché en tête du classement avec la plus petite latence. En seconde position vient Wheezy, puis Falcon. Ils sont suivis par Bottle, Flask, Kyoukai, Aiohttp et enfin Tornado. Sanic prend en charge les gestionnaires de requêtes asynchrones afin d’accélérer les performances de votre code.

À côté de Sanic, nous avons également Flask qui est un microframework Python. Il est défini comme un microframework, car il permet de conserver une base simple, mais que l’on peut étendre avec des extensions. Il intègre un support de test unitaire et la norme Unicode pour les échanges de textes dans différentes langues. Tout comme Sanic, il est également encore au stade de développement et n’a pas encore atteint sa première version stable. À ce jour, il est à sa version 0.11.1.

Eve est un framework permettant de concevoir et déployer des services Web. Plusieurs autres outils peuvent venir enrichir ses fonctionnalités en lui ajoutant des extensions. Actuellement, Eve est disponible en version 0.6.4.

Uvloop est un module d’évènements qui fournit des outils pour le développement des applications. Selon l’équipe de développement du projet, il est une implémentation rapide de la boucle d’évènements asyncio qui permet de développer des applications utilisant les coroutines. Uvloop est écrit avec Cython et s’appuie sur libuv. Libuv est une bibliothèque asynchrone multi-plate-forme de haute performance utilisée par Nodejs. Elle est très rapide et stable. Uvloop est actuellement à sa version 0.54.

Bottle pour sa part est un microframework Web WSGI présenté comme simple, rapide et léger. Il intègre un serveur HTTP, des utilitaires, des templates, et le routage des requêtes. Il est actuellement à la version 0.12.

Wheezy Web est un framework web WSGI performant, léger et de haute concurrence avec comme fonctions principales la conception d’applications web modernes et efficaces. Étant optimisé pour la performance, il intègre un modèle d’architecture MVC, le routage des requêtes, un modèle de validation et mise à jour, une autorisation et une authentification, la mise en cache du contenu avec une dépendance et bien d’autres choses encore. Il est à l’heure actuelle disponible en version 0.1.485.

Falcon est un framework Python utilisé pour développer des API cloud et des backends d’applications. Il est annoncé comme faisant partie des frameworks WSGI les plus rapides avec la capacité de traiter les requêtes plusieurs fois plus rapidement que les autres frameworks web. Falcon a atteint sa première version stable et actuellement disponible en version 1.1.0.

Pyramid est un framework web écrit en Python. Selon ses auteurs, il permet le développement d’applications web assez rapidement que vous écriviez de petites applications ou des applications complexes. Ces fonctionnalités peuvent être étendues en lui ajoutant des extensions, des paquets ou des applications conçues pour fonctionner avec ce framework. Il est actuellement disponible en version 1.7.

Plusieurs nouveaux projets sont également disponibles afin de permettre aux développeurs Python de développer leurs applications aisément et les exécuter encore plus rapidement. Toutefois, chacun ayant ses préférences, quels sont les nouveaux frameworks Python que vous utilisez ?

Source : Sanic sur GitHub

Et vous ?

Quels sont vos nouveaux frameworks Python préférés ?

Voir aussi

Quels sont les langages de programmation que vous détestez le plus ? Et pourquoi ?

La Rubrique Python, Forum EDI Python, Cours et tutoriels Python, FAQ Python


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de transgohan transgohan - Expert éminent https://www.developpez.com
le 31/10/2016 à 11:28
Et des frameworks python pour autre chose que du web ça existe ?
Avatar de Dhafer1 Dhafer1 - Membre régulier https://www.developpez.com
le 31/10/2016 à 13:55
Il manque quand même Django dans la liste. ...
Avatar de Pierre Louis Chevalier Pierre Louis Chevalier - Expert éminent https://www.developpez.com
le 31/10/2016 à 14:12
C'est "nouveau" ca django ?
Django à été créé en 2003, soit il y a 13 ans...
Avatar de IPreferCSharp IPreferCSharp - Membre actif https://www.developpez.com
le 31/10/2016 à 14:22
Mouais enfin Bottle ça date de 2009, Flask 2010, et Pyramid 2008 donc pas si nouveau
Avatar de wiztricks wiztricks - Modérateur https://www.developpez.com
le 31/10/2016 à 17:30
Citation Envoyé par Olivier Famien  Voir le message
[B][SIZE=4]
Et vous ?

Quels sont vos nouveaux frameworks Python préférés ?

Apprendre à utiliser proprement un framework, c'est du travail et des projets réalisés qui permettent de conforter qu'on maîtrise un tant soit peu la bête. Il va sans dire qu'une application Web qui est utile à quelque intérêt à être maintenue.

Ce qui fait que le choix d'un framework (comme d'un langage de programmation) est dicté par un contexte qui dépasse largement les performances côté charge supportée...

Et comme c'est un investissement, on ne va pas se lancer à développer avec une bibliothèque qui n'existera peut être plus dans quelques mois (sauf si elle apporte des fonctionnalités uniques pour un projet donné - mais je ne vois pas ce qu'un framework web pourrait apporter de si "unique"!).

- W
Avatar de zobal zobal - Membre confirmé https://www.developpez.com
le 31/10/2016 à 20:04
Citation Envoyé par transgohan Voir le message
Et des frameworks python pour autre chose que du web ça existe ?
Complètement d'accord. Le titre est trompeur : il ne s'agit pas de frameworks mais de frameworks webs (voire "microframeworks webs".

De plus, si on s'intéresse autant aux performances d'exécution, pourquoi se limiter à python ? Les frameworks des autres langages sont-ils notoirement plus lents ?
Avatar de RyzenOC RyzenOC - Membre éclairé https://www.developpez.com
le 03/11/2016 à 18:52
Je vais paraître prétentieux mais je dirais le mien Mais c'est pas pour faire du web mais du calcule haute performance.

Sinon comme l'on dit d'autre, ces des framework tournée vers le web, et en plus y'a même pas django... bon django n'est pas récent mais je choisirais celui la car justement c'est un outil qui est aujourd'hui très bien intégré et qui ne risque pas de disparaitre demain.

De plus, si on s'intéresse autant aux performances d'exécution, pourquoi se limiter à python ? Les frameworks des autres langages sont-ils notoirement plus lents ?
Le framework que j'ai développé et développé à 1/4 en C, 1/4 en Erlang et les 2/4 en python, et s'utilise en python. Niveau perf j'ai pas à me plaindre, le python étant utilisé surtout comme surcouche (rapide à codé et sa consomme rien en ressource, pas besoin d'un langage ultra performant), les calcules en C et Erlang pour la répartitions dans les noeuds de calcules.

Je connais pas beaucoup de framework/lib développé en python pure, souvent elles sont codé en partie ou complétement dans un autre langage (en C).
Avatar de RyzenOC RyzenOC - Membre éclairé https://www.developpez.com
le 03/11/2016 à 18:52
Je vais paraître prétentieux mais je dirais le mien Mais c'est pas pour faire du web mais du calcule haute performance.

Sinon comme l'on dit d'autre, ces des framework tournée vers le web, et en plus y'a même pas django... bon django n'est pas récent mais je choisirais celui la car justement c'est un outil qui est aujourd'hui très bien intégré et qui ne risque pas de disparaitre demain.

De plus, si on s'intéresse autant aux performances d'exécution, pourquoi se limiter à python ? Les frameworks des autres langages sont-ils notoirement plus lents ?
Le framework que j'ai développé et développé à 1/4 en C, 1/4 en Erlang et les 2/4 en python, et s'utilise en python. Niveau perf j'ai pas à me plaindre, le python étant utilisé surtout comme surcouche (rapide à codé et sa consomme rien en ressource, pas besoin d'un langage ultra performant), les calcules en C et Erlang pour la répartitions dans les noeuds de calcules.

Je connais pas beaucoup de framework/lib développé en python pure, souvent elles sont codé en partie ou complètement dans un autre langage (en C souvent).
Contacter le responsable de la rubrique Accueil