10 Stimmen

Polyglotte Programmierung: Ist die Erstellung von Anwendungen in mehreren Sprachen eine gute Praxis?

Ich erwäge den Aufbau einer Anwendung, die eine Mischung aus einer dynamischen Sprache (Python oder Ruby) und einer kompilierten Sprache ist, und brauche etwas Hilfe, um mich davon zu überzeugen, dass dies eine gute Idee ist.

Mein Gedanke ist, dass ich eine dynamische Sprache verwenden kann, um schnell eine Menge Code zu schreiben, und dann auf eine kompilierte Sprache wie C/C++ zurückgreifen kann, um leistungsrelevanten Code zu implementieren.

Ich sehe viele Vorteile in diesem Ansatz:

  1. Gesteigerte Produktivität durch primäres Programmieren in der dynamischen Sprache
  2. Verfügbarkeit von Bibliotheken in beiden Sprachen

Aber es gibt auch einige Nachteile:

  1. Aufrechterhaltung einer Brücke zwischen den beiden Sprachen
  2. Abhängigkeit von zwei Sprachen und Sprach-/Bibliotheksfehlern anstelle von einem

Was sind die weiteren Vor- und Nachteile dieses Ansatzes? Kennt jemand Ressourcen und/oder bewährte Verfahren zu diesem Thema?

0voto

slim Punkte 37932

Das ist durchaus üblich, aber vergewissern Sie sich, dass Sie wissen, warum Sie es so gestalten, wie Sie es tun.

Ein Beispiel ist die Programmierung von Spielen. In vielen Spielen ist die leistungsrelevante Spiel-Engine in C geschrieben, während Dinge wie das Level-Scripting in Python, Scheme, einer selbstentwickelten Sprache oder was auch immer erledigt werden.

Das bedeutet, dass die Leistungsexperten in einer Sprache arbeiten, die sie mögen und die ihnen die nötige Kontrolle auf niedriger Ebene gibt, während die Entwickler in einer höheren Sprache arbeiten können, in der sie sich nicht um die Speicherverwaltung usw. kümmern müssen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X