NDepend 5 en action par son créateur
Upcoming SlideShare
Loading in...5
×
 

NDepend 5 en action par son créateur

on

  • 356 vues

NDepend est un outil populaire d'analyse de code .NET complètement intégré dans VisualStudio. Dans cette session le créateur de NDepend Patrick Smacchia et l'architecte logiciel Bruno Boucard, ...

NDepend est un outil populaire d'analyse de code .NET complètement intégré dans VisualStudio. Dans cette session le créateur de NDepend Patrick Smacchia et l'architecte logiciel Bruno Boucard, nous expliqueront sur plusieurs exemples concrets, que peut apporter NDepend à une équipe de développeurs en terme d'agilité, de maintenance et de qualité. Notamment, Patrick montrera comment NDepend est utilisé sur lui-même quotidiennement. Cette session sera l'occasion de mettre en pratique des principes de développements essentiels, efficaces et trop souvent ignorés. Ces principes incluent la programmation par contrat, la couverture de code par les tests-unitaires, les métriques de code et la structuration d'une application par composants.

Speakers : Patrick Smacchia (NDepend), Bruno Boucard (Cellenza)

Statistiques

Vues

Total des vues
356
Vues sur SlideShare
356
Vues externes
0

Actions

J'aime
0
Téléchargements
12
Commentaires
0

0 Ajouts 0

No embeds

Accessibilité

Catégories

Détails de l'import

Uploaded via as Microsoft PowerPoint

Droits d'utilisation

© Tous droits réservés

Report content

Signalé comme inapproprié Signaler comme inapproprié
Signaler comme inapproprié

Indiquez la raison pour laquelle vous avez signalé cette présentation comme n'étant pas appropriée.

Annuler
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Votre message apparaîtra ici
    Processing...
Poster un commentaire
Modifier votre commentaire
  • MPE
  • MPE

