Ok

En poursuivant votre navigation sur ce site, vous acceptez l'utilisation de cookies. Ces derniers assurent le bon fonctionnement de nos services. En savoir plus.

13/06/2005

PLog

lifetype.jpg

Je vais commnencer une série d'articles sur les outils de blogging opensource. J'essaierai de les comparer en précisant leurs forces et faiblesses. pLog est un outil que j'ai récémment découvert.

Une installation simple et sans difficultés particulières. Un éditeur html intégré qui semble avoir encore quelques problèmes d"intégration. Une sauvegarde de l'état brouillon grâce à AJAX. 1ère fois que je vois ça sur un outil de blogging. Je pense que c'est quelque chose qui va se démocratiser de plus en plus sur certaines actions. On pourrait imaginer une sauvegarde automatique via AJAX ça serait encore mieux : plus besoin de cliquer sur enregister à l'état brouillon.
Une fonction intéressante est la possiblité de rajouter des champs personnalisés. Cependant il ne s'affiche pas dans le blog donc l'intérêt devient moins important. J'aurai préféré choisir un gabarit de note. Une note ressemblant à un événement, une note par défaut, ... Le reste c'est du classique avec sa gestion des plugins.
On peut remarquer néanmoins l'intégration de filtres bayesiens pour lutter contre le spam. (j'ai vu une autre implémentation de ce filtre sur http://www.xhtml.net/).
En résumé les fonctionnalités sont présentes mais l'ergonomie pourrait être améliorée.
Si on rentre dans les entrailles de pLog on voit qu'il est complétement orienté objet et qu'il utilise Smarty et adodb. Sur le wiki du projet on trouve toutes les informations pour ceux qui souhaitent développer des plugins. En regardant les ressources utilisées sur la page "New post" ; page la plus appelée de ce type d'application on s'aperçoit que le projet doit encore progresser. Quelques lignes de code insérées dans le code permettent de le voir :

 

   register_shutdown_function("testProfiling");  
function testProfiling()
{
print_r(get_declared_classes());
print_r(get_included_files());
print_r(memory_get_usage());
}


Constat : plus de 170 fichiers ouverts avec plus de 170 classes. Ce test montre simplement qu'il y a sûrement de fichiers et des classes qui sont inclus et qui ne devraient pas. C'est souvent le travers des applications qui sont trop orientées objet et qui s'inspirent trop des patterns utilisées pour java. On utilise des ressources qui son inutiles dans 80% des cas. Je pense qu'il y a un gros travail de refactoring à faire afin d'optimiser le code.
Je finirai quand même par un bon point c'est son wiki. Peu de projets ont une documentation aussi fournie et expliquent leur architecture logicielle : documentation pour les développeurs

 

KeePass Password Safe

Unplockb75.png outil que j'ai découvert récemment grâce à Nicolas est KeePass Password Safe. C'est un outil qui permet de stocker tous vos mots de passe et de manière sécurisée. Avec un seul mot de passe vous accèdez à l'ensemble de votre base de mots de passe. Vous pouvez stocker en toute tranquilité vos accès ssh, mysql et autres ... Un avantage aussi est qu'il est opensource .. A essayer.

21/02/2005

Réflexion sur l'avenir du langage PHP

Je viens juste de finir de lire un article intéressant sur la raison pourquoi le langage PHP s'éfforce de se rapprocher du langage Java. L'auteur explique que c'est l'intérêt de Zend de rendre le langage plus opérable avec Java (le langage de Sun) , d'améliorer le support du modèle objet de PHP ou du moteur de PHP (le Zend Engine) afin de pouvoir mettre en place des outils payants ..

Or la communauté PHP plébiscite le langage PHP à cause de sa simplicité et non de son modèle objet.

La différence entre PHP3 et PHP4 avaient été très appréciées par la communauté car la gestion es sessions avaient été intégrées et un qu'un modèle objet simple était apparu.

Aujourd'hui PHP5 intègre en autre un modèle objet qui se rapproche beaucoup de Java, Mais un débutant n'arrivera pas à utiliser ces concepts. Les notions de classes, d'objets ou d'exceptions ne sont pas simples.

Lorsqu'on voit les projets Open Source en PHP, peu sont orientés objets avec l'utilisation de designs patterns. Les nouveaux framework en PHP5 ressemblent au contraire à des framework Java. Mais quel est l'intérêt ? PHP n'a pas vocation à remplacer Java. Il est fait pour être un langage de script pour le web et il le fait très bien. Il ne faut surtout pas l'oublier.

Lorsqu'on étudie en détail le projet Smarty on s'aperçoit qu'une partie est faite en objet là où la logique applicative est complexe mais que de l'autre côté les plugins sont simplement constitués de fonctions. Je pense que c'est dans cette direction qu'il faut que les projets OpenSource doivent évoluer. Utiliser le meilleur des concepts objets mais tout en gardant la simplicité de l'utilisation des fonctions.