2017-01-13 4 views
0

Ich habe eine Bibliothek von "Operatoren" in C# codiert.Auf der Suche nach einer Möglichkeit, Java- und C# -Klassen aus dem gemeinsamen Quellcode zu generieren

Jeder Operator implementiert dieselbe Schnittstelle und kann ein Array von Primitiven (int, double, string, int [], double [], string []) verarbeiten und gibt dann ein primitives Element zurück. Der Code in Operatoren besteht aus grundlegenden Sprachfunktionen wie mathematische Grundoperationen, Stringoperationen, Schleifen, if.

Jetzt möchte ich in der Lage sein, diese Logik sowohl in Java und C# und ich möchte weder JNI-Wrapper verwenden noch Mono verwenden.

Ich bin auf der Suche nach einer Möglichkeit, Java-Klassen und C# Einsen aus einer einzigen Quellcode/Konfiguration zu generieren. Eine offensichtliche Lösung besteht darin, meine eigene Grammatik zu definieren und dann einen Parser und Klassengenerator zu programmieren, aber ich frage mich, ob es dafür einen sprachneutralen, plattformneutralen Mechanismus gibt?

Antwort

2

Das beste, was ich mir vorstellen kann ist, einen Transpiler wie http://www.cs2j.com/ zu verwenden. Es hängt viel davon ab, mit was Sie arbeiten. Wenn Sie beispielsweise eine API entwickeln, können Sie ein API-Framework wie Swagger verwenden, das YAML oder JSON verwendet (und der Code-Editor selbst hat die Option, in andere Client/Server-Sprachen zu konvertieren).

Verwandte Themen