Aller au contenu | Aller au menu | Aller à la recherche

mardi 13 avril 2010

Xdebug : Debugging graphique avec Eclipse PDT

Debugging PHP en interface graphique avec Eclipse PDT Nous avons vu il y a quelques semaines ce qu’est l’extension PHP Xdebug, comment l’installer, et quelques points intéressant qu’elle nous apporte : Xdebug : Installation et premier pas.

Nous allons maintenant, au cours de cet article, voir que Xdebug nous permet d’effectuer du debugging en interface graphique, directement au sein de notre IDE, Eclipse PDT.


Sommaire :

Cet article se veut le plus « pas-à-pas » possible, et inclut un maximum de captures d’écran, illustrant chacune des étapes de la mise en place du debugging PHP en environnement graphique avec Xdebug et Eclipse PDT.

Lire la suite...

dimanche 4 avril 2010

Tour du mois en PHP : février / mars 2010

Puisque voici le début d’un nouveau mois, avril 2010, c’est le moment de faire le tour de quelques uns des articles et blog-posts que j’ai bookmarqué pour les mois de février et mars 2010 — ceux qui me semblent le plus intéressant ou le plus marquant, en y revenant quelques semaines après.

PHP : Février 2010

HipHop for PHP: Move Fast

C’est sans aucun doute l’actualité qui a le plus fait parler d’elle en ce mois de février 2010 : Facebook a annoncé la sortie publique — et opensource — de « HipHop for PHP », un compilateur permettant de transformer du code PHP en C++, dont l’exécution pourrait être jusqu’à 50% plus rapide que celle du code PHP initial.

Pour ne citer que quelques uns des articles écrits en réaction (une partie d’entre eux ayant d’ailleurs été rédigés/publiés avant que les sources de HipHop ne soient disponibles) :

Et voici le lien vers les sources de HipHop sur github.

Je n’ai pas encore eu le temps ni l’occasion de beaucoup tester HipHop ; l’idée est intéressante, en tout cas, mais n’oublions pas que, pour la majorité de nos applications, compiler notre code PHP ne serait qu’une des optimisations possibles parmi tant d’autre : après tout, bien souvent, ce n’est pas PHP le facteur limitant, mais plus la Base de Données, les disques, les appels réseau… Et que, d’un point de vue utilisateur, PHP ne représente que quelques pourcents du temps de chargement total d’une page !

Cool DateTime Functions In PHP 5.3

L’extension DateTime, apparue en PHP 5.2, est une alternative intéressante aux manipulations de dates basées sur des timestamps, qui souffrent de limitations incontournables[1].
PHP 5.3 a ajouté de nouvelles méthodes à la classe DateTime, comme add(), sub(), diff(), …

XHP: A New Way to Write PHP

En citant plus ou moins la documentation, « XHP for PHP » est une seconde extension publiée par Facebook ce mois-ci, qui modifie la syntaxe du langage PHP pour que les fragments de documents XML soient considérés comme valides — l’idée étant de faire de PHP un moteur de templating plus strict et offrant une implémentation facilitée de composants réutilisables.
Assez peu de réactions sur cette extension, de ce que j’ai pu en retenir ; voici par exemple celle de Rasmus.

Nouveau site pour l’AFUP

L’AFUP, l’Association Française des Utilisateurs de PHP, s’offre un nouveau site Web[2], à l’occasion de son assemblée générale ; félicitations, et merci, à ceux qui ont bossé dessus !
Cette assemblée générale a vu l’élection du nouveau bureau.

PHPUnit : Tester du Code Intestable

Sebastian Bergmann, l’auteur de PHPUnit, nous propose une série de quatre articles montrant comment tester du « code intestable » :

Voila qui, dans certains cas, pourrait aider ceux d’entre nous qui souhaitent ajouter des test unitaires automatisés à du code existant, écrit sans penser à ceux-ci !

Zend Announces General Availability of Zend Server 5.0

Zend Server sort en version 5.0 ; au programme, nouvelles versions de composants inclus, améliorations au niveau des performances, de la recherche de problèmes, …