NDepend 5 en action par son créateur NDepend 5 en action par son créateur Presentation Transcript

  • NDepend 5 en action par son créateur Bruno BOUCARD LEAD Architect Cellenza blogs.msdn.com/devpara/ Code/Developpement Patrick SMACCHIA LEAD Dev CODER IMPACT http://www.NDepend.com
  • Présentation de Cellenza Cabinet de conseil IT exclusivement dédié aux technologies Microsoft et aux méthodes Agiles Notre passion, les technologies MS Nous sommes des experts Microsoft, agilistes par nature, passionnés par notre métier. Consultants, coachs, formateurs et/ou MVP, nous avons à cœur de partager avec la communauté un savoir technique et méthodologique, mais aussi nos valeurs 150 billets de blog Comment nous le faisons : • • • Formation continue Partage de connaissance Partenariats > 12j formati on 7 MVP 7 MCT 30 art. de presse
  • NDepend en deux axes - NDepend Introduction - Unit-Tests, Contrats, Couverture de Code #mstechdays Code/developpement
  • NDEPEND INTRODUCTION #mstechdays Code/developpement
  • NDepend Introduction - Les Faits • Outil pour développeurs .NET, créé en Avril 2004 • Il est devenu commercial en Février 2007 • Plus de 4.000 clients dans le monde – Microsoft, Nasa, Intel, Google, Sony, HSBC, Thalès, Société Générale, BBC, MacLaren… • Outil spécialisé dans l’analyse statique de code .NET – Intégré à Visual Studio 2013, 2012, 2010 et 2008 – Intégrable dans le Build Process pour généré des rapports (TFS, TeamCity…) • JArchitect pour Java, CppDepend pour C++ #mstechdays Code/developpement
  • NDepend Introduction - Pourquoi s’en servir? • Outil spécialisé dans la qualité et la maintenance de code .NET • Pourquoi nos clients utilisent NDepend: – – – – – #mstechdays Rendre le code plus maintenable Œuvrer pour le moyen et le long terme Reprendre en main une code base legacy Rendre le métier du développeur plus agréable et stimulant Donner des métriques au management pour prévenir les dérives Code/developpement
  • NDepend Introduction - Les Fonctionnalités • Règles et requête de code écris en C# LINQ • Visualisation des dépendances, Graph et Matrice • Métriques de code • Analyse de la Couverture de code • Tendances • Code Diff • Génération de rapports #mstechdays Code/developpement
  • NDEPEND INTRODUCTION LES FONCTIONNALITÉS #mstechdays Code/developpement
  • UNIT-TESTS, CONTRATS, COUVERTURE DE CODE #mstechdays Code/developpement
  • Unit-Tests, Contrats, Couverture de Code • • • • • Les clés de la maintenance De bonnes habitudes à prendre Appliquées avec succès pour le dev de NDepend Un rapport cout/bénéfices très favorable Il n’est jamais trop tard pour s’y mettre #mstechdays Code/developpement
  • Code Contrats - Introduction • Pratique inventée par Bertrand Meyer, créateur du langage EIFFEL, dans les années 80s • L’idée: Truffer le code de vérifications (les contrats) pour vérifier un maximum de conditions sur les états – Cette méthode retourne une référence qui n’est jamais nulle – Ce paramètre de type string, n’est jamais nulle, ni vide, et sa longueur n’est jamais plus grande que 64 – Ce champs de type int a une valeur constamment comprise entre 10 et 100 • Contrat violé = Bug! • Durant le développement, on a pas à tenir compte du cas où un contrat est violé #mstechdays Code/developpement
  • Code Contrats - Choisir entre 2 APIs • Microsoft Code Contract – Adapté à la surface publique d’une API – Standardisée (documentation, outillage…) – Non-adapté à un usage intensif dans tous le code (compilation lente) • System.Diagnostics.Debug.Assert() – Adapté à un usage intensif dans tous le code – Marche seulement en mode DEBUG – Pas d’impact performance en production #mstechdays Code/developpement
  • Code Contrats vs Unit Tests • Du point de vue pratique c’est la même chose!! • Dans les deux cas – On veut que des assertions sur des états à l’exécution soient vérifiées – Une assertion violée implique un problème à fixer – On doit impérativement être averti lorsqu’une assertion est violée • Conséquences – Si un contrat est violé lors de l’exécution des tests, on doit être averti – Des tests avec peu d’assertions peuvent vérifier efficacement des grosses portions de codes contenant un grand nombre de contrat #mstechdays Code/developpement
  • TESTS INTÉGRATIONS & CONTRATS #mstechdays Code/developpement
  • Conclusion • En 2014, plus que jamais la tendance est à l’outillage du développement logiciel pour s’affranchir de tout ce qui peut être automatisé • NDepend est un des ces outils qui cible la qualité, la maintenance pour éviter l’érosion et la régression • Nous utilisons avec succès dans nos dev les différentes fonctionnalités de NDepend mais aussi les contrats et la mesure de la couverture de code par les test • Changez vos habitudes ! #mstechdays Code/developpement
  • Liens http://en.wikipedia.org/wiki/NDepend http://visualstudiogallery.msdn.microsoft.com/EF4E8DB0-20794819-BA1C-51E5EB53E8C7 http://www.hanselman.com/blog/content/binary/NDepend%20metr ics%20placemats%201.1.pdf http://realfiction.net/files/NDependMetricsCheatSheet.pdf http://codebetter.com/patricksmacchia/ #mstechdays Code/developpement
  • Donnez votre avis ! Depuis votre smartphone sur : http://notes.mstechdays.fr De nombreux lots à gagner toute les heures !!! Claviers, souris et jeux Microsoft… Merci de nous aider à améliorer les Techdays ! #mstechdays Code/developpement
  • Présentation de Cellenza Ve n e z n o u s r e t r o u ve r s u r n o t r e St a n d # 1 5 Vous pouvez vous inscrire à notre jeu concours sur notre stand ou en ligne : http://jeuconcours.cellenza.com Merci !
  • Digital is business