Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Azra [Florent Santin]

.Net, X'Net, aucun lien de parenté V2.0

Actualités


  • MSN Alerts
    View Florent Santin's profile on LinkedIn
[VS 2010 Team Dev] Quoi de neuf dans l’analyse de code?

Une petite passe sur une autre des fonctionnalités de VS 2010 pour enrichir la série de post d’Etienne.

L’option Code Analysis est proposée depuis 2005 dans l’édition Visual Studio Team Developer.

Concrètement, il s’agit d’une évolution de FXCop s’intégrant complètement dans l’environnement de développement et dans les processus de compilation d’un serveur Team Build.

Code Analysis permet de valider que le code (au travers de son IL) respecte certaines conditions (bonnes pratiques) sélectionnées parmi une liste extensible de plus de 200 règles (sécurité, globalisation, performance…) et ceci à différents niveaux:

  • Lors de la compilation sur le poste du développeur, sous la forme d’avertissement et d’erreur; imposant ainsi de garantir la qualité du code le plus tôt possible (dans l’IDE) et souvent (à la compilation)
  • Lors d’un archivage de code dans le contrôleur de code source, pour garantir que le code présent dans le référentiel est valide d’un point de vue qualité
  • Lors de la compilation par le serveur de build pour noter et mettre en avant la qualité du livrable

Dans Visual Studio 2008…

La sélection et l’activation des règles s’effectue dans les propriétés d’un projet C# ou VB.NET, au niveau de l’onglet “Code Analysis”

image

Seul problème, il faut pour chaque projet reconfigurer les règles (ou aller faire un copier coller en mode texte dans le fichier .csproj pour récupérer et copier coller une liste existante), ce qui n’est pas très industrialisable. De plus, la première sélection des règles est toujours longue, il est rarement nécessaire de tout activer et lire la documentation des règles une à une pour démarrer peut être très très chronophage.

Quoi de neuf dans 2010?

Visual Studio Team Dev 2010 répond justement à ces deux soucis avec deux fonctionnalités:

1°) Des groupes pré-définis pour démarrage rapide

image

L’onglet d’activation des règles est toujours présent, mais il est maintenant possible d’appliquer un ensemble de règles pré-sélectionnés parmi une liste proposée par Microsoft.

image

Une fois un groupe sélectionné, il est possible de l’ouvrir pour le personnaliser (ajout / suppression de règles, fusion de groupes) pour le projet actif.

2°) La possibilité de créer des groupes de règles, et de les importer / exporter

Pour aller plus loin, il est également possible de créer votre propre ensemble de règles. Ce coup-ci, pas de stockage des règles directement dans les fichiers de définition de projet comme en 2008, mais plutôt dans un fichier externalisé lié au projet, dédié aux règles et donc plus facilement transportable.

Lors de l’ajout d’un fichier dans un projet, apparait donc maintenant un type “RuleSet”:

image

Ceci créé un fichier à l’extension “.ruleset”, qui dispose d’un éditeur assez pratique pour:

  • Sélectionner les règles
  • Filtrer sur les règles sélectionnées, sélectionnées comme erreur, sélectionnées comme avertissement, non sélectionnées (facilité d’évolution du ruleset)
  • Créer des sous groupes de règles
  • Avoir accès à la documentation de la règle directement depuis Visual Studio!!! (finit le CHM ou MSDN à ouvrir à coté pour le détail!!) => la documentation, description de l’erreur, et même un bout de code pour expliquer comment la corriger.

image

Honnêtement, je pense que ces améliorations vont grandement augmenter l’adoption de cet outil, qui va du coup pouvoir enfin être utilisé en mode industriel sur plusieurs projet.

Posted: jeudi 4 juin 2009 10:30 par azra
Classé sous :
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :

Commentaires

minsou a dit :

En effet je dirai que ces fonctionnalités ne sont pas du luxe !

# juin 4, 2009 13:45

Etienne Margraff a dit :

Ca poutre ! :)

# juin 4, 2009 20:12
Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- Office 365: Comment exporter tous les comptes Azure Active Directory ayant une license via PowerShell par Blog Technique de Romelard Fabrice le 05-17-2018, 13:46

- PowerShell: Comment avoir le Country Name depuis un Country Code par Blog Technique de Romelard Fabrice le 05-17-2018, 13:20

- Office 365: Comment supprimer un compte externe d’un site SharePoint Online en mode Extranet par Blog Technique de Romelard Fabrice le 05-11-2018, 17:00

- Office 365: Comment reconfigurer le lien “Bloc-notes” d’un teamsite par Blog Technique de Romelard Fabrice le 05-09-2018, 16:45

- Office 365: Utiliser l’option “Alert Me” de la page de résultat de recherche par Blog Technique de Romelard Fabrice le 05-09-2018, 14:57

- Office 365: Comment télécharger l’image de profil de Delve par Blog Technique de Romelard Fabrice le 05-09-2018, 14:28

- Office 365: Valeur “Country or Region” et “User Location” dans Azure AD par Blog Technique de Romelard Fabrice le 05-04-2018, 12:08

- Office 365: Menu d’administration non visible dans une page SharePoint par Blog Technique de Romelard Fabrice le 05-04-2018, 11:50

- Office 365: Comment avoir un minimum de statistiques d’usage de votre site SharePoint Online par Blog Technique de Romelard Fabrice le 05-04-2018, 11:41

- Office 365: Reconfigure la gestion des demande d’accès dans SharePoint par Blog Technique de Romelard Fabrice le 05-04-2018, 10:41