Deno: Laufzeitumgebung für JavaScript und TypeScript

Nicht

Deno: Laufzeitumgebung für JavaScript und TypeScript

Deno ist eine radikal einfache Laufzeitumgebung für JavaScript und TypeScript. Es bietet Ihren Benutzern eine neue und einfache Möglichkeit , JavaScript und TypeScript auf der Serverseite zu schreiben . Die Plattform unternimmt ihre ersten Schritte, zeigt jedoch bereits in diesem frühen Stadium Anzeichen dafür, dass sie möglicherweise die Umgebung von Node.j ersetzen könnte . Dafür muss sich aber auch die JavaScript-Entwickler-Community auf ihre Verwendung einstellen.

Einige Produkte sind trotz ihrer Mängel in der Community sehr beliebt. Die JavaScript-Skriptsprache ist ein gutes Beispiel dafür. Trotz seiner offensichtlichen Mängel ist es eine der am häufigsten verwendeten Sprachen der Welt und verfügt über zahlreiche Frameworks und Bibliotheken. Node.js, der nahe Vorgänger von Deno, ist auch in der Community sehr beliebt. Mit seinem neuen Projekt Deno möchte der verantwortliche Entwickler Ryan Dahl die Erfahrungen mit Node.js nutzen und eine neue, sicherere und bessere Plattform anbieten. In diesem Artikel sprechen wir darüber, ob und gegebenenfalls wie.

Index
  1. Was ist Deno?
  2. Deno: Out-of-the-Box-Funktionen
  3. Wie funktioniert Deno?
  4. Deno: Zusammenfassung seiner Vor- und Nachteile

Was ist Deno?

Deno macht immer noch seine ersten Schritte. Schnittstellen-, Architektur- und Designentscheidungen sind noch nicht vollständig definiert und werden sich sicherlich während der Entwicklung ändern. Daher ist es in mancher Hinsicht schwierig, es direkt mit Node.js zu vergleichen, das oben erwähnt wurde. Der Entwickler beider Plattformen hat einen groben Vergleich angestellt im folgenden YouTube-Video:

Um Ihre Privatsphäre zu schützen, wird das Video nach dem Klicken hochgeladen.

Deno und Node sind sich nicht nur im Namen ähnlich. Ihr Grundkonzept ist auch dasselbe: Sie bieten eine Plattform für die Ausführung von JavaScript außerhalb des Browsers und die Möglichkeit, auf der Serverseite in JavaScript (oder TypeScript) zu schreiben. Dafür verwenden sie verschiedene bereits verfügbare Projekte, es handelt sich also nicht um ihre eigene Implementierung. Für die Ausführung von JavaScript in verschiedenen Umgebungen wird beispielsweise standardmäßig die Google V8-Engine verwendet , die bereits in den Browsern Chrome und Edge integriert ist. Auf der Serverseite verwendet Deno also V8, genau wie Node.js.

See also  GitLab vs. GitHub: Vergleich beider Versionskontrollsysteme

Die Ähnlichkeiten gehen so weit. Im Gegensatz zu Node, das in C ++ geschrieben ist, verwendet Deno die innovative und sicherere Programmiersprache Rust von Mozilla Research. Dadurch kann Deno statischen Code direkt schreiben , was so ziemlich der ultimative Vorteil ist.

Deno: Out-of-the-Box-Funktionen

Deno verfügt über zwei Funktionen, die den Workflow erheblich vereinfachen: Erstens verwendet diese Laufzeitumgebung ein einfaches Modulsystem, bei dem die URLs und Module eins zu eins korrespondieren. Auf der anderen Seite ermöglicht Deno, dass TypeScript-Code frei ausgeführt wird .

In der Regel bedeutet mehr Freiheit für Entwickler ein höheres Risiko in der Anwendung. Deno ist jedoch in Bezug auf die Sicherheit sehr weit fortgeschritten. In der Regel werden die Skripts in einer vom Betriebssystem getrennten Sandbox-Partition ausgeführt. Entwickler können nur eingeschränkt zusätzliche Funktionen hinzufügen.

Im Vergleich dazu ist Deno der Benutzererfahrung im Internet viel näher : Der Zugriff auf das System ist standardmäßig blockiert, und der Benutzer muss der Anwendung die Berechtigung zum Zugriff auf das System erteilen. Andernfalls bleiben beide isoliert. Dies ist ähnlich, wenn ein Browser während einer Videokonferenz den Zugriff auf die Webcam und das Mikrofon anfordert. Auf Ressourcen kann nur mit Zustimmung des Benutzers zugegriffen werden . Fazit: Deno verhält sich wie ein Skriptbrowser.

Deno schließt sich auch dem größten Trend in der JavaScript-Entwicklung an: native TypeScript-Unterstützung .

Hinweis

