Dans cet épisode, Sergey Nikomarov, développeur senior au sein de notre équipe Platform Engineering, ainsi que certains de nos Acumatica Developer MVPs nous parlent de leurs outils de développement préférés. Nous avons également partagé quelques astuces autour du débogage et des paramètres utiles dans Visual Studio ont également été abordés.
Sous l'enregistrement vidéo intégré, vous trouverez une liste complète de liens vers de nombreux outils abordés dans l'épisode.
Bonne lecture et bon codage !
Les outils pour développeurs et les fonctionnalités de Visual Studio abordés dans l'épisode sont énumérés ci-dessous
- IntelliCode - une complétion de code et des refactorings basés sur ML https://visualstudio.microsoft.com/services/intellicode/
- Fonctionnalité ancienne mais utile de Code Snippets https://docs.microsoft.com/en-us/visualstudio/ide/code-snippets?view=vs-2022
- Schéma de coloration personnalisable https://docs.microsoft.com/en-us/visualstudio/ide/how-to-change-fonts-and-colors-in-visual-studio?view=vs-2022
- Raccourcis clavier personnalisables. Je vais décrire quelques exemples https://docs.microsoft.com/en-us/visualstudio/ide/default-keyboard-shortcuts-in-visual-studio?view=vs-2022
- Diagnostics de code et remaniements.
- Il existe des projets populaires gratuits qui proposent de nombreux diagnostics :
- Les diagnostics peuvent également être utilisés dans l'éditeur de code Rider https://www.jetbrains.com/help/rider/Using_NET_Compiler_Analyzers.html
- Fonctionnalité de carets multiples - permet de sélectionner des occurrences d'un texte et de les éditer toutes en même temps, très utile pour la refonte et l'édition de gros morceaux d'API qui suivent un schéma de nommage spécifique.
https://www.meziantou.net/visual-studio-tips-and-tricks-multi-line-and-multi-cursor-editing.htm - Visual Studio fournit de bonnes débogage expérience
- Vous pouvez entrer dans le code source pendant le débogage grâce à la fonction Symbol Servers
https://devblogs.microsoft.com/visualstudio/debugging-external-sources-with-visual-studio/ - Vous pouvez configurer le décompilateur Jet Brains comme serveur de symboles
https://www.jetbrains.com/help/decompiler/Using_product_as_a_Symbol_Server.html - Il existe des plugins pour améliorer l'expérience d'attachement à un processus, comme Debug Attach Manager.
https://marketplace.visualstudio.com/items?itemName=ViktarKarpach.DebugAttachManager2022
- Vous pouvez entrer dans le code source pendant le débogage grâce à la fonction Symbol Servers
- Autres caractéristiques VS
- Possibilité d'utiliser des outils externes
https://docs.microsoft.com/en-us/previous-versions/visualstudio/visual-studio-2010/hy2sthf1(v=vs.100)?redirectedfrom=MSDN - Fonctionnalité Live Share pour le développement et le débogage coopératifs
https://visualstudio.microsoft.com/services/live-share/ - Prise en charge du système de contrôle de version Git. Faire des choses simples via l'interface utilisateur.
https://docs.microsoft.com/en-us/visualstudio/version-control/git-with-visual-studio?view=vs-2022
- Possibilité d'utiliser des outils externes
- VS est une plateforme pour les personnalisations. Il existe également une galerie d'extensions pratique - Marché VS. Je citerai ici quelques autres extensions de VS :
- Resharper, l'extension VS la plus populaire
https://www.jetbrains.com/resharper/ - Extensions utilisées par Sergey Nikomarav :
- Atomineer Documentation pour une génération intelligente de commentaires XML dans le code.
https://marketplace.visualstudio.com/items?itemName=Atomineer.AtomineerProDocumentationTrial2022
Alternative - GhostDoc
https://marketplace.visualstudio.com/items?itemName=sergeb.GhostDoc - Marge de correspondance pour afficher les occurrences de texte sélectionnées sur la barre de défilement
https://marketplace.visualstudio.com/items?itemName=VisualStudioPlatformTeam.MatchMargin2022 - Code Align pour aligner verticalement le code, utile lorsqu'il y a plusieurs instructions d'affectation dans le code
https://marketplace.visualstudio.com/items?itemName=cpmcgrath.Codealignment - Icônes de fichiers pour ajouter des icônes pour plus de formats de fichiers
https://marketplace.visualstudio.com/items?itemName=MadsKristensen.FileIcons - Ouvrir dans VS Code
https://marketplace.visualstudio.com/items?itemName=MadsKristensen.OpeninVisualStudioCode
Ouvrir dans Notepad++
https://marketplace.visualstudio.com/items?itemName=coding-with-calvin.OpenInNotepadPP2022 - ResX manager - pour travailler avec des fichiers de ressources .Net resx
https://marketplace.visualstudio.com/items?itemName=TomEnglert.ResXManager
- Atomineer Documentation pour une génération intelligente de commentaires XML dans le code.
- Resharper, l'extension VS la plus populaire
Autres outils de développement:
- SQL Server Management Studio - utilisé pour accéder aux bases de données MS SQL. J'utilise en fait deux versions de SSMS car la possibilité de déboguer les transactions SQL a été supprimée dans la dernière version de SSMS 18.
https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-ver15 - Éditeurs de code légers - VS Code(https://code.visualstudio.com/) et Notepad++(https://notepad-plus-plus.org/downloads/).
- Outil ngrok pour une configuration simple des tunnels réseau vers une instance locale de développeur. Utile pour travailler avec la version mobile d'Acumatica.
https://ngrok.com/ - Quelques outils pour dessiner des diagrammes:
- draw.io pour des diagrammes simples https://www.draw.io/
- plantuml.com pour des diagrammes plus avancés de type UML https://plantuml.com/
- Pixie - un petit sélecteur de couleurs pour choisir la couleur de n'importe quel pixel de votre écran http://www.nattyware.com/pixie.php
- Nimble text - un générateur de texte très flexible qui génère un texte à partir des données fournies et placées dans le modèle fourni. Il peut être utilisé pour la génération de commandes SQL (commandes d'insertion multiples) ou la génération d'API C# (par exemple si vous avez besoin d'ajouter un grand nombre de propriétés/champs qui ne diffèrent que par leur nom).
https://nimbletext.com/ - Postman pour déboguer les API REST.
https://www.postman.com/ - Telerik JustDecompile
https://www.telerik.com/products/decompiler.aspx - FORMAT JSON
https://jsonformatter.curiousconcept.com/# - S'attacher à toutes les choses
https://marketplace.visualstudio.com/items?itemName=thebread.AttachToAllTheThings