Flex Builder 3 Débutant ? Découvrez Flex et Adobe® Flex® Builder 3
03
sept
09

FlexPMD – Un outil pour faire l'audit de vos projets Flex / AS3 / Air

Adobe a sorti hier un nouvel outil baptisé FlexPMD. Cet outil permet de faire l'audit du code de vos projets Flex / AS3 / Air. Il a été développé en interne au sein du Adobe Technical Services. FlexPMD est maintenant accessible à tous, en Open Source et de manière gratuite.

Que fait FlexPMD?

FlexPMD permet de détecter automatiquement dans votre code, les anti-pattern, et autres "Worst Practices" (mauvaises pratiques) dans votre code source Flash/Flex. FlexPMD utilise en partie PMD, l'équivalent Java. A l'origine, FlexPMD a été crée pour automatiser les audits de code bas-niveau pour que les consultants puissent se concentrer sur les problèmes de plus haut niveau. Au final, cet outil permet aussi de détecter les anti-pattern plus avancés.

Le projet contient actuellement plus de 80 règles, comme par exemple la détection de code inutilisé (dead code), les méthodes trop complexes avec référence cycliques, les variables mal nommées, mais aussi les problèmes d'architecture comme par exemple les View référencées dans les Model, … Comme le projet est Open Source, la communauté pourra créer de nouvelles règles que vous pourrez ajouter à FlexPMD. Vous pouvez aussi créer vos propres règles.

Consulter la page officielle de FlexPMD

Voir le blog de l'auteur Xavier Agnetti

Comment utiliser FlexPMD?

FlexPMD peut être invoqué de 4 manières différentes:

Des tutoriaux Flex seront bientôt publiés sur flex-tutorial, expliquant comment invoquer FlexPMD et traiter les résultats. Un plugin Flash Builder est déjà considéré par les développeurs.

Télécharger les différentes versions de FlexPMD

Comment marche FlexPMD?

FlexPMD est fourni avec un ensemble de règles pour le développement Flex/AS. Chaque fichier source passé dans FlexPMD est testé sur chacune des règles.

Il y a différents types de règles:

  • Basée sur une expression régulière: La règle va passer sur chaque ligne en cherchant un pattern (motif) en particulier, et détecter les violations éventuelles
  • Basée sur un Abstract Synthax Tree (AST): La règle va analyser l'arbre de syntaxe ActionScript pour détecter, par exemple, une instruction if trop profonde dans le code.
  • Basée sur XPath: La règle va serialiser l'AST en un flux XML et utiliser une expression XPath pour détecter l'erreur

Voici le workflow général de FlexPMD:

flexpmd

En savoir plus sur le fonctionnement de FlexPMD

Visualiser le rapport d'audit généré par FlexPMD (pmd.xml)

A partir de votre code source, FlexPMD va vous générez un rapport nommé pmd.xml. Le fichier pmd.xml représente la donnée brute du rapport. Pour le visualiser de manière plus conviviale, vous pouvez utiliser l'application FlexPMD Violations Viewer disponible à cette adresse:

FlexPMD Violations Viewer

Vous n'avez qu'à uploader simplement votre fichier pmd.xml et vous aurez un détail des violations de votre rapport avec possibilités de tri, filtrage, etc.

Vous pouvez aussi passer l'URL de votre fichier pmd.xml pour qu'il s'affiche automatiquement dans le viewer comme ceci: http://opensource.adobe.com/svn/opensource/flexpmd/bin/flex-pmd-violations-viewer.html?report=[URL of the report]/pmd.xml

Le fichier pmd.xml peut aussi être visualisé par un processus d'intégration continue grâce à un plugin.

Exemples de rapport générés grâce à FlexPMD et Maven / Hudson

Comme FlexPMD peut être utilisé par Maven, il peut être intégré à votre processus d'intégration continue. Voici le genre de rapport que vous pourrez obtenir:

hudsonalivepdf



Autres Tutoriaux Flex liés:

Laisser un commentaire

Si vous souhaitez poster du code ActionScript, mettez le entre des balises comme ceci [as]code[/as]. Pour du code MXML, mettez le dans des balises [mxml]code[/mxml]. Merci




Bientôt sur flex-tutorial.fr …

  • - Tutoriaux BlazeDS
  • - Composants Flex

tutorial flex tutorial flex

flex Adobe Air AFCS Data Filter Lib ToasterLib librairies AS3 Flex livres AS3 Flex

 

septembre 2009
L Ma Me J V S D
« août   oct »
 123456
78910111213
14151617181920
21222324252627
282930