TypeScript unterscheidet sich von der JavaScript-Programmiersprache hauptsächlich im Bereich der Eingabe . JavaScript lässt (zu viel) Freiheit bei der Eingabe von Variablen und Funktionen. Beim Programmieren erwarten Sie keine Eingabeaufforderungen zum Typ der Variablen oder Funktion, sodass der Code schwieriger zu verstehen und zu lesen ist. In TypeScript wird einem Typ standardmäßig eine Variable zugewiesen . Daher werden die Funktion und der Ausgang im Voraus zugewiesen. Wenn die Zuordnung falsch ist, werden Sie sofort benachrichtigt.

See also  So löschen Sie Metadaten aus Fotos

Um den generierten TypeScript-Code in Javascript zu konvertieren und auszuführen, muss ein zusätzlicher Schritt mit einem Compiler ausgeführt werden. Der Datenaustausch erfolgt immer in Paketen . Auf diese Weise benötigt Deno kein externes Paket wie ts-node, das sich beispielsweise um den Erstellungsprozess in Node.js kümmert.

Deno hat auch einige Überraschungen im Paketmanagement: Einer der Erfolgsfaktoren von Node ist der npm-Paketmanager. Obwohl npm Teil der GitHub-Community ist und daher keine Komponente von Node ist, wird die Zusammenführung als inoffizieller Standard angesehen. Deno hingegen benötigt keinen externen Paketmanager oder vielmehr einen eigenen Paketmanager . Das modulare System ermöglicht es, die Pakete über Pfade oder URLs des Dateisystems aufzulösen und die erforderlichen Ressourcen direkt herunterzuladen.

Wie funktioniert Deno?

Deno macht seine ersten Schritte. Es ist sehr sicherheitsorientiert und grundlegende architektonische Fragen. Dies beginnt mit der Installation, die nicht mit dem Komfort eines Installationsprogramms erfolgt, sondern nur über GitHub- oder Shell-Skripte oder den Paketmanager des Betriebssystems. Verwenden Sie den Befehl deno – version der alten Schule in der Befehlszeile , um zu überprüfen, ob die Installation erfolgreich war . Dies gibt Ihnen einen vollständigen Überblick über die installierte Version von Deno sowie die Versionen V8 und TypeScript. Wenn Sie Deno nicht auf Ihrem System installieren möchten, können Sie es auch konfigurieren und in einem Docker-Container ausführen.

Sobald Deno installiert ist, kann es auf zwei Arten ausgeführt werden. Die Laufzeitumgebung kann interaktiv als Shell oder mit einer Datei als Eingabe verwendet werden . Ersteres ist nützlich für kleinere Anwendungen und zum Experimentieren mit der Node.js-Alternative. Diese letzte Verwendung ist die häufigste von Deno. In diesem Fall wird der Name einer Datei an die Plattform übergeben , und Sie können mit Deno arbeiten.

See also  Rückruf: Was sind Rückruffunktionen?

Die bekannten JavaScript-Schlüsselwörter wie Import, Export, Versprechen usw. Sie sind direkt bei Deno erhältlich und müssen nicht vorher importiert werden. Zusätzlich zu den Standards bietet die Plattform ein globales Objekt , das die Entwickler nicht benannt haben. Daher wird es einfach Deno genannt. Das Deno-Objekt ist die Grundlage jeder Anwendung . Es fungiert als Schnittstelle zum System: Entwickler können beispielsweise auf das Dateisystem zugreifen und die Sandbox verlassen . Wie bereits erwähnt, müssen diese Ausnahmen aktiv bestätigt werden, um versehentliche Systemangriffe einer Anwendung auszuschließen.

Deno bietet alle Standardmodule an; Die Community bietet jedoch bereits andere experimentelle Add-Ons an, die den Funktionsumfang erweitern.

Deno: Zusammenfassung seiner Vor- und Nachteile

Wird Deno jemals Node übertreffen ? Davon ist Entwickler Ryan Dahl überzeugt. Um eine moderne, stabile und sichere Plattform für serverseitiges JavaScript und TypeScript zu erstellen, müssen Sie zunächst ältere Probleme, Fehler und Kompromisse beheben. Wenn überhaupt, hat es das Potenzial, seinen Vorgänger zu übertreffen, insbesondere dank des Schrittes, Mozillas Programmiersprache Rust im Kern einzusetzen und ein zentrales Autorisierungssystem zu schaffen . Dies ermöglicht nicht nur eine intuitive Verwendung, sondern verhindert auch das unerwünschte Austreten einer Anwendung aus der Sandbox .

Der sehr vereinfachte Workflow hat (noch) einige Nachteile: Deno ist nicht immer mit vorhandenen Ökosystemen kompatibel. Beispielsweise können Knotenmodule nicht nur in Deno arbeiten oder umgekehrt. Wenn die Plattform jedoch weiterhin getestet wird, werden auf lange Sicht wahrscheinlich keine Probleme mehr auftreten. Zum Beispiel Deno hat bereits eine erfordern Funktion kompatibel mit Knoten.

Zusammenfassend

Deno befindet sich noch im Entwurfsstatus . Die ersten Lösungen für einige der größten Schwächen von Node.j sind jedoch vielversprechend.

administrator

Leave a Reply

Your email address will not be published. Required fields are marked *