In diesem Artikel sind die Notizen zusammengestellt, die ich gemacht habe, als ich Node.js zum ersten Mal gelernt habe, um Lesern, die sich für die Sprache Node.js interessieren, eine prägnante Einführung in das zu geben, was Node.js ist und wie man diese Sprache lernt.
Node.js ist eine JavaScript-Laufzeitumgebung basierend auf der Chrome V8-Engine, die 2009 von Ryan Dahl entwickelt wurdeum das Problem der hohen Parallelität von Webservern zu lösen.
Aus dieser Definition können wir die drei Hauptmerkmale von Node.js erkennen:Der Zweck besteht darin, das Problem der hohen Parallelität von Webservern zu lösen;
Die Grundlage ist Chrome V8-Engine ;
Essence ist eine JavaScript-Laufzeitumgebung;
nodejs-Video-Tutorial, Programmierlehre]
asynchron zu verbessern Prozesskontrolle . So entstand Node.js.
Obwohl Node.js inzwischen in einer Vielzahl von Szenarien verwendet wird. Aber wir sollten uns immer darüber im Klaren sein, dass wir den Kern von Node.js nur beherrschen können, wenn wir das „Prinzip der asynchronen Prozesssteuerung“ von Node.js verstehen.1.1.2 Chrome V8-Engine
Rendering-Engine: Web Core;
JavaScript interpretieren und kompilieren;
Node.js ist weder eine Sprache (JavaScript) noch ein Framework (React, Koa), sondern eine
JavaScript-LaufzeitumgebungWas ist also eine
JavaScript-Laufzeitumgebung, die JavaScript ausführen kann. Worauf bezieht sich die
Umgebungstellt die zugrunde liegenden Funktionen zum Interpretieren und Kompilieren von JavaScript bereit;
bietet eine Reihe von Schnittstellen, die es Entwicklern ermöglichen, die zugrunde liegenden Funktionen des Systems aufzurufen (z. B. Netzwerk, Dateilesen usw.). Schreiben usw.) über JavaScript ;Ersteres wird von der Chrome V8-Engine bereitgestellt, während letzteres eine leistungsstarke ereignisgesteuerte asynchrone E/A-Bibliothek ist, die in C und C++ geschrieben ist **libuv ** bereitgestellt. <strong><h3 data-id="heading-5"></h3></strong>1.2 libuv
libuv
ist eine plattformübergreifende, ereignisgesteuerte asynchrone I/O-Bibliothek, die die CPU und das Betriebssystem für Node bereitstellt Ebenenfunktionen. Wir wissen, dass verschiedene Betriebssysteme die Hardware auf unterschiedliche Weise planen und dass auch die CPU-Befehlssätze variieren. libuv
glättet diesen Unterschied und stellt Benutzern über ein Modul namens Node Bindings
eine einheitliche Systembetriebsschnittstelle zur Verfügung. Jetzt können wir also sagen, dass Node tatsächlich aus zwei Teilen besteht: der Chrome V8-Engine und libuv
. Diese beiden Ebenen sind unter Node Bindings
verborgen und Benutzer programmieren anhand von Node Bindings
. libuv
** 所提供。
libuv
是一个跨平台的,事件驱动的异步 I/O 库,为 Node 提供了 CPU 和操作系统层面的功能。我们知道不同的操作系统调度硬件的方式不同,CPU 的指令集也各有差异。libuv
则抹平了这一差异,通过名为 Node Bindings
的模块,向用户暴露了统一的系统操作接口。
因此现在我们可以说,Node 实际上由两部分组成:Chrome V8 引擎以及 libuv
。这两层隐藏在 Node Bindings
之下,而用户面向 Node Bindings
Um Node.js vollständig zu verstehen, müssen wir zusätzlich zum oben erwähnten
auch die Eigenschaften von Node.js von seiner Erstellung bis zu seiner Verwendung verstehen Entwicklung. Designphilosophie, die uns hilft, das Node.js-Ökosystem zu bevorzugen.
Ich denke, Node.js hat die folgenden drei Hauptmerkmale:
Offenheit;
Einfach;
Lassen Sie mich sie jeweils erklären.
2.2 Fokusnpm
Vertiefendes Verständnis der JavaScript-Sprachfunktionen (insbesondere ESNext) und Syntax;
Datenbankwissen und Datentabellen-Designfähigkeiten;
Das Erlernen von Node.js kann in zwei Teile unterteilt werden:
Erlernen der Verwendung des Kerns Bibliothek von Node.js ;
Lernen Sie die Verwendung verwandter Web-Frameworks;
Während des gesamten Lernprozesses wird empfohlen, die folgenden vier Lernschritte zu übernehmen:
Offizielle Dokumente lesen;
Schreiben Sie eine Demo und machen Sie sich mit Ideen zur Grammatiküberprüfung vertraut.
Weitere Informationen zu Knoten finden Sie unter:
nodejs-TutorialDas obige ist der detaillierte Inhalt vonEine kurze Analyse, wie Front-End-Entwickler die Node-Sprache lernen können?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!