Calendrier de l’avant web design et developpement

Noël approche et les enfants ouvrent depuis 13 jours maintenant les portes de leurs calendriers de l’avent… Jaloux de ces petits cadeaux avant l’heure, j’ai cherché un calendrier de l’avant spécifiquement réalisé pour moi!

J’en ai trouvé un, écrit pour une communauté d’acteurs internationaux du web design et développement web. Tous les jours un nouvel outil ou une nouvelle technique sont présentés. C’est maintenant la cinquième année durant laquelle ce calendrier est créé. Les archives sont aussi consultables sur le site!

Des articles intéressant écrit par des professionnels sérieux et conscient des problématique du web aujourd’hui. Je vous laisse le découvrir à l’adresse http://24ways.org/

MooSheel: Test de script Mootools par un webservice online

J’ai récemment trouvé un outil intéressant appelé MooSheel pour les utilisateur inconditionnels de MooTools (comme moi héhé).

Ce web service propose à travers une interface assez ergonomique la possibilité de tester tout code MooTools avec HTML associé. Différents version du petit FrameWork sont disponible (1.1.2, 1.2.3 et 1.2.4). Les fonctionnalités avancées (More) ne sont quand à elles disponible que pour la version 1.2.4.

Je trouve l’initiative intéressante aussi bien pour faire des démonstrations que des formations. Un petit espace de travail en quatre parties (HTML, CSS, JavaScript et Résultat) permet de bien voir ce qui se passe et d’avoir une vision claire du travail en cours.

Nous ne sommes pas encore face à une interface de développement en ligne dédiée au JavaScript mais c’est assez rigolo a utilisé et on y prend vite goût…

Site Officiel: http://mooshell.net/

Utiliser un debugger pour PHP: XDebug

Dans d’autres langages comme ActionScript ou Java, les debuggers sont très utilisés car les affichages successif (echo, var_dump, die, …) pour tracer les valeurs des variables ne peuvent pas forcément être mis en place aussi facilement qu’en PHP.

L’avantage d’un tel outil est aussi de pouvoir avoir un aperçu des objets actuellement actifs en mémoire ou des valeurs de chaque variable à un instant donné dans l’application. Pour ma part, l’utilisation d’un debugger est en train de devenir une obligation pour garantir une bonne qualité de code et pour régler les problèmes rapidement et surement.
L’apprentissage et l’utilisation d’autres langages comme ActionScript démontre aussi l’intérêt d’utiliser les points d’arrêts pour analyser le fonctionnement.

Après plusieurs recherches sur le web et la lecture de retours d’expériences j’ai trouvé, installé et testé Xdebug. Ce debugger PHP gratuit et facile de mise en oeuvre s’interface directement avec Netbeans (mon IDE PHP favori sur Mac…).

Cet outil peut s’installer de différentes façons (vous trouverez la liste ici), la plus simple étant à travers un paquet PECL/PEAR:

pecl install xdebug
pear install xdebug

Il suffit ensuite de modifier le fichier php.ini utilisé sur le système en rajoutant les lignes suivantes:

[xdebug]
zend_extension=[CHEMIN ABSOLU VERS LE FICHIER xdebug.so]
xdebug.file_link_format="txmt://open?url=file://%f&line=%1"
xdebug.remote_enable = on
xdebug.remote_handler=dbgp
xdebug.remote_host=localhost
xdebug.rmote_port=9000

xdebug.remote_autostart = 1

Pour que les modifications soient prises en compte au niveau du serveur Apache, il faut redémarrer le serveur web. Démarrer ensuite Netbeans, vous pouvez directement rajouter des points d’arrêts dans vos scripts et analyser le comportement de votre code en lançant le mode d’exécution debug.

cURL: Outil souvent méconnu en PHP

cURL est à la base un outil en ligne de commande destiné à transmettre ou à utiliser des ressources accessibles à travers un réseau sur Unix.

cURL pour Client URL Request Library à été porté en PHP à travers la librairie php_cURL développé par Daniel Stenberg depuis la version 4.2 de PHP.

Cette outil est particulièrement intéressant pour exécuter des requêtes réseau en PHP. Il supporte pour le moment les protocoles http, https, ftp, gopher, telnet, DICT, file et LDAP et se met en place aussi facilement qu’un flux de lecture écriture de fichier (fopen, fwrite, fclose est porté en curl_init, curl_exec, curl_close).

Beaucoup de constantes sont faites pour régler les paramètres d’interrogation et les informations transmises lors de la requête (champ POST pour HTTP, type de retour, possibilité d’écrire le retour dans un fichier, …).

J’ai eu récemment l’occasion de beaucoup l’utiliser pour mieux maîtriser les appels aux web services en HTTP. Cette librairie m’a permis de bien tracer les différentes interactions et de bien connaître toutes les informations transmises au web services. Je vous conseille vraiment de bien creuser cet outil car il est très puissant.

Un article sur le blog « Cats who code » (http://www.catswhocode.com/blog/10-awesome-things-to-do-with-curl) présente 10 utilisations de cURL pour effectuer des interactions avec des webservices très connus (FaceBook, Twitter, …) mais aussi pour connaître le temps de réponse d’un serveur web par exemple.