Software-Entwicklungswerkzeug
Screenshots
Simplified Wrapper and Interface Generator, kurz SWIG, übersetzt C/C++-Dateien in verschiedene höhere Programmiersprachen. Er dient dazu, Benutzeroberflächen und Umgebungen zu erstellen und Programmprototypen zu testen.
Umfassende Kompatibilität
SWIG arbeitet mit geskripteten und nicht geskripteten Programmiersprachen. Es erzeugt automatisch Wrapper für Programme in verschiedenen Formaten, einschließlich Java und Javascript, Ruby, Python und Octave.
Es deckt jedoch nicht alle Sprachen ab, insbesondere nicht die für objektorientierte Programmierung. Sie müssen Valabind verwenden, um .vapi- und .vala-Abstraktionen in C++ zu konvertieren.
Funktionen
SWIG ist kostenlos und erzeugt einen Quellcode, der als Verbindung zwischen der Zielsprache und C dient. Bei dem Code handelt es sich immer um eine Shared Library, die jedoch je nach Sprache in zwei Formen vorliegt.
Der Unterschied besteht darin, dass die eine Bibliothek mit einem externen Modul verknüpft werden kann, während die andere direkt mit anderen Programmen in der Zielsprache verknüpft wird.
Dieses Programm gibt Ihnen die Kontrolle über die meisten Aspekte des Wrapper-Erzeugungsprozesses. Zu den wichtigsten Funktionen, die Sie im Programm anpassen können, gehören die Ausnahmebehandlung, die Auflösung von Mehrdeutigkeiten und die Speicherverwaltung. Außerdem erhalten Sie Zugang zu umfangreichen Diagnoseoptionen.
Die Verwendung von SWIG erleichtert die Anpassung von Anwendungen und das Testen verschiedener Skripte, die Sie in das fertige Programm einfügen werden. Sie können Code für kommerzielle und nicht-kommerzielle Projekte unter der Gnu-Lizenz erstellen.
Eingabe und Ausgabe
Nach dem Start des Programms erwartet es Dateien mit ANSI C/C++ Deklarationen und SWIG-Direktiven als Eingabe. Sie erkennen diese Dateien an den Suffixen .i oder .swg.
SWIG gibt eine C/C++-Datei aus, die den gesamten Wrapper-Code enthält, der zur Erstellung eines Erweiterungsmoduls für Ihre Zielsprache erforderlich ist. Je nachdem, welche Sprache Sie wählen, können zusätzliche Daten generiert werden.
Sie müssen die Ausgabedatei nicht bearbeiten, sondern nur kompilieren und zu Ihrer C/C++ Shared Library hinzufügen.
Nützlich für Profis
SWIG erleichtert die Anpassung von Programmen und automatisiert einen Großteil des Prozesses. Selbst wenn das Endprodukt keine Skripting-Engine enthält, ist es praktisch für das Schreiben von Testskripten. Es erfordert zwar einige Kenntnisse auf diesem Gebiet, aber für Programmierer ist dieses Werkzeug von unschätzbarem Wert.