The Anatomy Of A Bug/Issue Reproduction Script

Combien de fois recevons-nous, en tant que développeurs, des rapports de bugs qui sont si imprécis que nous ne savons absolument pas quoi en faire ?
D’un autre côté, en tant qu’utilisateurs de logiciels[3], nous sommes nous aussi amenés à rapporter des bugs — autant le faire de façon efficace et utile, donc !
Voici un article que beaucoup d’entre nous et d’autres utilisateurs/développeurs autour de nous devraient lire ;-)

Database Sharding at Netlog, with MySQL and PHP

Tenir la montée en charge au fur et à mesure que notre application voit son nombre d’utilisateurs augmenter n’est pas nécessairement chose facile.
Voici, à peu de choses près étape par étape, comment Netlog s’y est pris, pour son application PHP+MySQL.

More source analysis with VLD

Vulcan Logic Dumper est une extension PHP qui permet d’obtenir un dump des opcodes correspondant à un script PHP.
Elle propose aussi des fonctionnalités plus avancées, comme une routine d’analyse de code inutile.

PHP: inclued

L’extension PECL inclued permet d’obtenir des informations quant aux différents fichiers inclus lors de l’exécution d’un script PHP.
Joris va plus loin, et génère un graphe d’inclusions, à l’aide de l’utilitaire Graphviz — voila qui peut, dans certains cas, être utile, lorsqu’il s’agit de prendre en main une base de code existant.

PHP Framework Benchmarks: Entertaining But Ultimately Useless

Et, pour finir ce mois de février 2010, un article — pas forcément à prendre au premier degré — montrant que, finalement, les benchmarks de Frameworks PHP ne signifient pas grand chose, et qu’on peut leur faire dire à peu près tout ce que l’on veut, selon le Framework que l’on veut mettre en avant ;-)


PHP : Mars 2010

Et maintenant, passons au mois de mars 2010 ;-)

Futur de PHP ? 6 ?

Avec la sortie de PHP 5.3 il y a bientôt un an, cette version s’est stabilisée, et, ce mois-ci, les choses ont re-commencé à bouger dans le monde PHP, autour du futur de PHP : PHP 6, tel qu’il était imaginé, n’avançait plus vraiment depuis déjà longtemps[4], et il devenait nécessaire de faire quelque chose.
Voici quelques articles au sujet des récents événements autour du futur de notre langage favoris :

A suivre sur internals@ dans les prochaines semaines, je suppose ;-)

Symfony 2.0, Doctrine 2.0, Zend Framework 2.0 : en avant, marche !

Avec PHP 5.3, qui commence tout doucement à se démocratiser, ses nouvelles fonctionnalités, et quelques années d’expérience et de retours, bon nombre de gros Frameworks commencent à travailler sur leur prochaine version majeure, prévue pour cette année 2010 ou l’année prochaine, en fonction des cas :

Ici aussi, à suivre, au cours des prochains mois ;-)

Don’t be afraid of PHP 5.3

Je vais finir par en faire un thème récurrent[5], mais PHP 5.3, c’est bien : n’en n’ayez pas peur !
Et même si ce n’est pas encore très répandu, c’est à utiliser — c’est d’ailleurs en l’utilisant que nous encouragerons son adoption par les hébergeurs et nos clients.
Et, sur le même sujet, les slides d’une conférence donnée à ConFoo : PHP 5.3 == Awesome! Slides.

Spidermonkey gets fixed and gets ready to move from “beta” to “stable”

J’avais parlé l’an dernier de l’extension PECL Spidermonkey, qui permet d’exécuter du code Javascript côté serveur, à partir de PHP.
Celle-ci évolue, des bugs sont corrigés — bref, que des bonnes nouvelles !
Note : vous utilisez cette extension pour exécuter du code Javascript côté serveur ? Une autre ? Pourquoi ? Pour un système de plugins ? Comment ? Faites-le savoir ;-)

Building the PHP MS SQL Server extension from source on Ubuntu 8.10

