4 Stimmen

Angemessene Programmiersprachen für verschiedene Probleme

Gibt es eine allgemeine Liste dessen, wofür verschiedene Programmiersprachen verwendet werden, um verschiedene Szenarien zu lösen?

Zum Beispiel wird C auch in der eingebetteten Programmierung, Kernel-Programmierung und UI-Programmierung (GTK) verwendet.

C++ wird auch für die Programmierung von Desktop-/Serveranwendungen und auch für Geschäfts-/Unternehmensanwendungen verwendet, die auf dem Desktop/Server oder sogar im Web liegen, sowie zur Entwicklung von Computerspielen.

Java wird auch für praktisch alles mögliche verwendet, genauso wie .Net.

Skriptsprachen werden weit verbreitet für administrative Aufgaben und auch Web-Scripting verwendet.

Dies ist meine allgemeine Vorstellung von den meisten Sprachen (ohne funktionale Sprachen).

Kann jemand mich berichtigen und eine präzise Liste dessen veröffentlichen, welche Programmiersprachen verwendet werden können/ werden, um verschiedene und die allgemeinsten und häufigsten Probleme in verschiedenen Bereichen der IT-Branche zu lösen?

8voto

Kaleb Brasee Punkte 49955

Diese sind stereotypisiert und vereinfacht, aber:

  • Assembly und C: Embedded-Programmierung, Betriebssystem-Programmierung
  • C++: Betriebssystem-Programmierung, native GUI-Apps, Spiele
  • Objective-C: Mac OS-Programmierung, iPhone-Apps
  • Java und C#: Unternehmens-Webdienste und Web-Apps
  • PHP: Web-Apps
  • Ruby/Python/Perl: Skripting, Web-Apps
  • Fortran/Matlab: mathematische und wissenschaftliche Apps
  • Erlang: Apps für hohe Konnektivität in Netzwerken und Telekommunikation
  • Scala/F#/Clojure: Funktionale Programmiersprachen, erste Versuche für Geschäfts- und Web-Apps
  • COBOL: Geschäfts-Apps (ja, immer noch bis heute...)
  • Prolog: Künstliche Intelligenz
  • Lisp: Künstliche Intelligenz (und laut einigen Fans der Sprache auch alle oben genannten)

1voto

James Black Punkte 41034

Die beste Sprache hängt davon ab, wie Sie die Lösung modellieren, da einige Modelle einfach besser mit Objekten arbeiten, also wäre eine OOP am besten, einige wären am besten mit einer iterativen Lösung erledigt und so weiter.

Also wählen Sie entweder eine Sprache oder entwerfen Sie zuerst die Lösung, in einer sprachenunabhängigen Lösung, wie zum Beispiel die Verwendung einiger UML-Diagramme.

Beide Möglichkeiten werden einige Einschränkungen schaffen, und dann machen Sie den anderen Teil mit den Einschränkungen, die durch den ersten auferlegt werden.

Sie können im Grunde genommen jedes Problem mit jeder vollständigen Sprache lösen, aber einige Sprachen passen einfach besser, aber es hängt erneut von der Problemlösung und der Art und Weise ab, wie Sie die Lösung modellieren.

Jede Liste wird sehr subjektiv sein und auf einer sehr wichtigen Einschränkung basieren, Ihrer Vertrautheit mit dieser Sprache.

Aber Sie werden zum Beispiel LISP in Robotern finden, sowie im Skriptteil von Autocad.

Smalltalk wurde meines Wissens nach viel in der Finanzindustrie eingesetzt.

Wenn Geschwindigkeit und Größe wichtig sind, dann ist C oder C++ wahrscheinlich die beste Wahl, wie z.B. bei Embedded-Systemen wie DSPs.

PHP und Perl sowie Python haben Verwendung in der Skripting für Sysadmin-Aufgaben gefunden, aber diese werden auch in vielen anderen Bereichen verwendet.

Sie wählen ein Problem und mehrere Sprachen aus, und ich kann ein Design geben, das für dieses Problem funktioniert, aber die Lösungen werden sehr unterschiedlich sein.

Es wird nun interessanter, da wir Sprachen haben, die Paradigmen überschreiten, also können Java und AOP Probleme besser lösen als nur Java allein. F# und Scala sind Hybrid-Sprachen, daher sind sie sowohl funktional als auch OOP. JavaScript kann eine funktionale Sprache sein, auch wenn sie prototypisch von Design ist, aber Sie können vorgeben, OOP zu sein.

0voto

Tor Valamo Punkte 31987

Die meisten Sprachen können eine Vielzahl von Aufgaben abdecken, nur mit unterschiedlichen Fähigkeiten.

Es sind die Grenzfälle, die eine Programmiersprache definieren. Um herauszufinden, für welchen Zweck eine Sprache spezialisiert ist, müssten Sie die Website jeder einzelnen Sprache oder den Wikipedia-Artikel besuchen. Scheme zum Beispiel ist ein Dialekt von Lisp, der in der Mathematik verwendet wird, weil die Syntax (und Spracherweiterungen) auf eine solche Verwendung ausgerichtet sind. Das bedeutet nicht, dass es keine anderen Dinge tun kann, sondern dass es darin wirklich sehr gut ist.

0voto

GrayWizardx Punkte 17771

Dies ist eine ziemlich unantworbare Frage. Es gibt keine definitive Liste dessen, wofür eine Sprache gut ist und wofür nicht. Ein Teil davon liegt daran, dass der Sprachgebrauch neue Funktionen in der Sprache vorantreibt, und obwohl einige Sprachen Konstrukte und Syntaxe haben, die auf eine bestimmte "Perspektive" auf ein Problem ausgerichtet sind, hindert sie das nicht daran, andere Probleme zu lösen.

Was definiert außerdem eine Sprache? Du hast mehrere aufgelistet, aber was ist mit SQL, ActionScript, CSS, HTML usw.? Einige sind keine Sprachen, aber sie werden als solche verwendet und die Grenze verschwimmt ziemlich schnell.

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