Outil de développement de logiciels
Le générateur d'interfaces et de wrappers simplifiés, ou SWIG, traduit les fichiers C/C++ en divers langages de programmation de haut niveau. Son utilisation consiste à créer des interfaces et des environnements utilisateur et à tester des prototypes de programmes.
SWIG fonctionne avec les langages de programmation scriptés et non scriptés. Il générera automatiquement des wrappers pour des programmes dans divers formats, notamment Java et Javascript, Ruby, Python et Octave.
Compatibilité complète
Cependant, il ne couvre pas tous les langages, notamment ceux de programmation orientée objet. Vous devrez utiliser Valabind pour convertir les abstractions .vapi et .vala en C++.
Fonctions
SWIG est libre d'utilisation et crée un code source qui sert de connexion entre le langage cible et le C. Le code est toujours une bibliothèque partagée, mais il se présente sous deux formes, selon le langage en question.
La différence est qu'une bibliothèque peut se faire lier à un module externe, tandis que l'autre se lie directement à d'autres programmes dans le langage cible.
Ce programme vous donne le contrôle sur la plupart des aspects du processus de génération du wrapper. Certaines des fonctionnalités les plus importantes que vous pouvez personnaliser dans le programme comprennent la gestion des exceptions, la résolution des ambiguïtés et la gestion de la mémoire. Vous avez également accès à des options de diagnostic étendues.
L'utilisation de SWIG facilite la personnalisation des applications et le test de divers scripts que vous inclurez dans le programme fini. Vous pouvez créer du code pour des projets commerciaux et non commerciaux sous la licence Gnu.
Entrée et sortie
Après avoir lancé le programme, il attendra en entrée des fichiers contenant des déclarations ANSI C/C++ et des directives SWIG. Vous reconnaîtrez ces fichiers par leurs suffixes .i ou .swg.
SWIG produit un fichier C/C++ contenant tout le code wrapper nécessaire à la construction d'un module d'extension pour votre langue cible. Selon celui que vous choisissez, il pourrait générer des données supplémentaires.
Vous n'aurez pas besoin d'éditer le fichier de sortie, mais seulement de le compiler et de l'ajouter à votre bibliothèque partagée C/C++.
Utilisable pour les professionnels
SWIG facilite la personnalisation des programmes, en automatisant une grande partie du processus. Même si le produit final ne contient pas de moteur de script, il est pratique pour écrire des scripts de test. Il nécessitera une certaine connaissance du domaine, mais pour les programmeurs, cet outil est inestimable.