J’ai bossé pendant pas mal de temps sur un projet PHP tournant sur des serveurs Linux, et communiquant avant une base de données SQL Server — ce qui n’est pas toujours marrant ^^
Voici quelques notes expliquant comment compiler l’extension mssql sous Linux/Ubuntu[6].

Creating Scalable Vector Graphs with PHP

Créer des graphiques en PHP est un besoin qui revient fréquemment ; on pense généralement à des bibliothèques comme JpGraph, ou à des outils comme Google Chart, mais, vu les possibilités, les avantages, et les résultats, et considérant que SVG est de plus en plus supportés par les navigateurs modernes, voici une alternative intéressante : générer du SVG (Scalable Vector Graphics) à partir de PHP.

Redis PHP Introduction

Redis est un système de stockage proche de memcached, mais qui supporte les listes, et le stockage sur disque.
Voici un article d’introduction expliquant comment l’utiliser à partir de PHP.

Parsing XML documents with CSS selectors

Et, enfin, je vois beaucoup trop souvent des développeurs qui essayent de parser du XML (ou du HTML) en utilisant des expressions rationnelles[7] ; bien souvent, il leur est conseillé d’utiliser XPath à la place.
Mais utiliser XPath implique prendre en main un nouveau langage de requêtage, qui n’est pas des plus simple au premier abord…
Voici peut-être une solution à cette problématique : une classe PHP permettant de transformer des sélecteurs CSS, connus par la plupart des développeurs PHP, en expressions XPath !


D’autres articles, ou évènements, ont attiré votre attention, pour ces mois de février et mars 2010?
Comme d’habitude, n’hésitez pas à en faire part en commentaire !


Notes

[1] Comme le fait que les timestamps soient généralement stockés sous forme d’entiers sur 32 bits, les limitant à une plage de dates allant de 1970 à 2038

[2] Et ça ne peut pas faire de mal : l’ancien site de l’AFUP commençait à dater un peu

[3] Qui parle de PHP, par exemple ?

[4] On avait vu l’an dernier que grand nombre de fonctionnalités initialement prévues pour PHP 6 avaient été backportées vers PHP 5.3

[5] Ah, c’est déjà le cas, vous croyez ?

[6] Dommage que ça ne parle pas de pdo_dblib ; mais bon, le plus dur est fait

[7] Expressions régulières pour parser du XML/HTML : je me demande si je ne vais pas rédiger un article à ce sujet, d’ailleurs, un jour…

mercredi 24 mars 2010

Xdebug : Installation et premier pas

Extension PHP Xdebug : Installation et premier pas Je vois encore beaucoup trop souvent des installations de postes de développement PHP qui n’incluent pas l’extension Xdebug — alors que je ne connais pas grand monde qui l’ait installée et soit ensuite revenu en arrière.

Cet article va nous permettre de voir :

  • Ce qu’est l’extension Xdebug
  • Comment installer l’extension Xdebug,
    • Sur une machine Linux
    • Et sur une machine Windows
  • Quelques petites choses que nous gagnons, une fois Xdebug installée et activée.

Il sera suivi d’un autre article, au cours duquel nous verrons que, combinée à un IDE moderne, Xdebug permet d’effectuer du débuggage d’application PHP en environnement graphique.


Sommaire :

Lire la suite...

lundi 22 mars 2010

Tour du mois en PHP : décembre 2009 / janvier 2010

Ce mois-ci[1], deux mois d’un coup : voici quelques uns des articles et blog-posts que j’ai bookmarqué pour les mois de décembre 2009 et janvier 2010 — ceux qui me semblent le plus intéressant ou le plus marquant, en y revenant quelques semaines mois après.

Décembre 2009

PHP Advent 2009

Pour commencer, cette année encore, décembre est le mois du calendrier de l’avent PHP !
24 articles, donc, dont un bon nombre de fort intéressants ; pour n’en citer que quelques uns[2] :

The More with symfony book

Le Framework PHP symfony aussi fait son calendrier de l’avent, cette année encore, avec cette série de 24 articles, rédigés par de nombreux membres de la communauté.

Why Tracking Bugs In Personal Projects Matters

