Ich habe mehrere Threads über einige der Unterschiede zwischen Cython und Swig gelesen und habe beide Techniken implementiert, aber ich bin mir immer noch nicht sicher, welche Route die beste Route ist. Im Grunde habe ich an einer C ++ - Bibliothek gearbeitet und möchte diese Funktionen Python zur Verfügung stellen. Cython schien ziemlich kompliziert zu sein und verlangte von mir, mehrere .pyx-Dateien für jede C ++ - Klasse zu schreiben, die ich veröffentlichen musste, während SWIG einfach die Arbeit für mich erledigt hat. Ich habe bisher keine Erfahrung mit einer dieser Methoden, aber SWIG scheint ein klarer Gewinner für das Einbinden meines C ++ - Codes zu sein. Also, was ist die Kontroverse? Warum sollte ich Stunden damit verbringen, .pyx-Dateien in Cython zu schreiben, um mein C ++ zu umschreiben, wenn ich einfach eine einfache .i-Datei in SWIG schreiben könnte? Außerdem verwende ich CMake als mein Build-Tool und es war viel einfacher, SWIG mit CMAKE als mit Cython zu bauen. Ich denke, dass ich etwas vermissen muss, denn selbst große Projekte wie OpenCV benutzen SWIG nicht und bevor ich mein Projekt SWIG widme, möchte ich herausfinden, warum ich lieber Cython oder gar nichts verwende. Hier ist eine Zusammenfassung:
Mein Projekt: C ++ Quellcode ist primär
Jeder Rat wird sehr geschätzt. Außerdem war ich neugierig auf xdress.org - scheint aber, dass das Projekt gestorben ist.