The 2005-07-19 at 14:42 by Loïc d'Anterroches filed under News.
J’aime Python. Un langage très agréable à lire et écrire avec une disponibilité de nombreux modules. Python pourrait être utilisé presque partout, mais il lui manquait quelque chose pour entrer dans l’arène du web.
Python est un langage interprété comme Perl et PHP, mais contrairement à PHP et à l’instar de Perl, s’il est utilisé avec le serveur web Apache, il utilise le mode CGI. En pratique cela veut dire que l’interpréteur Python est chargé en mémoire, puis le script à exécuté est chargé à son tour puis exécuté et le résultat est envoyé au client et cela à chaque requête. PHP peut lui facilement tourner comme module d’Apache, cela veut dire que l’interpréteur PHP n’est pas chargé à chaque requête.
Une solution à ce problème est mod_python, un module d’Apache qui se charge de garde Python en mémoire entre les requêtes. Il n’a pas la stabilité de mod_perl, mais fonctionne plutôt bien.
Un autre point qui pèse contre l’utilisation de Python est le fait que on ne peut pas mélanger du Python et de l’HTML comme cela est possible avec PHP. La possibilité de mélange PHP et HTML offre une grande souplesse. Pour Python il faut donc trouver le bon système de gabarits pour faire cela.
Le dernier point est peut-être le fait que Python n’est pas beaucoup supporté par les hébergeurs alors que tous les hébergeurs proposent le couple PHP et MySQL.
Par contre, le langage Ruby, montre avec Ruby on Rails qu’indépendement de tous ces problèmes, une infrastructure de qualité permet de doper l’utilisation d’un langage pour le web.
Dites bonjour à Django, Django, c’est Ruby on Rails pour Python avec toutes les bibliothèques Python pour vous. Django c’est aussi une infrastructure (framework) testée sur de nombreux sites. Django, c’est l’entrée de Python pour tout le monde sur le web. Et bien entendu, cela fonctionne avec Apache et mod_python, Postgresql ou MySQL.
Plus je lis les descriptions, et surtout la rapidité de développement avec Django, plus je me dis que mes projets vont bientôt utiliser cette brique. En effet ce sont des projets qui dépendent beaucoup de Python.
Comments from readers
ON5MJ said:
>... on ne peut pas mélanger du Python et de l’HTML comme cela est possible avec PHP...
Je comprends cette phrase comme signifiant 'on ne peut pas lancer une page HTML décrite en Python et passer des variables d'une application Python à cette page HTML', ce qui est totalement faux puisque cela se fait tous les jours et depuis bien avant que PHP n'existe. J'ai donc du mal comprendre ce que vous vouliez dire.