C’est un fait relativement bien accepté parmi les équipes de développement que j’ai parfois l’occasion de rencontrer : suivre les bugs, sur nos projets professionnels, a un intérêt évident.
Cela dit, encore bien souvent, nous n’avons pas tendance à le faire sur nos projets personnels, réalisés sur notre temps libre ; et pourquoi ?

Build your own PHP on Windows

Ce n’est pas forcément tout récent, mais à mettre de côté : quelques notes indiquant comment compiler PHP sous Windows.
Et, au passage : Php On Windows Internals.

Conception détaillée d’hôtes virtuels sous Apache

Parce qu’un serveur n’est que rarement dédié à l’hébergement que d’un seul site, les VirtualHosts d’Apache nous rendent d’énormes services.
Voici un article présentant rapidement leur principe, ainsi que les étapes à suivre pour en mettre en place sur votre serveur.

Performance Advent Calendar 2009

Encore un calendrier de l’avent pour ce mois de décembre 2009, qui, même s’il n’est pas vraiment centré sur PHP, n’en n’est pas moins intéressant, puisqu’il parle de performances web.
Après tout, considérant que les temps de génération de pages côté PHP ne constituent bien souvent que 10 à 20% du temps de chargement d’une page, est-ce qu’il n’est pas aussi intéressant de se pencher sur d’autres pistes d’améliorations de ce temps de chargement ?

Transforming XML with PHP and XSL

Autant XML est entré des les mœurs, y compris pour les développeurs PHP, autant XSL a du mal à s’imposer — peut-être à cause de son apparente[3] complexité ?
Toujours est-il que lire quelques articles sur le sujet ne peut pas faire de mal, ne serait-ce qu’en termes de culture générale.

Why Zend Framework?

Zend Framework est un des gros Frameworks PHP ; voici un article expliquant pourquoi c’est un bon choix.
Quelques arguments ? Personnalisation, qualité, nombre et diversité de composants, communauté, …

Using Zend_Form without Zend Framework MVC

Le composant Zend_Form de Zend Framework permet de fortement simplifier certains aspects de la gestion de formulaires (création des formulaires, validation, filtrage, ré-affichage, …) ; mais il n’est pas toujours possible d’utiliser les briques MVC de ZF sur nos projets…
Heureusement, Zend_Form peut être utilisé comme composant, indépendamment de celles-ci.


Janvier 2010

Et maintenant, passons au mois de janvier 2010 ;-)

Unix manual pages for PHP functions

Pour les grands fans de la ligne de commande, ou pour lorsque nous n’avons guère le choix, avoir accès au manuel PHP sous forme de pages de man peut être appréciable ;-)

Class posing and overloading the "new" operator

Ca ne servira pas tous les jours, mais ça peut rendre servir au niveau des tests unitaires[4] — quoi qu’il en soit, l’idée est amusante ^^
Cf aussi php-test-helpers pour plus d’infos et les sources.

Do not use PHP references

Quelques explications supplémentaires sur les références en PHP ne font jamais de mal. Mais la partie qui m’intéresse le plus dans cet article, qui est à noter dans un coin pour clore le bec à certaines idées, est la suivante :

Another reason people use reference is since they think it makes the code faster. But this is wrong. It is even worse: References mostly make the code slower!
Yes, references often make the code slower - Sorry, I just had to repeat this to make it clear.

Considérant que cet article est rédigé par Johannes Schlüter, un des core-developpers de PHP et RM de PHP 5.3, c’est une référence intéressante ;-)

Redirecting email whilst developing

L’envoi de mails par nos applications, lors des phases de développement et de tests, est bien souvent un point problématique : nous voulons voir à quoi ces mails ressemblent, sans qu’ils ne soient effectivement expédiés à la terre entière !
Cet article propose des solutions, pour Windows et Linux, permettant d’enregistrer tout mail envoyé via la fonction mail de PHP dans un fichier, ou de les rediriger vers une adresse spécifique, avant qu’ils ne quittent votre serveur.

PHP 5.3 Adoption: Some Numbers

