5. Programmation, concepts généraux
Limitation des librairies Yoctopuce
Les librairies Natives et DLL ont une limitation technique. Sur une même machine, vous ne pouvez
pas faire tourner en même temps plusieurs applications qui accèdent nativement aux modules
Yoctopuce. Si vous désirez contrôler plusieurs projets depuis la même machine, codez vos
applications pour qu'elle accèdent aux modules via un VirtualHub plutôt que nativement. Le
changement de mode de fonctionnement est trivial: il suffit de changer un paramètre dans l'appel à
.
yRegisterHub()
5.6. Interface haut niveau ou bas niveau ?
Selon vos besoins et vos préférences, il est possible d'utiliser la librairie Yoctopuce avec des
fonctions de haut niveau ou des fonctions de bas niveau.
Par fonctions de haut niveau, on entend des fonctions et des objets différenciés par module, dont les
méthodes fournissent explicitement accès aux différentes fonctions et attributs.
Par fonctions de bas niveau, on entend on contraire une fonction très générique qui permet un accès
au module indépendant de son type, mais qui n'offre aucune abstraction pour accéder aux
différentes fonctions et attributs.
Le principal avantage à utiliser les fonctions de haut niveau est qu'elles permettent d'écrire en
général du code plus simple, moins sujet aux erreurs
code est de devoir lire la documentation de ces fonctions et classes pour les utiliser. C'est
l'information que vous trouverez dans les chapitres suivants.
L'avantage des fonctions de bas niveau est qu'elles permettent aux développeurs expérimentés
d'obtenir le résultat désiré en dépendant le moins possible d'une librairie tierce. Dans le cas des
modules Yoctopuce, qui implémentent une interface de type REST, il est même possible de se
passer entièrement de librairie pour certains types de projet, et de communiquer directement par
HTTP avec l'API REST. Vous trouverez plus de détail sur les fonctions de bas niveau et leur
utilisation dans une documentation séparée, prochainement disponible sur le site de Yoctopuce.
1
Un autre avantage des fonctions de haut-niveau de la librairie Yoctopuce est qu'elles permettent d'écrire du code
(quasiment) portable d'un langage à un autre, car la librairie Yoctopuce utilise autant que possible les mêmes noms de
fonctions, classes et constantes pour tous les langages.
28
Language
Ligne de commande
Python
C++
C# .Net
C# UWP
LabVIEW
Java
Java pour Android
TypeScript
JavaScript / ECMAScript
PHP
VisualBasic .Net
Delphi
Objective-C
Méthode de support pour les différents langages.
Natif Natif avec .DLL/.so VirtualHub
✔
-
✔
-
✔
✔
✔
-
✔
-
✔
-
✔
-
✔
-
-
-
-
-
-
-
✔
-
✔
-
✔
-
1
. Le prix à payer pour cette simplification du
✔
✔
✔
✔
✔
✔
✔
✔
✔
✔
✔
✔
✔
✔
www.yoctopuce.com