Chacune des approches affiche des tares. Arduino est une plateforme. Le fait de fournir un environnement de développement dédié permet à ses créateurs de garder un certain contrôle de cette dernière. Opter pour un plugin Visual Studio Code la rendrait vulnérable à des changements radicaux opérés sur l’éditeur de Microsoft. De l’autre côté, le fait d'avoir les options spécifiques à la plateforme Arduino mêlées à tous les autres menus, options, etc. qui peuvent ne pas être pertinents, rend plus difficile de trouver les éléments vraiment utiles. Développer pour des microcontrôleurs est très différent et implique une configuration qui diffère de celle requise pour du développement d’applications web ou de bureau. Le fait d'avoir, sur l’EDI Arduino toutes les options les plus utiles mises en avant, plutôt que d'être relégué dans des sous-menus, rend l'utilisation beaucoup plus facile.
L’association Visual Studio Code – PlatformIO laisse néanmoins songeur quant à savoir si elle ne constitue pas une meilleure option que l’environnement de développement dédié à la plateforme Arduino. PlatformIO est un écosystème de développement pour les microcontrôleurs. Il est à code source ouvert, multiplateforme et gratuit. PlatformIO est disponible comme additif pour Visual Studio Code.
La version 2.0 bêta de l’EDI Arduino vient avec des nouveautés qui la démarquent de celles qui la précèdent. L’éditeur offre désormais des fonctionnalités avancées, une meilleure expérience utilisateur et un temps de compilation plus rapide. Primo : en cours de frappe, l’éditeur suggère (enfin) l’autocomplétion des variables et des fonctions selon les bibliothèques incluses par l’utilisateur.
Un clic droit sur une variable ou une fonction provoque l’apparition d’un menu contextuel qui fournit des raccourcis de navigation pour passer à la ligne (et le fichier) où ils sont déclarés.
De plus, un débogueur en direct permet l’exécution de code de manière interactive sur une carte de développement et l’inspection de l’exécution sans écrire des dizaines de Serial.println(). Il suffit d’étendre le panneau de débogage, définir des points d’arrêt où l’on souhaite mettre en pause l’exécution et inspecter le contenu des variables. Il est même possible de changer le contenu des variables à la volée et reprendre l’exécution !
Le débogueur prend en charge les cartes basées sur les plateformes SAMD et Mbed (famille MKR, Nano 33 IoT, Nano 33 BLE, Portera, Zero). La connexion d’une sonde de débogage au port JTAG est nécessaire. La nouvelle version de l’EDI est basée sur le framework Eclipse Theia, qui est un projet open source basé sur la même architecture que Visual Studio Code. Le front-end est écrit en TypeScript, tandis que la plupart du backend est écrit en Golang.
Source : Arduino blog
Et vous ?
EDI Arduino dédié ou plugin Arduino pour Visual Studio Code : de quel bord êtes-vous ?
Que pensez-vous de l’association Visual Studio Code – PlatformIO ? Comment la comparez-vous à l’EDI Arduino ?