Frage

[Die nur ähnliche Frage ich antwortet schon vor langer Zeit finden und enthält zu meist Ironpython eine Referenz. Ich möchte andere Optionen prüfen, wie gut]

Wir haben eine komplexe Datenanalyse-Anwendung in C # geschrieben. Die Anwendung sollte die Nutzer mit einem hoch entwickelten Mittel ihrer Datenanalyseaufgaben anpassen. Derzeit verwenden wir eine Mischung von Konfigurationsdateien und Excel-Tabellen, dies zu spezifizieren, aber es wird unhandlich, so suchen wir eine Scripting-Sprache einbetten.

Was ist die beste einfache Skriptsprache für C # /. NET Einbettung? Ist es möglich, einbetten irgendwie VBA ähnlich zu Excel / Word-? Oder ist vielleicht JavaScript / Lua verwendet werden?

Unnötig zu sagen, sollte es leicht sein, ein API und Objekte aus der Hauptanwendung in die eingebetteten Skripte zu belichten.

War es hilfreich?

Lösung

Ich kenne die andere Frage Referenzen Ironpython, aber ich fühle mich immer noch wie es hier sein sollte, weil ich denke, es ist eine der besten Optionen.

Eine weitere große Möglichkeit wäre IronRuby . Der wesentliche Unterschied sehe ich wäre, wenn Ihre Entwickler / Anwender mit jeder Erfahrung entweder Python oder Ruby, die übertragbar sein könnten.

Wirklich, am Ende der beste Option wird eine Sprache sein, die am leichtesten zu werden von den Benutzern angepasst ist. Es sei denn, sie akzeptieren und sind in der Lage, produktiver zu sein, als sie mit der alten Methode waren, ist es nicht der Mühe wert.

Andere Tipps

Boo vielleicht?

Lua ist großartig! Lua spielt wirklich schön mit .NET. Ich einen Blog-Post über schrieb, wie Lua und C #, um loszulegen Einbettung, könnte sich lohnen zu überprüfen:

http://blog.apterainc.com/software/embedding-lua -and-c /

Ich würde Blick in die XAML nur Windows Workflow. Sie können die Designer rehosten und kundenspezifische Tätigkeiten, die Länge gezogen und verwendet werden können, um die Daten in irgendeiner Weise sie wollen zu manipulieren. Sehr visuell. Ich verwende diese zur Zeit in einem meiner Anwendungen und die Benutzer scheinen es zu lieben. Zwar gibt es eine kleine Lernkurve ist, ist es viel weniger als eine typische Skriptsprache, und die Leute scheinen es in die Lage sein ziemlich schnell zu erfassen, vor allem diejenigen mit Erfahrung im Umgang mit Flussdiagrammen und Visio.

Ich weiß, dass sie eine Scripting-Technologie gefragt, aber der zugrunde liegende Bedarf Code Steuerung für Nicht-Programmierer. Wir verwenden ILOG Rules for .NET diesem Bedarf gerecht zu werden.

Umm, wie etwa C #? Es gibt keinen Grund, warum Sie nicht den Benutzer Schreib C # lassen können, dann ist es sicher laden in einer anderen AppDomain mit all den richtigen Einschränkungen und Schutzmaßnahmen.

Ich denke, mit C # über CodeDom ist sehr leistungsfähige Lösung

Boo und Ironpython sind erwähnt worden, aber nicht vergessen Ironscheme , F # , oder eine der andere Sprachen , die auf die CIL virtuellen Maschine portiert wurden und Runtime-basierte Zusammenstellung / Interpretation haben.

IronRuby sucht jeden Tag besser.

Ich würde auch für die Verwendung von C # in einer Abstimmung auf Ihre Erweiterungen zu schreiben. Sofern Sie einen zwingenden Grund, wie eine bestehende Nutzerbasis bereits vertraut mit Python haben, Rubin oder boo, in einer anderen Sprache zu bringen nur erhöht die Komplexität und Schulungskosten.

scroll top