AMBIENT INTELLIGENCE
#mstechdays techdays.microsoft.fr/tour
tech days•
2015tour
Améliorez la qualité de
votre code avec Roslyn !
Christophe HERAL
@ChrisHeral
cheral@neotech-solutions.fr
tech.days tour 2015#mstechdays
Consultant .NET et agiliste chez Neotech Solutions
Co-organisateur de l’Agile Tour Bordeaux...
tech.days tour 2015#mstechdaysTitre session pied de page
tech.days tour 2015#mstechdays
« La qualité d’aujourd’hui
est la productivité de demain. »
Adage qui se transmet
d’Extreme...
Clean Code
tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
Méthodes longues / Grosses classes
Longue l...
tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
Pair programming
Revue de code Avec des out...
tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
Analyse des binaires
Analyse du code source
tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
Qui l’utilise ?
tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
Qui crée ses propres règles ?
tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
Changement majeur
Un vaporware ?
tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
• Symboles
• Vocabulaire
• Syntaxe
• Sémant...
tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
« Ecriture de programmes qui
manipulent des...
tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
2 utilisations principales
• Génération de ...
tech.days tour 2015#mstechdaysTitre session pied de page
tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
Fonctionnalités de Visual Studio 2015
Compi...
tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
Accès à l’arbre syntaxique
Fidèle au code s...
tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
Faire un diagnostic Proposer un Code Fix
tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
Choix du template « Diagnostic with Code Fi...
tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
Implémentation d’une règle StyleCop
SA1028 ...
tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
Démo :
DiagnosticAnalyzer
SA1028
tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
Démo :
CodeFixProvider
SA1028
tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
Démo :
Utilisation de la règle
tech.days tour 2015#mstechdays
 Github officiel : https://github.com/dotnet/roslyn
 .NET Analyzers : https://github.com/...
tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
@ChrisHeral
© 2015 Microsoft Corporation. All rights reserved.
#mstechdays techdays.microsoft.fr/tour
tech days•
2015tour
#ns_expert w...
Prochain SlideShare
Chargement dans…5
×

[Techdays Tour 2015] Améliorez la qualité de votre code avec Roslyn !

707 vues

Publié le

Présentation donnée à Bordeaux à l'occasion du Techdays Tour 2015

Publié dans : Logiciels
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
707
Sur SlideShare
0
Issues des intégrations
0
Intégrations
30
Actions
Partages
0
Téléchargements
6
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive
  • La qualité n’est pas négociable pour une application professionnelle.
  • Nécessité de métriques et d'indicateurs pour mesurer la qualité
  • Pourquoi si peu de monde crée ses règles : règles existantes suffisantes, pas facile d’analyser le code (réflexion), DLL à installer sur chaque poste de dév.
  • Pourquoi si peu de monde crée ses règles : règles existantes suffisantes, pas facile d’analyser le code (réflexion), DLL à installer sur chaque poste de dév.
  • Considérer le code comme de la donnée
  • Considérer le code comme de la donnée
    Méta = au delà
  • Par opposition au compilateur Black Box
  • Avec test
  • Ecriture du test du Code Fix + le Code Fix
  • Ecriture du test du Code Fix + le Code Fix
  • ~3 min
  • [Techdays Tour 2015] Améliorez la qualité de votre code avec Roslyn !

    1. 1. AMBIENT INTELLIGENCE #mstechdays techdays.microsoft.fr/tour tech days• 2015tour
    2. 2. Améliorez la qualité de votre code avec Roslyn ! Christophe HERAL @ChrisHeral cheral@neotech-solutions.fr
    3. 3. tech.days tour 2015#mstechdays Consultant .NET et agiliste chez Neotech Solutions Co-organisateur de l’Agile Tour Bordeaux Co-organisateur d’Agile .NET Bordeaux Et surtout : Artisan logiciel Améliorez la qualité de votre code avec Roslyn !
    4. 4. tech.days tour 2015#mstechdaysTitre session pied de page
    5. 5. tech.days tour 2015#mstechdays « La qualité d’aujourd’hui est la productivité de demain. » Adage qui se transmet d’Extreme Programmer à Extreme Programmer Améliorez la qualité de votre code avec Roslyn !
    6. 6. Clean Code
    7. 7. tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
    8. 8. tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn ! Méthodes longues / Grosses classes Longue liste de paramètres Code dupliqué Code mort Nombres magiques Utilisation de switch GOTO / Codes de retour d’erreur Noms de méthodes avec ET/OU Commentaires Navigation transitive Généralité spéculative Séparation verticale Héritage parallèle
    9. 9. tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn ! Pair programming Revue de code Avec des outils (ou non qualité…)
    10. 10. tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
    11. 11. tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn ! Analyse des binaires Analyse du code source
    12. 12. tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn ! Qui l’utilise ?
    13. 13. tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn ! Qui crée ses propres règles ?
    14. 14. tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn !
    15. 15. tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn ! Changement majeur Un vaporware ?
    16. 16. tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn ! • Symboles • Vocabulaire • Syntaxe • Sémantique
    17. 17. tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn ! « Ecriture de programmes qui manipulent des données décrivant elles-mêmes des programmes. » Définition de Wikipedia.fr
    18. 18. tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn ! 2 utilisations principales • Génération de code • Analyse de code
    19. 19. tech.days tour 2015#mstechdaysTitre session pied de page
    20. 20. tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn ! Fonctionnalités de Visual Studio 2015 Compilateur « boîte blanche »
    21. 21. tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn ! Accès à l’arbre syntaxique Fidèle au code source En liaison avec celui-ci Accès depuis le menu « Others Windows »
    22. 22. tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn ! Faire un diagnostic Proposer un Code Fix
    23. 23. tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn ! Choix du template « Diagnostic with Code Fix » Distribution sous 2 formes
    24. 24. tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn ! Implémentation d’une règle StyleCop SA1028 - CodeMustNotContainTrailingWhitespace Une ligne de code ne doit pas terminer par un espace ou une tabulation. Cas de tests : - Code vide - Espace après un appel de méthode - Espace après une déclaration de variable - Espace après un commentaire mono-ligne - … Code Fix Suppression des caractères d’espacement superflus en fin de ligne.
    25. 25. tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn ! Démo : DiagnosticAnalyzer SA1028
    26. 26. tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn ! Démo : CodeFixProvider SA1028
    27. 27. tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn ! Démo : Utilisation de la règle
    28. 28. tech.days tour 2015#mstechdays  Github officiel : https://github.com/dotnet/roslyn  .NET Analyzers : https://github.com/DotNetAnalyzers  Roslyn Tester : https://www.nuget.org/packages/RoslynTester  Blogs :  https://ovaismehboob.wordpress.com/2014/09/29/writing-diagnostic- with-code-fix-using-roslyn-net-compiler-platform/  http://blog.thomaslebrun.net/2014/11/roslyn-implement-the-use-var- feature-using-a-visual-studios-extension  http://www.informit.com/articles/article.aspx?p=2301258&seqNum=2 Améliorez la qualité de votre code avec Roslyn !
    29. 29. tech.days tour 2015#mstechdaysAméliorez la qualité de votre code avec Roslyn ! @ChrisHeral
    30. 30. © 2015 Microsoft Corporation. All rights reserved. #mstechdays techdays.microsoft.fr/tour tech days• 2015tour #ns_expert www.neotech-solutions.fr

    ×