Petit à petit, je trouve de plus en plus d’occasions de glisser quelques exemples utilisant PHP 5.3 (Les closures, en particulier, semblent pas mal appréciées), et je fais de moins en moins souvent face à de l’hostilité quand je dis « 5.3 ».
Voici les résultats d’un sondage menée via Twitter il y a quelques semaines/mois de cela, à propos de l’adoption de PHP 5.3[5].

5.2 to 5.3 migration

Et en parlant de PHP 5.3, voici un script qui peut vous aider dans vos migrations de PHP 5.2 vers 5.3 ;-)

phploc: PHP Lines of Code

phploc est outil réalisant de l’analyse statique de code PHP, afin d’en extraire des informations telles que nombre de lignes, nombre de classes (concrètes, abstraites, …), nombre de méthodes, constantes, …
Et les sources sur github : sebastianbergmann/phploc.

Zend Framework 1.10.0 STABLE Released

Et pour finir le mois, nouvelle version de Zend Framework, la 1.10, qui apporte plusieurs nouveaux composants intéressants, dont, pour ne citer que celui-ci, que j’ai déjà eu l’occasion d’utiliser, Zend_Feed_Writer.


D’autres articles, ou évènements, ont attiré votre attention, pour ces mois de décembre 2009 et/ou janvier 2010?
Comme d’habitude, n’hésitez pas à en faire part en commentaire !


Notes

[1] encore une fois, toujours en retard ^^

[2] sélectionnés plus ou moins au hasard

[3] ou peut-être pas qu’apparente ?

[4] ou pas

[5] Bien entendu, cela continue à évoluer, et il serait intéressant de voir la progression…

lundi 21 décembre 2009

Tour du mois en PHP : novembre 2009

Encore une fois quelques semaines après la bataille, mais toujours présent, voici quelques uns des articles et blog-posts que j’ai bookmarqué pour le mois de novembre 2009 — ceux qui me semblent le plus intéressant ou le plus marquant, en y revenant quelques semaines après.

Forum PHP Paris 2009

C’est sans doute l’événement du mois de novembre, tout au moins pour la communauté PHP française : le Forum PHP 2009, organisé par l’AFUP, a eu lieu cette année les 12 et 13 novembre.
Voici quelques blog-post qui racontent ce qu’il s’est passé durant ces deux jounées :

Voila qui me fait penser que j’ai toujours plusieurs pages de notes à informatiser, avant de perdre leur version papier… Peut-être pour les vacances de Noël…

Distributing PHP processing with Gearman

Depuis quelques mois, j’entends de plus en plus souvent parler de Gearman, qui permet de faire de la répartition de tâches sur plusieurs machines.
Je sens que je ne vais pas tarder à m’y essayer, d’ailleurs ; en attendant, voici justement un article expliquant comment utiliser Gearman depuis PHP.

PHP 5.3 sous Windows, plus de nouveautés qu’on le croit!

J’ai parlé l’an dernier d’un bon paquet de nouveautés que PHP 5.3, sorti en juin cette année, nous apportait ; mais je ne me suis jamais vraiment étendu sur ce que cette version apportait sous Windows.
Voici un article à ce sujet, qui explique que PHP 5.3 a été l’occasion de reconstruire toute une plate-forme de compilation, de mettre à jour des bibliothèques que ne l’avaient pas été depuis des années, …

Synthèse du Barcamp PHP toulousain

Le 29 octobre a eu lieu à Toulouse un Barcamp PHP. Voici quelques posts autour de cet événement :

A quand les prochains ? Et dans d’autres villes ?

Utilisation de l’ORM Doctrine sous Zend Framework

J’apprécie beaucoup le Framework ORM Doctrine, ORM par défaut de symfony, et regrette parfois qu’il ne soit pas proposé « par défaut » avec Zend Framework.
Toutefois, cela n’empèche pas d’utiliser ces deux outils ensemble :

Et au passage, puisque je parle de ZF : Reasons To Use Zend Framework

Adapting The Joel Test To Web Development

