Frage

Inspiriert von diese Frage .

ich häufig sehe Menschen, die sie auf JavaScript als Low-Level-Sprache, vor allem bei den Nutzern von GWT und ähnlichen Toolkits.

Meine Frage ist: Warum? Wenn Sie eine dieser Toolkits verwenden, werden Sie sich von einigen der Funktionen Schneiden, die JavaScript so schön zu programmieren machen: Funktionen als Objekte, dynamische Typisierung usw. Vor allem, wenn mit einer der beliebtesten Frameworks kombiniert wie jQuery oder Prototype .

Es ist wie C ++ niedriges Niveau aufrufe, da die Standard-Bibliothek kleiner als der Java-API ist. Ich bin kein C ++ Programmierer, aber ich hoch Zweifel jeder C ++ Programmierer schreibt ihre eigene GUI und Netzwerk-Bibliotheken.

War es hilfreich?

Lösung

Es ist eine High-Level-Sprache, aufgrund seiner Flexibilität (Funktionen als Objekte, etc.)

Aber alles, was gemeinhin einkompilierte zu ist, kann eine Low-Level-Sprache einfach betrachtet werden, da es sich um ein Ziel für die Zusammenstellung ist, und

Andere Tipps

eine Frage beantworten, die sagt: „Warum ist etwas manchmal X genannt ...“ mit „es ist nicht X“ ist völlig Seite der Frage tritt, ist es nicht?

Für viele Menschen, „low-level“ und „High-Level“ sind flexibel, abstrakte Ideen, die anders anwenden, wenn sie mit verschiedenen Systemen arbeiten. Für die Menschen, die auf der Vergangenheit nicht alle aufgehängt sind (es gibt nicht so etwas wie eine moderne Low-Level-Sprache für einige Leute) die hohe Heit oder Low-ness einer Sprache allgemein, wie nah an die Zielmaschine beziehen wird es ist. Dazu gehören virtuelle Maschinen, von denen ein Browser jetzt Tage. Sorry an alle Jungen, die für asm auf Basis Hardware-Kiefer.

Wenn Sie im Browser als virtuelle Maschine aussehen, ist Javascript so nah an der (falschen) Hardware, wie Sie bekommen. Das ist der Standpunkt, dass viele, die JavaScript-Aufruf „low-level“ haben. Ich denke, es ist eine sinnlose Unterscheidung zu machen und die Menschen nicht aufgehängt bekommen sollte, was niedrig ist und was hoch ist.

„Low“ hier die gleiche Bedeutung hat wie in den Sätzen „Die Zahl der Opfer in dem ersten Weltkrieg gelitten war niedrig“ und „Fettreduzierte Eis ist kalorienarm.“ Es macht Sinn, wenn es ein offensichtlicher Vergleichspunkt, aber aus dem Zusammenhang gerissen, es ist einfach absurd.

Eine Menge Leute sagen, dass dies, weil die Objekte und Strukturen in JavaScript bereitgestellt etwa so einfach wie Sie bekommen können. Um jede Art von realer Funktionalität zu entwickeln, müssen Sie eine externe Bibliothek verwenden. Low-Level ist ein schlechter Weg, dies zu setzen, weil es schon eine Bedeutung in der Informatik hat. Eine bessere Möglichkeit, zu sagen, dass es sein kann, dass es ohne integrierte Bibliotheken.

Man vergleiche dies mit Java, wo die eigentliche Sprache wirklich nicht viel tut. Der Versuch, ein Array ohne Arraylist zu machen, oder das Dateisystem zugreifen, ohne dass die IO-Bibliotheken. Die meisten Sprachen sind mehr als nur die Grundlagen, sie mit dieser zusätzlichen Funktionalität kommen.

Mit JavaScript, die einzige wirkliche Macht, die wir bekommen kommt von den APIs, die von den Browsern eingeführt werden und sind nicht Teil der Sprache. Dinge wie DOM-Manipulation und Ajax werden vom Browser geliefert.

Es kann besser sein, dies alles zu fassen, indem er sagte, dass mit einer Sprache wie Java, können Sie Bibliotheken von Drittanbietern einig ernsthafte Arbeit tun, ohne zum Download zu beginnen, aber mit JavaScript, müssen Sie entweder eine Bibliothek herunterladen oder schreib eine Bibliothek der eigenen.

Ich sehe Javascript nicht als Low-Level-Sprache. Viele Funktionalität und User Experience-Booster sind vorgesehen. Vielleicht einfach andere können es als solche betrachten, weil der Benutzer sie sich drehen kann in den Browser-Optionen aus, aber es ist eine äusserst robuste Sprache, die praktisch das Web läuft auf praktisch alle Arten von Browsern ...

Es ist nicht, kann es als Low-Level sein wie bei der normalen Browser-Programmierung zu bekommen, aber es ist auf einer Stufe mit funktionalen Sprachen wie Scheme oder Python.

Ich denke, die große fehlt von Javascript sind fehlende Namensräume oder Verpackung und keine Themen

Es ist Low-Level im Vergleich zum GWT und ähnlichen Toolkits, aber es ist keine Low-Level-Sprache in dem größeren Plan der Dinge. Die Features, die es bietet, sind auf sehr hohem Niveau: Verschlüsse, dynamische Typisierung und prototypische Vererbung sind nur einige Beispiele für seine High-Level-Funktionen

.

Es ist als durch eine Reihe von Menschen niedriges Niveau sein, die Java lieber schreiben Javascript erzeugt dann schreiben Sie Javascript (dh sie nicht mögen es ziemlich oder unfair). Viele Leute beschweren sich in diesen Tagen über java aber trotz des Mangels an statischem Typ der meisten Menschen wäre einfacher wahrscheinlich betrachtet Ruby und Python Überprüfung in den meisten Fällen (Java ist ein ziemlich einfaches statisches spricht, die sind viel schwieriger zu entwerfen und ohne großen Einbau zu schreiben -in Feature-Sets dann eine einfache dynamische Sprache).

Nur wenige Menschen würden Python nennen oder niedrigen Niveau Rubin im Vergleich zu Java und wenn die Menschen eine Python oder Ruby vm seine schwer vorstellbar, zum Ziel gezwungen waren, dass ein Java zu Python / Ruby-Compiler würde als gwt wie populär geworden.

In Javascript Schließen hat ein Imageproblem (die Leute denken manchmal von Sprachen wie immer schwieriger, da sie mehr Low-Pegel und umgekehrt werden).

scroll top