Ich habe gehört, eine Skriptsprache würde ca. die 20-Fache Zeit eines "nativen" programms benötigen.
Das kommt auf die Scriprsprache an.
Könnte schon stimmen.
In C# ist also eine DLL leichter / schneller?
In C# kannst du zb. zur Laufzeit(!) C# Scriptquellcode zu Bytecode kompilieren, der genauso schnell wie der Rest.
Dlls kannst du super einfach nachladen und es ist auch null Problem, Daten, Klassen, Vererbungen oder sonstwas auszutauschen.
In C# ist es ein fester Teil des Frameworks. Auch gibts wenn du es über ein Interface machst ja sogar Intellisense.
In C++ musst du dir mit der WindowsAPI Zugriff verschaffen und es kann Typunstimmigkeiten, Nullpointermethoden etc. geben. (In C++ hab ich es aber noch nie susprobiert.)
eigentlich wird doch C++ und C# in Bytecode umgewandelt, dürfte dann doch genau so schnell sein
Es ist ungefähr gleich schnell. (
Optimierter C++ Code kann aber deutlich schneller sein).
Aber der Unterschied liegt bei der Kompilierung.
C++ wird in Maschinencode kompiliert. Dadurch gehen viele Informationen verloren.
C# wird in Zwischencode kompiliert. Erst direkt bei der Ausführung erfolgt die Umwandlung in Maschinencode.
Den Begriff Bytecode finde ich übrigens sehr ungünstig. Bytecode ist beides.