Vous envisagez de changer d’employeur ? Voici quelques questions, adaptées du Joel Test, qu’il peut être judicieux de poser à votre peut-être-futur employeur, afin de déterminer si vous avez vraiment envie de bosser pour lui.
Et pour ce qui est de votre employeur, qu’est-ce que cela donnerait ? Voila peut-être une occasion pour vous de promouvoir quelques bonnes pratiques, non ? ;-)
Quelques questions sélectionnées plus ou moins aléatoirement :

  • Utilisez-vous un outil de contrôle de révisions ?
  • Disposez-vous de spécifications quant au site que vous développez ?
  • Utilisez-vous une plate-forme d’intégration continue ?

PHP_CodeBrowser Release version 0.1.0

Voila qui peut être utile pour ceux d’entre nous qui utilisent fréquemment phpUnderControl (qui vient de sortir en version 0.5, intégrant justement PHP_CodeBrowser) comme plate-forme d’intégration continue : un navigateur de sources PHP, avec coloration syntaxique, et sections mettant en évidence les erreurs trouvées via PHPUnit ou PHP_CodeSniffer.

Pirum, the Simple PEAR Channel Server Manager

Probablement trop peu d’entre nous utilisent le système de repository PEAR pour distribuer leurs projets ; peut-être est-ce parce que les serveurs PEAR actuels ne sont pas satisfaisant ?
C’est la réflexion que s’est faite Fabien Potencier, et suite à laquelle il a créé un nouvel outil permettant de facilement mettre sur pieds un repository PEAR : Pirum, The Simple PEAR Channel Server Manager.

ZendCon ‘09 Slides

La ZendCon 2009 a eu lieu du 19 au 22 octobre, avec un grand nombre de conférences — dont les slides sont disponibles en ligne.
Je n’ai pas encore le temps de tous les parcourir (il y en a quelques séries ^^), mais plusieurs sont des plus intéressants ;-)

Gestion d’exceptions en PHP

Et pour finir le mois, une série d’articles rédigés par Brandon Savage à propos de la gestion, et de l’utilisation, d’exceptions en PHP :

Et au passage, parce qu’on entend trop souvent tout et n’importe quoi à ce sujet, voici, du même auteur :


D’autres articles, ou évènements, ont attiré votre attention, pour ce mois de novembre 2009 ?
Comme d’habitude, n’hésitez pas à en faire part en commentaire !


jeudi 3 décembre 2009

Tour du mois en PHP : septembre / octobre 2009

Encore une fois quelque peu en retard[1], voici ma sélection de liens en rapport avec PHP, issue de mes bookmarks, pour les deux mois de septembre et octobre 2009 !

Septembre 2009

Commençons par le mois de septembre 2009 :

Custom Apps: Some Strategies For Easy Configuration Files

On n’y pense trop souvent que trop tard, ou pas assez, mais nos applications ont toujours besoin d’être configurées, ne serait-ce que pour fonctionner sur plusieurs environnements[2].
Voici quelques pensées sur le sujet — il en ressort principalement qu’utiliser des fichiers .ini peut être une bonne solution ; et l’ayant mise en place sur plusieurs projets, j’ai tendance à être assez d’accord.

Peer Review: Taking Code And Making It Better

Et voici les derniers articles d’une série commencée le mois dernier, où Brandon Savage effectue une revue de code en profondeur d’un composant PHP :

Judging the winPHP contest, or 10 tips to make the cut

Quelques retours de l’un des juges du concours WinPHP, qu’il peut être intéressant de parcourir, pour le jour où vous voudrez participer à un événement de ce type.

PHP 5.2.11 Release Announcement

Malgré la sortie de PHP 5.3 il y a quelques mois de cela, fin juin 2009, PHP 5.2.x continue à vivre, comme le prouve la sortie de la version 5.2.11 mi-septembre.
Au programme, cette fois encore, pas de grosse nouveauté — ce n’est pas le rôle d’une version mineure, après tout — mais corrections de bugs.

Zend Framework Monthly Bug Hunt Starts Today - C’mon, Join In!

Ça ne peut que permettre de dépiler un peu le bugtracker de Zend Framework, et mènera à une amélioration de la qualité du Framework : Zend Framework lance une série de Bug Hut Days.
Et pour les intéressés : A Guide To Zend Framework Bug Hunt Days

