Revue de presse python semaine 50
14/12/2009
pywebsocket
Le projet pywebsocket est une extension pour le serveur http apache . Il implémente le protocole Web Socket sous la forme d'un module: mod_pywebsocket. Ce module s'appuie sur mod_python.
Web socket provient de la spécification HTML 5 qui introduit une nouvelle génération de communication client/server.
- Canal de communication bi directionnel en full duplex
- Peut fonctionner en SSL pour un fonctionnement en mode sécurisé
- Mécanisme d'abonnement par le client au serveur
- On est plus limité à un seul domaine comme les XMLHttpRequest
- Interdocument messaging : permet d'envoyer des messages à des iframes dans une page.
Bref cela résout pas mal de problème inhérent à la structure client/reponse du protocol http et au polling simple ajax.
Par contre ces interfaces ne sont pas aujourd'hui implémenté nativement dans la majorité des navigateurs en version stable (il ne faut pas réver, ca va prendre quelques années tout cela surtout pour IE !!). Chromium (base open source de Google Chrome) implémente les WebSockets ainsi que le trunk de Firefox aussi depuis peu. Les solutions de contournement les plus utilisées, Polling simple et Long polling (Comet), ne sont pas satisfaisantes car elle ne permettent pas de faire du temps réel et sont de plus très difficilement scalable. Cela va ouvrir de nouvelle perspective à nos applications web. Pour info les URLs des WebSockets commencent par ws:// ou wss:// en mode SSL.
collective.beaker
Collective beaker est l'intégration du système de cache beaker pour plone. Ce middleware est largement utilisé dans les applications wsgi.
Il permet de gérer aussi les sessions de façon partagé et de configurer des backends de cache tel que memcached , sqlalchemy ...
Il manque cruellement d'un bon gestionnaire de session (efficace , sans conflicterror) pour zope dans un mode zeoclient/zeoserver .
Collective.beaker en serait une alternative de choc...
Traduction de la zca
Zca (A Comprehensive Guide to Zope Component Architecture) est un document qu'on ne présente plus. Ce n'est pas la documentation de référence de la zope component architecture mais elle est vraiment pratique.
Notre ami, Christophe Combelles, a retroussé ces manches et à fourni une traduction du document original. Merci à lui car cela constitue sans aucun doute la meilleur documentation française de la ZCA.
Je rapelle que la zope component architecture est indépendante de zope et que vous pouvez l'utiliser dans tout vos projets python. Cela introduit des concepts logiciels telles que la programmation par contrat via les interfaces , la mis en place des pattern factory pour instancier les objets du système sans les connaître, la mis en oeuvre du diviser pour régner en adaptant des petits composants entre eux.
Bref vous avez une grosse application python à écrire , la zca va vous permettre de la strucurer en petits composants et de la faire évoluer plus sereinement. Le document référencé ci-dessous vous guidera dans cette approche logiciel
Nouvelle release de pyquery
Pyquery est une librairie python qui propose une alternative au parsing xml traditionnel. Le but: proposer la même api que jQuery pour python. Donc vous connaissez jQuery vous connaissez aussi pyquery.
Nouvelle release de djangocms
Si vous ne le savez pas , Django est un framework qui a l'avantage d'être rapide !!. Il est largement documenté et apprécié par bon nombre de développeur python. Par contre dans les moins comme pour zope2 c'est son aspect monolithique qui est souvent décrié. Le code fait pour django ne sera pas facilement incorporable dans un projet python pure !! Mais ceci étant dit, django sert de réceptacle d'application lourde tel que la construction d'un cms. Django cms est l'un des plus abouti . La version 2.0.2 vient de sortir