PHP enters top 3 of most popular programming languages

Il n’était pas possible de laisser passer cette information : PHP arrive, pour la première fois, en troisième position du classement TIOBE des langages de programmation les plus populaires — après le Java et le C.
Et on peut constater qu’il conserve cette troisième place au mois de novembre ;-)

Windows Cache Extension for PHP

Beaucoup d’entre vous ne se sentiront peut-être que peu concernés, mais c’est un bon signe des progrès que réalise PHP sous Windows + IIS : voici la sortie officielle de l’extension Windows Cache Extension for PHP, qui joue le rôle de cache d’opcodes pour PHP sous IIS.
A noter aussi, au passage : Windows Cache Extension for PHP and CPU usage.

Et en vrac

Et pour finir le mois, quelques articles de plus, « en vrac » :


Octobre 2009

Et, pour ce qui est d’octobre :

Livre blanc "Industrialisation PHP"

Commençons par la publication d’un livre blanc, gratuit, traitant de l’industrialisation des développements en PHP.
En vrac et en ultra-résumé, quelques extraits du sommaire : Formation des équipes, normes de codage, intégration continue, … pour un total de 57 pages qu’il ne peut être que bénéfique de lire ;-)

The Mysteries Of Asynchronous Processing With PHP

Ensuite, voici une série de trois articles sur l’utilisation et la mise en place de traitements asynchrones avec PHP et Zend Framework :

Practical testing in php part

Et maintenant, une série de neuf articles traitant de la mise de tests unitaires automatisés, avec PHPUnit :

Templating Engines in PHP

Un des « grands débats » du mois, avec l’annonce de sortie de Twig, un nouveau moteur de templates pour PHP : est-ce que PHP est un bon langage de templating ?
Comme de bien entendu, les avis divergent :

Je ne sais pas moi-même ce que je répondrais à cette question, d’ailleurs… je suppose que je n’aurais pas de réponse « standard », et que ça donnerait quelque chose du genre de « ça dépend des projets, de leurs besoins, et des intervenants et habitudes dans l’entreprise ». Un avis ?

Configuring PHP: Essential INI Settings

Nous autre développeurs PHP n’avons probablement pas assez le réflexe de nous pencher sur la configuration de PHP en elle-même… Et pourtant, il y a de quoi faire !
Voici quelques directives de configuration que nous devrions — je suppose / J’espère — tous connaitre, de par l’impact qu’elles peuvent avoir sur notre code et nos développements.

Full Text Search with Sphinx

Difficile d’imaginer, de nos jours, un site Internet sans formulaire de recherche. Pour répondre à ce besoin, de nombreux moteurs de recherche Fulltext ont été développés. Parmi eux, on peut notamment citer Sphinx, qu’il est relativement facile d’interroger depuis PHP.
Et puisque nous parlons de moteurs de recherche Fulltext, voici l’annonce de sortie d’une extension PHP permettant de communiquer avec un autre moteur, Solr : Announcing the Apache Solr extension in PHP.

Exposing Service APIs via Zend Framework

En ces temps de sites Web communiquant et ouverts, exposer une API est une nécessité pour un nombre croissant d’applications en ligne.
Vous utilisez Zend Framework ? Cet article est probablement écrit juste pour vous ;-)

Why will Symfony 2.0 finally use PHP 5.3?

Et pour finir : la prochaine version majeure d’une partie des « grands » frameworks (notamment, symfony 2.0, Zend Framework 2.0, Doctrine 2.0 — leur sortie étant généralement prévue pour fin 2010) nécessitera PHP 5.3 ; voici les raisons qui expliquent ce choix pour symfony, plutôt que de conserver la compatibilité avec PHP 5.2.x.
Deux points particulièrement intéressant à mes yeux, notamment :

  • D’une part, PHP 5.3 apporte une quantité absolument non-négligeable de nouveautés ^^
  • Et, d’autre part : si aucun framework et/ou aucune application ne requiert PHP 5.3, les hébergeurs de sont pas prêt d’installer cette nouvelle version — à ce niveau, c’est une boucle sans fin qu’il faut impérativement casser à un moment où à un autre, même si c’est un pari à long terme.


D’autres articles, ou évènements, ont attiré votre attention, pour ces deux mois qui ont fait suite aux vacances d’été 2009[3] ?
Comme d’habitude, n’hésitez pas à en faire part en commentaire !


Notes

[1] mais après tout, ça permet de repasser sur des articles parus il y a quelques temps — et parfois, même, de les redécouvrir ! Ce qui est finalement tout le but de ces articles…

[2] développement, intégration, recette, production, …

[3] Oui, pour ceux qui en ont eu ^^

mardi 17 novembre 2009

Slides de la conférence "Bonnes pratiques de développement PHP" au Forum PHP 2009

Jeudi 12 et vendredi 13 novembre avait lieu, à Paris, le Forum PHP 2009, organisé par l’AFUP.

J’y ai donné une conférence intitulée "Bonnes pratiques de développement en PHP".
Voici les slides que j’ai utilisé comme support lors de cette présentation :


Vous pouvez aussi directement télécharger le fichier PDF correspondant.

En super-ultra-mega-résumé :

  • Utilisez un IDE ; pas notepad !
  • Ayez des notions d’utilisation de Linux : tôt ou tard, cela vous sera utile.
  • Ne travaillez pas sans contrôle de source, que ce soit centralisé ou distribué.
  • Ne développez que si nécessaire : réutilisez ! Que ce soit en vous basant sur une application existante, ou sur un Framework.
  • Adoptez, et respectez une norme de codage — idéalement, connue et reconnue ; celle du Framework que vous utilisez, par exemple.
  • Mettez en place des Tests Automatisés sur votre projet — à court terme, cela a un coût, oui ; mais vous vous y retrouverez, à moyen/long terme.
  • Documentez : votre code, votre application, et vos procédures.
  • Mettez en place une plate-forme d’intégration continue.
  • Utilisez un système de déploiement automatisé, et, surtout, documenté.
  • Et enfin : soyez curieux ;-)

Bonne lecture !

Les slides des autres conférences devraient prochainement être mis en ligne sur le site de l’AFUP : ils ont tous été récupérés par Perrick vendredi.


Et, au passage, le photos de ces deux jours commencent à apparaitre sur flickr : Photos du groupe Forum PHP.


jeudi 29 octobre 2009

Forum PHP 2009, les 12 & 13 novembre : j'y serai !

bandeau_jy_serai.png

Cette année, le Forum PHP organisé par l’AFUP aura lieu les 12 et 13 novembre — oui, dans deux semaines tout juste — à la Cité des Sciences et de l’Industrie à Paris.

J’y serai !
Merci à mon employeur, SQLI, d’ailleurs, qui m’y envoit !

Au niveau des conférences auxquelles assister, je n’ai pas encore vraiment fait mon choix définitif, mais une première pré-selectionne me donne au moins celles-ci :


Vous remarquerez que certaines conférences sont plus orientées MySQL que PHP ; en effet, je cite :

L’edition 2009 du Forum PHP/MySQL a lieu à Paris les 12 et 13 Novembre 2009 organisé par l’AFUP (Association Française des Utilisateurs de PHP) et LeMug (MySQL User Group) !

Cette année, Le Forum PHP accueillera pour la premiere fois en France, Michael "Monty" Widenius, le créateur de MySQL qui a quitté SUN pour lancer un fork nommé MariaDB !! mais aussi des conférenciers tels que Damien Seguy, Michael Chaize, Olivier Dasini, Julien Pauli, Zoe Slattery (PHP Women), Johannes Schluter (PHP), etc.


A noter aussi, cette année, la présence de toute une série de projets PHP OpenSource, qui disposeront d’un espace à proximité des salles où se dérouleront les conférences.


Et, pour finir, voici quelques liens susceptibles d’intéresser ceux qui hésitent encore :

Je suppose que cela sera l’occasion de croiser certains d’entre vous ; à bientôt, donc !

- page 1 de 11